/*!
Theme Name: Mastering Hair Transplantation
Theme URI: https://masteringhairtransplantation.de/
Author: MHT
Description: Hand-coded custom theme for the Mastering Hair Transplantation clinic (Hannover). Applies the new MHT design while preserving the site's existing SEO (titles, meta, schema via Rank Math). No page builder, no form plugin. See BUILD_INSTRUCTIONS.md.
Version: 0.17.4
Requires at least: 6.0
Requires PHP: 7.4
License: Proprietary
Text Domain: mht
*/

/* =========================================================================
   SELF-HOSTED FONTS  (Fraunces = headings, Outfit = body)  — §5 / §7
   Variable woff2, latin + latin-ext (German umlauts). font-display:optional —
   the font is used only when it makes first paint (preload makes that the
   normal case); a late font never swaps in, so webfont CLS is structurally 0.
   Cached repeat visits always render the brand fonts.
   ========================================================================= */
@font-face{
  font-family:'Fraunces';
  font-style:normal;
  font-weight:400 600;
  font-display:optional;
  src:url('assets/fonts/fraunces-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Fraunces';
  font-style:normal;
  font-weight:400 600;
  font-display:optional;
  src:url('assets/fonts/fraunces-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Outfit';
  font-style:normal;
  font-weight:300 700;
  font-display:optional;
  src:url('assets/fonts/outfit-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Outfit';
  font-style:normal;
  font-weight:300 700;
  font-display:optional;
  src:url('assets/fonts/outfit-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
/* Metric-matched fallbacks: the system font renders in the webfont's exact
   box, so the swap causes no reflow (CLS). size-adjust from measured render
   width (per weight — the variable fonts get wider at 600), ascent/descent
   from the woff2 hhea tables ÷ size-adjust. Declaring the 600–700 face keeps
   the browser from synthetic-bolding it, so widths stay deterministic. */
@font-face{
  font-family:'Outfit Fallback';font-weight:300 500;src:local('Arial');
  size-adjust:99%;ascent-override:101.01%;descent-override:26.26%;line-gap-override:0%;
}
@font-face{
  font-family:'Outfit Fallback';font-weight:600 700;src:local('Arial');
  size-adjust:100.99%;ascent-override:99.02%;descent-override:25.75%;line-gap-override:0%;
}
@font-face{
  font-family:'Fraunces Fallback';font-weight:400 500;src:local('Georgia');
  size-adjust:85.61%;ascent-override:114.24%;descent-override:29.79%;line-gap-override:0%;
}
@font-face{
  font-family:'Fraunces Fallback';font-weight:600 700;src:local('Georgia');
  size-adjust:89.46%;ascent-override:109.32%;descent-override:28.5%;line-gap-override:0%;
}

/* =========================================================================
   DESIGN TOKENS — Palette A (from design/MHT_Landing_A.html)
   ========================================================================= */
:root{
  /* Clinical blue + white palette (client feedback 2026-06-19: gold reads "luxury",
     light-blue/white reads "clinic/hospital"). The --gold* token NAMES are kept (they
     drive ~60 references + the .btn-gold class used across templates) but now hold the
     BLUE values — revert the brand by changing just these 3 lines. The German-flag
     stripe keeps its real gold via --flag-gold so the flag stays a flag. */
  --white:#ffffff;
  --surface:#f2f7fb;      /* cool clinical off-white */
  --surface-2:#e8f1f8;
  --ink:#13202b;          /* near-black with a cool cast */
  --ink-soft:#445663;
  --ink-faint:#7e8b95;
  --gold:#2e9bdd;         /* accent — light medical blue */
  --gold-deep:#1565a0;    /* deep blue — buttons / text-on-light (WCAG-safe) */
  --gold-tint:#eaf4fb;    /* very light blue — pills / icon tiles */
  --flag-gold:#e0a82e;    /* German-flag stripe only — stays gold */
  --red:#c0392b;          /* German-flag red */
  --line:#dbe7f1;         /* cool light border */
  --shadow:0 1px 2px rgba(19,32,43,.05), 0 10px 40px rgba(20,70,120,.07);
  --shadow-lg:0 20px 60px rgba(20,60,110,.13);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:17px;color:var(--ink);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip;}
h1,h2,h3,h4{overflow-wrap:break-word;}
img{max-width:100%;height:auto;display:block;}
a{text-decoration:none;color:inherit;}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
.serif{font-family:'Fraunces','Fraunces Fallback',serif;}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:100;}
.skip-link:focus{left:8px;top:8px;}

/* ---- German flag accent line ---- */
.flagline{height:4px;width:100%;display:flex;}
.flagline i{flex:1;}
.flagline .b{background:var(--ink);}
.flagline .r{background:var(--red);}
.flagline .y{background:var(--flag-gold);}

/* ---- TOPBAR ---- */
.topbar{background:#0e2c44;color:rgba(255,255,255,.78);font-size:13.5px;border-bottom:1px solid rgba(255,255,255,.07);}
.topbar .wrap{display:flex;justify-content:flex-end;align-items:center;height:42px;position:relative;}
.topbar a{opacity:.85;transition:opacity .2s;}
.topbar a:hover{opacity:1;color:var(--gold);}
.topbar .tb-l{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap;}
.topbar .tb-r{display:flex;gap:22px;align-items:center;}
@media(max-width:992px){.topbar .tb-l{display:none;}}

/* ---- HEADER ---- */
/* Beyaz header (2026-07-14): yeni logo açık zemin için tasarlandı — siyah-kırmızı-altın
   bayrak ancak beyazda tam görünür. Topbar lacivert (aksan), footer koyu (beyaz logo). */
header.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:0 1px 12px rgba(19,32,43,.05);}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:98px;}
.logo{display:inline-flex;align-items:center;}
/* Toplantı 12.07: logo büyütüldü (76→86px), menü fontu 14→15.5px */
.logo img{height:86px;width:auto;}
@media(max-width:560px){.logo img{height:62px;}header.nav .wrap{height:84px;}}
nav.main{display:flex;gap:20px;align-items:center;font-size:15.5px;font-weight:500;}
nav.main a{color:var(--ink-soft);transition:color .2s;position:relative;display:inline-flex;align-items:center;gap:4px;}
nav.main a:hover{color:var(--gold-deep);}
nav.main >ul>li>a::after,nav.main >ul.menu>li>a::after{content:"";position:absolute;left:0;bottom:-6px;height:2px;width:0;background:var(--gold);transition:width .25s;}
nav.main >ul>li>a:hover::after{width:100%;}
nav.main ul{list-style:none;display:flex;gap:20px;align-items:center;margin:0;padding:0;}
nav.main li{position:relative;}
.caret{font-size:10px;line-height:1;}
/* dropdown (Behandlungen) */
nav.main .sub-menu{position:absolute;top:calc(100% + 16px);left:0;flex-direction:column;gap:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);min-width:260px;padding:8px;display:none;z-index:60;}
nav.main li.menu-item-has-children:hover>.sub-menu,nav.main li.menu-item-has-children:focus-within>.sub-menu{display:flex;}
nav.main .sub-menu::before{content:"";position:absolute;top:-16px;left:0;right:0;height:16px;}
nav.main .sub-menu li{width:100%;}
nav.main .sub-menu a{display:block;width:100%;padding:11px 14px;border-radius:8px;font-size:15px;white-space:nowrap;color:var(--ink-soft);}
nav.main .sub-menu a:hover{background:var(--surface);color:var(--ink);}
nav.main .sub-menu a::after{display:none;}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;border-radius:9px;padding:12px 22px;transition:all .22s;cursor:pointer;border:none;font-family:inherit;}
.btn-gold{background:var(--gold-deep);color:#fff;box-shadow:0 6px 18px rgba(21,101,160,.30);}
.btn-gold:hover{background:#0f4d80;color:#fff;transform:translateY(-1px);}
.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line);}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-deep);}
.btn-dark{background:var(--ink);color:#fff;}
.btn-dark:hover{background:#000;transform:translateY(-1px);}
/* mobile nav toggle (vanilla, no jQuery) */
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;transition:.25s;}
@media(max-width:1100px){
  /* top:100% — menü her zaman header'ın hemen altında açılır (header yüksekliği
     değişse de kaymaz; 12.07 logo büyütmesi 92px sabitini bozmuştu → Blog kısa
     ekranlarda fold altında kalıyordu) */
  nav.main{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:10px 0;display:none;box-shadow:var(--shadow);max-height:calc(100dvh - 98px);overflow-y:auto;}
  nav.main.open{display:flex;}
  nav.main ul{flex-direction:column;gap:0;width:100%;align-items:stretch;}
  nav.main li{width:100%;}
  nav.main a{display:block;padding:14px 28px;width:100%;color:var(--ink-soft);}
  nav.main >ul>li>a::after{display:none;}
  /* mobile dropdown: show inline, indented */
  nav.main .sub-menu{position:static;display:flex;border:none;box-shadow:none;border-radius:0;min-width:0;padding:0;background:var(--surface);}
  nav.main .sub-menu a{padding:12px 28px 12px 44px;font-size:14px;}
  .caret{display:none;}
  .nav-toggle{display:block;}
}

/* ---- HERO ---- */
.hero{position:relative;background:var(--white);overflow:hidden;padding:0;}
.hero::before{content:"";position:absolute;inset:0;background:
   radial-gradient(60% 50% at 88% 0%, rgba(46,155,221,.10), transparent 60%),
   radial-gradient(50% 40% at 0% 100%, rgba(26,26,26,.04), transparent 55%);pointer-events:none;}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:54px;align-items:start;padding:40px 28px 64px;position:relative;}
.hero-left,.hero-card{min-width:0;}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);background:var(--gold-tint);padding:7px 15px;border-radius:30px;margin-bottom:22px;}
.eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold);}
h1.hero-t{font-family:'Fraunces','Fraunces Fallback',serif;font-weight:600;font-size:clamp(30px,6vw,60px);line-height:1.04;letter-spacing:-.02em;margin-bottom:22px;}
h1.hero-t em{font-style:italic;color:var(--gold-deep);}
.hero p.lead{font-size:18.5px;color:var(--ink-soft);font-weight:300;max-width:520px;margin-bottom:30px;}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px;}
.trust-row{display:flex;gap:26px;flex-wrap:wrap;}
.trust-row .ti{display:flex;flex-direction:column;}
.trust-row .ti b{font-family:'Fraunces','Fraunces Fallback',serif;font-size:25px;font-weight:600;color:var(--ink);line-height:1;}
.trust-row .ti span{font-size:13px;color:var(--ink-faint);margin-top:4px;max-width:130px;}

/* HERO FORM CARD */
.hero-card{background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-lg);padding:30px 30px 26px;position:relative;}
/* (German-flag accent bar on the hero form removed per client request 2026-06-19) */
.hero-card h3{font-family:'Fraunces','Fraunces Fallback',serif;font-size:23px;font-weight:600;margin-bottom:5px;}
.hero-card .sub{font-size:14px;color:var(--ink-faint);margin-bottom:20px;}
.field{margin-bottom:13px;}
.field input{width:100%;border:1px solid var(--line);border-radius:10px;padding:13px 15px;font-size:15px;font-family:inherit;background:var(--surface);transition:all .2s;}
.field input:focus{outline:none;border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px rgba(46,155,221,.15);}
.phone-row{display:grid;grid-template-columns:80px minmax(0,1fr);gap:9px;}
.phone-row .pre{display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:14px;color:var(--ink-soft);}
.phone-row .phone-cc{border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:14px;font-family:inherit;color:var(--ink-soft);padding:0 8px;cursor:pointer;transition:all .2s;min-width:0;}
.phone-row .phone-cc:focus{outline:none;border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px rgba(46,155,221,.15);}
.consent{display:flex;gap:9px;align-items:flex-start;margin:14px 0 16px;font-size:12.5px;color:var(--ink-faint);line-height:1.5;}
.consent input{margin-top:2px;accent-color:var(--gold);}
.consent a{color:var(--gold-deep);text-decoration:underline;}
.hero-card .btn-gold{width:100%;justify-content:center;padding:14px;}
.formnote{text-align:center;font-size:12px;color:var(--ink-faint);margin-top:12px;}
@media(max-width:880px){.hero .wrap{grid-template-columns:minmax(0,1fr);gap:38px;}}

/* ---- SECTION SHELL ---- */
section{padding:74px 0;}
.sec-tag{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:14px;}
h2.sec{font-family:'Fraunces','Fraunces Fallback',serif;font-weight:600;font-size:clamp(28px,3.6vw,42px);line-height:1.1;letter-spacing:-.015em;margin-bottom:16px;max-width:720px;}
h2.sec em{font-style:italic;color:var(--gold-deep);}
.sec-intro{font-size:17px;color:var(--ink-soft);font-weight:300;max-width:680px;margin-bottom:8px;}
.center{text-align:center;}
.center h2.sec,.center .sec-intro{margin-left:auto;margin-right:auto;}
.surface{background:var(--surface);}

/* ---- TRUST STRIP ---- */
.badgestrip{background:var(--ink);color:#ece9e2;}
.badgestrip .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:40px 28px;}
.badge{text-align:center;}
.badge b{font-family:'Fraunces','Fraunces Fallback',serif;display:block;font-size:32px;font-weight:600;color:#fff;line-height:1;}
.badge .g{color:var(--gold);}
.badge span{font-size:13.5px;color:#b7b2a8;margin-top:8px;display:block;}
@media(max-width:720px){.badgestrip .wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}}

/* ---- METHODS ---- */
.methods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:42px;}
.methods-6{grid-template-columns:repeat(3,minmax(0,1fr));}
/* Daire foto ikon (Sümeyye 12.07): resmin kendisi zaten beyaz daire çerçeveli */
.method .ic-photo{width:118px;height:118px;border-radius:50%;background:none;overflow:hidden;padding:0;}
.method .ic-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%;}
.method:hover .ic-photo{transform:none;}
.method:hover .ic-photo img{transform:scale(1.06);transition:transform .3s;}
.method{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:28px 22px;text-align:center;transition:all .25s;cursor:pointer;}
.method:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold);}
.method .ic{width:56px;height:56px;margin:0 auto 16px;border-radius:14px;background:var(--gold-tint);display:flex;align-items:center;justify-content:center;color:var(--gold-deep);}
.method h4{font-family:'Fraunces','Fraunces Fallback',serif;font-size:18px;font-weight:600;margin-bottom:6px;}
.method p{font-size:13.5px;color:var(--ink-faint);}
@media(max-width:880px){.methods,.methods-6{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* ---- OFFER BANNER ---- */
.offer{background:linear-gradient(135deg,#0e2c44,#114261);color:#fff;border-radius:22px;padding:44px 46px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;box-shadow:var(--shadow-lg);position:relative;overflow:hidden;}
.offer::before{content:"";position:absolute;right:-40px;top:-40px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(46,155,221,.22),transparent 70%);}
.offer .ot{position:relative;}
.offer .price-tag{font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:600;}
.offer h3{font-family:'Fraunces','Fraunces Fallback',serif;font-size:34px;font-weight:600;margin:6px 0 4px;}
.offer h3 .big{color:var(--gold);}
.offer p{color:#cbc6bc;font-size:15px;max-width:420px;}

/* ---- WHY / FEATURE GRID ---- */
.feat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:44px;}
.feat{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:28px;transition:all .25s;}
.feat:hover{box-shadow:var(--shadow);}
.feat .fic{width:48px;height:48px;border-radius:12px;background:var(--ink);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.feat h4{font-size:18px;font-weight:600;margin-bottom:8px;}
.feat p{font-size:14.5px;color:var(--ink-soft);}
@media(max-width:880px){.feat-grid{grid-template-columns:minmax(0,1fr);}}

/* ---- DOCTOR ---- */
.doctor{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:center;}
.doctor .dimg{background:var(--surface);border-radius:20px;aspect-ratio:3/4;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;border:1px solid var(--line);position:relative;}
.doctor .dimg img{width:100%;height:100%;object-fit:cover;}
.doctor .dimg .ph{text-align:center;color:var(--ink-faint);padding:30px;}
.doctor .dimg .ph .circle{width:90px;height:90px;border-radius:50%;background:var(--white);border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-family:'Fraunces','Fraunces Fallback',serif;font-size:30px;color:var(--gold-deep);font-weight:600;}
blockquote{font-family:'Fraunces','Fraunces Fallback',serif;font-style:italic;font-size:22px;line-height:1.45;color:var(--ink);border-left:3px solid var(--gold);padding-left:22px;margin:18px 0;}
.doctor .sig{font-size:15px;color:var(--ink-faint);}
.doctor .sig b{color:var(--ink);font-weight:600;}
@media(max-width:880px){.doctor{grid-template-columns:1fr;gap:30px;}}

/* ---- PROCESS / STEPS ---- */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:42px;}
.step{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:26px;position:relative;overflow:hidden;}
.step .num{font-family:'Fraunces','Fraunces Fallback',serif;font-size:46px;font-weight:600;color:rgba(46,155,221,.55);line-height:.8;position:absolute;top:14px;right:18px;}
.step .num2{font-family:'Fraunces','Fraunces Fallback',serif;font-size:15px;font-weight:600;color:var(--gold-deep);}
.step h4{font-size:17px;font-weight:600;margin:10px 0 7px;}
.step p{font-size:14px;color:var(--ink-soft);}
@media(max-width:880px){.steps{grid-template-columns:minmax(0,1fr);}}

/* ---- TIMELINE (healing) ---- */
.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:40px;}
.tl{background:var(--surface);border-radius:16px;padding:26px;border-top:3px solid var(--gold);}
.tl .when{font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:8px;}
.tl h4{font-family:'Fraunces','Fraunces Fallback',serif;font-size:19px;font-weight:600;margin-bottom:6px;}
.tl p{font-size:14px;color:var(--ink-soft);}
@media(max-width:880px){.timeline{grid-template-columns:minmax(0,1fr);}}

/* ---- FAQ ---- */
.faq{max-width:760px;margin:42px auto 0;}
details{background:var(--white);border:1px solid var(--line);border-radius:13px;margin-bottom:12px;padding:0 22px;transition:all .2s;}
details[open]{box-shadow:var(--shadow);border-color:var(--gold);}
summary{font-size:16.5px;font-weight:600;padding:20px 0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;}
summary::-webkit-details-marker{display:none;}
summary::after{content:"+";font-size:24px;color:var(--gold-deep);font-weight:400;transition:transform .2s;flex:none;}
details[open] summary::after{content:"\2013";}
details p{font-size:15px;color:var(--ink-soft);padding:0 0 22px;}

/* ---- FINAL CTA ---- */
.finalcta{background:linear-gradient(135deg,#0e2c44,#0c3a5a);color:#fff;text-align:center;border-radius:24px;padding:64px 40px;position:relative;overflow:hidden;}
.finalcta::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 60% at 50% 0%,rgba(46,155,221,.18),transparent 60%);}
.finalcta h2,.finalcta .cta-h{font-family:'Fraunces','Fraunces Fallback',serif;font-size:clamp(28px,4vw,42px);font-weight:600;margin-bottom:14px;position:relative;line-height:1.25;color:inherit;}
.finalcta h2 em,.finalcta .cta-h em{font-style:italic;color:#7cc4ee;} /* koyu zeminde AA kontrast için bir ton açık */
.finalcta p{color:#cbc6bc;font-size:17px;max-width:520px;margin:0 auto 28px;position:relative;}
.finalcta .btn-gold{position:relative;font-size:16px;padding:16px 32px;background:#fff;color:var(--gold-deep);} /* koyu bantta buton beyaza döner — zeminde kaybolmasın */
.finalcta .btn-gold:hover{background:var(--gold-tint);}
/* Light variant — orta band (sayfa ritmi: koyu sadece final CTA + footer) */
.finalcta-light{background:var(--gold-tint);color:var(--ink);border:1px solid var(--line);}
.finalcta-light::before{display:none;}
.finalcta-light h2{color:var(--ink);}
.finalcta-light h2 em{color:var(--gold-deep);}
.finalcta-light p{color:var(--ink-soft);}
.finalcta-light .btn-gold{background:var(--gold-deep);color:#fff;}
.finalcta-light .btn-gold:hover{background:var(--gold);}

/* ---- FOOTER ---- */
footer.site-footer{background:var(--ink);color:#b7b2a8;padding:56px 0 0;}
footer.site-footer .fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-bottom:40px;}
footer.site-footer .fsocial{display:flex;gap:12px;margin-top:18px;}
footer.site-footer .fsocial a{width:38px;height:38px;border-radius:9px;border:1px solid #333;display:flex;align-items:center;justify-content:center;color:#b7b2a8;transition:all .2s;}
footer.site-footer .fsocial a:hover{color:#1a1a1a;background:var(--gold);border-color:var(--gold);}
footer.site-footer .fbottom a{color:#8a857d;text-decoration:underline;}
footer.site-footer .fbottom a:hover{color:var(--gold);}
footer.site-footer .logo-f img{height:56px;margin-bottom:16px;opacity:.95;width:auto;}
footer.site-footer p.fdesc{font-size:14px;color:#9b968d;max-width:300px;}

/* Content videos — the restored live clips (vertical 9:16 phone footage), shown as a
   WIDE player (client request): the video fills the content column at 16:9 and the
   portrait source is center-cropped via object-fit:cover (plays in full; fullscreen
   shows the uncropped clip). Mobile gets a slightly taller 4:5 crop. The --mht-amb
   inline var some figures carry is simply unused by this treatment. */
.mht-video{margin:32px auto;border-radius:16px;overflow:hidden;box-shadow:0 18px 44px rgba(19,32,43,.16);}
.mht-video video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#000;}
@media(max-width:560px){.mht-video{border-radius:12px;}.mht-video video{aspect-ratio:4/5;}}

/* Migrated-content safety net — nothing inside a post/page may break the mobile
   viewport (wide tables/iframes scroll inside their own box instead). */
.entry-content img,.entry-content video,.entry-content iframe{max-width:100%;height:auto;}
.entry-content iframe{height:auto;min-height:220px;}
.entry-content table{display:block;max-width:100%;overflow-x:auto;}
footer.site-footer h5{color:#fff;font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px;}
footer.site-footer ul{list-style:none;}
footer.site-footer ul li{margin-bottom:10px;font-size:14.5px;}
footer.site-footer ul li a{color:#b7b2a8;transition:color .2s;}
footer.site-footer ul li a:hover{color:var(--gold);}
footer.site-footer .fbottom{border-top:1px solid #333;padding:22px 0;text-align:center;font-size:13px;color:#9aa4ad;}
@media(max-width:880px){footer.site-footer .fgrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;}}

/* ---- LEISTUNGEN ---- */
.leist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:40px;}
.leist .li{display:flex;align-items:center;gap:12px;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:16px 18px;font-size:15px;font-weight:500;transition:all .2s;}
.leist .li:hover{border-color:var(--gold);box-shadow:var(--shadow);}
.leist .li svg{flex:none;color:var(--gold-deep);}
@media(max-width:880px){.leist{grid-template-columns:minmax(0,1fr);}}

/* ---- TRUST BADGES (3 circles) ---- */
.circles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:44px;}
.circ{text-align:center;}
.circ .cc{width:120px;height:120px;border-radius:50%;background:var(--white);border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:var(--gold-deep);}
.circ h4{font-family:'Fraunces','Fraunces Fallback',serif;font-size:19px;font-weight:600;margin-bottom:6px;}
.circ p{font-size:14px;color:var(--ink-soft);max-width:240px;margin:0 auto;}
@media(max-width:720px){.circles{grid-template-columns:1fr;gap:30px;}}

/* ---- VIDEO ---- */
.videowrap{margin-top:40px;border-radius:20px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-lg);background:#000;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;position:relative;}
.videowrap .vid-ph{text-align:center;color:#cbc6bc;}
.videowrap .play{width:74px;height:74px;border-radius:50%;background:rgba(46,155,221,.95);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
.videowrap .play svg{fill:#fff;width:28px;height:28px;margin-left:4px;}

/* ---- RATGEBER ---- */
.ratgeber{max-width:880px;margin:44px auto 0;}
.rg-item{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:30px 32px;margin-bottom:18px;box-shadow:var(--shadow);}
.rg-item .rg-num{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:11px;background:var(--ink);color:#fff;font-family:'Fraunces','Fraunces Fallback',serif;font-size:18px;font-weight:600;margin-bottom:14px;}
.rg-item h3{font-family:'Fraunces','Fraunces Fallback',serif;font-size:21px;font-weight:600;margin-bottom:6px;letter-spacing:-.01em;}
.rg-item .kurz{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:10px;}
.rg-item p{font-size:15px;color:var(--ink-soft);margin-bottom:10px;}
.rg-item ul.rglist{list-style:none;margin:12px 0;padding:0;}
.rg-item ul.rglist li{position:relative;padding-left:24px;margin-bottom:8px;font-size:14.5px;color:var(--ink-soft);}
.rg-item ul.rglist li::before{content:"";position:absolute;left:2px;top:8px;width:7px;height:7px;border-radius:50%;background:var(--gold);}
.rg-sub{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-top:14px;}
.rg-sub .rgs{background:var(--surface);border-radius:12px;padding:18px 20px;}
.rg-sub .rgs h5{font-size:15px;font-weight:600;margin-bottom:8px;}
.rg-sub .rgs ul{list-style:none;padding:0;}
.rg-sub .rgs li{font-size:13.5px;color:var(--ink-soft);margin-bottom:6px;padding-left:16px;position:relative;}
.rg-sub .rgs li::before{content:"\2013";position:absolute;left:0;color:var(--gold-deep);}
@media(max-width:720px){.rg-sub{grid-template-columns:minmax(0,1fr);}}

/* ---- REGION GRID ---- */
.region{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:38px;}
.region .rg{background:var(--surface);border-radius:14px;padding:22px;border-top:3px solid var(--gold);}
.region .rg h4{font-size:15px;font-weight:600;margin-bottom:6px;}
.region .rg p{font-size:13.5px;color:var(--ink-soft);}
@media(max-width:880px){.region{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}}
@media(max-width:560px){.region{grid-template-columns:minmax(0,1fr);}}

/* ---- WYSIWYG / post content (page.php, single.php) ---- */
.entry-content{font-size:16.5px;color:var(--ink-soft);max-width:820px;}
.entry-content h2{font-family:'Fraunces','Fraunces Fallback',serif;font-weight:600;font-size:28px;color:var(--ink);margin:32px 0 12px;letter-spacing:-.01em;}
.entry-content h3{font-family:'Fraunces','Fraunces Fallback',serif;font-weight:600;font-size:21px;color:var(--ink);margin:26px 0 10px;}
.entry-content p{margin:0 0 16px;}
.entry-content a{color:var(--gold-deep);text-decoration:underline;}
.entry-content ul,.entry-content ol{margin:0 0 16px 22px;}
.entry-content li{margin-bottom:8px;}
.entry-content img{border-radius:14px;margin:20px 0;}
.entry-content blockquote{margin:24px 0;}

/* ---- PAGE HERO (page/single/archive title band) ---- */
.page-hero{padding:56px 0 48px;border-bottom:1px solid var(--line);}
.page-hero h1{font-family:'Fraunces','Fraunces Fallback',serif;font-weight:600;font-size:clamp(30px,4.4vw,48px);line-height:1.08;letter-spacing:-.015em;max-width:880px;}
.page-hero .sec-intro{margin-top:14px;}

/* ---- SINGLE POST ---- */
.post-wrap{padding:60px 0 74px;}
.post-grid{max-width:760px;margin:0 auto;}
.post-meta{display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-size:14px;color:var(--ink-faint);margin-bottom:24px;}
.post-meta .cat{color:var(--gold-deep);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:12.5px;}
.post-feat{border-radius:18px;overflow:hidden;border:1px solid var(--line);margin-bottom:30px;box-shadow:var(--shadow);}
.post-feat img{width:100%;height:auto;}
.post-nav{display:flex;justify-content:space-between;gap:16px;max-width:760px;margin:40px auto 0;padding-top:24px;border-top:1px solid var(--line);font-size:14.5px;}
.post-nav a{color:var(--ink-soft);font-weight:500;}
.post-nav a:hover{color:var(--gold-deep);}

/* ---- ARCHIVE / BLOG LISTING ---- */
.archive-wrap{padding:56px 0 74px;}
.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.post-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:all .25s;}
.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold);}
.post-card .thumb{aspect-ratio:16/10;background:var(--surface);overflow:hidden;}
.post-card .thumb img{width:100%;height:100%;object-fit:cover;}
.post-card .pc-body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1;}
.post-card .cat{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--gold-deep);margin-bottom:10px;}
.post-card h2,.post-card h3{font-family:'Fraunces','Fraunces Fallback',serif;font-size:20px;font-weight:600;line-height:1.25;margin-bottom:10px;}
.post-card p{font-size:14.5px;color:var(--ink-soft);margin-bottom:16px;flex:1;}
.post-card .more{font-size:14px;font-weight:600;color:var(--gold-deep);}
.mht-pagination{display:flex;gap:8px;justify-content:center;margin-top:48px;}
.mht-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;font-weight:600;color:var(--ink-soft);}
.mht-pagination .page-numbers.current{background:var(--gold-deep);color:#fff;border-color:var(--gold-deep);}
.mht-pagination a.page-numbers:hover{border-color:var(--gold);color:var(--gold-deep);}
@media(max-width:880px){.archive-grid{grid-template-columns:minmax(0,1fr);}}

/* ---- CTA BAND (reusable page footer cta) ---- */
.cta-band{padding:0 0 74px;}

/* ---- TRUST BAR: Facharzt credential + memberships (white logos on dark) ---- */
.trustbar{background:var(--ink);color:#fff;border-top:1px solid rgba(255,255,255,.06);}
.trustbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:20px 28px;flex-wrap:wrap;}
.tb-cred{display:flex;align-items:center;gap:14px;}
.tb-medal{width:46px;height:46px;flex:none;border-radius:50%;background:rgba(46,155,221,.16);color:var(--gold);display:flex;align-items:center;justify-content:center;}
.tb-medal svg{width:25px;height:25px;}
.tb-cred-txt{display:flex;flex-direction:column;line-height:1.3;}
.tb-cred-txt b{font-size:16px;font-weight:700;color:#fff;letter-spacing:.005em;}
.tb-cred-txt span{font-size:13px;color:#b7c4cf;margin-top:2px;}
.tb-members{display:flex;flex-direction:column;align-items:flex-end;gap:9px;}
.tb-members .mem-label{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#8aa0b0;}
.trustbar .mem-logos{display:flex;align-items:center;gap:28px;flex-wrap:wrap;justify-content:flex-end;}
.trustbar .mem-logos img{height:46px;width:auto;}
@media(max-width:860px){
  .trustbar .wrap{flex-direction:column;align-items:center;text-align:center;gap:16px;padding:22px;}
  .tb-cred{flex-direction:column;text-align:center;gap:9px;}
  .tb-members{align-items:center;}
  .trustbar .mem-logos{justify-content:center;gap:22px;}
  .trustbar .mem-logos img{height:34px;}
}

/* premium feature grid (5, title-only, centered) */
.feat-grid-5{grid-template-columns:repeat(5,minmax(0,1fr));}
.feat-c{text-align:center;}
.feat-c .fic{margin:0 auto 14px;}
@media(max-width:980px){.feat-grid-5{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){.feat-grid-5{grid-template-columns:minmax(0,1fr);}}

/* 6-step process (title-only) */
.steps-6{grid-template-columns:repeat(3,minmax(0,1fr));}
.steps-6 .step{min-height:120px;display:flex;flex-direction:column;justify-content:flex-start;}
@media(max-width:880px){.steps-6{grid-template-columns:minmax(0,1fr);}}

/* WARUM 4 points */
.warum{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px 30px;margin-top:24px;}
.warum .wpt h4{font-size:16px;font-weight:600;margin-bottom:5px;display:flex;align-items:center;gap:8px;}
.warum .wpt h4::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);flex:none;}
.warum .wpt p{font-size:14px;color:var(--ink-soft);padding-left:16px;}
@media(max-width:560px){.warum{grid-template-columns:minmax(0,1fr);}}

/* ---- float whatsapp ---- */
.wa{position:fixed;right:22px;bottom:22px;z-index:60;width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(37,211,102,.4);transition:transform .2s;}
.wa:hover{transform:scale(1.08);}
.wa svg{width:30px;height:30px;fill:#fff;}

/* =========================================================================
   PHASE 2 — interaction & polish layer (presentation only; CLS-safe)
   ========================================================================= */

/* B0.2 — Ratgeber as collapsed accordion (content stays in DOM = SEO intact) */
.ratgeber details.rg-item{padding:0;overflow:hidden;}
.ratgeber details.rg-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:22px 28px;}
.ratgeber details.rg-item summary::-webkit-details-marker{display:none;}
.ratgeber details.rg-item summary h3{margin:0;}
.ratgeber details.rg-item summary::after{content:"+";margin-left:auto;font-size:26px;line-height:1;color:var(--gold-deep);font-weight:400;flex:none;transition:transform .2s;}
.ratgeber details.rg-item[open] summary::after{content:"–";}
.ratgeber details.rg-item[open]{box-shadow:var(--shadow-lg);border-color:var(--gold);}
.ratgeber details.rg-item .kurz{padding:0 28px;}
.ratgeber details.rg-item > :not(summary):not(.kurz){padding-left:28px;padding-right:28px;}
.ratgeber details.rg-item > :last-child{padding-bottom:26px;}
.ratgeber details.rg-item .rg-num{margin-bottom:0;}

.hero-langs{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:18px;font-size:13.5px;color:var(--ink-faint);line-height:1.5;}
.hero-langs b{color:var(--ink-soft);font-weight:600;}
.hero-langs .sep{color:var(--gold);}

/* B2.6 — move our floating WhatsApp to the LEFT (chatbot bubble will take the right) */
.wa{right:auto;left:22px;}

/* B0.1 — motion layer (scroll-reveal + flag-line draw). prefers-reduced-motion respected. */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,.61,.36,1);will-change:opacity,transform;}
.reveal.in{opacity:1;transform:none;}
.flagline i{transform:scaleX(0);transform-origin:left;transition:transform .7s ease;}
.flagline.in i{transform:scaleX(1);}
.flagline.in i:nth-child(2){transition-delay:.12s;}
.flagline.in i:nth-child(3){transition-delay:.24s;}
@media(prefers-reduced-motion:reduce){
  .reveal,.reveal.in{opacity:1;transform:none;transition:none;}
  .flagline i{transform:none;transition:none;}
}

/* hero-3d follikül/halka animasyonu kaldırıldı — toplantı kararı 12.07 */
.hero .wrap{z-index:1;}

/* B1.2 — exit-intent popup */
.mht-exit{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;
  background:rgba(26,26,26,.55);backdrop-filter:blur(3px);padding:24px;}
.mht-exit.open{display:flex;animation:exitFade .25s ease;}
@keyframes exitFade{from{opacity:0}to{opacity:1}}
.mht-exit-card{background:#fff;border-radius:20px;max-width:480px;width:100%;padding:34px 32px 30px;position:relative;box-shadow:var(--shadow-lg);text-align:center;}
/* (German-flag accent bar on the exit popup removed per client request 2026-06-19) */
.mht-exit-card h3{font-family:'Fraunces','Fraunces Fallback',serif;font-size:24px;font-weight:600;margin-bottom:8px;}
.mht-exit-card p{color:var(--ink-soft);font-size:15px;margin-bottom:22px;}
.mht-exit-card .btn{width:100%;justify-content:center;margin-bottom:10px;}
.mht-exit-close{position:absolute;top:12px;right:16px;border:none;background:none;font-size:24px;color:var(--ink-faint);cursor:pointer;line-height:1;}
@media(prefers-reduced-motion:reduce){.mht-exit.open{animation:none;}}

/* Kontakt page — intro + form on top, contact details below as readable cards */
.kontakt-intro{text-align:center;margin-bottom:28px;}
.kontakt-intro h2{font-family:'Fraunces','Fraunces Fallback',serif;font-size:30px;line-height:1.16;margin:0 0 10px;}
.kontakt-intro h3{font-size:17px;font-weight:600;color:var(--gold-deep);margin:0 0 12px;}
.kontakt-intro p{color:var(--ink-soft);font-size:15.5px;line-height:1.6;margin:0 auto;max-width:560px;}
/* Kontakt: intro + form side-by-side so the form is visible without scrolling past
   text; on mobile the form comes FIRST (order) — a click on "Termin vereinbaren"
   lands directly on the form. */
.kontakt-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:46px;align-items:start;max-width:1000px;}
.kontakt-top .kontakt-intro{text-align:left;margin:0;padding-top:6px;}
.kontakt-top .kontakt-intro p{margin-left:0;max-width:none;}
@media(max-width:860px){
  .kontakt-top{grid-template-columns:1fr;gap:24px;max-width:620px;}
  .kontakt-top .kontakt-formcol{order:-1;}
  .kontakt-top .kontakt-intro{text-align:center;}
  .kontakt-top .kontakt-intro p{margin-left:auto;margin-right:auto;}
}
.kontakt-infosec{padding:6px 0 80px;}
.kontakt-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
@media(max-width:900px){.kontakt-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:520px){.kontakt-grid{grid-template-columns:1fr;}}
.kontakt-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 26px;box-shadow:var(--shadow);transition:box-shadow .2s,border-color .2s,transform .2s;}
.kontakt-card:hover{box-shadow:var(--shadow-lg);border-color:var(--gold);transform:translateY(-3px);}
.kontakt-card h3{font-size:16px;font-weight:600;margin:0 0 8px;letter-spacing:.01em;}
.kontakt-card h3 a{color:var(--gold-deep);}
.kontakt-card h3 a:hover{color:#0f4d80;}
.kontakt-card p{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.55;overflow-wrap:anywhere;}
.kontakt-card p a{color:var(--gold-deep);}

/* Consent box — gates the MindTrellis chat widget until accepted (DSGVO) */
/* ---- Preisstrip (hero'nun hemen altı — şeffaf fiyat çapası) -------------- */
.pricestrip{background:var(--gold-tint);border-block:1px solid var(--line);}
.pricestrip .wrap{display:flex;align-items:baseline;justify-content:center;gap:14px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px;}
.pricestrip .ps-label{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep);}
.pricestrip .ps-price{font-family:'Fraunces','Fraunces Fallback',serif;font-size:26px;font-weight:600;color:var(--ink);}
.pricestrip .ps-sep{color:var(--ink-faint);}
.pricestrip .ps-rate{font-size:15px;color:var(--ink-soft);}

/* ---- "Keine Auslandsreise" USP kartları ---------------------------------- */
.nt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:38px;}
.nt-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px 24px;box-shadow:0 8px 24px rgba(19,32,43,.05);}
.nt-ico{width:46px;height:46px;border-radius:12px;background:var(--gold-tint);color:var(--gold-deep);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.nt-ico svg{width:24px;height:24px;}
.nt-card h4{font-size:17px;font-weight:600;margin-bottom:8px;}
.nt-card p{font-size:15px;color:var(--ink-soft);line-height:1.55;}
@media(max-width:880px){.nt-grid{grid-template-columns:minmax(0,1fr);}}

/* ---- Trustbar Google puanı ------------------------------------------------ */
.tb-rating{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 18px;}
.tb-rating .stars{color:#f0b429;font-size:17px;letter-spacing:2px;}
.tb-rating-txt{font-size:13.5px;color:rgba(255,255,255,.85);}
.tb-rating-txt b{color:#fff;font-size:15px;}
.tb-rating-n{color:rgba(255,255,255,.6);}

/* ---- Teaser kart: puan + doktor çipi -------------------------------------- */
.wz-rating{display:flex;align-items:center;gap:8px;margin:2px 0 10px;font-size:13.5px;color:var(--ink-soft);}
.wz-rating .stars{color:#f0b429;font-size:15px;letter-spacing:1.5px;}
.wz-rating b{color:var(--ink);}
.wz-doc{display:flex;align-items:center;gap:10px;margin:2px 0 14px;padding:9px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;font-size:13.5px;color:var(--ink-soft);line-height:1.4;}
.wz-doc img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:top;flex:none;}
.wz-doc b{color:var(--ink);}

/* ---- Mobil sabit CTA barı --------------------------------------------------
   Tek düzen: bar [☎][WhatsApp][Haaranalyse] taşır; yüzen WhatsApp mobilde GİZLİ
   (görsel denetim bulgusu: Kontakt formunun ülke-kodu seçicisini örtüyordu).
   Chat balonu (bizim FAB + consent sonrası MindTrellis iframe'i) barın üstünde. */
.mobile-cta{display:none;}
@media(max-width:768px){
	.mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:80;display:grid;grid-template-columns:auto auto 1fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(19,32,43,.08);}
	/* Açık menünün son öğesi (Blog) sabit CTA barının arkasında kalmasın:
	   menü barın yüksekliği kadar alt boşlukla biter, son öğe barın üstünde durur. */
	nav.main{padding-bottom:calc(84px + env(safe-area-inset-bottom));}
	.mobile-cta a{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;font-size:15px;font-weight:600;padding:13px 14px;min-height:48px;}
	.mobile-cta .mc-ico{width:52px;padding:0;}
	.mobile-cta .mc-call{background:var(--surface-2);color:var(--gold-deep);border:1px solid var(--line);}
	.mobile-cta .mc-wa{background:#e9f9ef;color:#1da851;border:1px solid #cdeeda;}
	.mobile-cta .mc-analyse{background:var(--gold-deep);color:#fff;}
	body{padding-bottom:76px;} /* bar içeriği örtmesin */
	.wa{display:none;} /* yüzen WhatsApp mobilde bara taşındı */
}

/* Chat facade FAB — first-party stand-in for the MindTrellis bubble; loads nothing
   until the visitor explicitly consents via the card. Bottom-right = where the real
   widget bubble appears afterwards (WhatsApp stays bottom-left). */
.mht-chat-fab{position:fixed;z-index:2890;right:20px;bottom:20px;width:56px;height:56px;border:0;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--gold) 0%,var(--gold-deep) 100%);box-shadow:0 10px 26px rgba(21,101,160,.42);transition:transform .18s ease,box-shadow .18s ease;}
.mht-chat-fab:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 14px 30px rgba(21,101,160,.5);}
.mht-chat-fab[hidden]{display:none;}
/* hover/focus tooltip — çıplak balon yerine davet eden mikro-metin */
.mht-chat-fab::after{content:"Fragen? Jetzt chatten";position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);white-space:nowrap;background:#13202b;color:#fff;font-size:13px;font-weight:500;padding:7px 12px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .18s ease;}
.mht-chat-fab:hover::after,.mht-chat-fab:focus-visible::after{opacity:1;}
@media(max-width:768px){.mht-chat-fab::after{display:none;}}

.mht-consent{position:fixed;z-index:2900;left:50%;bottom:20px;transform:translateX(-50%);
  width:min(540px,calc(100% - 24px));background:#fff;border:1px solid var(--line);
  border-radius:16px;box-shadow:var(--shadow-lg);padding:18px 20px;display:none;}
.mht-consent.show{display:block;animation:exitFade .25s ease;}
.mht-consent p{margin:0 0 13px;font-size:13px;line-height:1.55;color:var(--ink-soft);}
.mht-consent a{color:var(--gold-deep);text-decoration:underline;}
.mht-consent .row{display:flex;gap:10px;justify-content:flex-end;}
.mht-consent .btn{font-size:14px;padding:9px 18px;}
@media(max-width:560px){.mht-consent{bottom:12px;}.mht-consent .row{justify-content:stretch;}.mht-consent .btn{flex:1;justify-content:center;}}

/* Haaranalyse wizard (template-parts/haar-analyse.php) — primary lead path in the hero */
.wz-card{padding:24px 26px 22px;}
.wz-top{margin-bottom:18px;}
.wz-bar{height:6px;border-radius:6px;background:var(--surface-2);overflow:hidden;}
.wz-bar-fill{display:block;height:100%;width:14%;border-radius:6px;background:linear-gradient(90deg,var(--gold),var(--gold-deep));transition:width .35s ease;}
.wz-meta{display:flex;justify-content:space-between;align-items:baseline;margin-top:8px;}
.wz-headline{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep);}
.wz-count{font-size:12.5px;font-weight:600;color:var(--ink-faint);}
.wz-step{animation:wzIn .3s ease;}
@keyframes wzIn{from{opacity:0;transform:translateX(10px);}to{opacity:1;transform:none;}}
.wz-q{font-family:'Fraunces','Fraunces Fallback',serif;font-size:21px;line-height:1.2;margin:0 0 16px;}
.wz-opt,.wz-q .wz-opt{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:13px;font-weight:500;color:var(--ink-faint);}
.wz-hint{font-size:13px;color:var(--ink-soft);margin:-8px 0 14px;line-height:1.5;}
.wz-grid{display:grid;gap:11px;}
.wz-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.wz-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.wz-choice{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;
  min-height:104px;padding:16px 10px;border:1.5px solid var(--line);border-radius:14px;cursor:pointer;text-align:center;
  background:#fff;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;}
.wz-choice:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:var(--shadow);}
.wz-choice input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none;}
.wz-choice .wz-ico{color:var(--gold-deep);width:44px;height:44px;display:flex;align-items:center;justify-content:center;}
.wz-choice .wz-ico svg{width:100%;height:100%;}
/* Adım-1 foto çipleri (İlhami 15.07): daire foto, SVG'lerden büyük */
.wz-choice .wz-ico img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid var(--line);}
.wz-choice:hover .wz-ico img{border-color:var(--gold);}
.wz-choice .wz-ico:empty{display:none;}
.wz-choice .wz-lab{font-size:14px;font-weight:600;color:var(--ink);line-height:1.25;}
.wz-choice:has(input:checked){border-color:var(--gold-deep);background:var(--gold-tint);box-shadow:0 0 0 3px rgba(46,155,221,.15);}
.wz-choice:has(input:checked)::after{content:"✓";position:absolute;top:8px;right:10px;font-size:13px;font-weight:700;color:var(--gold-deep);}
/* pattern step: bigger, realistic head diagrams */
.wz-step[data-step="3"] .wz-choice{min-height:124px;}
.wz-step[data-step="3"] .wz-ico{width:64px;height:64px;}
/* age step has no icons → make it compact */
.wz-step[data-step="5"] .wz-choice{min-height:62px;}
.wz-upload{display:block;border:2px dashed var(--line);border-radius:14px;padding:26px 16px;text-align:center;cursor:pointer;transition:border-color .18s,background .18s;}
.wz-upload:hover{border-color:var(--gold);background:var(--gold-tint);}
.wz-upload input{position:absolute;opacity:0;width:1px;height:1px;}
.wz-upload-inner{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--ink-soft);}
.wz-upload-ico{width:42px;height:42px;border-radius:50%;background:var(--gold-tint);color:var(--gold-deep);display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;}
.wz-upload.has-file{border-color:var(--gold-deep);background:var(--gold-tint);}
.wz-upload.has-file .wz-upload-txt{color:var(--gold-deep);font-weight:600;}
.wz-nav{display:flex;gap:10px;margin-top:18px;}
.wz-nav .btn{flex:1;justify-content:center;}
.wz-submit{width:100%;justify-content:center;margin-top:4px;}
.wz-back-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);}
.wz-back{background:none;border:none;color:var(--ink-soft);font:inherit;font-size:13.5px;cursor:pointer;padding:4px 2px;}
.wz-back:hover{color:var(--ink);}
.wz-chat-link{font-size:13px;color:var(--gold-deep);text-decoration:none;margin-left:auto;}
.wz-chat-link:hover{text-decoration:underline;}
.wz-done{text-align:center;padding:24px 8px;}
.wz-check{width:58px;height:58px;margin:0 auto 16px;border-radius:50%;background:var(--gold-tint);color:var(--gold-deep);display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:700;}
.wz-done h3{font-family:'Fraunces','Fraunces Fallback',serif;font-size:24px;margin:0 0 8px;}
.wz-done p{color:var(--ink-soft);font-size:15px;line-height:1.55;}
@media(prefers-reduced-motion:reduce){.wz-step{animation:none;}.wz-bar-fill{transition:none;}}
/* hero teaser card (opens the wizard modal) */
.wz-teaser-tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep);background:var(--gold-tint);padding:6px 13px;border-radius:30px;margin-bottom:14px;}
.wz-teaser-h{font-family:'Fraunces','Fraunces Fallback',serif;font-size:23px;line-height:1.22;margin:0 0 16px;}
.wz-teaser-list{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:10px;}
.wz-teaser-list li{position:relative;padding-left:28px;font-size:14.5px;color:var(--ink-soft);}
.wz-teaser-list li::before{content:"✓";position:absolute;left:0;top:-1px;width:19px;height:19px;border-radius:50%;background:var(--gold-tint);color:var(--gold-deep);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.wz-open{width:100%;justify-content:center;font-size:16px;padding:14px;}
/* wizard modal */
.wz-modal{position:fixed;inset:0;z-index:3500;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(13,32,43,.6);backdrop-filter:blur(4px);animation:exitFade .2s ease;}
.wz-modal[hidden]{display:none;}
.wz-modal-card{background:#fff;border-radius:20px;box-shadow:var(--shadow-lg);width:100%;max-width:540px;max-height:92vh;overflow-y:auto;padding:30px 30px 26px;position:relative;animation:wzPop .25s ease;}
@keyframes wzPop{from{opacity:0;transform:translateY(12px) scale(.98);}to{opacity:1;transform:none;}}
.wz-close{position:absolute;top:12px;right:14px;width:34px;height:34px;border:none;background:var(--surface);border-radius:50%;font-size:22px;line-height:1;color:var(--ink-soft);cursor:pointer;z-index:2;transition:background .15s,color .15s;}
.wz-close:hover{background:var(--surface-2);color:var(--ink);}
body.wz-lock{overflow:hidden;}
@media(max-width:560px){.wz-modal{padding:0;}.wz-modal-card{max-width:none;min-height:100vh;max-height:none;border-radius:0;padding:54px 20px 30px;}}
@media(prefers-reduced-motion:reduce){.wz-modal,.wz-modal-card{animation:none;}}

/* ===========================================================================
   PHASE 3 — PREMIUM MOTION POLISH (2026-06-20)
   All transform/opacity/filter only → CLS stays 0. Guarded by prefers-reduced-motion.
   =========================================================================== */

/* 1 — HERO signature: the follicle motif blooms in on load, then glow + follicle breathe */

/* 2 — IHR WEG: process steps reveal in sequence (uses the --rd stagger from main.js):
       a left accent bar grows + the big number pops, per step, in order. */
.step::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(var(--gold),var(--gold-deep));transform:scaleY(0);transform-origin:top;
  transition:transform .55s cubic-bezier(.22,1,.36,1);transition-delay:var(--rd,0ms);}
.step.in::before{transform:scaleY(1);}
.step.in .num{animation:numPop .6s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--rd,0ms);}
@keyframes numPop{from{transform:scale(.45);opacity:0;}to{transform:scale(1);opacity:1;}}
.step{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
.step:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--gold);}

/* 4 — card hover micro-interactions (icons react) + offer band breathing glow */
.method .ic,.feat .fic,.circ .cc{transition:transform .25s cubic-bezier(.22,1,.36,1);}
.method:hover .ic{transform:scale(1.12) rotate(-5deg);}
.feat:hover .fic{transform:translateY(-3px) scale(1.07);}
.circ:hover .cc{transform:scale(1.07);}
.offer::before{animation:offerBreathe 7s ease-in-out infinite;}
@keyframes offerBreathe{0%,100%{transform:scale(1);opacity:.8;}50%{transform:scale(1.2);opacity:1;}}

@media(prefers-reduced-motion:reduce){
  .offer::before{animation:none;}
  .step::before{transition:none;transform:scaleY(1);}
  .step.in .num{animation:none;}
  .method .ic,.feat .fic,.circ .cc{transition:none;}
}

/* Mobil: chat balonu (FAB + consent sonrası MindTrellis iframe'i) sabit CTA
   barının ÜSTÜNE çıkar. iframe'in inline style'ını yenmek için !important şart.
   (Kural sırası gereği dosyanın en sonunda.) */
@media(max-width:768px){
	.mht-chat-fab{bottom:88px;}
	#mindtrellis-widget{bottom:88px !important;right:14px !important;}
}

/* Almanca uzun bileşik kelimeler: tiresiz saçma kırılma yerine düzgün heceleme
   ("Haartransplantationstec/hniken" → "Haartransplantations-techniken"). */
h1,h2,h3,h4,.sec,.method h4,.wz-teaser-h{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word;}

/* Mobil header CTA'sı iki satıra kırılmasın — kompakt tek satır */
@media(max-width:560px){
	header.nav .btn{padding:10px 14px;font-size:14px;white-space:nowrap;}
}

/* Tap-target hijyeni (WCAG 2.5.5): nav linkleri ≥24px, hamburger ≥44px */
header.nav .menu > li > a{padding-top:6px;padding-bottom:6px;display:inline-block;}
/* display'e DOKUNMA: .nav-toggle desktop'ta display:none, mobilde display:block
   (yukarıdaki kurallar); flex yapmak çizgileri yan yana dizip tek çizgi gösteriyordu. */
.nav-toggle{min-width:44px;min-height:44px;}

/* YMYL byline — blog yazılarında görünür tıbbi-inceleme satırı (single.php) */
.post-byline{display:flex;align-items:center;gap:12px;margin:18px 0 6px;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:12px;font-size:14px;color:var(--ink-soft);line-height:1.45;}
.post-byline img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:top;flex:none;}
.post-byline b{color:var(--ink);}

/* ---- Yolunuz adım popup'ları (toplantı 12.07, 5a) ---- */
.step-act{cursor:pointer;font:inherit;text-align:center;color:inherit;background:var(--white);appearance:none;display:block;width:100%;text-decoration:none;}
.step-act .step-hint{display:block;margin-top:8px;font-size:12.5px;font-weight:600;color:var(--gold-deep);opacity:0;transform:translateY(4px);transition:.22s;}
.step-act:hover .step-hint,.step-act:focus-visible .step-hint{opacity:1;transform:none;}
.mht-modal{position:fixed;inset:0;z-index:3200;display:none;align-items:center;justify-content:center;background:rgba(14,32,48,.6);backdrop-filter:blur(3px);padding:18px;}
.mht-modal.open{display:flex;}
.mht-modal-card{position:relative;max-width:460px;width:100%;max-height:calc(100vh - 40px);overflow-y:auto;border-radius:20px;}
.mht-modal-card .hero-card{margin:0;width:100%;}
.mht-modal-info{background:#fff;padding:34px 30px 28px;box-shadow:var(--shadow-lg);}
.mht-modal-info h3{font-family:'Fraunces','Fraunces Fallback',serif;font-size:24px;font-weight:600;margin-bottom:10px;}
.mht-modal-info p{color:var(--ink-soft);}
.mht-modal-x{position:absolute;top:10px;right:12px;z-index:2;background:none;border:none;font-size:26px;line-height:1;cursor:pointer;color:var(--ink-faint);min-width:44px;min-height:44px;}
.mht-modal-x:hover{color:var(--ink);}

/* Premium kartı link varyantı (Methoden → FUE, toplantı 12.07 5b) */
.feat-link{display:block;text-decoration:none;color:inherit;cursor:pointer;}
.feat-link:hover{border-color:var(--gold);box-shadow:var(--shadow-lg);transform:translateY(-3px);}
.feat-link p{color:var(--gold-deep);font-weight:600;}

/* jameda + Google puan çiftleri (toplantı 12.07) */
.wz-rating{display:flex;flex-wrap:wrap;gap:6px 16px;}
.wz-rate-item{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:inherit;}
a.wz-rate-item:hover b{text-decoration:underline;}
.tb-rating{display:flex;flex-wrap:wrap;gap:4px 18px;align-items:center;}
.tb-rate-item{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:inherit;}
a.tb-rate-item:hover .tb-rating-txt b{text-decoration:underline;}
