/* ══════════════════════════════════
   DESIGN TOKENS — inherited from hairmedico system
══════════════════════════════════ */
:root {
  --navy:   #050D1F;
  --navy2:  #0C1630;
  --gold:   #C4A96A;
  --gold-d: #9A7F44;
  --gold-l: #D4BC87;
  --gold-bg: rgba(196,169,106,.09);
  --gold-br: rgba(196,169,106,.25);
  --white:  #FFFFFF;
  --cream:  #F4F1EB;
  --warm:   #FAF7F2;
  --ink:    #1C1C1C;
  --ink2:   #3A3835;
  --ink3:   #6A6460;
  --ink4:   #A0A0A0;
  --line:   rgba(28,28,28,.1);
  --line2:  rgba(28,28,28,.06);
  --wa:     #25D366;
  --serif:  'Cormorant Garamond', Georgia, serif;
  --sans:   'Poppins', system-ui, sans-serif;
  --ease:   cubic-bezier(.22,1,.36,1);
  --t1: .16s; --t2: .28s; --t3: .42s;
  --r4:4px; --r8:8px; --r12:12px; --r16:16px; --r24:24px;
  --mw: 1240px;
  --nav-h: 68px;
}
*, *::before, *::after { box-sizing:border-box; margin:0; padding:0 }
html { scroll-behavior: smooth }
body { font-family:var(--sans); background:var(--warm); color:var(--ink); -webkit-font-smoothing:antialiased }
a { text-decoration:none; color:inherit }
img { display:block; max-width:100% }

/* ── LAYOUT ── */
.wrap { max-width:var(--mw); margin:0 auto; padding:0 40px }
.sec { padding:100px 0 }
.sec-navy { padding:100px 0; background:var(--navy) }
.sec-cream { padding:100px 0; background:var(--cream) }
.sec-white { padding:100px 0; background:var(--white) }

/* ── TYPE ── */
.over {
  font-size:.6rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--gold-d); display:flex; align-items:center; gap:10px; margin-bottom:14px;
}
.over::before { content:''; width:24px; height:1px; background:var(--gold); opacity:.55; flex-shrink:0 }
.serif-i { font-style:italic; font-family:var(--serif) }

/* ── NAV (simplified — links back to main) ── */
nav {
  position:fixed; top:0; left:0; right:0; height:var(--nav-h);
  background:rgba(255,255,255,.92); backdrop-filter:blur(24px);
  border-bottom:1px solid var(--line2); z-index:999;
  display:flex; align-items:center;
}
.nw { max-width:var(--mw); margin:0 auto; padding:0 40px; width:100%; display:flex; align-items:center; justify-content:space-between }
.n-logo { font-family:var(--serif); font-size:1.25rem; font-weight:300; letter-spacing:.06em; color:var(--navy) }
.n-logo span { font-weight:600; color:var(--gold-d) }
.n-links { display:flex; align-items:center; gap:28px }
.n-links a { font-size:.72rem; font-weight:300; letter-spacing:.06em; text-transform:uppercase; color:var(--ink3); transition:color var(--t1) }
.n-links a:hover, .n-links a.active { color:var(--ink) }
.n-cta {
  display:flex; align-items:center; gap:7px; padding:9px 20px;
  background:var(--gold); color:var(--navy); border-radius:var(--r4);
  font-size:.7rem; font-weight:400; letter-spacing:.12em; text-transform:uppercase;
  transition:background var(--t1);
}
.n-cta:hover { background:var(--gold-l) }

/* ── HERO — PAGE ── */
.page-hero {
  background:var(--navy);
  padding:calc(var(--nav-h) + 80px) 0 80px;
  position:relative; overflow:hidden;
}
.page-hero::before {
  content:'';
  position:absolute; inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 110%, rgba(196,169,106,.08), transparent 55%);
}
.page-hero-grid {
  position:absolute; inset:0;
  background-image:linear-gradient(rgba(196,169,106,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(196,169,106,.03) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:radial-gradient(ellipse 70% 70% at 50% 50%, black 20%, transparent 80%);
}
.page-hero-in {
  position:relative; z-index:2; text-align:center; max-width:760px; margin:0 auto;
}
.page-hero .over { justify-content:center; color:rgba(196,169,106,.75) }
.page-hero .over::before { display:none }
.page-hero h1 {
  font-family:var(--serif); font-weight:300;
  font-size:clamp(2.6rem,5.5vw,5rem);
  line-height:.92; letter-spacing:-.025em;
  color:#fff; margin-top:16px; margin-bottom:24px;
}
.page-hero h1 em { font-style:italic; color:var(--gold) }
.page-hero .sub {
  font-size:.92rem; line-height:1.78; color:rgba(255,255,255,.5);
  font-weight:200; max-width:540px; margin:0 auto 40px;
}
.hero-pills { display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap }
.hero-pill {
  display:flex; align-items:center; gap:6px;
  padding:6px 14px; border-radius:20px;
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12);
  font-size:.65rem; color:rgba(255,255,255,.6); letter-spacing:.06em; text-transform:uppercase;
}
.hero-pill svg { stroke:var(--gold); fill:none; width:11px; height:11px; stroke-width:1.8; flex-shrink:0 }

/* ── PACKAGE CARDS ── */
.pkg-section { padding:100px 0; background:var(--warm) }
.pkg-intro { text-align:center; max-width:600px; margin:0 auto 64px }
.pkg-intro h2 {
  font-family:var(--serif); font-weight:300;
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:.96; letter-spacing:-.02em; margin-top:14px;
}
.pkg-intro h2 em { font-style:italic; color:var(--gold) }
.pkg-intro p { font-size:.85rem; color:var(--ink3); line-height:1.8; margin-top:14px }

.pkg-grid {
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:20px; align-items:start;
}

.pk {
  background:var(--white); border:1.5px solid var(--line);
  border-radius:var(--r24); overflow:hidden;
  transition:border-color var(--t2), box-shadow var(--t2), transform var(--t2) var(--ease);
  position:relative;
}
.pk:hover { box-shadow:0 12px 40px rgba(0,0,0,.07); transform:translateY(-3px) }
.pk.feat, .pk.pk-featured {
  border-color:var(--navy);
  box-shadow:0 12px 40px rgba(5,13,31,.12);
}
.pk.feat:hover, .pk.pk-featured:hover { box-shadow:0 20px 56px rgba(5,13,31,.18) }

/* Badge */
.pk-badge {
  display:flex; align-items:center; justify-content:center; gap:6px;
  padding:10px 20px;
  background:var(--navy); color:var(--gold);
  font-size:.58rem; font-weight:400; letter-spacing:.14em; text-transform:uppercase;
}
.pk-badge .dot { width:4px; height:4px; border-radius:50%; background:var(--gold); animation:blink 1.8s infinite }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:.3} }

/* Empty badge for alignment */
.pk-badge-empty { height:36px; background:var(--cream); border-bottom:1px solid var(--line2) }

.pk-body { padding:32px 28px 28px }

.pk-name {
  font-family:var(--serif); font-size:1.5rem; font-weight:400;
  color:var(--ink); line-height:1.1; margin-bottom:4px;
}
.pk-sub { font-size:.72rem; color:var(--gold-d); font-weight:400; letter-spacing:.04em; margin-bottom:6px }
.pk-range { font-size:.75rem; color:var(--ink3); margin-bottom:24px; font-weight:200 }

/* Includes list */
.pk-includes { display:flex; flex-direction:column; gap:0; margin-bottom:28px }
.pk-inc {
  display:flex; align-items:center; gap:10px;
  padding:9px 0;
  border-bottom:1px solid var(--line2);
  font-size:.8rem; color:var(--ink2); font-weight:300;
}
.pk-inc:last-child { border-bottom:none }
.pk-inc .ic {
  width:22px; height:22px; border-radius:50%;
  background:var(--gold-bg); border:1px solid var(--gold-br);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.pk-inc .ic svg { stroke:var(--gold); fill:none; width:10px; height:10px; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round }
.pk-inc.dim .ic { background:var(--cream); border-color:var(--line) }
.pk-inc.dim .ic svg { stroke:var(--ink4) }
.pk-inc.dim { color:var(--ink4) }
.pk-inc.dim .ic-x svg { display:none }
.pk-inc.dim::after { content:'—'; color:var(--ink4); font-size:.8rem }

/* Price area */
.pk-price-row {
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 0 20px; border-top:1px solid var(--line2);
  margin-bottom:16px;
}
.pk-price-label { font-size:.65rem; color:var(--ink4); text-transform:uppercase; letter-spacing:.1em }
.pk-price {
  font-family:var(--serif); font-size:1.1rem; font-weight:300; color:var(--ink2);
}
.pk-price span { font-size:.75rem; color:var(--ink3); font-family:var(--sans) }

/* CTA */
.pk-cta {
  display:flex; align-items:center; justify-content:center; gap:8px;
  padding:14px 20px; border-radius:var(--r8);
  font-family:var(--sans); font-size:.7rem; font-weight:400; letter-spacing:.1em; text-transform:uppercase;
  transition:all var(--t1) var(--ease); cursor:pointer; width:100%;
}
.pk.feat .pk-cta, .pk.pk-featured .pk-cta { background:var(--navy); color:#fff }
.pk.feat .pk-cta:hover, .pk.pk-featured .pk-cta:hover { background:var(--navy2); transform:translateY(-1px); box-shadow:0 6px 20px rgba(5,13,31,.25) }
.pk:not(.feat) .pk-cta { background:transparent; color:var(--ink3); border:1.5px solid var(--line) }
.pk:not(.feat) .pk-cta:hover { border-color:var(--gold); color:var(--gold-d) }
.pk-wa {
  display:flex; align-items:center; justify-content:center; gap:7px;
  margin-top:8px; padding:10px 20px; border-radius:var(--r8);
  background:rgba(37,211,102,.08); border:1px solid rgba(37,211,102,.2);
  color:#1a9e4e; font-size:.68rem; font-weight:300; letter-spacing:.06em; text-transform:uppercase;
  transition:all var(--t1); width:100%;
}
.pk-wa:hover { background:rgba(37,211,102,.14); border-color:rgba(37,211,102,.35) }
.pk-wa svg { stroke:#25D366; fill:none; width:14px; height:14px; stroke-width:1.6; stroke-linecap:round }

/* ── WHAT'S INCLUDED TABLE ── */
.inc-table { margin-top:60px; overflow-x:auto }
.inc-table table {
  width:100%; border-collapse:collapse;
  background:var(--white); border-radius:var(--r16); overflow:hidden;
  border:1px solid var(--line);
}
.inc-table th {
  padding:16px 20px; text-align:left;
  font-size:.62rem; font-weight:400; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ink4); background:var(--cream); border-bottom:2px solid var(--line);
}
.inc-table th:not(:first-child) { text-align:center }
.inc-table th.feat-col { background:var(--navy); color:var(--gold) }
.inc-table td {
  padding:14px 20px; border-bottom:1px solid var(--line2);
  font-size:.82rem; color:var(--ink2); font-weight:300; vertical-align:middle;
}
.inc-table td:not(:first-child) { text-align:center }
.inc-table tr:last-child td { border-bottom:none }
.inc-table tr:hover td { background:var(--warm) }
.check { color:var(--gold-d); font-size:1rem }
.cross { color:var(--ink4); font-size:.8rem }
.dash { color:var(--ink4) }

/* ── GUARANTEES STRIP ── */
.guarantees { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); margin-top:60px; border-radius:var(--r16); overflow:hidden }
.gu {
  background:var(--white); padding:28px 22px; text-align:center;
  transition:background var(--t1);
}
.gu:hover { background:var(--warm) }
.gu-icon { width:44px; height:44px; border-radius:50%; background:var(--gold-bg); border:1px solid var(--gold-br); display:flex; align-items:center; justify-content:center; margin:0 auto 14px }
.gu-icon svg { stroke:var(--gold-d); fill:none; width:20px; height:20px; stroke-width:1.5 }
.gu-title { font-size:.82rem; font-weight:400; color:var(--ink); margin-bottom:5px }
.gu-desc { font-size:.72rem; color:var(--ink3); line-height:1.65 }

/* ── COMPARISON SECTION ── */
.cmp-intro { text-align:center; max-width:600px; margin:0 auto 56px }
.cmp-intro h2 { font-family:var(--serif); font-weight:300; font-size:clamp(1.8rem,3.5vw,3.2rem); line-height:1.08; margin-top:14px }
.cmp-intro h2 em { font-style:italic; color:var(--gold) }
.cmp-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px }
.cmp-card {
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
  border-radius:var(--r16); padding:24px 20px; text-align:center;
  transition:border-color var(--t2);
}
.cmp-card:hover { border-color:rgba(196,169,106,.3) }
.cmp-card.cmp-us {
  background:rgba(196,169,106,.1); border-color:rgba(196,169,106,.3);
}
.cmp-flag { font-size:2.2rem; margin-bottom:12px }
.cmp-country { font-size:.62rem; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.4); margin-bottom:4px }
.cmp-city { font-size:.82rem; color:rgba(255,255,255,.65); font-weight:300; margin-bottom:16px }
.cmp-price { font-family:var(--serif); font-size:1.6rem; font-weight:300; color:rgba(255,255,255,.5); margin-bottom:4px }
.cmp-card.cmp-us .cmp-price { color:var(--gold); font-size:1.8rem }
.cmp-range { font-size:.65rem; color:rgba(255,255,255,.3); letter-spacing:.04em }
.cmp-card.cmp-us .cmp-range { color:rgba(196,169,106,.6) }
.cmp-saving {
  margin-top:14px; padding:6px 12px; border-radius:20px;
  background:rgba(37,211,102,.12); border:1px solid rgba(37,211,102,.2);
  font-size:.62rem; color:#5ecd8a; letter-spacing:.06em; text-transform:uppercase;
  display:inline-block;
}
.cmp-card:not(.cmp-us) .cmp-saving { background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.08); color:rgba(255,255,255,.3) }

/* ── FAQ ── */
.faq-intro { text-align:center; max-width:520px; margin:0 auto 56px }
.faq-intro h2 { font-family:var(--serif); font-weight:300; font-size:clamp(1.8rem,3.5vw,3rem); line-height:1.08; margin-top:14px }
.faq-intro h2 em { font-style:italic; color:var(--gold) }
.faq-cols { display:grid; grid-template-columns:1fr 1fr; gap:40px; max-width:960px; margin:0 auto }
.faq-col { display:flex; flex-direction:column; gap:0 }
.fq { border-bottom:1px solid var(--line2); overflow:hidden }
.fq:first-child { border-top:1px solid var(--line2) }
.fq-q {
  display:flex; align-items:flex-start; justify-content:space-between; gap:16px;
  padding:18px 0; cursor:pointer;
  font-size:.85rem; font-weight:300; color:var(--ink2); line-height:1.5;
  transition:color var(--t1);
}
.fq-q:hover { color:var(--ink) }
.fq.open .fq-q { color:var(--navy) }
.fq-ic {
  width:20px; height:20px; border-radius:50%; border:1px solid var(--line);
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0; margin-top:2px; transition:background var(--t1), border-color var(--t1);
}
.fq.open .fq-ic { background:var(--navy); border-color:var(--navy) }
.fq-ic svg { stroke:var(--ink3); fill:none; width:9px; height:9px; stroke-width:2.5; stroke-linecap:round; transition:stroke var(--t1), transform var(--t2) var(--ease) }
.fq.open .fq-ic svg { stroke:#fff; transform:rotate(45deg) }
.fq-a { max-height:0; overflow:hidden; transition:max-height .32s var(--ease) }
.fq.open .fq-a { max-height:300px }
.fq-body { padding:0 0 16px; font-size:.8rem; line-height:1.78; color:var(--ink3); font-weight:200 }
.fq-body a { color:var(--gold-d); text-decoration:underline }

/* ── CTA SECTION ── */
.cta-sec {
  padding:100px 0;
  background:var(--navy);
  position:relative; overflow:hidden;
}
.cta-sec::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse 60% 70% at 50% 110%, rgba(196,169,106,.08), transparent 55%);
}
.cta-sec-in {
  position:relative; z-index:2;
  display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center;
}
.cta-sec .over { color:rgba(196,169,106,.75) }
.cta-h2 {
  font-family:var(--serif); font-weight:300;
  font-size:clamp(2rem,4vw,3.6rem);
  line-height:.96; letter-spacing:-.025em; color:#fff; margin-top:14px; margin-bottom:20px;
}
.cta-h2 em { font-style:italic; color:var(--gold) }
.cta-p { font-size:.85rem; line-height:1.8; color:rgba(255,255,255,.5); font-weight:200; margin-bottom:28px }
.cta-actions { display:flex; gap:12px; flex-wrap:wrap; align-items:center }
.btn-gold {
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 30px; background:var(--gold); color:var(--navy);
  border-radius:var(--r4); font-size:.72rem; font-weight:400; letter-spacing:.12em; text-transform:uppercase;
  transition:all var(--t1) var(--ease);
}
.btn-gold:hover { background:var(--gold-l); transform:translateY(-1px); box-shadow:0 8px 24px rgba(196,169,106,.3) }
.btn-wa {
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 26px; background:var(--wa); color:#fff;
  border-radius:var(--r4); font-size:.72rem; font-weight:400; letter-spacing:.12em; text-transform:uppercase;
  transition:all var(--t1) var(--ease);
}
.btn-wa:hover { background:#1da951; transform:translateY(-1px); box-shadow:0 8px 24px rgba(37,211,102,.3) }
.btn-wa svg { stroke:#fff; fill:none; width:16px; height:16px; stroke-width:1.6; stroke-linecap:round; flex-shrink:0 }
.cta-note { margin-top:14px; font-size:.67rem; color:rgba(255,255,255,.25); letter-spacing:.04em }
.cta-card {
  background:rgba(255,255,255,.04); border:1px solid rgba(196,169,106,.18);
  border-radius:var(--r24); padding:36px;
}
.cta-card-label { font-size:.6rem; letter-spacing:.16em; text-transform:uppercase; color:rgba(196,169,106,.6); margin-bottom:10px }
.cta-card-title { font-family:var(--serif); font-size:1.4rem; font-weight:300; color:#fff; line-height:1.3; margin-bottom:12px }
.cta-card-title em { font-style:italic; color:var(--gold) }
.cta-card-body { font-size:.78rem; color:rgba(255,255,255,.4); line-height:1.75; margin-bottom:22px }
.cta-stats { display:grid; grid-template-columns:repeat(3,1fr); text-align:center }
.cta-stat { padding:0 10px }
.cta-stat + .cta-stat { border-left:1px solid rgba(255,255,255,.08) }
.cta-stat-n { font-family:var(--serif); font-size:1.5rem; font-weight:300; color:var(--gold) }
.cta-stat-l { font-size:.58rem; color:rgba(255,255,255,.3); margin-top:4px; text-transform:uppercase; letter-spacing:.06em }
.cta-sep { height:1px; background:rgba(255,255,255,.08); margin:20px 0 }

/* ── FOOTER ── */
footer {
  background:var(--navy); padding:40px 0;
  border-top:1px solid rgba(255,255,255,.06);
}
.ft { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px }
.ft-logo { font-family:var(--serif); font-size:1.1rem; font-weight:300; letter-spacing:.1em; color:rgba(255,255,255,.5) }
.ft-logo span { color:var(--gold-d) }
.ft-copy { font-size:.65rem; color:rgba(255,255,255,.2) }
.ft-links { display:flex; gap:20px }
.ft-links a { font-size:.65rem; color:rgba(255,255,255,.25); letter-spacing:.06em; text-transform:uppercase; transition:color var(--t1) }
.ft-links a:hover { color:rgba(255,255,255,.6) }

/* ── RESPONSIVE ── */
@media(max-width:1024px) {
  .cmp-grid { grid-template-columns:repeat(2,1fr) }
}
@media(max-width:860px) {
  .wrap { padding:0 20px }
  .sec,.sec-navy,.sec-cream,.sec-white { padding:72px 0 }
  .pkg-section { padding:72px 0 }
  .pkg-grid { grid-template-columns:1fr; max-width:480px; margin:0 auto }
  .guarantees { grid-template-columns:repeat(2,1fr) }
  .cmp-grid { grid-template-columns:1fr 1fr }
  .faq-cols { grid-template-columns:1fr }
  .cta-sec-in { grid-template-columns:1fr; gap:40px }
  .cta-card { display:none }
  .n-links { display:none }
}
@media(max-width:480px) {
  .pkg-grid { max-width:100% }
  .cmp-grid { grid-template-columns:1fr 1fr }
  .cta-actions { flex-direction:column; align-items:stretch }
  .btn-gold, .btn-wa { justify-content:center }
  .guarantees { grid-template-columns:1fr 1fr }
}


.fsoc{display:flex;align-items:center;gap:12px}
.fsoc-a{color:rgba(255,255,255,.35);transition:color .2s;display:flex;align-items:center;justify-content:center}
.fsoc-a:hover{color:var(--gold)}

.fsocial { display:flex; align-items:center; gap:10px }
.fsoc-link { display:flex; align-items:center; justify-content:center; width:30px; height:30px; color:rgba(255,255,255,.35); border:1px solid rgba(255,255,255,.12); border-radius:6px; transition:color .2s, border-color .2s }
.fsoc-link:hover { color:var(--gold); border-color:var(--gold) }
.fsoc-link svg { width:14px; height:14px }
@media(max-width:560px){ .fsocial { order:2; width:100%; justify-content:center } }


/* ══════════════════════════════════════════════════════
   GLOBAL MOBILE FIX — iPhone uyumlu
   ══════════════════════════════════════════════════════ */

/* 1. Yatay taşma engeli */
html, body { overflow-x: hidden; -webkit-overflow-scrolling: touch; }

/* 2. .wrap padding — iPhone SE için küçült */
@media (max-width: 479px) {
  .wrap { padding: 0 20px; }
}
@media (max-width: 359px) {
  .wrap { padding: 0 16px; }
}

/* 3. iOS Safari input zoom fix (font-size < 16px = otomatik zoom)
      Tüm input, select, textarea → min 16px */
@media (max-width: 768px) {
  input, select, textarea,
  .cf-input, .evl-input, .ev-input, .ef-input,
  input[type="text"], input[type="email"],
  input[type="tel"], input[type="search"],
  input[type="number"] {
    font-size: 16px !important;
    -webkit-text-size-adjust: 100%;
  }
}

/* 4. iOS tap highlight kaldır */
* { -webkit-tap-highlight-color: transparent; }

/* 5. iPhone X+ safe area (notch/home bar) */
body { 
  padding-bottom: env(safe-area-inset-bottom, 0px);
}
nav {
  padding-top: env(safe-area-inset-top, 0px);
}
#sticky-social {
  bottom: calc(24px + env(safe-area-inset-bottom, 0px));
}

/* 6. Tap target minimum 44px (Apple HIG) */
@media (max-width: 768px) {
  .btn, .btn-cta, .btn-ghost, .btn-gold,
  .fc-a, .nav-link, .wa-btn,
  a[href^="https://wa.me"],
  .flng {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
}

/* 7. Footer dil linkleri — daha büyük tap hedefi */
@media (max-width: 479px) {
  .flng {
    padding: 6px 10px;
    min-height: 36px;
  }
  .flangs { gap: 4px; }
}

/* 8. Hero text — iPhone SE (375px) */
@media (max-width: 399px) {
  .t-hero, .hero-h1, .el-h1, .bp-h1 { font-size: 2.4rem !important; }
  .ev-ls-h1 { font-size: 2.8rem !important; }
  .evl-h1 { font-size: 2.2rem !important; }
}

/* 9. Tablo yatay scroll — blog içindeki tablolar */
.bp-content table,
.ev-content table,
article table {
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  white-space: nowrap;
}
.bp-content td, .bp-content th {
  white-space: normal;
  min-width: 100px;
}

/* 10. Image overflow */
img { max-width: 100%; height: auto; }

/* 11. Sticky nav height adjustment on iPhone */
@media (max-width: 479px) {
  :root { --nav-h: 56px; }
}

/* 12. Form grid → tek kolon iPhone'da */
@media (max-width: 479px) {
  .cf-grid, .evl-row,
  [style*="grid-template-columns: 1fr 1fr"],
  [style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
  }
}

/* 13. Event listing cards — iPhone */
@media (max-width: 479px) {
  .ev-card-new,
  .el-card { grid-template-columns: 1fr !important; }
  .ev-card-date-col { 
    flex-direction: row !important;
    gap: 10px;
    padding: 14px 18px;
    justify-content: flex-start;
  }
  .ev-card-day { font-size: 1.8rem !important; }
  .ev-card-cta-col {
    border-left: none !important;
    border-top: 1px solid rgba(0,0,0,.06);
    padding: 14px 18px;
  }
}

/* 14. Blog sidebar → hidden on mobile, show TOC inline */
@media (max-width: 899px) {
  .bp-wrap { display: block !important; }
  .bp-sidebar { margin-top: 40px; }
  .bp-toc { margin-bottom: 20px; }
}

/* 15. Nav hamburger bigger tap area */
@media (max-width: 768px) {
  .hamburger, .nav-toggle, #menu-toggle {
    min-width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

/* 16. Images in nav/mega — prevent overflow */
@media (max-width: 479px) {
  .mega-panel { 
    width: 100vw !important;
    left: 0 !important;
    right: 0 !important;
    border-radius: 0;
  }
}

/* 17. Contact form CTA box on mobile */
@media (max-width: 599px) {
  .bp-cta-box,
  .evl-doc { flex-direction: column; gap: 14px; }
  .bp-cta-box a { width: 100%; justify-content: center; }
}

/* 18. Footer bottom on small screens */
@media (max-width: 479px) {
  .fbot {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px));
  }
  .ft-sister { font-size: .65rem; }
}


/* ══ IPHONE-SPECIFIC ADDITIONAL FIXES ══ */
@media(max-width:479px){
  section,[class*="sec-"],[class*="-sec"],
  .ev-ls-body,.evl-main,.bp-wrap{padding-top:56px!important;padding-bottom:64px!important}
  .ev-ls-hero{min-height:55vh;padding-bottom:52px}
  .evl-banner{min-height:45vh}
  .evl-banner-inner{padding:28px 0 52px}
}
@media(max-width:479px){
  .xt-grid{grid-template-columns:1fr!important}
  .xt-card{padding:28px 20px!important}
  .fg{grid-template-columns:1fr 1fr!important;gap:24px 16px!important}
  .fbot{flex-direction:column!important;align-items:flex-start!important;gap:14px!important}
  .ft-top{flex-direction:column!important;gap:20px!important}
  .fq-q{padding:16px 14px!important;min-height:48px}
  .ev-card-new,.el-card{grid-template-columns:1fr!important}
  .ev-card-date-col{flex-direction:row!important;gap:10px;padding:14px 18px;justify-content:flex-start}
  .ev-card-cta-col{border-left:none!important;border-top:1px solid rgba(0,0,0,.06);padding:14px 18px}
}
#sticky-social{bottom:calc(24px + env(safe-area-inset-bottom,0px))!important}
#drawer{padding-bottom:env(safe-area-inset-bottom,0px)}
@media(max-width:899px){.bp-toc{display:none}.bp-wrap{display:block!important}}
@media(max-width:599px){.bp-cta-box,.evl-doc{flex-direction:column;gap:14px}}


/* ══════════════════════════════════════════════════════
   KONTRAST DÜZELTMELERİ — Cream section okunabilirlik
   ══════════════════════════════════════════════════════ */

/* 1. Cream section H2 → navy (beyaz görünmezdi) */
.sec-cream h2,
.sec-cream h3,
[class*="sec-cream"] h2,
[class*="sec-cream"] h3 {
  color: var(--navy) !important;
}

/* 2. Cream section .over label → koyu + gold accent */
.sec-cream .over,
[class*="sec-cream"] .over {
  color: var(--navy) !important;
  opacity: .65;
}
.sec-cream .over::before,
[class*="sec-cream"] .over::before {
  background: var(--gold) !important;
  opacity: 1 !important;
}

/* 3. White section H2 → navy */
.sec-white h2,
.sec-white h3 {
  color: var(--navy) !important;
}
.sec-white .over {
  color: var(--navy) !important;
  opacity: .6;
}

/* 4. Body text in cream → readable ink */
.sec-cream p,
.sec-cream .body,
.sec-cream .tc-desc,
.sec-cream .tc-title {
  color: var(--ink2) !important;
}

/* 5. Cream section .over gold-bar fix */
.sec-cream .gold-bar {
  background: var(--gold);
  opacity: 1;
}

/* 6. Inline H2 without explicit color on cream bg */
.sec-cream h2[style],
[class*="sec-cream"] h2[style] {
  color: var(--navy) !important;
}


/* ══════════════════════════════════════════════════════════════
   TİPOGRAFİ DÜZELTMELERİ — Okunabilirlik
   ══════════════════════════════════════════════════════════════

   Ölçek:
   — Başlıklar (H1–H3): clamp ile akışkan, zaten iyi
   — Ana paragraf metni: min 15px / 1.8 line-height
   — İkincil metin:      min 13px / 1.7 line-height
   — Etiket/badge:       min 11px / uppercase kabul edilebilir
   — Açıklama metni:     min 14px / 1.75 line-height
   ══════════════════════════════════════════════════════════════ */

/* 1. Ana sayfa paragraf metinleri */
.hero-sub, .mf-quote p, .mf-qt,
.body, .sec-desc, .section-desc { font-size: .94rem !important; line-height: 1.82 !important; }

/* 2. Teknik kart açıklamaları */
.tc-desc { font-size: .875rem !important; line-height: 1.8 !important; }

/* 3. Paket / review açıklamaları */
.pk-desc, .rev-text, .rev-body,
.pkg-desc, .journey-desc { font-size: .875rem !important; line-height: 1.78 !important; }

/* 4. Why Turkey / manifesto içerik */
.wt-stat-label, .wt-desc, .wt-body { font-size: .875rem !important; line-height: 1.78 !important; }

/* 5. FAQ cevapları */
.fq-a, .faq-answer { font-size: .9rem !important; line-height: 1.82 !important; }

/* 6. Blog yazı metinleri */
.bp-content p { font-size: .9375rem !important; line-height: 1.85 !important; }
.bp-content li { font-size: .9rem !important; line-height: 1.8 !important; }
.bp-content td, .bp-content th { font-size: .875rem !important; }

/* 7. Footer link metinleri */
.fc-a { font-size: .825rem !important; line-height: 1.6 !important; }
.fc-head { font-size: .7rem !important; }

/* 8. Nav alt menü açıklamaları (mega menu) */
.mpa-sub, .mpa-title { font-size: .8rem !important; line-height: 1.55 !important; }
.mp-desc, .mfc-desc { font-size: .8125rem !important; line-height: 1.7 !important; }

/* 9. Küçük etiketler — düzeltilmiş minimumlar */
.over, .bp-pill, .ev-card-type-badge,
.evl-type, .evl-feyebrow,
.bl-cat, .bp-related-cat { font-size: .725rem !important; }

/* 10. Genel — hiçbir görünür metin 11px'den küçük olmasın */
p, li, td, th, label, span:not(.fl), div:not([class*="dot"]):not([class*="bar"]):not([class*="line"]) {
  min-font-size: 0; /* reset */
}

/* 11. Event sayfası form etiketleri */
.evl-label, .cf-label { font-size: .75rem !important; }
.evl-hint, .evl-fsub { font-size: .75rem !important; }

/* 12. Sidebar CTA metinleri */
.bp-sidebar-cta-desc { font-size: .8125rem !important; line-height: 1.75 !important; }
.bp-sidebar-cta-title { font-size: 1rem !important; }

/* 13. Journey / süreç açıklamaları */
.jp-desc, .step-desc, .journey-step p { font-size: .875rem !important; line-height: 1.78 !important; }

/* 14. Before/After açıklamaları */
.ba-desc, .bac-text { font-size: .8125rem !important; line-height: 1.7 !important; }

/* 15. Review kart metni */
.rp-text, .review-text, .rev-q { font-size: .875rem !important; line-height: 1.8 !important; }

/* 16. Package liste öğeleri */
.pk-feat, .pkg-feat, .pkg-item { font-size: .8375rem !important; line-height: 1.7 !important; }

/* 17. Hero secondary text */
.hero-desc, .ev-ls-sub, .evl-desc { font-size: .9rem !important; line-height: 1.82 !important; }

/* 18. Dr. Arslan bölümü */
.dr-sub, .dr-bio, .dr-desc { font-size: .9rem !important; line-height: 1.82 !important; }
.dr-stat-label { font-size: .75rem !important; }

/* 19. Trust / akreditasyon metinleri */
.trust-text, .media-text, .mi-text { font-size: .8rem !important; }

/* 20. Events kart açıklamaları */
.ev-card-desc, .evl-desc, .xt-desc { font-size: .875rem !important; line-height: 1.8 !important; }

/* 21. Mobil'de daha büyük */
@media (max-width: 599px) {
  .tc-desc, .pk-desc, .rev-text, .bp-content p,
  .fq-a, .body, .hero-sub, .wt-desc,
  .ev-card-desc, .xt-desc, .dr-bio {
    font-size: .9375rem !important;
    line-height: 1.82 !important;
  }
}


/* ══════════════════════════════════════════════════════════════
   TİPOGRAFİ — 16px minimum paragraf
   ══════════════════════════════════════════════════════════════ */

/* Tüm paragraf / açıklama sınıfları → min 16px */
p,
.body, .hero-sub, .hero-desc,
.tc-desc, .pk-desc, .rev-text, .rev-body,
.wt-desc, .wt-body, .mf-qt, .mf-quote p,
.fq-a, .faq-answer,
.bp-content p, .bp-content li,
.ev-card-desc, .evl-desc, .xt-desc,
.dr-bio, .dr-sub, .dr-desc,
.pkg-desc, .pkg-item,
.journey-desc, .jp-desc, .step-desc,
.ba-desc, .bac-text,
.rp-text, .review-text,
.ev-ls-sub, .bp-sidebar-cta-desc,
.evl-doc-creds, .evl-fsub,
.section-desc, .sec-desc {
  font-size: 1rem !important;        /* 16px */
  line-height: 1.82 !important;
}

/* İkincil metin (kart altı, footer, meta) → 14px */
.tc-feat span, .pk-feat, .pkg-feat,
.fc-a, .mpa-sub, .mp-desc, .mfc-desc,
.bac-foot, .rp-meta, .ev-card-tag,
.bp-content td, .bp-content th,
.evl-hint, .ft-tagline, .ft-sister {
  font-size: .875rem !important;     /* 14px */
  line-height: 1.7 !important;
}

/* Etiketler / badge'ler → 12px minimum */
.over, .evl-type, .evl-feyebrow,
.bl-cat, .bp-related-cat, .bp-pill,
.ev-card-type-badge, .fc-head, .ft-langs-label {
  font-size: .75rem !important;      /* 12px — uppercase label */
}

/* Form etiketleri */
.evl-label, .cf-label, label { font-size: .875rem !important; }
.evl-hint { font-size: .8125rem !important; }

/* Mobil — line-height biraz kıs, okunabilirlik koru */
@media (max-width: 599px) {
  p, .tc-desc, .pk-desc, .fq-a,
  .rev-text, .ev-card-desc, .body,
  .bp-content p, .dr-bio, .evl-desc {
    font-size: 1rem !important;
    line-height: 1.78 !important;
  }
}


/* ══════════════════════════════════════════════════════════════
   TİPOGRAFİ — Final ölçek
   Body 17px · H2 22-24px · H3 18-20px · Line-height 1.6
   ══════════════════════════════════════════════════════════════ */

/* Body text — 17px / 1.6 */
p,
.body, .hero-sub, .hero-desc,
.tc-desc, .pk-desc, .rev-text, .rev-body,
.wt-desc, .wt-body, .mf-qt, .mf-quote p,
.fq-a, .faq-answer,
.bp-content p, .bp-content li,
.ev-card-desc, .evl-desc, .xt-desc,
.dr-bio, .dr-sub, .dr-desc,
.pkg-desc, .pkg-item,
.journey-desc, .jp-desc, .step-desc,
.ba-desc, .bac-text,
.rp-text, .review-text, .rev-q,
.ev-ls-sub, .bp-sidebar-cta-desc,
.evl-doc-creds, .section-desc, .sec-desc {
  font-size: 1.0625rem !important;   /* 17px */
  line-height: 1.6 !important;
}

/* H2 — 22-24px */
h2,
.sec-cream h2, .sec-white h2, .sec-navy h2,
[class*="sec-"] h2 {
  font-size: clamp(1.375rem, 3vw, 1.5rem) !important;  /* 22–24px */
  line-height: 1.25 !important;
}

/* H3 — 18-20px */
h3,
.tc-title, .bp-content h3,
[class*="sec-"] h3 {
  font-size: clamp(1.125rem, 2.5vw, 1.25rem) !important;  /* 18–20px */
  line-height: 1.35 !important;
}

/* Büyük başlıklar (H1 / hero) — değiştirilmiyor, clamp zaten var */

/* İkincil metin → 15px */
.fc-a, .mpa-sub, .mp-desc, .mfc-desc,
.pk-feat, .pkg-feat, .bac-foot,
.evl-hint, .ft-tagline, .ft-sister,
.bp-content td, .bp-content th {
  font-size: .9375rem !important;   /* 15px */
  line-height: 1.6 !important;
}

/* Form alanları */
label, .evl-label, .cf-label { font-size: 1rem !important; }  /* 16px */
.evl-hint, .cf-hint            { font-size: .875rem !important; }

/* Etiketler/badge → değiştirilmiyor (uppercase, küçük tutulur) */


/* ══════════════════════════════════════════════════════════════
   MASTER TİPOGRAFİ — 17px / 1.6 / H2 22-24px / H3 18-20px
   Tüm sayfalar — kalıcı override
   ══════════════════════════════════════════════════════════════ */

:root {
  --fs-base:    1.0625rem;   /* 17px */
  --fs-sm:      0.9375rem;   /* 15px */
  --fs-xs:      0.875rem;    /* 14px */
  --lh-body:    1.6;
  --lh-heading: 1.25;
}

/* ── Base ──────────────────────────────────────────────────── */
body {
  font-size: var(--fs-base) !important;
  line-height: var(--lh-body) !important;
}

/* ── Headings ─────────────────────────────────────────────── */
h1 { line-height: 1.05 !important; }

h2 {
  font-size: clamp(1.375rem, 3vw, 1.5rem) !important;  /* 22–24px */
  line-height: 1.25 !important;
  color: var(--navy) !important;
}
.sec-navy h2, [class*="hero"] h2 { color: #fff !important; }

h3 {
  font-size: clamp(1.125rem, 2.5vw, 1.25rem) !important;  /* 18–20px */
  line-height: 1.35 !important;
  color: var(--navy) !important;
}
.sec-navy h3, [class*="hero"] h3 { color: #fff !important; }

/* ── Paragraphs & body text ───────────────────────────────── */
p,
.body, .tc-desc, .pk-desc, .rev-text, .rev-body,
.wt-desc, .wt-body, .mf-qt, .mf-quote p,
.fq-a, .bp-content p, .bp-content li,
.ev-card-desc, .evl-desc, .xt-desc,
.dr-bio, .dr-sub, .jp-desc, .step-desc,
.pkg-desc, .ba-desc, .rp-text,
.ev-ls-sub, .section-desc,
.hero-sub, .hero-desc {
  font-size: var(--fs-base) !important;
  line-height: var(--lh-body) !important;
}

/* ── Secondary text (meta, labels, etc.) ─────────────────── */
.mpa-sub, .mp-desc, .mfc-desc, .fc-a,
.pk-feat, .pkg-feat, .bac-foot,
.evl-hint, .ft-tagline, .ft-sister,
.bp-content td, .bp-content th,
.bp-sidebar-cta-desc {
  font-size: var(--fs-xs) !important;   /* 14px */
  line-height: 1.65 !important;
}

/* ── Form elements ────────────────────────────────────────── */
input, select, textarea {
  font-size: 1rem !important;           /* 16px — iOS zoom prevention */
}
label, .evl-label, .cf-label {
  font-size: 0.9375rem !important;      /* 15px */
}

/* ── Blog content ─────────────────────────────────────────── */
.bp-content p, .bp-content li {
  font-size: 1.0625rem !important;
  line-height: 1.75 !important;
}
.bp-content h2 {
  font-size: clamp(1.375rem, 3vw, 1.5rem) !important;
}
.bp-content h3 {
  font-size: clamp(1.125rem, 2.5vw, 1.25rem) !important;
}

/* ── Mobile ───────────────────────────────────────────────── */
@media (max-width: 599px) {
  body { font-size: 1rem !important; }
  p, .tc-desc, .fq-a, .rev-text,
  .ev-card-desc, .body,
  .bp-content p, .dr-bio, .evl-desc {
    font-size: 1rem !important;
    line-height: 1.65 !important;
  }
  h2 { font-size: 1.375rem !important; }
  h3 { font-size: 1.125rem !important; }
}


/* ══ TRUSTPILOT REVIEWS SECTION ══ */
.tp-section{padding:72px 0;background:var(--cream)}.tp-header{text-align:center;margin-bottom:48px}.tp-header-tag{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);margin-bottom:12px}.tp-header-h{font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,3.5vw,2.6rem);color:var(--navy);line-height:1.15;margin-bottom:16px}.tp-header-h em{color:var(--gold-l,#D4BC87)}.tp-trust-line{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:12px}.tp-badge-sm{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid rgba(0,182,122,.2);padding:9px 16px;text-decoration:none;transition:border-color .2s}.tp-badge-sm:hover{border-color:#00b67a}.tp-badge-score{font-size:1.1rem;font-weight:700;color:#191919}.tp-badge-stars{display:flex;gap:1px}.tp-badge-sep{width:1px;height:28px;background:rgba(0,0,0,.1);margin:0 4px}.tp-badge-count{font-size:.68rem;color:#555}.tp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.tp-card{background:#fff;padding:24px;border:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.tp-card-stars{display:flex;gap:2px}.tp-card-quote{font-size:.92rem;color:var(--ink2);line-height:1.75;flex:1;font-style:italic}.tp-card-quote::before{content:'"';font-family:var(--serif);font-size:2rem;color:var(--gold);line-height:0;vertical-align:-.4em;margin-right:2px}.tp-card-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.tp-card-name{font-size:.78rem;font-weight:600;color:var(--navy)}.tp-card-meta{font-size:.67rem;color:var(--ink3)}.tp-card-badge{display:flex;align-items:center;gap:5px;font-size:.62rem;color:#00b67a;letter-spacing:.05em;text-transform:uppercase;font-weight:500}.tp-cta-row{text-align:center;margin-top:36px}.tp-cta-row a{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;color:#00b67a;text-decoration:none;border:1px solid rgba(0,182,122,.3);padding:8px 20px;transition:all .2s}.tp-cta-row a:hover{background:#00b67a;color:#fff}
@media(max-width:900px){.tp-grid{grid-template-columns:1fr 1fr}}
@media(max-width:599px){.tp-grid{grid-template-columns:1fr}.tp-section{padding:52px 0}}

html[lang] :is(.nlogo-img,.logo-img){display:block;height:38px;width:auto;max-width:200px}
html[lang] .fl-logo .logo-img{height:36px}
html[lang] :is(.nlogo-text,.logo-text){display:none}
html[lang] :is(.nlogo,.fl-logo).logo-fallback :is(.nlogo-text,.logo-text){display:inline-flex;align-items:baseline;gap:1px}
html[lang] .nav.hero-zone .nlogo-img--dark,
html[lang] .nav.light-zone .nlogo-img--light{display:none}
@media(max-width:767px){
  html[lang] .nlogo-img{height:32px}
  html[lang] .fl-logo .logo-img{height:32px}
}

.ft-top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-bottom:48px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.08)}
.ft-tagline{font-size:.78rem;color:rgba(255,255,255,.38);font-weight:200;margin-top:8px;line-height:1.75;max-width:340px}
.ft-contacts{display:flex;flex-direction:column;gap:8px;margin-top:16px}
.ft-ct{display:flex;align-items:flex-start;gap:8px;font-size:.72rem;color:rgba(255,255,255,.35);line-height:1.5}
.ft-ct svg{width:12px!important;height:12px!important;stroke:var(--gold,#C4A96A);fill:none;stroke-width:1.5;flex-shrink:0;margin-top:2px}
.ft-wa{display:flex;align-items:center;gap:8px;font-size:.72rem;color:#25D366;text-decoration:none;transition:opacity .2s}
.ft-wa svg{width:12px!important;height:12px!important;stroke:#25D366;fill:none;stroke-width:1.5;flex-shrink:0}
.ft-wa:hover{opacity:.8}
.ft-langs-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:20px 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.06);margin-top:0}
.ft-langs-label{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.28);white-space:nowrap;flex-shrink:0}
.fbot-creds{font-size:.63rem;color:rgba(255,255,255,.2)}
.ft-sister{margin-top:0;padding:16px 0 24px;border-top:1px solid rgba(255,255,255,.05);font-size:.68rem;color:rgba(255,255,255,.2);line-height:1.7}
.ft-sister a{color:rgba(196,169,106,.4);text-decoration:none}
.ft-sister a:hover{color:rgba(196,169,106,.75)}
@media(max-width:600px){.ft-top{flex-direction:column}}

.ft-langs-toggle{display:flex;align-items:center;gap:6px;background:none;border:0;cursor:pointer;padding:0;font:inherit;color:inherit}
.ft-langs-toggle .ft-lchev{font-size:.6rem;color:rgba(255,255,255,.28);transition:transform .2s;display:inline-block}
.ft-langs-row.open .ft-langs-toggle .ft-lchev{transform:rotate(180deg)}
.ft-langs-panel{flex-basis:100%;max-height:0;overflow:hidden;transition:max-height .3s ease,margin-top .3s ease;margin-top:0}
.ft-langs-row.open .ft-langs-panel{max-height:600px;margin-top:14px}

.fq-ic{width:22px;height:22px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;transition:background var(--t1),border-color var(--t1)}
.fq-ic svg{stroke:var(--ink3);fill:none;width:9px;height:9px;stroke-width:2.5;stroke-linecap:round;transition:stroke var(--t1),transform var(--t2) var(--ease)}
.sb-btn-wa svg{stroke:#25D366;fill:none;width:14px;height:14px;stroke-width:1.6;stroke-linecap:round}
.sb-link-item svg{stroke:var(--ink4);fill:none;width:10px;height:10px;stroke-width:2.5;stroke-linecap:round;flex-shrink:0}
.fq.open .fq-q{color:var(--navy)}
.fq.open .fq-ic{background:var(--navy);border-color:var(--navy)}
.fq.open .fq-ic svg{stroke:#fff;transform:rotate(45deg)}
.fq-a{max-height:0;overflow:hidden;transition:max-height .32s var(--ease)}
.fq.open .fq-a{max-height:400px}
.fq{border-bottom:1px solid var(--line2);overflow:hidden}
.fq-body{padding:0 0 18px;font-size:.82rem;line-height:1.8;color:var(--ink3);font-weight:200}
.article-body{font-size:.9rem;line-height:1.82;color:var(--ink2);font-weight:300}
.article-body ul,.article-body ol{margin:0 0 18px 22px}
.article-body strong{font-weight:500;color:var(--ink)}
.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:56px;align-items:start}
.article-sidebar{position:sticky;top:calc(var(--nav-h, 0px) + 28px);display:flex;flex-direction:column;gap:16px}
.callout{background:var(--gold-bg);border:1px solid var(--gold-br);border-left:3px solid var(--gold);border-radius:0 var(--r8) var(--r8) 0;padding:16px 20px;margin:24px 0;font-size:.84rem}
.callout strong{color:var(--gold-d)}
.cta-in{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.rv{opacity:0;transform:translateY(24px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.rv.vis{opacity:1;transform:translateY(0)}
.d1{transition-delay:.1s}
.d2{transition-delay:.2s}
.il{color:var(--gold-d);font-weight:400;border-bottom:1px solid rgba(196,169,106,.3);transition:color var(--t1)}
.il:hover{color:var(--gold)}
.rel-arrow{font-size:.72rem;color:var(--gold-d);margin-top:10px;display:block}
.rel-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r12);padding:20px 18px;transition:all var(--t2)}
.rel-card:hover{border-color:var(--gold-br);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.05)}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rel-sub{font-size:.72rem;color:var(--ink4)}
.rel-title{font-size:.9rem;font-weight:300;color:var(--ink);margin-bottom:4px}
.rel-tag{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-d);margin-bottom:8px}
.sb-btn{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px;border-radius:var(--r8);font-size:.7rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;transition:all var(--t1);margin-bottom:8px}
.sb-btn-gold{background:var(--gold);color:var(--navy)}
.sb-btn-gold:hover{background:var(--gold-l)}
.sb-cta{background:var(--navy);border-radius:var(--r16);padding:24px}
.sb-cta-title{font-family:var(--serif);font-size:1.05rem;font-weight:300;color:#fff;line-height:1.35;margin-bottom:8px}
.sb-cta-body{font-size:.74rem;color:rgba(255,255,255,.45);line-height:1.65;margin-bottom:16px}
.sb-links{background:var(--white);border:1px solid var(--line);border-radius:var(--r16);padding:18px 20px}
.sb-links-title{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink4);margin-bottom:12px}
.serif-i{font-style:italic;font-family:var(--serif)}
@media(max-width:860px){
.article-grid{grid-template-columns:1fr}
.article-sidebar{position:static}
.cta-in{grid-template-columns:1fr}
.rel-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
.rel-grid{grid-template-columns:1fr}
}
