/* =====================================================================
   Akesis Biyomedikal — İç Sayfa Bileşen Kütüphanesi (akesis-site.css)
   akesis.css'in ÜZERİNE yüklenir; :root token'larını (--paper,--ink,--teal,
   --amber,--sage,--hairline,--font-head,--font-ui,--ease,gölgeler…) ve mevcut
   ana sınıfları (.section,.container,.btn,.spec-card,.reveal,.eyebrow…) yeniden
   kullanır. Burada YALNIZCA yeni iç-sayfa sınıfları tanımlanır; akesis.css'teki
   sınıflar EZİLMEZ. Tasarım dili: kağıt beyazı zemin, kılcal çizgiler, Fraunces
   başlıklar, tek amber vurgu (<%3), DNA sarmal motifi.
   ===================================================================== */

/* ---------------------------------------------------------------------
   1) SAYFA BAŞLIĞI BANDI  (.page-hero + breadcrumb .crumbs)
   Koyu petrol zemin + sarmal filigran; her iç sayfanın üstünde durur.
   --------------------------------------------------------------------- */
.page-hero{
  position:relative;overflow:hidden;
  background:var(--petrol-900);
  color:var(--paper-on-dark);
  border-bottom:1px solid var(--petrol-900);
  padding-block:clamp(2.6rem,6vw,4.2rem);
}
/* köşe amber ışıması — çok hafif */
.page-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(120% 90% at 92% 0%,rgba(232,147,58,.16),transparent 46%);
}
.page-hero .container{position:relative;z-index:2}
.page-hero .eyebrow{margin-bottom:1rem}
.page-hero .eyebrow-label{color:var(--paper-on-dark);opacity:.78}
.page-hero h1{
  color:#fff;font-weight:300;
  font-size:clamp(2rem,4.4vw,3.2rem);line-height:1.06;letter-spacing:-.02em;
  max-width:20ch;
}
.page-hero .ph-lead,
.page-hero>.container>p{
  color:var(--paper-on-dark);opacity:.82;margin-top:1rem;
  font-family:var(--font-ui);font-size:clamp(1rem,1.4vw,1.14rem);line-height:1.6;
  max-width:58ch;
}
/* İsteğe bağlı sarmal filigran — .page-hero içine <div class="ph-helix"> koyunca */
.page-hero .ph-helix{position:absolute;top:-30%;right:-4%;height:170%;opacity:.16;z-index:1;pointer-events:none}
.page-hero .ph-helix .hx{height:100%;width:auto}

/* Breadcrumb — hem yeni .crumbs hem eski .breadcrumb adıyla çalışır */
.crumbs,
.page-hero .breadcrumb{
  display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;
  font-family:var(--font-ui);font-size:.8rem;letter-spacing:.02em;
  color:var(--paper-on-dark);margin-bottom:1.2rem;
}
.crumbs a,
.page-hero .breadcrumb a{color:var(--paper-on-dark);opacity:.72;transition:opacity .2s,color .2s}
.crumbs a:hover,
.page-hero .breadcrumb a:hover{opacity:1;color:#fff}
.crumbs .ic,
.page-hero .breadcrumb .ic,
.crumbs svg,
.page-hero .breadcrumb svg{width:14px;height:14px;opacity:.5;color:var(--sage)}
.crumbs .current,
.crumbs [aria-current],
.page-hero .breadcrumb .current{color:var(--amber);opacity:1}

/* Açık zeminli sade sayfa başlığı çeşidi (koyu istemeyen sayfalar için) */
.page-hero.is-light{background:var(--paper-deep);color:var(--body);border-bottom:1px solid var(--hairline)}
.page-hero.is-light::before{display:none}
.page-hero.is-light h1{color:var(--ink)}
.page-hero.is-light .ph-lead,
.page-hero.is-light>.container>p{color:var(--muted)}
.page-hero.is-light .crumbs a,
.page-hero.is-light .breadcrumb a{color:var(--muted)}
.page-hero.is-light .crumbs a:hover{color:var(--ink)}
.page-hero.is-light .eyebrow-label{color:var(--muted);opacity:1}


/* ---------------------------------------------------------------------
   2) PROSE / MAKALE TİPOGRAFİSİ  (.prose)
   Statik sayfa gövdesi + haber içeriği için editöryel akış.
   --------------------------------------------------------------------- */
.prose{color:var(--body);font-size:1.06rem;line-height:1.78;max-width:70ch}
.prose>*+*{margin-top:1.15em}
.prose h2,.prose h3,.prose h4{font-family:var(--font-head);color:var(--ink);font-weight:500;letter-spacing:-.01em;line-height:1.2}
.prose h2{font-size:clamp(1.5rem,2.4vw,1.95rem);margin-top:2em;margin-bottom:.1em;position:relative;padding-left:1rem}
.prose h2::before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:3px;border-radius:2px;
  background:linear-gradient(var(--teal),var(--sage))}
.prose h3{font-size:clamp(1.25rem,1.9vw,1.5rem);margin-top:1.7em}
.prose h4{font-size:1.12rem;font-family:var(--font-ui);font-weight:600;color:var(--ink);text-transform:none}
.prose p{margin-block:0}
.prose a{color:var(--teal);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s}
.prose a:hover{color:var(--ink)}
.prose strong,.prose b{color:var(--ink);font-weight:600}
.prose em{font-style:italic}
.prose ul,.prose ol{margin-block:1.1em;padding:0;display:grid;gap:.6rem}
.prose ul{list-style:none}
.prose ul li{position:relative;padding-left:1.75rem}
.prose ul li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;
  background:var(--sage-mist);box-shadow:inset 0 0 0 2px var(--teal)}
.prose ol{list-style:none;counter-reset:pr}
.prose ol li{position:relative;padding-left:2.2rem;counter-increment:pr}
.prose ol li::before{content:counter(pr);position:absolute;left:0;top:.05em;width:1.5rem;height:1.5rem;border-radius:50%;
  background:var(--sage-mist);color:var(--teal);font-family:var(--font-ui);font-weight:600;font-size:.78rem;
  display:flex;align-items:center;justify-content:center}
.prose li>ul,.prose li>ol{margin-top:.5rem}
.prose blockquote{margin:1.6em 0;padding:1.1rem 1.5rem;border-left:2px solid var(--amber);background:var(--paper-deep);
  border-radius:0 5px 5px 0;font-family:var(--font-head);font-style:italic;font-size:1.15rem;color:var(--ink);line-height:1.5}
.prose blockquote p{margin:0}
.prose blockquote cite{display:block;margin-top:.6rem;font-family:var(--font-ui);font-style:normal;font-size:.85rem;color:var(--muted)}
.prose img{border:1px solid var(--hairline);border-radius:6px;margin-block:1.6em;box-shadow:var(--shadow-lift)}
.prose figure{margin:1.6em 0}
.prose figure img{margin:0}
.prose figcaption{margin-top:.6rem;font-family:var(--font-ui);font-size:.82rem;color:var(--muted);text-align:center}
.prose hr{border:none;border-top:1px solid var(--hairline);margin:2.4em 0}
.prose table{width:100%;border-collapse:collapse;font-family:var(--font-ui);font-size:.94rem;margin-block:1.6em}
.prose th,.prose td{text-align:left;padding:.75rem .9rem;border-bottom:1px solid var(--hairline)}
.prose th{font-weight:600;color:var(--ink);background:var(--paper-deep)}
.prose code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;background:var(--paper-deep);
  border:1px solid var(--hairline);border-radius:3px;padding:.1em .4em;color:var(--ink)}


/* ---------------------------------------------------------------------
   3) İÇERİK YERLEŞİMİ  (.content-wrap / .content-aside)
   Prose + yan panel (dar kolonlu makale düzeni için isteğe bağlı).
   --------------------------------------------------------------------- */
.content-wrap{display:grid;grid-template-columns:1fr;gap:clamp(2rem,4vw,3.5rem)}
.content-wrap.has-aside{grid-template-columns:minmax(0,1fr) 320px}
.content-aside{align-self:start;position:sticky;top:96px;display:grid;gap:1.25rem}
.aside-card{background:var(--paper-card);border:1px solid var(--hairline);border-radius:6px;padding:1.5rem;box-shadow:var(--shadow-lift)}
.aside-card h4{font-family:var(--font-ui);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.aside-card .aside-link{display:flex;align-items:center;gap:.6rem;padding:.6rem 0;border-bottom:1px solid var(--hairline);
  font-family:var(--font-ui);font-size:.94rem;color:var(--body);transition:color .2s}
.aside-card .aside-link:last-child{border-bottom:none}
.aside-card .aside-link:hover{color:var(--teal)}
.aside-card .aside-link .ic{width:16px;height:16px;color:var(--teal)}


/* ---------------------------------------------------------------------
   4) ÜRÜN LİSTELEME  (.product-grid / .cat-filter / .spec-card AKESIS.CSS'TE)
   Bunlar akesis.css'te tanımlı; burada yalnızca eksik yardımcılar + kartın
   içindeki görsel/etiket öğeleri ve ürün-kartı köprü stilleri eklenir.
   --------------------------------------------------------------------- */
/* spec-card içine gerçek ürün fotoğrafı yerleştirmek için görsel plinth */
.spec-media{position:relative;height:150px;border-radius:5px;overflow:hidden;margin-bottom:1.1rem;
  background:radial-gradient(ellipse at 50% 82%,var(--amber-wash) 0%,var(--paper-deep) 72%);
  display:flex;align-items:center;justify-content:center}
.spec-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease)}
.spec-card:hover .spec-media img{transform:scale(1.05)}
.spec-media .spec-noimg{width:52px;height:52px;color:var(--teal)}
/* kartın tamamı tıklanabilir olduğunda kaplayan bağlantı */
.spec-card .spec-cover{position:absolute;inset:0;z-index:3}
.spec-card .spec-foot .link-teal{position:relative;z-index:4}
/* kart başlığındaki köprü rengi devralsın */
.spec-card h3 a{color:inherit;transition:color .25s}
.spec-card:hover h3 a{color:var(--teal)}

/* Alternatif ürün kartı adı (.product-card) — eski görünüm adıyla uyumluluk.
   spec-card'a görsel olarak eşitlenir. */
.product-card{position:relative;background:var(--paper-card);border:1px solid var(--hairline);border-radius:4px;
  display:flex;flex-direction:column;overflow:hidden;transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.product-card:hover{transform:translateY(-4px);border-color:var(--teal);box-shadow:var(--shadow-lift)}
.product-card .product-thumb{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;
  background:radial-gradient(ellipse at 50% 82%,var(--amber-wash),var(--paper-deep) 72%)}
.product-card .product-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.product-card:hover .product-thumb img{transform:scale(1.05)}
.product-card .product-cat{position:absolute;left:12px;top:12px;font-family:var(--font-ui);font-size:.66rem;
  letter-spacing:.02em;color:var(--teal);background:rgba(251,250,247,.92);border:1px solid var(--hairline);
  padding:.3rem .55rem;border-radius:3px}
.product-card .product-body{padding:1.3rem 1.4rem 1.4rem;display:flex;flex-direction:column;flex:1}
.product-card .product-body h3{font-family:var(--font-head);font-weight:500;font-size:1.2rem;line-height:1.2}
.product-card .product-body h3 a{color:var(--ink);transition:color .25s}
.product-card:hover .product-body h3 a{color:var(--teal)}
.product-card .product-body p{font-family:var(--font);font-size:.9rem;color:var(--muted);line-height:1.55;margin-top:.6rem;flex:1}
.product-card .product-link{margin-top:1rem;display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-ui);
  font-weight:600;font-size:.88rem;color:var(--teal);transition:gap .25s var(--ease),color .2s}
.product-card .product-link:hover{gap:.6rem;color:var(--ink)}
.product-card .product-link .ic{width:16px;height:16px}


/* ---------------------------------------------------------------------
   5) ÜRÜN DETAY  (.pd-grid / .pd-media / .pd-body / .pd-features / .pd-meta)
   --------------------------------------------------------------------- */
.pd-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(2rem,5vw,4rem);align-items:start}

.pd-media{position:relative}
.pd-figure{position:relative;border:1px solid var(--hairline);border-radius:6px;overflow:hidden;
  aspect-ratio:4/3;background:radial-gradient(ellipse at 50% 82%,var(--amber-wash),var(--paper-deep) 72%);
  display:flex;align-items:center;justify-content:center}
.pd-figure img{width:100%;height:100%;object-fit:cover;display:block}
.pd-figure .pd-noimg{width:80px;height:80px;color:var(--teal);opacity:.6}
.pd-figure .hx-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:120%;opacity:.12}
/* köşe kayıt işareti — akesis "baskı" dili */
.pd-media .pd-code{position:absolute;left:14px;bottom:12px;font-family:var(--font-ui);font-size:.68rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:rgba(251,250,247,.86);
  padding:.28rem .55rem;border-radius:3px}
/* küçük galeri şeridi */
.pd-thumbs{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pd-thumbs img{width:74px;height:74px;object-fit:cover;border:1px solid var(--hairline);border-radius:4px;cursor:pointer;transition:border-color .2s}
.pd-thumbs img:hover{border-color:var(--teal)}

.pd-body .spec-chip{display:inline-block;font-family:var(--font-ui);font-size:.68rem;letter-spacing:.02em;color:var(--teal);
  background:var(--sage-mist);padding:.32rem .6rem;border-radius:3px;margin-bottom:1rem}
.pd-body h1{font-family:var(--font-head);font-weight:400;color:var(--ink);letter-spacing:-.015em;line-height:1.08;
  font-size:clamp(1.9rem,3.6vw,2.9rem)}
.pd-body .pd-tagline{font-family:var(--font-head);font-style:italic;color:var(--teal);font-size:1.2rem;margin-top:.5rem}
.pd-body .pd-summary{color:var(--body);font-size:1.08rem;line-height:1.7;margin-top:1.2rem;max-width:56ch}

/* özellik listesi (kısa çizgili tik) */
.pd-features{margin-top:1.8rem;border-top:1px solid var(--hairline);display:grid;gap:0}
.pd-features li{display:flex;gap:.9rem;align-items:flex-start;padding:.95rem 0;border-bottom:1px solid var(--hairline)}
.pd-features .chk{flex:none;width:24px;height:24px;border-radius:50%;background:var(--sage-mist);color:var(--teal);
  display:flex;align-items:center;justify-content:center}
.pd-features .chk .ic{width:15px;height:15px}
.pd-features b{font-family:var(--font-head);font-weight:500;color:var(--ink);font-size:1.02rem}
.pd-features span{display:block;font-family:var(--font);font-size:.9rem;color:var(--muted);margin-top:.1rem}

/* teknik künye (etiket→değer satırları) */
.pd-meta{margin-top:1.8rem;background:var(--paper-card);border:1px solid var(--hairline);border-radius:6px;padding:.4rem 1.4rem}
.pd-meta .pd-row{display:grid;grid-template-columns:auto 1fr;gap:1.2rem;align-items:baseline;
  padding:.85rem 0;border-bottom:1px solid var(--hairline)}
.pd-meta .pd-row:last-child{border-bottom:none}
.pd-meta .pd-k{font-family:var(--font-ui);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pd-meta .pd-v{font-family:var(--font-ui);font-size:.96rem;color:var(--ink)}

/* yan CTA kutusu (teklif iste) */
.pd-cta{margin-top:1.8rem;background:var(--amber-wash);border:1px solid var(--hairline);border-radius:6px;
  padding:1.6rem 1.6rem 1.7rem}
.pd-cta h3{font-family:var(--font-head);font-weight:500;color:var(--ink);font-size:1.35rem;margin-bottom:.4rem}
.pd-cta p{font-family:var(--font);color:var(--body);font-size:.95rem;line-height:1.55;margin-bottom:1.2rem;max-width:40ch}
.pd-cta .pd-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}

/* alt bölüm: uzun açıklama (prose) + benzer ürünler başlığı */
.pd-section{margin-top:clamp(3rem,6vw,5rem)}
.pd-section .section-head{margin-bottom:2rem}


/* ---------------------------------------------------------------------
   6) HABER LİSTELEME  (.news-grid .news-card)
   --------------------------------------------------------------------- */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.news-card{position:relative;display:flex;flex-direction:column;background:var(--paper-card);
  border:1px solid var(--hairline);border-radius:5px;overflow:hidden;
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.news-card:hover{transform:translateY(-4px);border-color:var(--teal);box-shadow:var(--shadow-lift)}
.news-thumb{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;
  background:linear-gradient(150deg,var(--sage-mist),var(--amber-wash))}
.news-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.news-card:hover .news-thumb img{transform:scale(1.05)}
.news-thumb .news-noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--teal);opacity:.5}
.news-thumb .news-noimg .ic{width:44px;height:44px}
.news-body{display:flex;flex-direction:column;flex:1;padding:1.4rem 1.5rem 1.5rem}
.news-meta{display:flex;align-items:center;gap:.7rem;font-family:var(--font-ui);font-size:.74rem;
  letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem}
.news-meta .news-tag{color:var(--teal);background:var(--sage-mist);padding:.24rem .5rem;border-radius:3px;letter-spacing:.02em;text-transform:none}
.news-body h3{font-family:var(--font-head);font-weight:500;font-size:1.22rem;line-height:1.22;color:var(--ink)}
.news-body h3 a{color:inherit;transition:color .25s}
.news-card:hover .news-body h3 a{color:var(--teal)}
.news-body p{font-family:var(--font);font-size:.92rem;color:var(--muted);line-height:1.55;margin-top:.6rem;flex:1}
.news-body .news-more{margin-top:1.1rem;display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-ui);
  font-weight:600;font-size:.86rem;color:var(--teal);transition:gap .25s var(--ease),color .2s}
.news-body .news-more:hover{gap:.6rem;color:var(--ink)}
.news-body .news-more .ic{width:16px;height:16px}
/* kartı tümden tıklanabilir yapmak için */
.news-card .news-cover{position:absolute;inset:0;z-index:2}
.news-body .news-more{position:relative;z-index:3}

/* Öne çıkan (feature) haber satırı — akesis.css .news-feature ile aynı ruhta,
   ama bağımsız isim çakışması yok; listeleme sayfası isterse kullanır. */
.news-lead{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:center;
  padding-bottom:2.4rem;margin-bottom:2.6rem;border-bottom:1px solid var(--hairline)}
.news-lead .nl-media{aspect-ratio:16/11;border:1px solid var(--hairline);border-radius:5px;overflow:hidden;
  background:linear-gradient(150deg,var(--sage-mist),var(--amber-wash))}
.news-lead .nl-media img{width:100%;height:100%;object-fit:cover}
.news-lead h2{font-size:clamp(1.6rem,2.6vw,2.15rem);margin:1rem 0 .8rem;line-height:1.14}
.news-lead h2 a{color:var(--ink);transition:color .25s}
.news-lead h2 a:hover{color:var(--teal)}
.news-lead p{color:var(--muted);margin-bottom:1.3rem;max-width:52ch}


/* ---------------------------------------------------------------------
   7) TEKİL HABER — üst görsel + gövde
   --------------------------------------------------------------------- */
.article-head{max-width:760px;margin-inline:auto;text-align:center}
.article-head .article-meta{display:flex;justify-content:center;align-items:center;gap:.7rem;
  font-family:var(--font-ui);font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.article-head .article-meta .news-tag{color:var(--teal);background:var(--sage-mist);padding:.24rem .55rem;border-radius:3px;text-transform:none;letter-spacing:.02em}
.article-head h1{font-family:var(--font-head);font-weight:400;color:var(--ink);letter-spacing:-.02em;
  font-size:clamp(2rem,4vw,3rem);line-height:1.08}
.article-head .article-excerpt{font-family:var(--font-head);font-style:italic;color:var(--muted);
  font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.5;margin-top:1rem}
.article-cover{margin:clamp(2rem,4vw,3rem) auto 0;max-width:960px;border:1px solid var(--hairline);
  border-radius:8px;overflow:hidden;box-shadow:var(--shadow-lift);position:relative;aspect-ratio:16/8;
  background:linear-gradient(150deg,var(--sage-mist),var(--amber-wash))}
.article-cover img{width:100%;height:100%;object-fit:cover;display:block}
.article-body{max-width:760px;margin-inline:auto}
/* makale altı paylaşım / geri dön şeridi */
.article-foot{max-width:760px;margin:clamp(2.5rem,5vw,4rem) auto 0;padding-top:1.6rem;border-top:1px solid var(--hairline);
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem}
.article-foot .share{display:flex;gap:.6rem}
.article-foot .share a{width:38px;height:38px;border:1px solid var(--hairline);border-radius:4px;display:flex;
  align-items:center;justify-content:center;color:var(--muted);transition:.25s}
.article-foot .share a:hover{border-color:var(--teal);color:var(--teal);background:var(--sage-mist)}
.article-foot .share .ic{width:18px;height:18px}


/* ---------------------------------------------------------------------
   8) İLETİŞİM FORMU  (.form / .field / input / textarea / durumlar)
   --------------------------------------------------------------------- */
/* İletişim yerleşimi: form + künye/harita kolonu */
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4rem);align-items:start}

.form-panel{background:var(--paper-card);border:1px solid var(--hairline);border-radius:8px;
  padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow-lift)}
.form{display:grid;gap:1.2rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.field{display:grid;gap:.45rem}
.field label{font-family:var(--font-ui);font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--ink)}
.field label .req{color:var(--amber);margin-left:.15rem}
.field input,.field textarea,.field select{
  font-family:var(--font-ui);font-size:.98rem;color:var(--ink);
  background:var(--paper);border:1px solid var(--hairline);border-radius:4px;
  padding:.8rem .95rem;width:100%;transition:border-color .2s,box-shadow .2s;
}
.field textarea{min-height:150px;resize:vertical;line-height:1.6}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235E6E6C' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.4rem}
.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:.7}
.field input:focus,.field textarea:focus,.field select:focus{
  outline:none;border-color:var(--teal);box-shadow:0 0 0 3px var(--sage-mist)}
.field .field-hint{font-family:var(--font-ui);font-size:.78rem;color:var(--muted)}
/* hata durumu (alan bazlı) */
.field.has-error input,.field.has-error textarea,.field.has-error select{border-color:var(--amber);box-shadow:0 0 0 3px rgba(232,147,58,.14)}
.field .field-error{font-family:var(--font-ui);font-size:.78rem;color:var(--amber-hover);display:flex;align-items:center;gap:.35rem}
.field .field-error .ic{width:14px;height:14px}
/* onay kutusu (KVKK) */
.field-check{display:flex;gap:.6rem;align-items:flex-start;font-family:var(--font-ui);font-size:.86rem;color:var(--body);line-height:1.5}
.field-check input{width:18px;height:18px;flex:none;margin-top:.15rem;accent-color:var(--teal)}
.field-check a{color:var(--teal);text-decoration:underline;text-underline-offset:2px}
/* gönder satırı */
.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:.4rem}
.form-note{font-family:var(--font-ui);font-size:.8rem;color:var(--muted)}

/* form geneli durum bildirimleri (başarı / hata) — .flash ile de uyumlu */
.form-alert,.flash{display:flex;gap:.7rem;align-items:flex-start;font-family:var(--font-ui);font-size:.92rem;
  padding:.95rem 1.1rem;border-radius:5px;border:1px solid var(--hairline);margin-bottom:1.3rem;line-height:1.5}
.form-alert .ic,.flash .ic{width:18px;height:18px;flex:none;margin-top:.1rem}
.form-alert.is-success,.flash.flash-success,.flash.is-success{background:var(--sage-mist);border-color:rgba(127,185,142,.5);color:var(--ink)}
.form-alert.is-success .ic,.flash.flash-success .ic{color:var(--teal)}
.form-alert.is-error,.flash.flash-error,.flash.is-error{background:var(--amber-wash);border-color:rgba(232,147,58,.45);color:var(--petrol-900)}
.form-alert.is-error .ic,.flash.flash-error .ic{color:var(--amber-hover)}
.form-alert.is-info,.flash.flash-info{background:var(--paper-deep);border-color:var(--hairline);color:var(--body)}

/* iletişim künyesi (adres/telefon/saat) — akesis .ledger-row diliyle */
.contact-info{display:grid;gap:0}
.contact-info .ci-row{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:flex-start;
  padding:1.15rem 0;border-bottom:1px solid var(--hairline)}
.contact-info .ci-row:first-child{padding-top:0}
.contact-info .ci-ic{flex:none;width:40px;height:40px;border-radius:5px;background:var(--sage-mist);color:var(--teal);
  display:flex;align-items:center;justify-content:center}
.contact-info .ci-ic .ic{width:20px;height:20px}
.contact-info .ci-k{font-family:var(--font-ui);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:.2rem}
.contact-info .ci-v{font-family:var(--font-ui);color:var(--ink);font-size:.98rem;line-height:1.5}
.contact-info .ci-v a{color:var(--ink);transition:color .2s}
.contact-info .ci-v a:hover{color:var(--teal)}
/* çalışma saatleri mini tablo */
.hours-list{margin-top:1.4rem;border-top:1px solid var(--hairline)}
.hours-list .hr-row{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--hairline);
  font-family:var(--font-ui);font-size:.92rem;color:var(--body)}
.hours-list .hr-row.today{color:var(--ink);font-weight:600}
.hours-list .hr-row.today .hr-day::after{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;
  background:var(--amber);margin-left:.5rem;vertical-align:middle;box-shadow:0 0 0 3px rgba(232,147,58,.2)}
.hours-list .hr-row.closed{color:var(--muted)}


/* ---------------------------------------------------------------------
   9) HARİTA ÇERÇEVESİ  (.map-frame iframe)
   Setting'ten gelen ham <iframe> embed'i sarmalar.
   --------------------------------------------------------------------- */
.map-frame{position:relative;border:1px solid var(--hairline);border-radius:8px;overflow:hidden;
  background:var(--paper-deep);box-shadow:var(--shadow-lift)}
.map-frame iframe{display:block;width:100%;height:100%;min-height:340px;border:0;
  filter:grayscale(.25) contrast(1.02)}
.map-frame.map-lg iframe{min-height:440px}
/* harita yoksa yer tutucu */
.map-empty{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;
  color:var(--muted);text-align:center;padding:2rem}
.map-empty .ic{width:40px;height:40px;color:var(--sage)}


/* ---------------------------------------------------------------------
   10) SAYFALAMA  (.pagination)
   --------------------------------------------------------------------- */
.pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem;
  margin-top:clamp(2.5rem,5vw,4rem);font-family:var(--font-ui)}
.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;
  min-width:44px;height:44px;padding:0 .8rem;font-size:.92rem;font-weight:500;color:var(--body);
  border:1px solid var(--hairline);border-radius:4px;background:var(--paper);transition:.22s var(--ease)}
.pagination a:hover{border-color:var(--teal);color:var(--ink);background:var(--paper-deep)}
.pagination .is-active,.pagination [aria-current="page"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pagination .is-disabled,.pagination [aria-disabled="true"]{opacity:.4;pointer-events:none}
.pagination .page-prev .ic,.pagination .page-next .ic{width:16px;height:16px}
.pagination .page-prev .ic{transform:scaleX(-1)}
.pagination .page-gap{border:none;background:none;min-width:24px;color:var(--muted)}


/* ---------------------------------------------------------------------
   11) BOŞ DURUM  (.empty)  — sonuç/kayıt yokken
   --------------------------------------------------------------------- */
.empty{text-align:center;max-width:460px;margin-inline:auto;padding:clamp(3rem,7vw,5rem) 1.5rem}
.empty .empty-emblem{width:76px;height:76px;border-radius:50%;margin:0 auto 1.4rem;display:flex;align-items:center;justify-content:center;
  background:var(--sage-mist);color:var(--teal)}
.empty .empty-emblem .ic{width:34px;height:34px}
.empty h3{font-family:var(--font-head);font-weight:500;color:var(--ink);font-size:1.4rem;margin-bottom:.5rem}
.empty p{font-family:var(--font);color:var(--muted);font-size:.98rem;line-height:1.6;margin-bottom:1.4rem}
.empty .empty-actions{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}


/* ---------------------------------------------------------------------
   12) YARDIMCILAR — iç sayfalar için ince rötuş sınıfları
   --------------------------------------------------------------------- */
.section-tight{padding-block:clamp(3rem,6vw,4.5rem)}
.hairline-top{border-top:1px solid var(--hairline)}
.hairline-bottom{border-bottom:1px solid var(--hairline)}
.results-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem}
.results-count{font-family:var(--font-ui);font-size:.86rem;color:var(--muted);letter-spacing:.02em}
.results-count b{color:var(--ink);font-weight:600}
.text-lead{font-family:var(--font-head);font-style:italic;color:var(--muted);font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.5;max-width:60ch}


/* ---------------------------------------------------------------------
   13) DUYARLI (RESPONSIVE)
   --------------------------------------------------------------------- */
@media(max-width:1024px){
  .content-wrap.has-aside{grid-template-columns:1fr}
  .content-aside{position:static}
  .pd-grid{grid-template-columns:1fr;gap:2.5rem}
  .pd-media{max-width:560px}
  .news-grid{grid-template-columns:repeat(2,1fr)}
  .news-lead{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr;gap:2.5rem}
}
@media(max-width:640px){
  .news-grid{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .pd-meta .pd-row{grid-template-columns:1fr;gap:.2rem}
  .article-foot{flex-direction:column;align-items:flex-start}
  .results-bar{flex-direction:column;align-items:flex-start}
}


/* ---------------------------------------------------------------------
   14) HAREKET AZALTMA
   --------------------------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .spec-media img,.product-card .product-thumb img,.news-thumb img,
  .news-card,.product-card,.pagination a{transition:none!important}
}
