/* ============================================================
   KURT CLINIC — V2 DESIGN SYSTEM
   Homepage loads this file alone. Inner pages load it after site.css:
   part A defines the shared shell (header, footer, buttons, mobile bar),
   part C restyles the existing inner-page components without touching
   their markup or content.
   ============================================================ */

/* ---------- A. TOKENS + BASE ---------- */
:root{
  --navy:#223249; --navy-2:#2c4262; --navy-soft:#5B6B7D; --navy-faint:#5F6E80;
  --green:#19B480; --green-ink:#0F7E5C; --green-ink-2:#0c6a4d; --green-tint:#EEF7F3; --green-on-navy:#7fe0bd;
  --ink:#1B2733; --paper:#FFFFFF; --warm:#FAF7F2;
  --line:rgba(34,50,73,.12);
  --r-lg:20px; --r-md:14px; --r-sm:10px;
  --shadow:0 1px 2px rgba(34,50,73,.06), 0 8px 24px rgba(34,50,73,.06);
  --shadow-hover:0 2px 4px rgba(34,50,73,.08), 0 16px 40px rgba(34,50,73,.12);
  --container:1200px;
  --ease-out:cubic-bezier(.2,.7,.2,1);
  /* retire the monospace voice site-wide */
  --font-body:'Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-mono:var(--font-body);
  --radius:12px;
}
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-tap-highlight-color:rgba(25,180,128,.15); }
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } *{ transition-duration:0ms !important; animation:none !important; } }
body{ margin:0; font-family:var(--font-body); color:var(--ink); background:var(--paper); line-height:1.6; -webkit-font-smoothing:antialiased; }
img{ max-width:100%; display:block; }
a{ color:inherit; touch-action:manipulation; }
button, summary{ touch-action:manipulation; }
h1,h2,h3,p{ margin:0; }
h1,h2,h3{ text-wrap:balance; color:var(--navy); letter-spacing:-.015em; line-height:1.15; }
p, li{ text-wrap:pretty; }
ul{ margin:0; padding:0; list-style:none; }
:focus-visible{ outline:3px solid var(--green); outline-offset:3px; border-radius:6px; }
.wrap{ max-width:var(--container); margin-inline:auto; padding-inline:clamp(16px,4vw,40px); }
.skip-link{ position:absolute; left:16px; top:-60px; background:var(--navy); color:#fff; padding:10px 16px; border-radius:8px; z-index:200; }
.skip-link:focus{ top:12px; }
section{ scroll-margin-top:84px; }
.tel{ font-variant-numeric:tabular-nums; }
.v2-sprite{ position:absolute; width:0; height:0; overflow:hidden; }

/* buttons */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 24px; border-radius:999px; font-weight:600; font-size:1rem; text-decoration:none; transition:transform .2s var(--ease-out), background-color .2s var(--ease-out), box-shadow .2s var(--ease-out); white-space:nowrap; }
.btn svg{ width:20px; height:20px; flex-shrink:0; }
.btn:hover{ transform:translateY(-2px); }
.btn-wa{ background:var(--green-ink); color:#fff; box-shadow:0 6px 18px rgba(15,126,92,.25); }
.btn-wa:hover{ background:var(--green-ink-2); }
.btn-call{ background:var(--navy); color:#fff; }
.btn-call:hover{ background:var(--navy-2); }
.btn-ghost{ background:#fff; color:var(--navy); box-shadow:inset 0 0 0 1.5px var(--line); }
.btn-ghost:hover{ box-shadow:inset 0 0 0 1.5px var(--navy); }
.btn-sm{ min-height:44px; padding:0 18px; font-size:.92rem; }

/* header */
.hdr{ position:sticky; top:0; z-index:100; background:rgba(255,255,255,.97); border-bottom:1px solid var(--line); }
.hdr-in{ display:flex; align-items:center; gap:20px; min-height:76px; }
.logo{ display:flex; align-items:center; min-height:44px; flex-shrink:0; }
.logo img{ height:26px; width:auto; }
.nav{ display:flex; gap:2px; margin-left:auto; }
.nav a{ display:inline-flex; align-items:center; min-height:44px; white-space:nowrap; text-decoration:none; font-weight:500; font-size:.93rem; color:var(--navy); padding:0 11px; border-radius:8px; transition:background-color .2s, color .2s; }
.nav a:hover{ background:var(--warm); }
.nav a[aria-current="page"]{ color:var(--green-ink); background:var(--green-tint); }
.hdr-cta{ display:flex; gap:10px; }
.menu{ display:none; margin-left:auto; }
.menu summary{ list-style:none; width:48px; height:48px; display:grid; place-items:center; border-radius:12px; cursor:pointer; }
.menu summary::-webkit-details-marker{ display:none; }
.menu summary svg{ width:26px; height:26px; color:var(--navy); }
.menu[open] summary{ background:var(--warm); }
.menu-panel{ position:absolute; left:0; right:0; top:100%; background:#fff; border-bottom:1px solid var(--line); box-shadow:0 20px 40px rgba(34,50,73,.12); padding:8px clamp(16px,4vw,40px) 20px; overscroll-behavior:contain; max-height:calc(100vh - 76px); overflow-y:auto; }
.menu-panel a:not(.btn){ display:flex; align-items:center; min-height:52px; font-weight:500; color:var(--navy); text-decoration:none; border-bottom:1px solid var(--line); }
.menu-panel a[aria-current="page"]{ color:var(--green-ink); }
.menu-panel .btn{ width:100%; margin-top:14px; }
@media (max-width:1120px){ .nav,.hdr-cta{ display:none; } .menu{ display:block; } }

/* section scaffolding */
.sec{ padding-block:clamp(56px,8vw,104px); }
.sec-warm{ background:var(--warm); }
.sec-head{ display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:clamp(28px,4vw,44px); flex-wrap:wrap; }
.kicker{ display:block; font-family:var(--font-body); font-size:.82rem; font-weight:600; color:var(--green-ink); letter-spacing:.06em; text-transform:uppercase; margin-bottom:10px; }
.kicker::before{ display:none !important; }
.sec h2{ font-size:clamp(1.8rem,1.3rem + 1.8vw,2.6rem); font-weight:700; }
.lede{ color:var(--navy-soft); max-width:56ch; margin-top:12px; }
.note{ font-size:.85rem; color:var(--navy-soft); }

/* footer */
.ftr{ background:var(--warm); padding-block:56px 120px; font-size:.9rem; color:var(--navy-soft); }
.ftr-grid{ display:grid; grid-template-columns:1.5fr repeat(5,1fr); gap:28px; }
.ftr-brand img{ height:24px; width:auto; margin-bottom:14px; }
.ftr-brand p + p{ margin-top:8px; }
.ftr-brand a{ text-decoration:none; color:var(--navy); font-weight:500; }
.ftr-brand a:hover{ color:var(--green-ink); text-decoration:underline; }
.ftr h3{ font-size:.8rem; text-transform:uppercase; letter-spacing:.06em; margin-bottom:10px; }
.ftr li a{ display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }
.ftr li a:hover{ color:var(--green-ink); text-decoration:underline; }
.ftr-legal{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 20px; margin-top:32px; padding-top:20px; border-top:1px solid var(--line); }
.ftr-legal a{ display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }
.ftr-legal a:hover{ text-decoration:underline; }
[hidden]{ display:none !important; }
.ftr-legal .disc{ flex-basis:100%; font-size:.82rem; }
@media (min-width:861px){ .ftr{ padding-bottom:56px; } .ftr li a, .ftr-legal a{ min-height:0; padding:5px 0; } }
@media (max-width:1120px){ .ftr-grid{ grid-template-columns:repeat(3,1fr); } .ftr-brand{ grid-column:1 / -1; } }
@media (max-width:560px){ .ftr-grid{ grid-template-columns:1fr 1fr; } }

/* mobile sticky action bar */
.mbar{ display:none; }
@media (max-width:860px){
  .mbar{ display:grid; grid-template-columns:1fr 1fr; gap:10px; position:fixed; left:0; right:0; bottom:0; z-index:90; padding:10px 16px calc(10px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.97); border-top:1px solid var(--line); box-shadow:0 -8px 24px rgba(34,50,73,.08); }
  .mbar .btn{ min-height:50px; padding:0 12px; }
}

/* reveal (progressive: content visible without JS) */
.js .rv{ opacity:0; transform:translateY(16px); transition:opacity .6s var(--ease-out), transform .6s var(--ease-out); }
.js .rv.in{ opacity:1; transform:none; }

/* ---------- B. HOMEPAGE ---------- */
.hero{ background:linear-gradient(180deg,#fff 0%, var(--warm) 100%); overflow:hidden; }
.hero-grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(24px,5vw,64px); align-items:center; padding-block:clamp(36px,6vw,80px) 0; }
.pill{ display:inline-flex; align-items:center; gap:8px; background:var(--green-tint); color:var(--green-ink); font-weight:600; font-size:.82rem; padding:8px 14px; border-radius:999px; }
.pill::before{ content:""; width:8px; height:8px; border-radius:50%; background:var(--green); }
.hero h1{ font-size:clamp(2.2rem,1.4rem + 2.8vw,3.4rem); font-weight:700; margin:20px 0 18px; }
.hero h1 em{ font-style:normal; color:var(--green-ink); }
.hero-sub{ font-size:clamp(1.02rem,.95rem + .3vw,1.15rem); color:var(--navy-soft); max-width:52ch; }
.hero-cta{ display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.hero-facts{ display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:28px; padding-bottom:clamp(32px,5vw,72px); }
.hero-facts li{ display:flex; align-items:center; gap:8px; font-size:.92rem; color:var(--navy); font-weight:500; }
.hero-facts svg{ width:18px; height:18px; color:var(--green-ink); flex-shrink:0; }
.hero-visual{ position:relative; align-self:end; }
.hero-photo{ position:relative; border-radius:28px 28px 0 0; overflow:hidden; background:#fff; aspect-ratio:4/4.6; box-shadow:var(--shadow); }
.hero-photo::before{ content:""; position:absolute; inset:auto -20% -30% -20%; height:70%; background:radial-gradient(closest-side, var(--green-tint), transparent); }
.hero-photo img{ position:relative; width:100%; height:100%; object-fit:cover; object-position:50% 0; }
.hero-badge{ position:absolute; left:-20px; bottom:28px; background:#fff; border-radius:var(--r-md); padding:14px 18px; box-shadow:var(--shadow-hover); display:flex; gap:12px; align-items:center; max-width:300px; }
.hero-badge .dot{ width:42px; height:42px; border-radius:12px; background:var(--navy); color:#fff; display:grid; place-items:center; flex-shrink:0; }
.hero-badge .dot svg{ width:22px; height:22px; }
.hero-badge strong{ display:block; color:var(--navy); font-size:.95rem; line-height:1.3; }
.hero-badge span{ font-size:.82rem; color:var(--navy-soft); }
@media (max-width:860px){
  .hero-grid{ grid-template-columns:1fr; }
  .hero-visual{ order:-1; max-width:420px; width:100%; margin-inline:auto; }
  .hero-photo{ aspect-ratio:4/3.4; border-radius:24px; }
  .hero-badge{ left:12px; bottom:12px; padding:10px 14px; }
  .hero-facts{ padding-bottom:40px; }
  .hero-cta .btn{ flex:1 1 220px; }
}

.tiles{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.tile{ display:flex; align-items:center; gap:16px; background:#fff; border-radius:var(--r-md); padding:20px; text-decoration:none; box-shadow:var(--shadow); transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out); min-height:88px; }
.tile:hover{ transform:translateY(-3px); box-shadow:var(--shadow-hover); }
.tile .ic{ width:48px; height:48px; border-radius:14px; background:var(--green-tint); color:var(--green-ink); display:grid; place-items:center; flex-shrink:0; transition:background-color .25s, color .25s; }
.tile:hover .ic{ background:var(--green-ink); color:#fff; }
.tile .ic svg{ width:24px; height:24px; }
.tile strong{ display:block; color:var(--navy); font-weight:600; font-size:1.02rem; }
.tile span{ font-size:.86rem; color:var(--navy-soft); }
.tile .arr{ margin-left:auto; color:var(--navy-soft); transition:transform .25s var(--ease-out); }
.tile:hover .arr{ transform:translateX(4px); color:var(--green-ink); }
@media (max-width:860px){ .tiles{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .tiles{ grid-template-columns:1fr; } .tile{ padding:16px; min-height:72px; } }

.cards{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.card{ position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:var(--r-lg); padding:26px 24px 22px; text-decoration:none; transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out), border-color .25s; min-height:230px; }
.card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-hover); border-color:transparent; }
.card .n{ font-size:.8rem; font-weight:600; color:var(--green-ink); background:var(--green-tint); width:36px; height:36px; border-radius:10px; display:grid; place-items:center; }
.card h3{ font-size:1.3rem; font-weight:600; margin:22px 0 8px; }
.card p{ font-size:.92rem; color:var(--navy-soft); }
.card .more{ margin-top:auto; padding-top:18px; font-weight:600; font-size:.9rem; color:var(--navy); display:flex; align-items:center; gap:6px; }
.card:hover .more{ color:var(--green-ink); }
.card.feature{ background:var(--navy); border-color:var(--navy); }
.card.feature h3{ color:#fff; } .card.feature p{ color:rgba(255,255,255,.75); } .card.feature .more{ color:#fff; }
.card.feature .n{ background:rgba(255,255,255,.12); color:var(--green-on-navy); }
@media (max-width:980px){ .cards{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .cards{ grid-template-columns:1fr; } .card{ min-height:0; } }

.sub-services{ display:grid; grid-template-columns:auto 1fr 1fr 1fr; gap:14px; align-items:stretch; margin-top:22px; }
.sub-services .lbl{ display:flex; align-items:center; font-weight:600; color:var(--navy); padding-right:10px; }
.chip{ display:flex; align-items:center; justify-content:space-between; gap:10px; background:var(--warm); border-radius:var(--r-md); padding:16px 20px; min-height:56px; text-decoration:none; font-weight:500; color:var(--navy); transition:background-color .2s; }
.chip:hover{ background:var(--green-tint); color:var(--green-ink); }
@media (max-width:860px){ .sub-services{ grid-template-columns:1fr; } }

.mdk{ background:var(--navy); color:#fff; position:relative; overflow:hidden; }
.mdk::after{ content:""; position:absolute; right:-160px; top:-160px; width:480px; height:480px; border-radius:50%; background:radial-gradient(closest-side, rgba(25,180,128,.22), transparent); pointer-events:none; }
.mdk-grid{ position:relative; display:grid; grid-template-columns:1fr 1.15fr; gap:clamp(28px,5vw,72px); align-items:center; }
.mdk .kicker{ color:var(--green-on-navy); }
.mdk h2{ color:#fff; }
.mdk .by{ color:rgba(255,255,255,.75); margin-top:12px; }
.mdk .caveat{ margin-top:24px; padding:16px 18px; border-radius:var(--r-sm); background:rgba(255,255,255,.07); color:rgba(255,255,255,.9); font-size:.93rem; border-left:3px solid var(--green); }
.mdk .actions{ display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.mdk .btn-ghost, .cc-main .btn-ghost{ background:transparent; color:#fff; box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35); }
.mdk .btn-ghost:hover, .cc-main .btn-ghost:hover{ box-shadow:inset 0 0 0 1.5px #fff; }
.facts{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.fact{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:var(--r-md); padding:22px; }
.fact .ic{ width:44px; height:44px; border-radius:12px; background:var(--green); color:var(--navy); display:grid; place-items:center; margin-bottom:16px; }
.fact .ic svg{ width:22px; height:22px; }
.fact p{ font-weight:600; font-size:1.05rem; line-height:1.35; }
@media (max-width:860px){ .mdk-grid{ grid-template-columns:1fr; } }
@media (max-width:560px){ .facts{ gap:10px; } .fact{ padding:16px; } .fact .ic{ width:38px; height:38px; margin-bottom:12px; } .fact p{ font-size:.95rem; } }

.doc-grid{ display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(28px,5vw,72px); align-items:center; }
.doc-photo{ border-radius:var(--r-lg); overflow:hidden; background:#fff; aspect-ratio:4/4.4; box-shadow:var(--shadow); }
.doc-photo img{ width:100%; height:100%; object-fit:cover; object-position:50% 10%; }
.doc-role{ display:inline-block; font-weight:600; color:var(--green-ink); font-size:.9rem; }
.doc h2{ margin:8px 0 18px; }
.doc p{ color:var(--navy-soft); max-width:56ch; }
.doc p + p{ margin-top:12px; }
.doc .btn{ margin-top:26px; }
.care{ display:flex; gap:18px; align-items:center; margin-top:34px; padding:16px; background:var(--warm); border-radius:var(--r-md); max-width:520px; }
.care img{ width:84px; height:84px; border-radius:14px; object-fit:cover; object-position:50% 20%; flex-shrink:0; }
.care strong{ display:block; color:var(--navy); }
.care span{ font-size:.9rem; color:var(--navy-soft); }
@media (max-width:860px){ .doc-grid{ grid-template-columns:1fr; } .doc-photo{ max-width:420px; } }

.steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin:0; padding:0; list-style:none; }
.step{ background:#fff; border-radius:var(--r-md); padding:24px; box-shadow:var(--shadow); }
.step .n{ width:40px; height:40px; border-radius:50%; background:var(--navy); color:#fff; display:grid; place-items:center; font-weight:600; font-size:.95rem; margin-bottom:16px; }
.step:last-child .n{ background:var(--green-ink); }
.step h3{ font-size:1.12rem; font-weight:600; margin-bottom:6px; }
.step p{ font-size:.92rem; color:var(--navy-soft); }
@media (max-width:860px){ .steps{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .steps{ grid-template-columns:1fr; } }

.contact-card{ display:grid; grid-template-columns:1.1fr .9fr; border-radius:28px; overflow:hidden; box-shadow:var(--shadow-hover); }
.cc-main{ background:var(--navy); color:#fff; padding:clamp(28px,5vw,56px); }
.cc-main .kicker{ color:var(--green-on-navy); }
.cc-main h2{ color:#fff; }
.cc-main .lede{ color:rgba(255,255,255,.75); }
.big-tel{ display:inline-block; margin-top:26px; font-size:clamp(1.7rem,1.2rem + 2vw,2.5rem); font-weight:700; color:#fff; text-decoration:none; letter-spacing:.01em; }
.big-tel:hover{ color:var(--green-on-navy); }
.cc-main .actions{ display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.cc-side{ background:#fff; padding:clamp(28px,5vw,56px); display:flex; flex-direction:column; gap:22px; }
.info{ display:flex; gap:14px; }
.info .ic{ width:44px; height:44px; border-radius:12px; background:var(--green-tint); color:var(--green-ink); display:grid; place-items:center; flex-shrink:0; }
.info .ic svg{ width:22px; height:22px; }
.info small{ display:block; font-size:.8rem; font-weight:600; color:var(--navy-soft); text-transform:uppercase; letter-spacing:.05em; }
.info a, .info p{ color:var(--navy); font-weight:500; text-decoration:none; overflow-wrap:anywhere; }
.info a:hover{ color:var(--green-ink); text-decoration:underline; }
@media (max-width:860px){ .contact-card{ grid-template-columns:1fr; border-radius:var(--r-lg); } }

/* homepage blocks carrying the v1 copy */
.h-rail{ display:grid; grid-template-columns:repeat(3,auto); gap:14px 28px; margin:30px 0 0; padding-bottom:clamp(32px,5vw,72px); }
.h-rail div{ border-left:3px solid var(--green); padding-left:12px; }
.h-rail dt{ font-size:.75rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--green-ink); }
.h-rail dd{ margin:2px 0 0; font-size:.92rem; font-weight:500; color:var(--navy); }
@media (max-width:860px){ .h-rail{ grid-template-columns:1fr; padding-bottom:40px; } }
figure.hero-visual{ margin:0; }
.hero-badge strong{ font-size:.9rem; }

.h-sx{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.h-sx-card{ display:flex; flex-direction:column; gap:10px; background:#fff; border-radius:var(--r-lg); padding:22px; text-decoration:none; box-shadow:var(--shadow); transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out); }
.h-sx-card:hover{ transform:translateY(-3px); box-shadow:var(--shadow-hover); }
.h-sx-card .ic{ width:48px; height:48px; border-radius:14px; background:var(--green-tint); color:var(--green-ink); display:grid; place-items:center; transition:background-color .25s, color .25s; }
.h-sx-card:hover .ic{ background:var(--green-ink); color:#fff; }
.h-sx-card .ic svg{ width:24px; height:24px; }
.h-sx-card strong{ color:var(--navy); font-weight:600; font-size:1.08rem; }
.h-sx-card p{ font-size:.9rem; color:var(--navy-soft); }
.h-sx-card .go{ margin-top:auto; padding-top:6px; font-weight:600; font-size:.9rem; color:var(--navy); }
.h-sx-card:hover .go{ color:var(--green-ink); }
@media (max-width:980px){ .h-sx{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .h-sx{ grid-template-columns:1fr; } }

.steps .step .n{ font-size:.85rem; }

.h-focus{ display:grid; grid-template-columns:minmax(220px,.8fr) 2fr; gap:18px; align-items:stretch; }
.h-figure{ margin:0; background:#fff; border-radius:var(--r-lg); padding:20px; box-shadow:var(--shadow); display:flex; flex-direction:column; justify-content:center; gap:12px; }
.h-figure img{ width:100%; height:auto; }
.h-figure figcaption{ font-size:.8rem; color:var(--navy-soft); }
.h-cards{ grid-template-columns:1fr 1fr; }
.card .h-name{ display:block; font-size:1.25rem; font-weight:600; color:var(--navy); margin:18px 0 6px; }
.card.feature .h-name{ color:#fff; }
.h-more{ margin-top:22px; }
@media (max-width:860px){ .h-focus{ grid-template-columns:1fr; } .h-figure{ max-width:420px; } }
@media (max-width:560px){ .h-cards{ grid-template-columns:1fr; } }

.mdk .fact .ic{ font-weight:700; font-size:.9rem; }

.h-qline{ background:var(--green-tint); }
.h-qline-in{ display:flex; align-items:center; justify-content:space-between; gap:16px 28px; flex-wrap:wrap; padding-block:28px; }
.h-qline-in p{ font-weight:500; color:var(--navy); max-width:56ch; }
.h-qline-links{ display:flex; gap:10px; flex-wrap:wrap; }

.h-doc-fig{ margin:0; }
.h-doc-fig figcaption{ margin-top:10px; font-size:.82rem; color:var(--navy-soft); }

.h-care{ display:grid; grid-template-columns:240px 1fr; gap:clamp(20px,4vw,40px); align-items:center; background:#fff; border-radius:var(--r-lg); padding:clamp(18px,3vw,28px); box-shadow:var(--shadow); max-width:860px; }
.h-care figure{ margin:0; }
.h-care img{ width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; object-position:50% 22%; border-radius:var(--r-md); display:block; }
.h-care figcaption{ margin-top:8px; font-size:.8rem; color:var(--navy-soft); }
.h-care h2{ font-size:clamp(1.4rem,1.1rem + 1vw,1.8rem); margin-bottom:10px; }
.h-care p{ color:var(--navy-soft); }
.h-care-sec{ padding-block:clamp(40px,6vw,72px); }
@media (max-width:560px){ .h-care{ grid-template-columns:1fr; text-align:left; } .h-care figure{ max-width:260px; } }

.h-svc{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.h-svc .card{ min-height:0; }
@media (max-width:860px){ .h-svc{ grid-template-columns:1fr; } }

.h-guide{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.h-guide a{ display:flex; align-items:center; justify-content:space-between; min-height:56px; padding:0 20px; background:#fff; border-radius:var(--r-md); box-shadow:var(--shadow); text-decoration:none; font-weight:500; color:var(--navy); transition:transform .2s var(--ease-out), box-shadow .2s; }
.h-guide a::after{ content:"→"; color:var(--navy-soft); }
.h-guide a:hover{ transform:translateY(-2px); box-shadow:var(--shadow-hover); color:var(--green-ink); }
@media (max-width:860px){ .h-guide{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .h-guide{ grid-template-columns:1fr; } }

.h-fc{ margin:28px 0 0; display:grid; gap:16px; }
.h-fc .info .ic{ background:rgba(255,255,255,.1); color:var(--green-on-navy); }
.h-fc dt{ font-size:.75rem; font-weight:600; letter-spacing:.05em; text-transform:uppercase; color:rgba(255,255,255,.6); }
.h-fc dd{ margin:2px 0 0; color:#fff; font-weight:500; }
.h-fc dd a{ color:#fff; text-decoration:underline; text-decoration-color:rgba(255,255,255,.35); text-underline-offset:3px; overflow-wrap:anywhere; }
.h-fc dd a:hover{ text-decoration-color:var(--green); }
.h-direct-title{ font-size:1.3rem; font-weight:600; }
.h-direct-lead{ color:var(--navy-soft); }
.h-actions{ display:grid; gap:10px; }
.h-actions a{ display:flex; align-items:center; gap:12px; min-height:56px; padding:6px 16px 6px 8px; border-radius:var(--r-md); background:var(--warm); text-decoration:none; font-weight:600; color:var(--navy); overflow-wrap:anywhere; transition:background-color .2s; }
.h-actions a:hover{ background:var(--green-tint); color:var(--green-ink); }
.h-actions .ic{ width:40px; height:40px; border-radius:10px; background:#fff; color:var(--green-ink); display:grid; place-items:center; flex-shrink:0; }
.h-actions .ic svg{ width:20px; height:20px; }
.h-actions a > span[aria-hidden]{ margin-left:auto; }

/* ---------- C. INNER PAGES (restyles existing site.css components) ---------- */
body{ font-size:1rem; }
.section{ padding-block:clamp(56px,8vw,96px); }

/* page hero */
.page-hero{ background:linear-gradient(180deg,#fff 0%, var(--warm) 100%); padding-block:clamp(24px,4vw,44px) clamp(40px,6vw,72px); }
.page-hero h1{ font-size:clamp(2.3rem,1.4rem + 3vw,3.6rem); font-weight:700; letter-spacing:-.02em; max-width:22ch; }
.page-hero .kicker{ margin-bottom:12px; }
.page-hero-lede{ color:var(--navy-soft); }
.page-hero-meta{ margin-top:1.6em; }
.breadcrumb{ font-size:.85rem; gap:4px 8px; margin-bottom:clamp(20px,3vw,32px); }
.breadcrumb a{ display:inline-flex; align-items:center; min-height:32px; }
.breadcrumb .current{ font-weight:500; }

/* links */
.link-cta{ font-family:var(--font-body); font-weight:600; color:var(--navy); border-bottom-color:var(--green); }
.link-cta:hover, .link-cta:focus-visible{ color:var(--green-ink); }
.link-quiet{ font-weight:500; }

/* table of contents → chip bar */
.toc{ border:0; background:#fff; border-radius:var(--r-lg); box-shadow:var(--shadow); padding:14px 18px; margin-block:-28px 8px; position:relative; z-index:2; align-items:center; gap:10px 16px; }
.toc-label{ font-family:var(--font-body); font-size:.8rem; font-weight:600; letter-spacing:.04em; color:var(--navy); text-transform:uppercase; }
.toc-list{ gap:8px; }
.toc-list a{ display:inline-flex; align-items:center; min-height:40px; padding:0 14px; border-radius:999px; background:var(--warm); border:0; color:var(--navy); font-weight:500; font-size:.88rem; transition:background-color .2s, color .2s; }
.toc-list a:hover, .toc-list a:focus-visible{ background:var(--green-tint); color:var(--green-ink); border:0; }

/* article */
.article-section h2{ font-size:clamp(1.6rem,1.2rem + 1.5vw,2.2rem); font-weight:700; letter-spacing:-.015em; }
.article-section h3{ font-weight:600; }
.article-body p{ font-size:1.04rem; }
.article-body ul li::marker, .article-body ol li::marker{ color:var(--green-ink); font-weight:600; }

/* callout → tinted info card */
.callout{ border-left:0; background:var(--green-tint); border-radius:var(--r-md); padding:18px 20px 18px 56px; position:relative; }
.callout::before{ content:"i"; position:absolute; left:18px; top:18px; width:24px; height:24px; border-radius:50%; background:var(--green-ink); color:#fff; font-weight:700; font-size:.8rem; display:grid; place-items:center; font-style:normal; }
.surface-warm .callout{ background:#fff; box-shadow:var(--shadow); }

/* figures */
.med-figure{ border-top:0; padding:18px; background:#fff; border-radius:var(--r-lg); box-shadow:var(--shadow); max-width:30rem; }
.med-figure img{ border:0; border-radius:var(--r-md); background:#fff; }
.med-figure figcaption{ font-size:.8rem; letter-spacing:0; }

/* editorial rows → cards */
.focus-list{ border-top:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:14px; }
.focus-list .focus-row, .focus-list .focus-row.has-thumb{
  display:flex; flex-direction:column; align-items:flex-start; gap:6px;
  background:#fff; border:1px solid var(--line); border-radius:var(--r-lg);
  padding:22px; margin:0; min-height:0;
  transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out), border-color .25s;
}
.surface-paper .focus-list .focus-row{ background:var(--warm); border-color:transparent; }
.focus-list .focus-row:hover, .focus-list .focus-row:focus-visible{ background:#fff; transform:translateY(-3px); box-shadow:var(--shadow-hover); border-color:transparent; }
.focus-row .num{ font-size:.78rem; font-weight:600; color:var(--green-ink); background:var(--green-tint); min-width:34px; height:34px; padding:0 8px; border-radius:10px; display:grid; place-items:center; margin-bottom:8px; }
.focus-row .name{ font-size:1.15rem; font-weight:600; color:var(--navy); }
.focus-row .desc{ font-size:.92rem; color:var(--navy-soft); }
.focus-row .go{ margin-top:auto; padding-top:10px; color:var(--navy); font-size:1.1rem; }
.focus-row .focus-thumb{ width:64px; height:64px; border:0; border-radius:12px; margin-bottom:6px; }

.guide-grid{ border:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:12px; }
.guide-grid .guide-row{ border:0; background:#fff; border-radius:var(--r-md); box-shadow:var(--shadow); padding:16px 18px; min-height:64px; align-items:center; transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out); }
.surface-paper .guide-grid .guide-row{ background:var(--warm); box-shadow:none; }
.guide-grid .guide-row:hover, .guide-grid .guide-row:focus-visible{ background:#fff; transform:translateY(-2px); box-shadow:var(--shadow-hover); }
.guide-row .num{ font-size:.78rem; font-weight:600; color:var(--green-ink); background:var(--green-tint); min-width:32px; height:32px; border-radius:9px; display:grid; place-items:center; }
.guide-row .name{ font-weight:600; color:var(--navy); }
.guide-index a{ font-weight:500; }

/* symptom accordions (şikâyetler page) */
.sx-list{ border-top:0; display:grid; gap:12px; }
.sx-item{ border:1px solid var(--line); border-radius:var(--r-md); background:#fff; padding-inline:20px; transition:box-shadow .25s; }
.sx-item[open]{ box-shadow:var(--shadow-hover); border-color:transparent; }
.sx-name{ font-weight:600; color:var(--navy); }
.sx-sign{ width:32px; height:32px; border-radius:50%; background:var(--green-tint); color:var(--green-ink); display:grid; place-items:center; }

/* FAQ */
.faq-list{ border-top:0; display:grid; gap:10px; }
.faq-item{ border:1px solid var(--line); border-radius:var(--r-md); background:#fff; padding-inline:20px; }
.faq-trigger{ font-weight:600; color:var(--navy); min-height:56px; }
.faq-icon{ font-family:var(--font-body); }

/* related context map */
.context-group h3{ font-family:var(--font-body); font-weight:600; color:var(--navy); }
.context-group a{ border:1px solid var(--line); border-radius:var(--r-sm); background:#fff; margin:0; padding:12px 14px; min-height:48px; display:flex; align-items:center; }
.context-current{ font-family:var(--font-body); font-weight:600; border-radius:999px; padding:12px 22px; }

/* MDK highlight box (hemoroid page) */
.mdk-hero{ border-radius:24px; position:relative; overflow:hidden; }
.mdk-hero::after{ content:""; position:absolute; right:-120px; top:-120px; width:360px; height:360px; border-radius:50%; background:radial-gradient(closest-side, rgba(25,180,128,.22), transparent); pointer-events:none; }
.mdk-hero > *{ position:relative; z-index:1; }
.mdk-hero-kicker{ font-family:var(--font-body); font-weight:600; color:var(--green-on-navy); }
.mdk-hero-facts li{ border-top:0; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); border-radius:var(--r-md); padding:16px; font-weight:600; }
.mdk-hero-facts .n{ color:var(--green-on-navy); font-weight:600; }
.mdk-hero-btn{ border-radius:999px; font-weight:600; }
.mdk-hero-btn.is-primary{ background:var(--green); border-color:var(--green); color:#06281C; }
@media (max-width:860px){ .mdk-hero-facts{ grid-template-columns:1fr 1fr; } }

/* contextual quick contact → card */
#quick-contact.surface-tint{ background:var(--warm); }
.quick-contact-grid{ max-width:none; background:#fff; border-radius:24px; box-shadow:var(--shadow-hover); padding:clamp(24px,4vw,48px); align-items:center; }
.qc-note h2{ font-weight:700; }
.qc-direct-actions{ margin-top:0; justify-content:flex-end; }
.qc-direct-btn{ border-radius:999px; min-height:52px; padding:0 26px; font-weight:600; border:0; }
.qc-direct-primary{ background:var(--green-ink); color:#fff; border-bottom:0; box-shadow:0 6px 18px rgba(15,126,92,.25); }
.qc-direct-primary:hover, .qc-direct-primary:focus-visible{ background:var(--green-ink-2); }
.qc-direct-secondary{ background:var(--navy); color:#fff; border:0; }
.qc-direct-secondary:hover, .qc-direct-secondary:focus-visible{ background:var(--navy-2); color:#fff; }
@media (max-width:760px){ .quick-contact-grid{ grid-template-columns:1fr; } .qc-direct-actions{ justify-content:stretch; } .qc-direct-btn{ flex:1 1 200px; } }

/* final contact (navy) */
.surface-navy{ position:relative; overflow:hidden; }
.surface-navy::after{ content:""; position:absolute; right:-160px; bottom:-200px; width:480px; height:480px; border-radius:50%; background:radial-gradient(closest-side, rgba(25,180,128,.18), transparent); pointer-events:none; }
.surface-navy .kicker{ color:var(--green-on-navy); }
.surface-navy h1, .surface-navy h2, .surface-navy h3{ color:#fff; font-weight:700; }
.fc-list .label{ font-family:var(--font-body); font-weight:600; font-size:.76rem; }
.fc-back{ border-bottom:0; background:var(--green-ink); border-radius:999px; padding:0 24px; min-height:52px; font-weight:600; }
.fc-back:hover{ background:var(--green-ink-2); }

/* above-the-fold hero never fades in */
.page-hero.reveal{ opacity:1 !important; transform:none !important; }

/* doctor photo: soft card instead of framed author box */
.doctor-photo img{ border:0; border-radius:var(--r-lg); box-shadow:var(--shadow); background:#fff; object-fit:cover; object-position:50% 10%; }
.doctor-photo figcaption{ display:none; }

/* mobile: compact list rows, 44px tap targets for text links */
.link-cta, .link-quiet, .xref{ display:inline-flex; align-items:center; min-height:44px; }
@media (max-width:560px){
  .focus-list{ gap:10px; }
  .focus-list .focus-row, .focus-list .focus-row.has-thumb{ flex-direction:row; align-items:center; gap:14px; padding:14px 16px; }
  .focus-row .num{ margin-bottom:0; flex-shrink:0; }
  .focus-row .focus-thumb{ width:44px; height:44px; margin-bottom:0; }
  .focus-row .go{ margin:0 0 0 auto; padding:0; }
  .breadcrumb a{ min-height:44px; }
}

/* legacy shells no longer rendered */
.site-header, .site-footer, .mobile-cta-bar{ display:none !important; }

/* ---------- D. V2-FINAL COMPLETION — remaining legacy components on the new system ---------- */

/* shared type tokens for legacy class names */
.eyebrow{ display:block; font-family:var(--font-body); font-size:.82rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--green-ink); margin-bottom:10px; }
.surface-navy .eyebrow{ color:var(--green-on-navy); }
.micro-note{ font-family:var(--font-body); font-size:.85rem; letter-spacing:0; color:var(--navy-soft); margin-top:.9em; }
.section-lede{ color:var(--navy-soft); font-size:1.05rem; max-width:56ch; }
.h2-lg{ font-size:clamp(2rem,1.3rem + 2.4vw,3rem); font-weight:700; letter-spacing:-.02em; }
.h2-md{ font-size:clamp(1.7rem,1.25rem + 1.6vw,2.4rem); font-weight:700; letter-spacing:-.015em; }
.h2-sm{ font-size:clamp(1.2rem,1rem + .6vw,1.4rem); font-weight:600; }
.section-head{ margin-bottom:clamp(24px,4vw,40px); }
.doctor-role{ font-family:var(--font-body); font-weight:600; font-size:.9rem; letter-spacing:0; }
.xref{ font-family:var(--font-body); font-size:.92rem; font-weight:600; letter-spacing:0; color:var(--green-ink); border-bottom:2px solid var(--green); }
.xref:hover, .xref:focus-visible{ color:var(--navy); }
.toc-list a{ min-height:44px; }

/* safety list → soft rows with a coral marker */
.safety-list{ list-style:none; padding:0; margin:1em 0 1.4em; display:grid; gap:8px; max-width:var(--measure, 64ch); }
.safety-list li{ position:relative; background:var(--warm); border-radius:var(--r-sm); padding:12px 16px 12px 42px; margin:0; color:var(--navy); font-weight:500; }
.safety-list li::before{ content:""; position:absolute; left:18px; top:50%; width:10px; height:10px; margin-top:-5px; border-radius:50%; background:#E06C64; }
.surface-warm .safety-list li{ background:#fff; }

/* doctor page hero */
.doctor-page-hero{ align-items:center; }
.doctor-page-hero h1{ font-size:clamp(2.3rem,1.4rem + 3vw,3.6rem); font-weight:700; letter-spacing:-.02em; line-height:1.1; color:var(--navy); margin:6px 0 12px; }

/* related context map → three cards, no connector line */
.context-map{ border-top:0; }
.context-map h2{ font-size:clamp(1.6rem,1.2rem + 1.5vw,2.2rem); font-weight:700; letter-spacing:-.015em; }
.context-map-grid{ grid-template-columns:1fr auto 1fr; gap:18px; align-items:center; }
.context-map-grid::before{ display:none; }
.context-group{ background:#fff; border-radius:var(--r-lg); padding:20px; box-shadow:var(--shadow); }
.context-group h3{ font-size:.8rem; letter-spacing:.06em; text-transform:uppercase; color:var(--green-ink); margin-bottom:12px; }
.context-group ul{ gap:8px; }
.context-group a{ background:var(--warm); border:0; font-weight:500; }
.context-group a:hover, .context-group a:focus-visible{ background:var(--green-tint); }
.context-current{ background:var(--navy); color:#fff; box-shadow:var(--shadow-hover); }
@media (max-width:760px){ .context-map-grid{ grid-template-columns:1fr; } }

/* MDK panel (mdk-yontemi) → navy card like the homepage band */
.mdk-panel{ border:0; background:var(--navy); color:#fff; border-radius:24px; padding:clamp(24px,4vw,44px); position:relative; overflow:hidden; }
.mdk-panel::after{ content:""; position:absolute; right:-140px; top:-140px; width:400px; height:400px; border-radius:50%; background:radial-gradient(closest-side, rgba(25,180,128,.2), transparent); pointer-events:none; }
.mdk-panel > *{ position:relative; z-index:1; }
.mdk-panel h2, .mdk-p-title{ color:#fff; font-weight:700; }
.mdk-panel .mdk-by{ font-family:var(--font-body); color:rgba(255,255,255,.75); font-size:.95rem; }
.mdk-panel-facts{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.mdk-fact{ border-top:0; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); border-radius:var(--r-md); padding:16px; }
.mdk-fact .num{ font-family:var(--font-body); font-weight:700; color:var(--green-on-navy); }
.mdk-fact p{ color:#fff; font-weight:600; font-size:1rem; }
.mdk-panel .mdk-caveat{ border-top:0; margin:0; padding:14px 16px; border-radius:var(--r-sm); background:rgba(255,255,255,.07); border-left:3px solid var(--green); color:rgba(255,255,255,.92); font-size:.95rem; }
@media (max-width:860px){ .mdk-panel-facts{ grid-template-columns:1fr 1fr; } }

/* İletişim page contact block (navy) */
.contact-direct h1, .contact-direct .h2-lg{ color:#fff; }
.contact-tel{ font-family:var(--font-body); font-weight:700; font-size:clamp(1.7rem,1.2rem + 2vw,2.5rem); color:#fff; border:0; text-decoration:none; letter-spacing:.01em; }
.contact-tel:hover, .contact-tel:focus-visible{ color:var(--green-on-navy); }
.contact-wa{ background:var(--green-ink); color:#fff; border:0; border-radius:999px; padding:0 24px; min-height:52px; font-weight:600; box-shadow:0 6px 18px rgba(15,126,92,.25); }
.contact-wa:hover, .contact-wa:focus-visible{ background:var(--green-ink-2); color:#fff; }
.contact-direct-col{ background:#fff; color:var(--navy); border-radius:var(--r-lg); padding:clamp(22px,3vw,32px); box-shadow:var(--shadow-hover); }
.contact-direct-col .contact-direct-title{ color:var(--navy); font-weight:700; }
.contact-direct-lead{ color:var(--navy-soft); margin-bottom:18px; }
.contact-actions{ border-top:0; gap:10px; }
.contact-actions li{ border-bottom:0; }
.contact-action{ background:var(--warm); border-radius:var(--r-md); padding:8px 18px; min-height:56px; color:var(--navy); font-weight:600; overflow-wrap:anywhere; }
.contact-action::before{ display:none !important; }
.contact-action span{ font-family:var(--font-body); color:var(--navy-soft); }
.contact-action:hover, .contact-action:focus-visible{ background:var(--green-tint); color:var(--green-ink); }
.contact-action.is-primary{ background:var(--green-ink); color:#fff; }
.contact-action.is-primary span{ color:#fff; }
.contact-action.is-primary:hover, .contact-action.is-primary:focus-visible{ background:var(--green-ink-2); color:#fff; }
@media (max-width:860px){ .contact-grid{ grid-template-columns:1fr; } }

/* final contact band (20 inner pages): list in a soft card */
.final-contact-grid{ max-width:40rem; }
.fc-list{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:var(--r-lg); padding:6px 20px; }
.fc-list .row:last-child{ border-bottom:0; }
.fc-list .label{ color:var(--green-on-navy); }

/* ---- campaign landing (hemoroid-degerlendirme) ---- */
.hdr-lp .hdr-cta{ display:flex; margin-left:auto; }
.hdr-lp .lp-phone-short{ display:none; }
@media (max-width:640px){
  .hdr-lp .lp-phone-full{ display:none; }
  .hdr-lp .lp-phone-short{ display:inline-flex; }
  .hdr-lp .hdr-in{ gap:10px; }
  .hdr-lp .btn-sm{ padding:0 14px; }
  .hdr-lp .logo img{ height:22px; }
}
.lp-hero{ background:linear-gradient(180deg,#fff 0%, var(--warm) 100%); padding-block:clamp(28px,5vw,64px) clamp(36px,5vw,64px); }
.lp-hero h1{ font-size:clamp(2.1rem,1.3rem + 3vw,3.4rem); font-weight:700; letter-spacing:-.02em; }
.lp-hero-sub{ color:var(--navy-soft); }
.lp-doctor-row img{ border:0; box-shadow:var(--shadow); }
.lp-doctor-name{ font-weight:600; color:var(--navy); }
.lp-doctor-role{ font-family:var(--font-body); font-size:.82rem; color:var(--navy-soft); }
.lp-moderation{ color:var(--navy-soft); }
.lp-hero-phone a{ font-weight:600; color:var(--navy); border-bottom:2px solid var(--green); }
.lp-contact-box{ border:0; border-radius:24px; background:#fff; box-shadow:var(--shadow-hover); padding:clamp(22px,3vw,34px); }
.lp-contact-box h2{ font-size:clamp(1.3rem,1.1rem + .6vw,1.6rem); font-weight:700; }
.lp-contact-box .qc-direct-actions{ justify-content:flex-start; }
.lp-trust{ border:0; background:var(--green-tint); }
.lp-trust-line{ color:var(--navy); }
.lp-tight h2{ font-size:clamp(1.6rem,1.2rem + 1.5vw,2.2rem); font-weight:700; letter-spacing:-.015em; }
.symptom-index{ border-top:0; display:grid; gap:10px; }
.symptom-item{ border:1px solid var(--line); border-radius:var(--r-md); background:#fff; padding-inline:16px; transition:box-shadow .25s; }
.symptom-item:has([aria-expanded="true"]:not(:disabled)){ box-shadow:var(--shadow-hover); border-color:transparent; }
.symptom-trigger{ min-height:60px; padding-block:14px; gap:14px; }
.symptom-number{ font-family:var(--font-body); font-weight:600; font-size:.78rem; color:var(--green-ink); background:var(--green-tint); width:auto; min-width:34px; height:34px; border-radius:10px; display:grid; place-items:center; padding:0 6px; }
.symptom-trigger:disabled[aria-expanded="true"] .symptom-number{ color:var(--green-ink); }
.symptom-name{ font-weight:600; color:var(--navy); }
.symptom-icon{ font-family:var(--font-body); width:32px; height:32px; border-radius:50%; background:var(--green-tint); color:var(--green-ink); display:grid; place-items:center; margin-left:auto; }
.symptom-panel-inner{ grid-template-columns:1fr; padding:0 4px 18px 48px; }
.symptom-panel-inner > span:empty{ display:none; }
.symptom-panel-inner p{ color:var(--navy-soft); }
.lp-diseases-note{ color:var(--navy-soft); }
.lp-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.lp-step{ background:#fff; border-radius:var(--r-md); padding:22px; box-shadow:var(--shadow); }
.lp-step .num{ font-family:var(--font-body); width:40px; height:40px; border-radius:50%; background:var(--navy); color:#fff; display:grid; place-items:center; font-weight:600; margin-bottom:14px; }
.lp-step:last-child .num{ background:var(--green-ink); }
.lp-step p{ color:var(--navy); font-weight:500; }
.surface-paper .lp-step{ background:var(--warm); box-shadow:none; }
.lp-tight .process-line{ display:none; }
@media (max-width:760px){ .lp-steps{ grid-template-columns:1fr; } }
.mdk-box{ max-width:none; border:0; background:var(--navy); color:#fff; border-radius:24px; padding:clamp(24px,4vw,44px); position:relative; overflow:hidden; }
.mdk-box::after{ content:""; position:absolute; right:-140px; top:-140px; width:400px; height:400px; border-radius:50%; background:radial-gradient(closest-side, rgba(25,180,128,.2), transparent); pointer-events:none; }
.mdk-box > *{ position:relative; z-index:1; }
.mdk-box h2{ color:#fff; font-weight:700; font-size:clamp(1.6rem,1.2rem + 1.5vw,2.2rem); }
.mdk-box .mdk-by{ font-family:var(--font-body); color:rgba(255,255,255,.75); font-size:.95rem; }
.mdk-facts{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; list-style:none; padding:0; }
.mdk-facts li{ background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); border-radius:var(--r-md); padding:16px; color:#fff; font-weight:600; }
.mdk-facts li::before{ display:none; }
.mdk-box .mdk-caveat{ border-top:0; margin:0; padding:14px 16px; border-radius:var(--r-sm); background:rgba(255,255,255,.07); border-left:3px solid var(--green); color:rgba(255,255,255,.92); font-size:.95rem; }
@media (max-width:860px){ .mdk-facts{ grid-template-columns:1fr 1fr; } }
.lp-final .lp-final-actions .fc-back + .fc-back{ background:transparent; box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.4); }
.lp-final .lp-final-actions .fc-back + .fc-back:hover{ box-shadow:inset 0 0 0 1.5px #fff; }
.campaign-sticky{ background:rgba(255,255,255,.97); border-top:1px solid var(--line); box-shadow:0 -8px 24px rgba(34,50,73,.08); padding:10px 16px calc(10px + env(safe-area-inset-bottom)); gap:10px; }
.campaign-sticky .btn{ flex:1 1 0; min-height:50px; padding:0 12px; }
.ftr-lp{ padding-block:32px; }
.ftr-lp-in{ display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; }
.ftr-lp-in img{ height:22px; width:auto; }
.ftr-lp-in p{ font-size:.88rem; color:var(--navy-soft); }
.ftr-lp-in a{ color:var(--navy); font-weight:500; text-decoration:none; }
.ftr-lp-in a:hover{ color:var(--green-ink); text-decoration:underline; }
.ftr-lp .ftr-legal{ margin-top:18px; }
@media (max-width:900px){ .ftr-lp{ padding-bottom:110px; } }

/* Hasta Rehberi index → same card grid as the homepage guide block */
.guide-index{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; border:0; list-style:none; padding:0; margin:0; columns:auto; }
.guide-index li{ border:0; padding:0; margin:0; break-inside:auto; }
.guide-index a{ display:flex; align-items:center; justify-content:space-between; min-height:56px; padding:0 20px; background:#fff; border:0; border-radius:var(--r-md); box-shadow:var(--shadow); text-decoration:none; font-weight:500; color:var(--navy); transition:transform .2s var(--ease-out), box-shadow .2s; }
.guide-index a::after{ content:"→"; color:var(--navy-soft); }
.guide-index a:hover, .guide-index a:focus-visible{ transform:translateY(-2px); box-shadow:var(--shadow-hover); color:var(--green-ink); }
.surface-paper .guide-index a{ background:var(--warm); box-shadow:none; }
@media (max-width:860px){ .guide-index{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .guide-index{ grid-template-columns:1fr; } }

/* ---------- E. LEGAL PAGES (KVKK, Gizlilik, Çerez) ---------- */
.legal-dates{ margin-top:14px; font-size:.92rem; color:var(--navy-soft); line-height:1.7; }
.legal-dates strong{ color:var(--navy); font-weight:600; }
.legal-toc .toc-list a{ font-size:.84rem; }
.legal-section{ padding-top:clamp(32px,5vw,56px); }
.legal-body{ max-width:var(--container); }
.legal-body > h2, .legal-body > h3, .legal-body > p, .legal-body > ul{ max-width:780px; }
.legal-body h2{ font-size:clamp(1.35rem,1.1rem + .9vw,1.75rem); margin:2.2em 0 .7em; scroll-margin-top:96px; }
.legal-body h2:first-child{ margin-top:0; }
.legal-body h3{ font-size:1.1rem; margin:1.6em 0 .4em; }
.legal-body p, .legal-body li{ color:var(--ink); font-size:1rem; line-height:1.75; }
.legal-body p:first-of-type{ color:var(--ink); }
.legal-body ul{ padding-left:1.25em; margin:0 0 1.2em; }
.legal-body li{ margin-bottom:.45em; }
.legal-body strong{ color:var(--navy); font-weight:600; }
.legal-body a{ color:var(--green-ink); text-decoration:underline; text-underline-offset:3px; }
.legal-body a strong{ color:inherit; }
.legal-body a:hover{ color:var(--navy); }
.legal-body code{ font-family:ui-monospace,'SFMono-Regular',Menlo,monospace; font-size:.88em; background:var(--warm); border-radius:6px; padding:1px 6px; color:var(--navy); }
.legal-table-wrap{ margin:1.2em 0 1.6em; overflow-x:auto; border-radius:var(--r-md); box-shadow:inset 0 0 0 1px var(--line); }
.legal-table-wrap:focus-visible{ outline:3px solid var(--green); outline-offset:2px; }
.legal-table{ width:100%; border-collapse:collapse; font-size:.92rem; min-width:640px; }
.legal-table th{ background:var(--navy); color:#fff; text-align:left; font-weight:600; padding:12px 14px; vertical-align:bottom; }
.legal-table td{ padding:12px 14px; vertical-align:top; border-top:1px solid var(--line); color:var(--ink); line-height:1.6; }
.legal-table tbody tr:nth-child(even) td{ background:var(--warm); }
@media (max-width:640px){
  .legal-table-wrap{ box-shadow:none; overflow:visible; }
  .legal-table{ min-width:0; }
  .legal-table thead{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .legal-table, .legal-table tbody, .legal-table tr, .legal-table td{ display:block; width:100%; }
  .legal-table tr{ background:#fff; border-radius:var(--r-md); box-shadow:inset 0 0 0 1px var(--line); margin-bottom:12px; padding:6px 0; }
  .legal-table tbody tr:nth-child(even) td{ background:transparent; }
  .legal-table td{ border-top:0; padding:8px 16px; }
  .legal-table td::before{ content:attr(data-label); display:block; font-size:.72rem; font-weight:600; letter-spacing:.05em; text-transform:uppercase; color:var(--green-ink); margin-bottom:2px; }
}

/* ---------- F. CALLBACK FORM (shared component: index.html + iletisim.html) ---------- */
.cb-form{ margin-top:24px; padding-top:22px; border-top:1px solid var(--line); display:grid; gap:14px; }
.cb-title{ font-size:1.15rem; font-weight:700; color:var(--navy); margin:0; }
.cb-form .cb-title, .surface-navy .cb-form .cb-title{ color:var(--navy); }
.cb-field{ display:grid; gap:6px; }
.cb-field label{ font-weight:600; font-size:.92rem; color:var(--navy); }
.cb-field input{ font:inherit; font-size:1rem; color:var(--ink); background:#fff; min-height:52px; padding:0 16px; border:1.5px solid rgba(34,50,73,.28); border-radius:var(--r-md); width:100%; transition:border-color .2s, box-shadow .2s; }
.cb-field input::placeholder{ color:#6B7889; }
.cb-field input:hover{ border-color:rgba(34,50,73,.45); }
.cb-field input:focus{ outline:none; border-color:var(--green-ink); box-shadow:0 0 0 3px rgba(25,180,128,.28); }
.cb-field input[aria-invalid="true"]{ border-color:#B42318; box-shadow:0 0 0 3px rgba(180,35,24,.14); }
.cb-err{ margin:0; font-size:.88rem; font-weight:500; color:#B42318; }
.cb-hp{ position:absolute !important; left:-10000px !important; width:1px; height:1px; overflow:hidden; }
.cb-submit{ width:100%; }
.cb-submit:disabled{ opacity:.75; cursor:progress; transform:none; }
.cb-status:empty{ display:none; }
.cb-status{ margin:0; padding:12px 14px; border-radius:var(--r-sm); font-weight:500; font-size:.95rem; }
.cb-status.is-success{ background:var(--green-tint); color:var(--green-ink); }
.cb-status.is-error{ background:#FEF3F2; color:#B42318; }
.cb-note{ margin:0; font-size:.85rem; line-height:1.6; color:var(--navy-soft); }
.cb-note a{ color:var(--green-ink); font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.cb-note a:hover{ color:var(--navy); }
.contact-direct-col .cb-form, .cc-side .cb-form{ width:100%; }

/* ---------- G. CLICK-TO-LOAD YOUTUBE CARD ---------- */
.article-body.has-video{ max-width:980px; }
.article-body.has-video > :not(.yt-card){ max-width:var(--measure, 64ch); }
.yt-card{ float:right; width:min(300px, 34%); margin:6px 0 20px 36px; }
.yt-frame{ position:relative; aspect-ratio:9 / 16; border-radius:var(--r-lg); overflow:hidden; background:var(--navy); box-shadow:var(--shadow-hover); }
.yt-poster{ position:absolute; inset:0; }
.yt-poster img{ width:100%; height:100%; object-fit:cover; object-position:50% 20%; }
.yt-overlay{ position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; align-items:flex-start; gap:10px; padding:20px; background:linear-gradient(180deg, rgba(34,50,73,0) 30%, rgba(34,50,73,.55) 55%, rgba(22,33,49,.95) 100%); }
.yt-kicker{ font-size:.75rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--green-on-navy); }
.yt-card .yt-title{ color:#fff; font-size:1.5rem; font-weight:700; margin:0; }
.yt-play{ display:inline-flex; align-items:center; gap:10px; min-height:48px; padding:0 18px 0 14px; border:0; border-radius:999px; background:#fff; color:var(--navy); font:inherit; font-weight:600; cursor:pointer; box-shadow:0 6px 18px rgba(0,0,0,.25); transition:transform .2s var(--ease-out); }
.yt-play[hidden]{ display:none; }
.yt-play:hover{ transform:translateY(-2px); }
.yt-play:focus-visible{ outline:3px solid var(--green); outline-offset:3px; }
.yt-icon{ width:28px; height:20px; flex-shrink:0; }
.yt-link{ color:#fff; font-weight:600; font-size:.92rem; text-decoration:underline; text-underline-offset:3px; display:inline-flex; align-items:center; min-height:44px; }
.yt-js .yt-link{ font-size:.82rem; font-weight:500; min-height:44px; color:rgba(255,255,255,.85); }
.yt-iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.yt-note{ margin-top:10px; font-size:.8rem; line-height:1.55; color:var(--navy-soft); }
.has-video::after{ content:""; display:block; clear:both; }
@media (max-width:760px){
  .yt-card{ float:none; width:100%; max-width:360px; margin:8px auto 24px; }
}
.yt-card .yt-link.yt-link-after{ color:var(--green-ink); font-size:.88rem; font-weight:600; min-height:44px; }

/* homepage MDK teaser (links to the doctor page video; no embed here) */
.mdk-promo{ display:flex; align-items:center; gap:16px; margin-top:22px; padding:16px 18px; border-radius:var(--r-md); background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); max-width:420px; }
.mdk-promo-icon{ width:52px; height:52px; border-radius:14px; background:#fff; display:grid; place-items:center; flex-shrink:0; }
.mdk-promo-icon svg{ width:28px; height:20px; }
.mdk .mdk-promo-title{ color:#fff; font-size:1.1rem; font-weight:700; margin:0 0 2px; }
.mdk-promo-link{ display:inline-flex; align-items:center; gap:6px; min-height:44px; color:var(--green-on-navy); font-weight:600; text-decoration:none; }
.mdk-promo-link:hover, .mdk-promo-link:focus-visible{ color:#fff; text-decoration:underline; text-underline-offset:3px; }
.yt-card:target .yt-frame{ outline:3px solid var(--green); outline-offset:4px; }
.yt-card{ scroll-margin-top:100px; }

/* callback form placed first in the contact card */
.cc-side > .cb-form:first-child, .contact-direct-col > .cb-form:first-child{ margin-top:0; padding-top:0; border-top:0; padding-bottom:24px; margin-bottom:4px; border-bottom:1px solid var(--line); }
.cb-form{ scroll-margin-top:96px; }
/* hero "Sizi arayalım" link */
.hero-cb-link{ display:inline-flex; align-items:center; gap:8px; min-height:52px; padding:0 6px; font-weight:600; color:var(--navy); text-decoration:none; border-bottom:2px solid var(--green); border-radius:0; }
.hero-cb-link svg{ width:18px; height:18px; color:var(--green-ink); }
.hero-cb-link:hover, .hero-cb-link:focus-visible{ color:var(--green-ink); }
@media (max-width:860px){ .hero-cb-link{ flex:1 1 100%; justify-content:center; } }
