/*
 * Ortak tasarım katmanı.
 * Site yıllar içinde farklı sürümlerde yazılmış stil dosyalarından oluşuyor; bu dosya
 * kart köşeleri, butonlar ve hareketleri tek bir kurala bağlar. Diğer stil dosyalarından
 * sonra uygulanması için kurallar bilinçli olarak güçlü yazıldı.
 */
:root {
  --csi-radius-card: 16px;
  --csi-radius-media: 12px;
  --csi-radius-btn: 999px;
  --csi-btn-h: 46px;
  --csi-ease: cubic-bezier(.2, .7, .2, 1);
  --csi-shadow-hover: 0 18px 40px rgba(16, 22, 30, .10);
}

/* ---------------------------------------------------------------- Kartlar */
.cms-showcase-card,
.csi-pc-card,
.csi-news-v2__card,
.csi-news-v2__featured,
.cms-news-list-card,
.csi-certificate-card,
.csi-vc-card,
.csi-p3-engineering-card,
.csi-design-certificate-card {
  border-radius: var(--csi-radius-card) !important;
  overflow: hidden;
}
.cms-showcase-card,
.csi-pc-card,
.csi-news-v2__card,
.cms-news-list-card,
.csi-certificate-card {
  transition: transform .3s var(--csi-ease), box-shadow .3s var(--csi-ease), border-color .3s var(--csi-ease);
}
@media (hover: hover) {
  .cms-showcase-card:hover,
  .csi-pc-card:hover,
  .csi-news-v2__card:hover,
  .cms-news-list-card:hover,
  .csi-certificate-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--csi-shadow-hover);
  }
}
.csi-p3-gallery .feature,
.csi-news-v2__media,
.cms-news-list-media,
.csi-design-certificate-visual {
  border-radius: var(--csi-radius-media) !important;
  overflow: hidden;
}

/* --------------------------------------------------------------- Butonlar */
.site-button,
.csi-v6-button,
.csi-square-product-button,
.brand-asset-btn,
.brand-cta-actions a,
.csi-p3-hero-actions > a,
.csi-p3-shell > a.quote,
.csi-p3-engineering-card > a,
.csi-pc-footer > a,
.csi-quote-submit,
.cms-drawer-form button[type="submit"] {
  border-radius: var(--csi-radius-btn) !important;
  letter-spacing: .02em;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
.site-button,
.csi-v6-button,
.brand-asset-btn,
.csi-p3-hero-actions > a,
.csi-quote-submit,
.cms-drawer-form button[type="submit"] {
  min-height: var(--csi-btn-h);
  padding-left: 24px !important;
  padding-right: 24px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
@media (hover: hover) {
  .site-button:hover,
  .csi-v6-button:hover,
  .csi-square-product-button:hover,
  .csi-p3-hero-actions > a:hover,
  .csi-quote-submit:hover { transform: translateY(-1px); }
}
/* Filtre ve sekme düğmeleri */
.csi-pc-filters > button,
.csi-p3-gallery-tabs button,
.csi-table-pager button,
.pagination a,
.pagination span {
  border-radius: 999px !important;
}

/* ------------------------------------------------- Form alanları */
.csi-quote-form input,
.csi-quote-form select,
.csi-quote-form textarea,
.cms-drawer-form input,
.cms-drawer-form textarea,
.cms-contact-form input,
.cms-contact-form textarea {
  border-radius: 10px !important;
}

/* ------------------------------------------------- Hareketler (daha sakin) */
.csi-reveal,
.csi-vc-reveal,
[data-csi-reveal] {
  transition-duration: .5s !important;
}
.csi-reveal:not(.is-visible),
.csi-vc-reveal:not(.is-visible),
.csi-home-v6.csi-motion-ready [data-csi-reveal]:not(.is-visible) {
  transform: translateY(12px) !important;
}
.wow { animation-duration: .6s !important; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .csi-reveal, .csi-vc-reveal, [data-csi-reveal], .wow { opacity: 1 !important; transform: none !important; visibility: visible !important; }
}

/* ------------------------------------------------- Mobilde sabit işlem çubuğu */
.csi-mobile-bar{display:none}
@media (max-width: 767px) {
  .csi-mobile-bar{position:fixed;left:10px;right:10px;bottom:10px;z-index:1500;display:flex;gap:8px;padding:8px;border-radius:18px;background:rgba(21,25,31,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 14px 40px rgba(0,0,0,.25)}
  .csi-mobile-bar a{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;border-radius:12px;color:#fff;font-size:13px;font-weight:700;text-decoration:none;background:rgba(255,255,255,.08)}
  .csi-mobile-bar a.is-primary{flex:1.6;background:#d7161b}
  .csi-mobile-bar i{font-size:16px}
  body:has(.csi-mobile-bar) .site-footer .footer-bottom{padding-bottom:84px}
  body:has(.csi-mobile-bar) .cms-cookie{bottom:82px !important}
  body:has(.csi-mobile-bar) .scroltop{bottom:84px !important}
}

/* ------------------------------------------------- Kategori kartları (Ürünler sayfası) */
html body .cms-category-grid .cms-category-tile { aspect-ratio: auto !important; height: auto !important; }
html body .cms-category-grid .cms-category-tile .cms-category-tile-image { flex: none !important; aspect-ratio: 16 / 10 !important; height: auto !important; max-height: none !important; background: #eef0f2 !important; }
html body .cms-category-grid .cms-category-tile .cms-category-tile-image > img { width: 100% !important; height: 100% !important; object-fit: cover !important; background: transparent !important; }
.cms-showcase-card .cms-showcase-body > span:last-child {
  border-radius: var(--csi-radius-btn) !important;
}
.cms-showcase-body p:empty { display: none; }
.cms-catalog-search input { border-radius: 999px !important; padding-left: 22px !important; }

/* Kapalı mobil menünün gölgesi ekranın sağ kenarına taşmasın */
.csi-mnav4 { box-shadow: none !important; }
.csi-mnav4-open .csi-mnav4 { box-shadow: -24px 0 60px rgba(0,0,0,.16) !important; }

/* Hakkımızda giriş başlığı (tek satırlık kırmızı başlık) */
.csi-about .csi-about-copy h1.csi-about-label { margin: 0 0 18px; color: #d7161b; font-size: 33px; line-height: 1.1; font-weight: 900; letter-spacing: 0; text-transform: uppercase; }
.csi-about .csi-about-copy h1.csi-about-label br, .csi-about .csi-about-copy h1.csi-about-label em { display: none; }

/* Ürün sayfası: kutu içindeki teklif bağlantısı kutuyla aynı (dikdörtgen) */
.csi-p3-facts > a { border-radius: 0 !important; }

/* Hero'lar ekranından hero atanan ürün sayfası: üstte standart hero, ürün başlığı aynı görünümde */
.csi-product-v3.has-page-hero .csi-p3-crumb { display: none !important; }
.csi-product-v3 .csi-p3-copy h2.csi-p3-title { margin: 22px 0 20px; font-size: clamp(44px, 4.5vw, 66px); line-height: 1.02; letter-spacing: -.045em; font-weight: inherit; }
@media (max-width: 700px) { .csi-product-v3 .csi-p3-copy h2.csi-p3-title { font-size: 39px; } }

/* Kategori sayfası ürün kartı: "Detaylar" butonu hafif oval köşeli */
html body .csi-category-catalog .csi-square-product-card a.csi-square-product-button { border-radius: 8px !important; }

/* ------------------------------------------------- Sayfalama (ürün listeleri) */
.csi-pager { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 48px auto 8px; padding: 8px; width: fit-content; max-width: 100%; border: 1px solid #e4e6e9; border-radius: 16px; background: #fff; box-shadow: 0 14px 34px -22px rgba(16, 22, 30, .35); font-family: inherit; }
.csi-pager-pages { display: flex; align-items: center; gap: 6px; }
.csi-pager-num { display: inline-grid; place-items: center; min-width: 44px; height: 44px; padding: 0 6px; border-radius: 10px; color: #2a2f35 !important; font-size: 15px; font-weight: 700; text-decoration: none !important; transition: background .2s ease, color .2s ease, transform .2s ease; }
a.csi-pager-num:hover { background: #f3f4f6; color: #d7161b !important; }
.csi-pager-num.is-current { background: #d7161b; color: #fff !important; box-shadow: 0 8px 18px -8px rgba(215, 22, 27, .7); }
.csi-pager-gap { min-width: 22px; text-align: center; color: #9aa0a6; font-weight: 700; letter-spacing: .1em; }
.csi-pager-step { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 18px; border-radius: 10px; background: #15181c; color: #fff !important; font-size: 13px; font-weight: 700; text-decoration: none !important; transition: background .2s ease, gap .2s ease; }
.csi-pager-step svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
a.csi-pager-step:hover { background: #d7161b; gap: 12px; }
.csi-pager-step.is-disabled { background: #f1f2f4; color: #b4b9bf !important; cursor: default; }
.csi-pager-info { display: none; color: #6b7178; font-size: 13px; white-space: nowrap; }
.csi-pager-info b { color: #15181c; }
@media (max-width: 640px) {
  .csi-pager { width: 100%; justify-content: space-between; gap: 8px; margin-top: 32px; border-radius: 14px; }
  .csi-pager-pages { display: none; }
  .csi-pager-info { display: block; }
  .csi-pager-step { height: 46px; padding: 0 16px; }
}
