/* ==========================================================================
   Visa4Love — shared design system
   Used by all pages except the homepage (which keeps its own inline styles).
   Palette & components mirror index.html for visual consistency.
   ========================================================================== */
:root{
  --navy:#1B3551; --navy-2:#102237; --navy-3:#0A1726; --navy-soft:#2C4A6B;
  --gold:#C7A15B; --gold-2:#836026; --gold-soft:#E7D6B0;
  --coral:#E0754A; --coral-2:#C85A30; --rose:#D98C7A;
  --cream:#FAF7F2; --cream-2:#EFE5D4; --surface:#FFFFFF;
  --ink:#1B3551; --ink-soft:#3A4C63;
  --line:#DCD0B7; --line-2:#E5DAC5; --ok:#2E7D52; --muted:#4C5869;
  --radius:16px; --radius-lg:26px; --radius-sm:11px;
  --shadow-sm:0 6px 18px rgba(27,53,81,.06);
  --shadow:0 22px 50px rgba(27,53,81,.11);
  --shadow-lg:0 44px 90px rgba(16,34,55,.22);
  --maxw:1140px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'DM Sans',system-ui,Arial,sans-serif;color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;
  background:
    radial-gradient(60% 40% at 100% 0%,rgba(224,117,74,.05),transparent 60%),
    radial-gradient(50% 40% at 0% 10%,rgba(199,161,91,.06),transparent 60%),
    var(--cream);
  background-attachment:fixed;}
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;color:var(--navy);line-height:1.14;margin:0 0 .5em;font-weight:600}
h1{font-size:clamp(2.1rem,4.8vw,3.4rem);letter-spacing:-.015em}
h2{font-size:clamp(1.6rem,3.3vw,2.4rem);letter-spacing:-.01em}
h3{font-size:1.22rem}
p{margin:0 0 1rem}
a{color:var(--navy);text-decoration:none}
img,svg{max-width:100%}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.narrow{max-width:780px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold-2)}
.eyebrow:before{content:"";width:22px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--gold),transparent)}
.center .eyebrow{justify-content:center}
.center .eyebrow:before,.center .eyebrow:after{content:"";width:22px;height:2px;border-radius:2px;background:var(--gold-soft)}
.muted{color:var(--muted)}
section{padding:66px 0}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:10px 16px;border-radius:8px;z-index:200}
.skip:focus{left:14px;top:14px}

/* buttons */
.btn{text-decoration:none;display:inline-flex;white-space:nowrap;align-items:center;gap:.5em;font-weight:600;font-family:inherit;border-radius:999px;padding:.85em 1.5em;cursor:pointer;border:1.5px solid transparent;font-size:1rem;position:relative;overflow:hidden;transition:transform .2s cubic-bezier(.2,.7,.3,1.3),box-shadow .2s,background .2s,border-color .2s}
.btn-gold{background:linear-gradient(180deg,var(--gold),var(--gold-2));color:#12233a;box-shadow:0 10px 24px rgba(176,138,67,.28)}
.btn-gold:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);transition:left .6s}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(176,138,67,.36)}
.btn-gold:hover:after{left:130%}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--navy-2);transform:translateY(-2px)}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--navy)}
.btn-ghost:hover{border-color:var(--gold);background:#fff;color:var(--navy)!important}
/* ghost buttons on dark bands must not be navy-on-navy */
.cta .btn-ghost,.ctaband .btn-ghost,.dark .btn-ghost{color:#fff;border-color:rgba(255,255,255,.45)}
.cta .btn-ghost:hover,.ctaband .btn-ghost:hover,.dark .btn-ghost:hover{background:rgba(255,255,255,.14);border-color:var(--gold);color:#fff!important}

/* header */
header.nav{position:sticky;top:0;z-index:100;background:rgba(250,247,242,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-2)}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 22px;max-width:var(--maxw);margin:0 auto}
.brand{white-space:nowrap;display:flex;align-items:center;gap:10px;font-family:'Fraunces',serif;font-weight:600;font-size:1.3rem;color:var(--navy)}
.brand .four{color:var(--coral)}
.brand img{height:40px;width:auto;flex:0 0 auto}
.nav-links{display:flex;align-items:center;gap:24px}
.nav-links a{white-space:nowrap;font-size:.95rem;color:var(--ink-soft);font-weight:500}
.nav-links a:hover{color:var(--navy)}
.nav-links a.active{color:var(--navy);font-weight:600}
.nav-cta{display:flex;align-items:center;gap:12px}
.menu-btn{display:none;background:none;border:0;cursor:pointer;font-size:1.6rem;color:var(--navy)}
@media(max-width:980px){
  .nav-links{display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;background:var(--cream);padding:18px 22px;border-bottom:1px solid var(--line);gap:16px;align-items:flex-start}
  .nav-links.open{display:flex}
  .menu-btn{display:block}
  .nav-cta .btn-ghost{display:none}
}

/* announcement banner */
.annc{background:linear-gradient(90deg,var(--navy-2),var(--navy));color:#f4ead2;font-size:.9rem;text-align:center;padding:9px 22px;border-bottom:1px solid rgba(199,161,91,.3)}
.annc a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.annc b{color:var(--gold-soft)}

/* breadcrumb */
.crumb{font-size:.85rem;color:var(--muted);padding:18px 0 0}
.crumb a{color:var(--gold-2)}
.crumb a:hover{text-decoration:underline}

/* page hero */
.phero{background:radial-gradient(1000px 480px at 80% -12%,rgba(199,161,91,.16),transparent 60%),linear-gradient(180deg,var(--cream),var(--cream-2));padding:44px 0 52px;position:relative;overflow:hidden}
.phero .lead{font-size:1.16rem;color:var(--ink-soft);max-width:60ch}
.phero h1 span{color:var(--coral)}
.pillbar{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.pill{background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:.88rem;font-weight:600;color:var(--navy);box-shadow:var(--shadow-sm)}

/* grids & cards */
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:920px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold-soft)}
.card h3{display:flex;align-items:center;gap:10px}
.num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 30% 25%,var(--navy-soft),var(--navy));color:var(--gold);font-family:'Fraunces',serif;font-weight:600;flex:0 0 auto;box-shadow:0 6px 14px rgba(27,53,81,.25)}
.center{text-align:center}
.sec-head{max-width:62ch;margin:0 0 36px}
.sec-head.center{text-align:center;margin-left:auto;margin-right:auto}
.chip{display:inline-block;background:var(--cream-2);border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:.88rem;font-weight:500;color:var(--ink-soft)}
.chip b{color:var(--navy)}
  /* Chips on dark backgrounds: bold text inherits, never navy-on-navy */
  #from-abroad .chip b,#from-abroad .chip strong{color:inherit}
  .chip.on-dark,.chip.on-dark b{color:#dfe7f0}
.forms-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}

/* prose for articles */
.prose{max-width:760px;margin:0 auto;font-size:1.06rem;color:#2c3e54}
.prose h2{margin-top:1.7em}
.prose h3{margin-top:1.4em;color:var(--navy)}
.prose p{margin:0 0 1.1rem}
.prose ul,.prose ol{margin:0 0 1.2rem;padding-left:1.3em}
.prose li{margin:.4em 0}
.prose a{color:var(--gold-2);text-decoration:underline;text-underline-offset:2px}
.prose blockquote{border-left:4px solid var(--gold);background:var(--cream);margin:1.4em 0;padding:14px 20px;border-radius:0 12px 12px 0;color:var(--ink-soft);font-style:italic}
.prose .callout{background:#fff;border:1px solid var(--gold-soft);border-left:4px solid var(--gold);border-radius:12px;padding:18px 20px;margin:1.5em 0;font-style:normal}
.prose .callout b{color:var(--navy)}
.prose img{border-radius:14px;margin:1.2em 0}
.lede{font-size:1.2rem;color:var(--ink-soft);line-height:1.55}

/* tables */
.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:1.2em 0}
.table th,.table td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--line-2);font-size:.95rem}
.table th{background:var(--cream-2);color:var(--navy);font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}
.table td:last-child,.table th:last-child{text-align:right;font-weight:600;color:var(--navy)}
.table tr:last-child td{border-bottom:0}
@media(max-width:560px){.table th,.table td{padding:10px 9px;font-size:.85rem;word-break:break-word}}

/* news cards */
.news{display:block;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s,border-color .25s;height:100%}
.news:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--gold-soft)}
.news .media{aspect-ratio:16/9;position:relative;overflow:hidden}
.news .body{padding:22px}
.news .meta{display:flex;align-items:center;gap:10px;font-size:.78rem;color:var(--muted);margin-bottom:8px;flex-wrap:wrap}
.news .tagdot{display:inline-flex;align-items:center;gap:6px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-2)}
.news .tagdot:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--coral)}
.news h3{font-size:1.12rem;margin:0 0 8px;line-height:1.25}
.news p{font-size:.94rem;color:var(--ink-soft);margin:0 0 12px}
.news .more{font-weight:600;color:#B84E22;font-size:.9rem}
.news:hover .more{text-decoration:underline}
.badge-new{position:absolute;top:12px;left:12px;background:linear-gradient(180deg,var(--coral),var(--coral-2));color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:999px;z-index:2;box-shadow:0 6px 14px rgba(200,90,48,.4)}

/* image placeholders */
.imgph{position:relative;width:100%;height:100%;min-height:180px;display:flex;align-items:center;justify-content:center;text-align:center;padding:18px;border-radius:16px;
  background:linear-gradient(135deg,rgba(199,161,91,.14),rgba(224,117,74,.10)),repeating-linear-gradient(45deg,rgba(27,53,81,.03) 0 12px,transparent 12px 24px);
  border:1.5px dashed var(--gold-2);color:var(--gold-2)}
.imgph.dark{background:linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,0)),linear-gradient(160deg,var(--navy-soft),var(--navy-2));border-color:rgba(199,161,91,.5);color:var(--gold-soft)}
.imgph .ic{display:block;width:40px;height:40px;margin:0 auto 8px;opacity:.85}
.imgph small{display:block;font-size:.78rem;line-height:1.4;font-weight:600;letter-spacing:.02em}
.imgph .pid{display:inline-block;margin-top:6px;font-family:'DM Sans';font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;opacity:.8;background:rgba(255,255,255,.6);border-radius:999px;padding:2px 9px}
.imgph.dark .pid{background:rgba(255,255,255,.12)}

/* FAQ */
details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:4px 20px;margin-bottom:12px;transition:box-shadow .2s,border-color .2s}
details[open]{box-shadow:var(--shadow-sm);border-color:var(--gold-soft)}
details summary{cursor:pointer;font-weight:600;color:var(--navy);padding:14px 0;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px}
details summary::-webkit-details-marker{display:none}
details summary:after{content:"+";font-size:1.4rem;color:var(--gold-2);font-weight:400}
details[open] summary:after{content:"\2013"}
details p{padding-bottom:14px;color:var(--ink-soft);margin:0}

/* CTA band */
.ctaband{background:var(--navy);background-image:radial-gradient(700px 360px at 88% -10%,rgba(199,161,91,.18),transparent);border-radius:var(--radius-lg);padding:40px;text-align:center;color:#fff;position:relative;overflow:hidden}
.ctaband h2,.ctaband p{color:#fff}
.ctaband .lead{color:#cdd8e6;max-width:52ch;margin:0 auto 20px}
.ctarow{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* Long-form article body. A ~72ch measure is right for reading, but the display
   headings were sized for full-width sections and wrapped badly inside it, which
   left these pages looking like one skinny ribbon of text. Widen slightly, size
   the headings to the column, and give each heading real air above it. */
.wrap.article{max-width:880px}
.wrap.article h2{font-size:clamp(1.42rem,2.3vw,1.95rem);margin-top:1.9em;line-height:1.2}
.wrap.article h2:first-child{margin-top:0}
.wrap.article h3{font-size:1.14rem;margin-top:1.5em}
.wrap.article p{font-size:1.045rem;line-height:1.72}
.wrap.article > div > p:last-child{margin-bottom:0}
@media(max-width:920px){.wrap.article{max-width:100%}}

/* Flat-fee band. Sits directly under the page hero so the price is the first
   thing a visitor sees on a service page — no scrolling to find it. */
.feeband{background:linear-gradient(180deg,#fff,var(--cream));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.feeband .in{max-width:var(--maxw);margin:0 auto;padding:20px 22px;display:flex;align-items:center;gap:22px 30px;flex-wrap:wrap}
.feeband .lab{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold-2);display:block;margin-bottom:2px}
.feeband .amt{font-family:'Fraunces',Georgia,serif;font-size:clamp(1.9rem,4vw,2.5rem);font-weight:600;color:var(--navy);line-height:1}
.feeband .amt small{font-family:'DM Sans',system-ui,sans-serif;font-size:.95rem;font-weight:600;color:var(--ink-soft);margin-left:8px}
.feeband .note{flex:1 1 320px;font-size:.86rem;line-height:1.55;color:var(--ink-soft);margin:0}
.feeband .acts{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:640px){.feeband .in{gap:14px}.feeband .acts .btn{flex:1 1 100%;text-align:center}}

/* footer */
footer{background:var(--navy-3);color:#b8c4d3;padding:56px 0 30px;font-size:.92rem;margin-top:10px}
/* Brand column carries the identity + the contact block; the three link columns are
   deliberately the same length so the footer reads as an even band, not a staircase. */
footer .cols{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:30px 36px;margin-bottom:32px}
@media(max-width:980px){footer .cols{grid-template-columns:1fr 1fr}}
@media(max-width:560px){footer .cols{grid-template-columns:1fr;gap:30px}}
@media(max-width:760px){footer{padding-bottom:96px}}
footer a{color:#cdd8e6;transition:color .15s}
footer a:hover{color:#fff}
footer h4{color:#fff;font-size:.82rem;letter-spacing:.13em;text-transform:uppercase;font-family:'DM Sans',system-ui,Arial,sans-serif;font-weight:700;margin:0 0 6px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.13)}
footer .flinks{list-style:none;margin:0;padding:0}
footer .flinks li{margin:0}
footer .flinks a{display:block;padding:7px 0;line-height:1.35;border-bottom:1px solid rgba(255,255,255,.05)}
footer .flinks li:last-child a{border-bottom:0}
footer .cols>div>p{margin:0 0 12px}
/* Drop the three link columns so their headers sit level with the tagline
   under the mark, not with the top of the logo itself. */
footer .cols>div+div{padding-top:150px}
footer .flogo{display:flex;align-items:center;gap:12px;margin-bottom:10px}
footer .flogo img{height:54px;width:auto;flex:0 0 auto}
footer .fword{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:1.72rem;color:#fff;letter-spacing:.01em;line-height:1}
footer .flogo .four{color:var(--coral)}
@media(max-width:980px){footer .cols>div+div{padding-top:0}}
footer .brand{color:#fff;margin-bottom:10px}
footer .fcontact{font-size:.9rem;line-height:1.7}
footer .fcard{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.13)}
footer .fcard .fname{display:block;font-family:'Fraunces',Georgia,serif;color:#fff;font-size:1.02rem;letter-spacing:.02em}
footer .fcard .frole{display:block;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
footer .fcard .faddr{display:block;line-height:1.6;margin-bottom:8px}
footer .fcard .fline{display:block;margin-top:6px}
.footer-disc{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:.8rem;line-height:1.6;color:#93a2b5}
.footer-disc a{color:#b8c4d3;text-decoration:underline}

/* reveal on scroll */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* sticky call button (mobile) */
.call-fab{position:fixed;z-index:95;right:18px;bottom:20px;width:60px;height:60px;border-radius:50%;
  display:none;place-items:center;background:var(--navy);color:#fff;text-decoration:none;
  box-shadow:0 10px 26px rgba(16,34,55,.34);animation:callWobble 1.6s ease-in-out infinite}
.call-fab::after{content:"";position:absolute;inset:0;border-radius:50%;
  box-shadow:0 0 0 0 rgba(27,53,81,.55);animation:callRing 1.8s ease-out infinite;pointer-events:none}
.call-fab svg{width:26px;height:26px}
@keyframes callWobble{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
@keyframes callRing{0%{box-shadow:0 0 0 0 rgba(27,53,81,.55)}70%{box-shadow:0 0 0 16px rgba(27,53,81,0)}100%{box-shadow:0 0 0 0 rgba(27,53,81,0)}}
@media (max-width:760px){.call-fab{display:grid}}
@media (prefers-reduced-motion:reduce){.call-fab,.call-fab::after{animation:none}}

/* ===================== BEAUTY PASS ===================== */
/* Film-grain texture for depth */
body::before{content:"";position:fixed;inset:0;z-index:3;pointer-events:none;opacity:.035;mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjM1IDY1MCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgc2xpY2UiPjxyZWN0IHdpZHRoPSIxMjM1IiBoZWlnaHQ9IjY1MCIgZmlsbD0iI2ZmZmZmZiIvPjxyZWN0IHk9IjAuMCIgd2lkdGg9IjEyMzUiIGhlaWdodD0iNTAuMCIgZmlsbD0iI0IyMjIzNCIvPjxyZWN0IHk9IjEwMC4wIiB3aWR0aD0iMTIzNSIgaGVpZ2h0PSI1MC4wIiBmaWxsPSIjQjIyMjM0Ii8+PHJlY3QgeT0iMjAwLjAiIHdpZHRoPSIxMjM1IiBoZWlnaHQ9IjUwLjAiIGZpbGw9IiNCMjIyMzQiLz48cmVjdCB5PSIzMDAuMCIgd2lkdGg9IjEyMzUiIGhlaWdodD0iNTAuMCIgZmlsbD0iI0IyMjIzNCIvPjxyZWN0IHk9IjQwMC4wIiB3aWR0aD0iMTIzNSIgaGVpZ2h0PSI1MC4wIiBmaWxsPSIjQjIyMjM0Ii8+PHJlY3QgeT0iNTAwLjAiIHdpZHRoPSIxMjM1IiBoZWlnaHQ9IjUwLjAiIGZpbGw9IiNCMjIyMzQiLz48cmVjdCB5PSI2MDAuMCIgd2lkdGg9IjEyMzUiIGhlaWdodD0iNTAuMCIgZmlsbD0iI0IyMjIzNCIvPjxyZWN0IHdpZHRoPSI0OTQiIGhlaWdodD0iMzUwIiBmaWxsPSIjM0MzQjZFIi8+PGcgZmlsbD0iI2ZmZmZmZiI+PHBhdGggZD0iTTM4LjAsMjIuMkw0MC43LDMwLjZMNDkuNSwzMC42TDQyLjQsMzUuN0w0NS4xLDQ0LjFMMzguMCwzOC45TDMxLjAsNDQuMUwzMy43LDM1LjdMMjYuNiwzMC42TDM1LjMsMzAuNloiLz48cGF0aCBkPSJNMTE0LjEsMjIuMkwxMTYuOCwzMC42TDEyNS42LDMwLjZMMTE4LjUsMzUuN0wxMjEuMiw0NC4xTDExNC4xLDM4LjlMMTA3LjAsNDQuMUwxMDkuNywzNS43TDEwMi42LDMwLjZMMTExLjQsMzAuNloiLz48cGF0aCBkPSJNMTkwLjIsMjIuMkwxOTIuOSwzMC42TDIwMS43LDMwLjZMMTk0LjYsMzUuN0wxOTcuMyw0NC4xTDE5MC4yLDM4LjlMMTgzLjEsNDQuMUwxODUuOCwzNS43TDE3OC43LDMwLjZMMTg3LjUsMzAuNloiLz48cGF0aCBkPSJNMjY2LjMsMjIuMkwyNjkuMCwzMC42TDI3Ny43LDMwLjZMMjcwLjYsMzUuN0wyNzMuNCw0NC4xTDI2Ni4zLDM4LjlMMjU5LjIsNDQuMUwyNjEuOSwzNS43TDI1NC44LDMwLjZMMjYzLjYsMzAuNloiLz48cGF0aCBkPSJNMzQyLjMsMjIuMkwzNDUuMCwzMC42TDM1My44LDMwLjZMMzQ2LjcsMzUuN0wzNDkuNCw0NC4xTDM0Mi4zLDM4LjlMMzM1LjMsNDQuMUwzMzguMCwzNS43TDMzMC45LDMwLjZMMzM5LjYsMzAuNloiLz48cGF0aCBkPSJNNDE4LjQsMjIuMkw0MjEuMSwzMC42TDQyOS45LDMwLjZMNDIyLjgsMzUuN0w0MjUuNSw0NC4xTDQxOC40LDM4LjlMNDExLjMsNDQuMUw0MTQuMCwzNS43TDQwNy4wLDMwLjZMNDE1LjcsMzAuNloiLz48cGF0aCBkPSJNNzYuMSw1Ny40TDc4LjgsNjUuN0w4Ny41LDY1LjdMODAuNSw3MC45TDgzLjIsNzkuMkw3Ni4xLDc0LjFMNjkuMCw3OS4yTDcxLjcsNzAuOUw2NC42LDY1LjdMNzMuNCw2NS43WiIvPjxwYXRoIGQ9Ik0xNTIuMiw1Ny40TDE1NC45LDY1LjdMMTYzLjYsNjUuN0wxNTYuNSw3MC45TDE1OS4yLDc5LjJMMTUyLjIsNzQuMUwxNDUuMSw3OS4yTDE0Ny44LDcwLjlMMTQwLjcsNjUuN0wxNDkuNCw2NS43WiIvPjxwYXRoIGQ9Ik0yMjguMiw1Ny40TDIzMC45LDY1LjdMMjM5LjcsNjUuN0wyMzIuNiw3MC45TDIzNS4zLDc5LjJMMjI4LjIsNzQuMUwyMjEuMSw3OS4yTDIyMy44LDcwLjlMMjE2LjgsNjUuN0wyMjUuNSw2NS43WiIvPjxwYXRoIGQ9Ik0zMDQuMyw1Ny40TDMwNy4wLDY1LjdMMzE1LjgsNjUuN0wzMDguNyw3MC45TDMxMS40LDc5LjJMMzA0LjMsNzQuMUwyOTcuMiw3OS4yTDI5OS45LDcwLjlMMjkyLjgsNjUuN0wzMDEuNiw2NS43WiIvPjxwYXRoIGQ9Ik0zODAuNCw1Ny40TDM4My4xLDY1LjdMMzkxLjgsNjUuN0wzODQuOCw3MC45TDM4Ny41LDc5LjJMMzgwLjQsNzQuMUwzNzMuMyw3OS4yTDM3Ni4wLDcwLjlMMzY4LjksNjUuN0wzNzcuNyw2NS43WiIvPjxwYXRoIGQ9Ik0zOC4wLDkyLjZMNDAuNywxMDAuOUw0OS41LDEwMC45TDQyLjQsMTA2LjFMNDUuMSwxMTQuNEwzOC4wLDEwOS4zTDMxLjAsMTE0LjRMMzMuNywxMDYuMUwyNi42LDEwMC45TDM1LjMsMTAwLjlaIi8+PHBhdGggZD0iTTExNC4xLDkyLjZMMTE2LjgsMTAwLjlMMTI1LjYsMTAwLjlMMTE4LjUsMTA2LjFMMTIxLjIsMTE0LjRMMTE0LjEsMTA5LjNMMTA3LjAsMTE0LjRMMTA5LjcsMTA2LjFMMTAyLjYsMTAwLjlMMTExLjQsMTAwLjlaIi8+PHBhdGggZD0iTTE5MC4yLDkyLjZMMTkyLjksMTAwLjlMMjAxLjcsMTAwLjlMMTk0LjYsMTA2LjFMMTk3LjMsMTE0LjRMMTkwLjIsMTA5LjNMMTgzLjEsMTE0LjRMMTg1LjgsMTA2LjFMMTc4LjcsMTAwLjlMMTg3LjUsMTAwLjlaIi8+PHBhdGggZD0iTTI2Ni4zLDkyLjZMMjY5LjAsMTAwLjlMMjc3LjcsMTAwLjlMMjcwLjYsMTA2LjFMMjczLjQsMTE0LjRMMjY2LjMsMTA5LjNMMjU5LjIsMTE0LjRMMjYxLjksMTA2LjFMMjU0LjgsMTAwLjlMMjYzLjYsMTAwLjlaIi8+PHBhdGggZD0iTTM0Mi4zLDkyLjZMMzQ1LjAsMTAwLjlMMzUzLjgsMTAwLjlMMzQ2LjcsMTA2LjFMMzQ5LjQsMTE0LjRMMzQyLjMsMTA5LjNMMzM1LjMsMTE0LjRMMzM4LjAsMTA2LjFMMzMwLjksMTAwLjlMMzM5LjYsMTAwLjlaIi8+PHBhdGggZD0iTTQxOC40LDkyLjZMNDIxLjEsMTAwLjlMNDI5LjksMTAwLjlMNDIyLjgsMTA2LjFMNDI1LjUsMTE0LjRMNDE4LjQsMTA5LjNMNDExLjMsMTE0LjRMNDE0LjAsMTA2LjFMNDA3LjAsMTAwLjlMNDE1LjcsMTAwLjlaIi8+PHBhdGggZD0iTTc2LjEsMTI3LjhMNzguOCwxMzYuMUw4Ny41LDEzNi4xTDgwLjUsMTQxLjJMODMuMiwxNDkuNkw3Ni4xLDE0NC40TDY5LjAsMTQ5LjZMNzEuNywxNDEuMkw2NC42LDEzNi4xTDczLjQsMTM2LjFaIi8+PHBhdGggZD0iTTE1Mi4yLDEyNy44TDE1NC45LDEzNi4xTDE2My42LDEzNi4xTDE1Ni41LDE0MS4yTDE1OS4yLDE0OS42TDE1Mi4yLDE0NC40TDE0NS4xLDE0OS42TDE0Ny44LDE0MS4yTDE0MC43LDEzNi4xTDE0OS40LDEzNi4xWiIvPjxwYXRoIGQ9Ik0yMjguMiwxMjcuOEwyMzAuOSwxMzYuMUwyMzkuNywxMzYuMUwyMzIuNiwxNDEuMkwyMzUuMywxNDkuNkwyMjguMiwxNDQuNEwyMjEuMSwxNDkuNkwyMjMuOCwxNDEuMkwyMTYuOCwxMzYuMUwyMjUuNSwxMzYuMVoiLz48cGF0aCBkPSJNMzA0LjMsMTI3LjhMMzA3LjAsMTM2LjFMMzE1LjgsMTM2LjFMMzA4LjcsMTQxLjJMMzExLjQsMTQ5LjZMMzA0LjMsMTQ0LjRMMjk3LjIsMTQ5LjZMMjk5LjksMTQxLjJMMjkyLjgsMTM2LjFMMzAxLjYsMTM2LjFaIi8+PHBhdGggZD0iTTM4MC40LDEyNy44TDM4My4xLDEzNi4xTDM5MS44LDEzNi4xTDM4NC44LDE0MS4yTDM4Ny41LDE0OS42TDM4MC40LDE0NC40TDM3My4zLDE0OS42TDM3Ni4wLDE0MS4yTDM2OC45LDEzNi4xTDM3Ny43LDEzNi4xWiIvPjxwYXRoIGQ9Ik0zOC4wLDE2Mi45TDQwLjcsMTcxLjNMNDkuNSwxNzEuM0w0Mi40LDE3Ni40TDQ1LjEsMTg0LjhMMzguMCwxNzkuNkwzMS4wLDE4NC44TDMzLjcsMTc2LjRMMjYuNiwxNzEuM0wzNS4zLDE3MS4zWiIvPjxwYXRoIGQ9Ik0xMTQuMSwxNjIuOUwxMTYuOCwxNzEuM0wxMjUuNiwxNzEuM0wxMTguNSwxNzYuNEwxMjEuMiwxODQuOEwxMTQuMSwxNzkuNkwxMDcuMCwxODQuOEwxMDkuNywxNzYuNEwxMDIuNiwxNzEuM0wxMTEuNCwxNzEuM1oiLz48cGF0aCBkPSJNMTkwLjIsMTYyLjlMMTkyLjksMTcxLjNMMjAxLjcsMTcxLjNMMTk0LjYsMTc2LjRMMTk3LjMsMTg0LjhMMTkwLjIsMTc5LjZMMTgzLjEsMTg0LjhMMTg1LjgsMTc2LjRMMTc4LjcsMTcxLjNMMTg3LjUsMTcxLjNaIi8+PHBhdGggZD0iTTI2Ni4zLDE2Mi45TDI2OS4wLDE3MS4zTDI3Ny43LDE3MS4zTDI3MC42LDE3Ni40TDI3My40LDE4NC44TDI2Ni4zLDE3OS42TDI1OS4yLDE4NC44TDI2MS45LDE3Ni40TDI1NC44LDE3MS4zTDI2My42LDE3MS4zWiIvPjxwYXRoIGQ9Ik0zNDIuMywxNjIuOUwzNDUuMCwxNzEuM0wzNTMuOCwxNzEuM0wzNDYuNywxNzYuNEwzNDkuNCwxODQuOEwzNDIuMywxNzkuNkwzMzUuMywxODQuOEwzMzguMCwxNzYuNEwzMzAuOSwxNzEuM0wzMzkuNiwxNzEuM1oiLz48cGF0aCBkPSJNNDE4LjQsMTYyLjlMNDIxLjEsMTcxLjNMNDI5LjksMTcxLjNMNDIyLjgsMTc2LjRMNDI1LjUsMTg0LjhMNDE4LjQsMTc5LjZMNDExLjMsMTg0LjhMNDE0LjAsMTc2LjRMNDA3LjAsMTcxLjNMNDE1LjcsMTcxLjNaIi8+PHBhdGggZD0iTTc2LjEsMTk4LjFMNzguOCwyMDYuNEw4Ny41LDIwNi40TDgwLjUsMjExLjZMODMuMiwyMTkuOUw3Ni4xLDIxNC44TDY5LjAsMjE5LjlMNzEuNywyMTEuNkw2NC42LDIwNi40TDczLjQsMjA2LjRaIi8+PHBhdGggZD0iTTE1Mi4yLDE5OC4xTDE1NC45LDIwNi40TDE2My42LDIwNi40TDE1Ni41LDIxMS42TDE1OS4yLDIxOS45TDE1Mi4yLDIxNC44TDE0NS4xLDIxOS45TDE0Ny44LDIxMS42TDE0MC43LDIwNi40TDE0OS40LDIwNi40WiIvPjxwYXRoIGQ9Ik0yMjguMiwxOTguMUwyMzAuOSwyMDYuNEwyMzkuNywyMDYuNEwyMzIuNiwyMTEuNkwyMzUuMywyMTkuOUwyMjguMiwyMTQuOEwyMjEuMSwyMTkuOUwyMjMuOCwyMTEuNkwyMTYuOCwyMDYuNEwyMjUuNSwyMDYuNFoiLz48cGF0aCBkPSJNMzA0LjMsMTk4LjFMMzA3LjAsMjA2LjRMMzE1LjgsMjA2LjRMMzA4LjcsMjExLjZMMzExLjQsMjE5LjlMMzA0LjMsMjE0LjhMMjk3LjIsMjE5LjlMMjk5LjksMjExLjZMMjkyLjgsMjA2LjRMMzAxLjYsMjA2LjRaIi8+PHBhdGggZD0iTTM4MC40LDE5OC4xTDM4My4xLDIwNi40TDM5MS44LDIwNi40TDM4NC44LDIxMS42TDM4Ny41LDIxOS45TDM4MC40LDIxNC44TDM3My4zLDIxOS45TDM3Ni4wLDIxMS42TDM2OC45LDIwNi40TDM3Ny43LDIwNi40WiIvPjxwYXRoIGQ9Ik0zOC4wLDIzMy4zTDQwLjcsMjQxLjZMNDkuNSwyNDEuNkw0Mi40LDI0Ni44TDQ1LjEsMjU1LjFMMzguMCwyNTAuMEwzMS4wLDI1NS4xTDMzLjcsMjQ2LjhMMjYuNiwyNDEuNkwzNS4zLDI0MS42WiIvPjxwYXRoIGQ9Ik0xMTQuMSwyMzMuM0wxMTYuOCwyNDEuNkwxMjUuNiwyNDEuNkwxMTguNSwyNDYuOEwxMjEuMiwyNTUuMUwxMTQuMSwyNTAuMEwxMDcuMCwyNTUuMUwxMDkuNywyNDYuOEwxMDIuNiwyNDEuNkwxMTEuNCwyNDEuNloiLz48cGF0aCBkPSJNMTkwLjIsMjMzLjNMMTkyLjksMjQxLjZMMjAxLjcsMjQxLjZMMTk0LjYsMjQ2LjhMMTk3LjMsMjU1LjFMMTkwLjIsMjUwLjBMMTgzLjEsMjU1LjFMMTg1LjgsMjQ2LjhMMTc4LjcsMjQxLjZMMTg3LjUsMjQxLjZaIi8+PHBhdGggZD0iTTI2Ni4zLDIzMy4zTDI2OS4wLDI0MS42TDI3Ny43LDI0MS42TDI3MC42LDI0Ni44TDI3My40LDI1NS4xTDI2Ni4zLDI1MC4wTDI1OS4yLDI1NS4xTDI2MS45LDI0Ni44TDI1NC44LDI0MS42TDI2My42LDI0MS42WiIvPjxwYXRoIGQ9Ik0zNDIuMywyMzMuM0wzNDUuMCwyNDEuNkwzNTMuOCwyNDEuNkwzNDYuNywyNDYuOEwzNDkuNCwyNTUuMUwzNDIuMywyNTAuMEwzMzUuMywyNTUuMUwzMzguMCwyNDYuOEwzMzAuOSwyNDEuNkwzMzkuNiwyNDEuNloiLz48cGF0aCBkPSJNNDE4LjQsMjMzLjNMNDIxLjEsMjQxLjZMNDI5LjksMjQxLjZMNDIyLjgsMjQ2LjhMNDI1LjUsMjU1LjFMNDE4LjQsMjUwLjBMNDExLjMsMjU1LjFMNDE0LjAsMjQ2LjhMNDA3LjAsMjQxLjZMNDE1LjcsMjQxLjZaIi8+PHBhdGggZD0iTTc2LjEsMjY4LjVMNzguOCwyNzYuOEw4Ny41LDI3Ni44TDgwLjUsMjgxLjlMODMuMiwyOTAuM0w3Ni4xLDI4NS4xTDY5LjAsMjkwLjNMNzEuNywyODEuOUw2NC42LDI3Ni44TDczLjQsMjc2LjhaIi8+PHBhdGggZD0iTTE1Mi4yLDI2OC41TDE1NC45LDI3Ni44TDE2My42LDI3Ni44TDE1Ni41LDI4MS45TDE1OS4yLDI5MC4zTDE1Mi4yLDI4NS4xTDE0NS4xLDI5MC4zTDE0Ny44LDI4MS45TDE0MC43LDI3Ni44TDE0OS40LDI3Ni44WiIvPjxwYXRoIGQ9Ik0yMjguMiwyNjguNUwyMzAuOSwyNzYuOEwyMzkuNywyNzYuOEwyMzIuNiwyODEuOUwyMzUuMywyOTAuM0wyMjguMiwyODUuMUwyMjEuMSwyOTAuM0wyMjMuOCwyODEuOUwyMTYuOCwyNzYuOEwyMjUuNSwyNzYuOFoiLz48cGF0aCBkPSJNMzA0LjMsMjY4LjVMMzA3LjAsMjc2LjhMMzE1LjgsMjc2LjhMMzA4LjcsMjgxLjlMMzExLjQsMjkwLjNMMzA0LjMsMjg1LjFMMjk3LjIsMjkwLjNMMjk5LjksMjgxLjlMMjkyLjgsMjc2LjhMMzAxLjYsMjc2LjhaIi8+PHBhdGggZD0iTTM4MC40LDI2OC41TDM4My4xLDI3Ni44TDM5MS44LDI3Ni44TDM4NC44LDI4MS45TDM4Ny41LDI5MC4zTDM4MC40LDI4NS4xTDM3My4zLDI5MC4zTDM3Ni4wLDI4MS45TDM2OC45LDI3Ni44TDM3Ny43LDI3Ni44WiIvPjxwYXRoIGQ9Ik0zOC4wLDMwMy42TDQwLjcsMzEyLjBMNDkuNSwzMTIuMEw0Mi40LDMxNy4xTDQ1LjEsMzI1LjVMMzguMCwzMjAuM0wzMS4wLDMyNS41TDMzLjcsMzE3LjFMMjYuNiwzMTIuMEwzNS4zLDMxMi4wWiIvPjxwYXRoIGQ9Ik0xMTQuMSwzMDMuNkwxMTYuOCwzMTIuMEwxMjUuNiwzMTIuMEwxMTguNSwzMTcuMUwxMjEuMiwzMjUuNUwxMTQuMSwzMjAuM0wxMDcuMCwzMjUuNUwxMDkuNywzMTcuMUwxMDIuNiwzMTIuMEwxMTEuNCwzMTIuMFoiLz48cGF0aCBkPSJNMTkwLjIsMzAzLjZMMTkyLjksMzEyLjBMMjAxLjcsMzEyLjBMMTk0LjYsMzE3LjFMMTk3LjMsMzI1LjVMMTkwLjIsMzIwLjNMMTgzLjEsMzI1LjVMMTg1LjgsMzE3LjFMMTc4LjcsMzEyLjBMMTg3LjUsMzEyLjBaIi8+PHBhdGggZD0iTTI2Ni4zLDMwMy42TDI2OS4wLDMxMi4wTDI3Ny43LDMxMi4wTDI3MC42LDMxNy4xTDI3My40LDMyNS41TDI2Ni4zLDMyMC4zTDI1OS4yLDMyNS41TDI2MS45LDMxNy4xTDI1NC44LDMxMi4wTDI2My42LDMxMi4wWiIvPjxwYXRoIGQ9Ik0zNDIuMywzMDMuNkwzNDUuMCwzMTIuMEwzNTMuOCwzMTIuMEwzNDYuNywzMTcuMUwzNDkuNCwzMjUuNUwzNDIuMywzMjAuM0wzMzUuMywzMjUuNUwzMzguMCwzMTcuMUwzMzAuOSwzMTIuMEwzMzkuNiwzMTIuMFoiLz48cGF0aCBkPSJNNDE4LjQsMzAzLjZMNDIxLjEsMzEyLjBMNDI5LjksMzEyLjBMNDIyLjgsMzE3LjFMNDI1LjUsMzI1LjVMNDE4LjQsMzIwLjNMNDExLjMsMzI1LjVMNDE0LjAsMzE3LjFMNDA3LjAsMzEyLjBMNDE1LjcsMzEyLjBaIi8+PC9nPjwvc3ZnPg==")}
header.nav{z-index:100}
@media (prefers-reduced-motion:reduce){body::before{display:none}}

/* Premium real-photo treatment — replace any .imgph block with <img class="shot" ...> */
.shot{display:block;width:100%;height:100%;object-fit:cover;border-radius:16px}
.framed{position:relative;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lg)}
.framed img,.framed .shot{transition:transform .7s cubic-bezier(.2,.7,.3,1);border-radius:0}
.framed:hover img,.framed:hover .shot{transform:scale(1.045)}
.framed::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(16,34,55,.26));pointer-events:none}
.framed::before{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;padding:1px;background:linear-gradient(160deg,var(--gold-soft),transparent 45%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
/* When a .news/.media or .imgph holds a real <img>, frame it cleanly */
.news .media img,.media .shot{width:100%;height:100%;object-fit:cover;display:block}

/* Refined placeholder look */
.imgph{transition:border-color .3s,background .3s}
.imgph:hover{border-color:var(--gold)}

/* Phero gets a soft inner glow */
.phero::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(900px 360px at 20% 120%,rgba(224,117,74,.06),transparent 60%)}

/* Motion & hover refinement */
.reveal{transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
.card,.news,.path,.imgph{transition:transform .32s cubic-bezier(.2,.7,.3,1),box-shadow .32s,border-color .32s}

/* Typography & rhythm refinement */
h1{letter-spacing:-.022em}
h2{letter-spacing:-.015em}
.eyebrow{letter-spacing:.18em}
.phero .lead,.lead{font-size:1.2rem;line-height:1.52}
.prose{font-size:1.08rem;line-height:1.72}
.prose h2{letter-spacing:-.012em}
section{padding:74px 0}
@media(max-width:760px){section{padding:54px 0}}

/* ===================== SEXIER ===================== */
/* Animated gradient text — utility + auto-applied to every page-hero accent word */
.gtext,.phero h1 span{background:linear-gradient(100deg,var(--gold-2),var(--coral) 45%,var(--rose) 60%,var(--gold-2));background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:shine 7s linear infinite}
@keyframes shine{to{background-position:220% center}}

/* Gold-glow hover on cards */
.card:hover,.news:hover,.path:hover,.price-card:hover{box-shadow:var(--shadow),0 0 26px -6px rgba(199,161,91,.5);border-color:var(--gold)}

/* Universal button sheen + press */
.btn-navy,.btn-ghost{position:relative;overflow:hidden}
.btn-navy::after,.btn-ghost::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-18deg);transition:left .6s}
.btn-navy:hover::after,.btn-ghost:hover::after{left:130%}
.btn:active{transform:translateY(0) scale(.98)}

/* CTA band aurora */
.ctaband::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:conic-gradient(from 0deg at 85% 0%,rgba(199,161,91,.22),transparent 28%,rgba(224,117,74,.16),transparent 62%)}
.ctaband>*{position:relative;z-index:1}

@media(prefers-reduced-motion:reduce){.gtext,.phero h1 span{animation:none;color:var(--coral);-webkit-text-fill-color:var(--coral)}}

/* language selector */
.lang{position:relative}
.lang-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:.55em .9em;font-family:inherit;font-size:.88rem;font-weight:600;color:var(--ink-soft);cursor:pointer;white-space:nowrap;transition:border-color .2s}
.lang-btn:hover{border-color:var(--gold)}
.lang-car{font-size:.7rem;opacity:.7}
.lang-menu{display:none;position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 50px rgba(27,53,81,.18);padding:6px;min-width:170px;z-index:140}
.lang-menu.open{display:block}
.lang-menu button{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;background:none;border:0;border-radius:9px;padding:10px 12px;font-family:inherit;font-size:.95rem;font-weight:500;color:var(--ink);cursor:pointer;text-align:left;white-space:nowrap}
.lang-menu button:hover{background:var(--cream)}
.lang-menu button.on{color:var(--navy);font-weight:700}
.lang-menu button small{color:var(--muted);font-weight:500}
.lang-ov{display:none;position:fixed;inset:0;background:rgba(16,34,55,.55);z-index:200;align-items:center;justify-content:center;padding:22px}
.lang-ov.show{display:flex}
.lang-modal{position:relative;background:#fff;border-radius:20px;padding:30px;max-width:460px;box-shadow:0 44px 90px rgba(16,34,55,.35)}
.lang-modal h3{font-family:'Fraunces',Georgia,serif;color:var(--navy);font-size:1.4rem;margin:0 0 10px}
.lang-modal p{color:var(--ink-soft);margin:0 0 18px}
.lang-acts{display:flex;gap:12px;flex-wrap:wrap}
.lang-x{position:absolute;top:12px;right:16px;background:none;border:0;font-size:1.6rem;color:var(--muted);cursor:pointer;line-height:1}
@media(max-width:880px){.lang-btn .lang-cur{display:none}}

/* nav density with language selector */
header.nav .nav-in{max-width:1280px}
.nav-links{gap:18px}
.nav-cta{gap:10px}
.lang-btn{padding:.5em .8em}
@media(max-width:1320px){
  .nav-links{gap:13px}
  .lang-btn .lang-cur{display:none}
  .nav-cta{gap:8px}
  .nav-cta .btn{padding:.72em 1.05em;font-size:.9rem}
}
@media(max-width:1100px){
  .nav-cta .btn-ghost{display:none}
}

[id]{scroll-margin-top:96px}

/* mobile fit + overflow guard
   NOTE: overflow-x on html/body must be `clip`, never `hidden` —
   `hidden` turns the page into a scroll container and silently kills
   the sticky header on every page. Decorative overflow is contained
   at its own section instead (see .hero below). */
html,body{overflow-x:clip}
.hero{overflow:hidden}
@media(max-width:480px){
  .nav-cta{gap:6px}
  .nav-cta .btn-gold{padding:10px 12px;font-size:.83rem}
  .brand span{display:none}
  .brand img{height:34px}
  .menu-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
}

/* fee line-outs (shared) */
.lineout{background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.lineout .li{display:flex;justify-content:space-between;gap:18px;align-items:baseline;padding:9px 0;border-bottom:1px dashed var(--line);font-size:.97rem}
.lineout .li:last-child{border-bottom:0}
.lineout .li span:last-child{white-space:nowrap;color:var(--navy)}

/* intake form (shared: used on index + contact) */
label.fld{display:block;font-weight:600;font-size:.92rem;margin:14px 0 6px;color:var(--navy)}
select,input[type=text],input[type=email],input[type=tel],textarea{width:100%;font-family:inherit;font-size:1rem;padding:.8em .9em;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
select:focus,input:focus,textarea:focus{outline:none;border-color:var(--gold)}
.intake{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 18px 50px rgba(16,34,55,.10)}
.intake .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:520px){.intake .two{grid-template-columns:1fr}}
.hp{position:absolute;left:-9999px}
.intake-ok,.intake-error{display:none;border-radius:12px;padding:14px;margin-bottom:14px;font-size:.95rem}
.intake-ok{background:#e7f4ec;color:#1d6b43;border:1px solid #bfe3cc}
.intake-error{background:#fdecea;color:#b3402c;border:1px solid #f3c9c1}
.intake-note{background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:18px;font-size:.93rem;line-height:1.55;color:var(--ink-soft)}
.intake-note b{color:var(--navy)}

/* ---------- Services mega menu ---------- */
.has-mega{position:static;display:flex;align-items:center}
.nav-links .mega-trigger{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.mega-trigger .caret{width:10px;height:10px;flex:0 0 auto;transition:transform .2s}
.has-mega:hover .mega-trigger .caret,.has-mega.open .mega-trigger .caret{transform:rotate(180deg)}
.mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line);box-shadow:0 30px 60px rgba(16,34,55,.16);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .16s ease,transform .16s ease,visibility .16s;z-index:120}
.has-mega:hover .mega,.has-mega:focus-within .mega,.has-mega.open .mega{opacity:1;visibility:visible;transform:none}
.mega-in{max-width:1280px;margin:0 auto;padding:26px 22px 20px}
.mega-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 30px;align-items:start}
.mega-cols h4{font-size:.73rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--gold-2);font-family:'DM Sans',system-ui,Arial,sans-serif;margin:0 0 8px;line-height:1.15;min-height:2.4em;display:flex;align-items:flex-end}
.nav-links .mega a{display:block;white-space:normal;padding:5px 0;font-size:.89rem;line-height:1.35;color:var(--ink-soft);border-bottom:1px solid rgba(220,208,183,.35);transition:padding-left .15s,color .15s}
.mega-cols>div a:last-child{border-bottom:0}
.nav-links .mega a:hover{color:var(--navy);padding-left:4px}
.mega-shelf{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line-2)}
.nav-links .mega-shelf a{padding:0;border:0;border-radius:12px;overflow:hidden;background:var(--cream);box-shadow:var(--shadow-sm);transition:transform .18s,box-shadow .18s}
.nav-links .mega-shelf a:hover{padding-left:0;transform:translateY(-3px);box-shadow:var(--shadow)}
.mega-shelf img{display:block;width:100%;height:94px;object-fit:cover}
.mega-shelf b{display:block;padding:8px 10px 10px;font-size:.79rem;line-height:1.3;color:var(--navy);font-weight:600}
.mega-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line-2)}
.mega-foot .note{font-size:.86rem;color:var(--muted);margin:0}
.mega-foot .acts{display:flex;gap:10px;flex-wrap:wrap}
.nav-links .mega-foot a.btn{display:inline-flex;padding:.7em 1.2em;font-size:.92rem;border-bottom:0}
.nav-links .mega-foot a.btn:hover{padding-left:1.2em}
@media(max-width:1180px){.mega-shelf{grid-template-columns:repeat(3,1fr)}}
@media(max-width:980px){
  .has-mega{display:block;width:100%}
  .mega{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:transparent;display:none;transition:none;padding:0}
  .has-mega:hover .mega{display:none}
  .has-mega.open .mega,.has-mega.open:hover .mega{display:block}
  .mega-in{padding:6px 0 4px;max-width:100%}
  .mega-cols{grid-template-columns:1fr;gap:14px}
  .mega-shelf,.mega-foot{display:none}
  .nav-links .mega a{padding:6px 0}
  .mega-trigger{justify-content:space-between;width:100%}
}

/* ---------- Services hub ---------- */
.svc{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s}
.svc:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold)}
.svc img{display:block;width:100%;height:190px;object-fit:cover}
.svc .b{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1}
.svc h3{margin-bottom:.4em}
.svc p{font-size:.95rem;color:var(--ink-soft);margin-bottom:14px}
.svc .fee{margin-top:auto;font-weight:700;color:var(--gold-2);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
.svclist{display:grid;grid-template-columns:repeat(2,1fr);gap:0 26px;margin-top:8px}
.svclist a{display:block;padding:9px 0;border-bottom:1px solid var(--line-2);font-size:.97rem;color:var(--ink-soft)}
.svclist a:hover{color:var(--navy)}
@media(max-width:640px){.svclist{grid-template-columns:1fr}.svc img{height:170px}}

/* ---------- pricing: line the three fee cards up ---------- */
.price-card{display:flex;flex-direction:column}
.price-card h3{min-height:2.5em;display:flex;align-items:flex-end;margin-bottom:0}
.price-card .lineout{flex:1 1 auto}
@media(max-width:640px){.price-card h3{min-height:0;display:flex;align-items:center}}

/* services hub cards — tag + CTA */
.svc .tag{display:inline-block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--gold-2);margin-bottom:6px}
.svc .more{margin-top:10px;font-weight:600;font-size:.92rem;color:var(--coral-2)}
.svc:hover .more{text-decoration:underline}
.svc .fee{margin-top:auto;padding-top:10px}

/* ---------- Pre-launch: hide unfilled image slots ----------
   Art direction for these 44 slots is written and the images are being produced.
   Until they land the empty boxes stay hidden so the live site reads as finished.
   Remove this block (and the .ph-only classes) when the images are placed. */
.imgph{display:none!important}
.ph-only{display:none!important}

/* pricing: linked rows inside a lineout */
a.li{display:flex;justify-content:space-between;gap:18px;align-items:baseline;padding:11px 0;border-bottom:1px dashed var(--line);font-size:.97rem;color:var(--ink)}
a.li:last-child{border-bottom:0}
a.li:hover b{text-decoration:underline}
a.li small{line-height:1.4;display:block;margin-top:3px}

/* pricing: full-width interviews band */
.interviews-card .iv-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:26px;align-items:start}
.interviews-card .lineout .li span:last-child{color:var(--gold-2);font-weight:700}
@media(max-width:820px){.interviews-card .iv-grid{grid-template-columns:1fr;gap:18px}}

/* pricing: closing photo gallery */
.fee-gallery{column-count:3;column-gap:18px}
.fee-gallery img{display:block;width:100%;height:auto;border-radius:16px;margin:0 0 16px;
  box-shadow:var(--shadow-sm);break-inside:avoid}
@media(max-width:820px){.fee-gallery{column-count:2}}
@media(max-width:700px){.fee-gallery{column-count:2;column-gap:12px}.fee-gallery img{margin-bottom:12px}}

/* footer flag — crisp, fully visible, anchored top-right (was a washed-out band) */
footer{position:relative;overflow:hidden}
footer>.wrap{position:relative;z-index:1}
footer::before{content:'';position:absolute;z-index:0;pointer-events:none;right:34px;top:30px;width:250px;height:132px;border-radius:6px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjM1IDY1MCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgc2xpY2UiPjxyZWN0IHdpZHRoPSIxMjM1IiBoZWlnaHQ9IjY1MCIgZmlsbD0iI2ZmZmZmZiIvPjxyZWN0IHk9IjAuMCIgd2lkdGg9IjEyMzUiIGhlaWdodD0iNTAuMCIgZmlsbD0iI0IyMjIzNCIvPjxyZWN0IHk9IjEwMC4wIiB3aWR0aD0iMTIzNSIgaGVpZ2h0PSI1MC4wIiBmaWxsPSIjQjIyMjM0Ii8+PHJlY3QgeT0iMjAwLjAiIHdpZHRoPSIxMjM1IiBoZWlnaHQ9IjUwLjAiIGZpbGw9IiNCMjIyMzQiLz48cmVjdCB5PSIzMDAuMCIgd2lkdGg9IjEyMzUiIGhlaWdodD0iNTAuMCIgZmlsbD0iI0IyMjIzNCIvPjxyZWN0IHk9IjQwMC4wIiB3aWR0aD0iMTIzNSIgaGVpZ2h0PSI1MC4wIiBmaWxsPSIjQjIyMjM0Ii8+PHJlY3QgeT0iNTAwLjAiIHdpZHRoPSIxMjM1IiBoZWlnaHQ9IjUwLjAiIGZpbGw9IiNCMjIyMzQiLz48cmVjdCB5PSI2MDAuMCIgd2lkdGg9IjEyMzUiIGhlaWdodD0iNTAuMCIgZmlsbD0iI0IyMjIzNCIvPjxyZWN0IHdpZHRoPSI0OTQiIGhlaWdodD0iMzUwIiBmaWxsPSIjM0MzQjZFIi8+PGcgZmlsbD0iI2ZmZmZmZiI+PHBhdGggZD0iTTM4LjAsMjIuMkw0MC43LDMwLjZMNDkuNSwzMC42TDQyLjQsMzUuN0w0NS4xLDQ0LjFMMzguMCwzOC45TDMxLjAsNDQuMUwzMy43LDM1LjdMMjYuNiwzMC42TDM1LjMsMzAuNloiLz48cGF0aCBkPSJNMTE0LjEsMjIuMkwxMTYuOCwzMC42TDEyNS42LDMwLjZMMTE4LjUsMzUuN0wxMjEuMiw0NC4xTDExNC4xLDM4LjlMMTA3LjAsNDQuMUwxMDkuNywzNS43TDEwMi42LDMwLjZMMTExLjQsMzAuNloiLz48cGF0aCBkPSJNMTkwLjIsMjIuMkwxOTIuOSwzMC42TDIwMS43LDMwLjZMMTk0LjYsMzUuN0wxOTcuMyw0NC4xTDE5MC4yLDM4LjlMMTgzLjEsNDQuMUwxODUuOCwzNS43TDE3OC43LDMwLjZMMTg3LjUsMzAuNloiLz48cGF0aCBkPSJNMjY2LjMsMjIuMkwyNjkuMCwzMC42TDI3Ny43LDMwLjZMMjcwLjYsMzUuN0wyNzMuNCw0NC4xTDI2Ni4zLDM4LjlMMjU5LjIsNDQuMUwyNjEuOSwzNS43TDI1NC44LDMwLjZMMjYzLjYsMzAuNloiLz48cGF0aCBkPSJNMzQyLjMsMjIuMkwzNDUuMCwzMC42TDM1My44LDMwLjZMMzQ2LjcsMzUuN0wzNDkuNCw0NC4xTDM0Mi4zLDM4LjlMMzM1LjMsNDQuMUwzMzguMCwzNS43TDMzMC45LDMwLjZMMzM5LjYsMzAuNloiLz48cGF0aCBkPSJNNDE4LjQsMjIuMkw0MjEuMSwzMC42TDQyOS45LDMwLjZMNDIyLjgsMzUuN0w0MjUuNSw0NC4xTDQxOC40LDM4LjlMNDExLjMsNDQuMUw0MTQuMCwzNS43TDQwNy4wLDMwLjZMNDE1LjcsMzAuNloiLz48cGF0aCBkPSJNNzYuMSw1Ny40TDc4LjgsNjUuN0w4Ny41LDY1LjdMODAuNSw3MC45TDgzLjIsNzkuMkw3Ni4xLDc0LjFMNjkuMCw3OS4yTDcxLjcsNzAuOUw2NC42LDY1LjdMNzMuNCw2NS43WiIvPjxwYXRoIGQ9Ik0xNTIuMiw1Ny40TDE1NC45LDY1LjdMMTYzLjYsNjUuN0wxNTYuNSw3MC45TDE1OS4yLDc5LjJMMTUyLjIsNzQuMUwxNDUuMSw3OS4yTDE0Ny44LDcwLjlMMTQwLjcsNjUuN0wxNDkuNCw2NS43WiIvPjxwYXRoIGQ9Ik0yMjguMiw1Ny40TDIzMC45LDY1LjdMMjM5LjcsNjUuN0wyMzIuNiw3MC45TDIzNS4zLDc5LjJMMjI4LjIsNzQuMUwyMjEuMSw3OS4yTDIyMy44LDcwLjlMMjE2LjgsNjUuN0wyMjUuNSw2NS43WiIvPjxwYXRoIGQ9Ik0zMDQuMyw1Ny40TDMwNy4wLDY1LjdMMzE1LjgsNjUuN0wzMDguNyw3MC45TDMxMS40LDc5LjJMMzA0LjMsNzQuMUwyOTcuMiw3OS4yTDI5OS45LDcwLjlMMjkyLjgsNjUuN0wzMDEuNiw2NS43WiIvPjxwYXRoIGQ9Ik0zODAuNCw1Ny40TDM4My4xLDY1LjdMMzkxLjgsNjUuN0wzODQuOCw3MC45TDM4Ny41LDc5LjJMMzgwLjQsNzQuMUwzNzMuMyw3OS4yTDM3Ni4wLDcwLjlMMzY4LjksNjUuN0wzNzcuNyw2NS43WiIvPjxwYXRoIGQ9Ik0zOC4wLDkyLjZMNDAuNywxMDAuOUw0OS41LDEwMC45TDQyLjQsMTA2LjFMNDUuMSwxMTQuNEwzOC4wLDEwOS4zTDMxLjAsMTE0LjRMMzMuNywxMDYuMUwyNi42LDEwMC45TDM1LjMsMTAwLjlaIi8+PHBhdGggZD0iTTExNC4xLDkyLjZMMTE2LjgsMTAwLjlMMTI1LjYsMTAwLjlMMTE4LjUsMTA2LjFMMTIxLjIsMTE0LjRMMTE0LjEsMTA5LjNMMTA3LjAsMTE0LjRMMTA5LjcsMTA2LjFMMTAyLjYsMTAwLjlMMTExLjQsMTAwLjlaIi8+PHBhdGggZD0iTTE5MC4yLDkyLjZMMTkyLjksMTAwLjlMMjAxLjcsMTAwLjlMMTk0LjYsMTA2LjFMMTk3LjMsMTE0LjRMMTkwLjIsMTA5LjNMMTgzLjEsMTE0LjRMMTg1LjgsMTA2LjFMMTc4LjcsMTAwLjlMMTg3LjUsMTAwLjlaIi8+PHBhdGggZD0iTTI2Ni4zLDkyLjZMMjY5LjAsMTAwLjlMMjc3LjcsMTAwLjlMMjcwLjYsMTA2LjFMMjczLjQsMTE0LjRMMjY2LjMsMTA5LjNMMjU5LjIsMTE0LjRMMjYxLjksMTA2LjFMMjU0LjgsMTAwLjlMMjYzLjYsMTAwLjlaIi8+PHBhdGggZD0iTTM0Mi4zLDkyLjZMMzQ1LjAsMTAwLjlMMzUzLjgsMTAwLjlMMzQ2LjcsMTA2LjFMMzQ5LjQsMTE0LjRMMzQyLjMsMTA5LjNMMzM1LjMsMTE0LjRMMzM4LjAsMTA2LjFMMzMwLjksMTAwLjlMMzM5LjYsMTAwLjlaIi8+PHBhdGggZD0iTTQxOC40LDkyLjZMNDIxLjEsMTAwLjlMNDI5LjksMTAwLjlMNDIyLjgsMTA2LjFMNDI1LjUsMTE0LjRMNDE4LjQsMTA5LjNMNDExLjMsMTE0LjRMNDE0LjAsMTA2LjFMNDA3LjAsMTAwLjlMNDE1LjcsMTAwLjlaIi8+PHBhdGggZD0iTTc2LjEsMTI3LjhMNzguOCwxMzYuMUw4Ny41LDEzNi4xTDgwLjUsMTQxLjJMODMuMiwxNDkuNkw3Ni4xLDE0NC40TDY5LjAsMTQ5LjZMNzEuNywxNDEuMkw2NC42LDEzNi4xTDczLjQsMTM2LjFaIi8+PHBhdGggZD0iTTE1Mi4yLDEyNy44TDE1NC45LDEzNi4xTDE2My42LDEzNi4xTDE1Ni41LDE0MS4yTDE1OS4yLDE0OS42TDE1Mi4yLDE0NC40TDE0NS4xLDE0OS42TDE0Ny44LDE0MS4yTDE0MC43LDEzNi4xTDE0OS40LDEzNi4xWiIvPjxwYXRoIGQ9Ik0yMjguMiwxMjcuOEwyMzAuOSwxMzYuMUwyMzkuNywxMzYuMUwyMzIuNiwxNDEuMkwyMzUuMywxNDkuNkwyMjguMiwxNDQuNEwyMjEuMSwxNDkuNkwyMjMuOCwxNDEuMkwyMTYuOCwxMzYuMUwyMjUuNSwxMzYuMVoiLz48cGF0aCBkPSJNMzA0LjMsMTI3LjhMMzA3LjAsMTM2LjFMMzE1LjgsMTM2LjFMMzA4LjcsMTQxLjJMMzExLjQsMTQ5LjZMMzA0LjMsMTQ0LjRMMjk3LjIsMTQ5LjZMMjk5LjksMTQxLjJMMjkyLjgsMTM2LjFMMzAxLjYsMTM2LjFaIi8+PHBhdGggZD0iTTM4MC40LDEyNy44TDM4My4xLDEzNi4xTDM5MS44LDEzNi4xTDM4NC44LDE0MS4yTDM4Ny41LDE0OS42TDM4MC40LDE0NC40TDM3My4zLDE0OS42TDM3Ni4wLDE0MS4yTDM2OC45LDEzNi4xTDM3Ny43LDEzNi4xWiIvPjxwYXRoIGQ9Ik0zOC4wLDE2Mi45TDQwLjcsMTcxLjNMNDkuNSwxNzEuM0w0Mi40LDE3Ni40TDQ1LjEsMTg0LjhMMzguMCwxNzkuNkwzMS4wLDE4NC44TDMzLjcsMTc2LjRMMjYuNiwxNzEuM0wzNS4zLDE3MS4zWiIvPjxwYXRoIGQ9Ik0xMTQuMSwxNjIuOUwxMTYuOCwxNzEuM0wxMjUuNiwxNzEuM0wxMTguNSwxNzYuNEwxMjEuMiwxODQuOEwxMTQuMSwxNzkuNkwxMDcuMCwxODQuOEwxMDkuNywxNzYuNEwxMDIuNiwxNzEuM0wxMTEuNCwxNzEuM1oiLz48cGF0aCBkPSJNMTkwLjIsMTYyLjlMMTkyLjksMTcxLjNMMjAxLjcsMTcxLjNMMTk0LjYsMTc2LjRMMTk3LjMsMTg0LjhMMTkwLjIsMTc5LjZMMTgzLjEsMTg0LjhMMTg1LjgsMTc2LjRMMTc4LjcsMTcxLjNMMTg3LjUsMTcxLjNaIi8+PHBhdGggZD0iTTI2Ni4zLDE2Mi45TDI2OS4wLDE3MS4zTDI3Ny43LDE3MS4zTDI3MC42LDE3Ni40TDI3My40LDE4NC44TDI2Ni4zLDE3OS42TDI1OS4yLDE4NC44TDI2MS45LDE3Ni40TDI1NC44LDE3MS4zTDI2My42LDE3MS4zWiIvPjxwYXRoIGQ9Ik0zNDIuMywxNjIuOUwzNDUuMCwxNzEuM0wzNTMuOCwxNzEuM0wzNDYuNywxNzYuNEwzNDkuNCwxODQuOEwzNDIuMywxNzkuNkwzMzUuMywxODQuOEwzMzguMCwxNzYuNEwzMzAuOSwxNzEuM0wzMzkuNiwxNzEuM1oiLz48cGF0aCBkPSJNNDE4LjQsMTYyLjlMNDIxLjEsMTcxLjNMNDI5LjksMTcxLjNMNDIyLjgsMTc2LjRMNDI1LjUsMTg0LjhMNDE4LjQsMTc5LjZMNDExLjMsMTg0LjhMNDE0LjAsMTc2LjRMNDA3LjAsMTcxLjNMNDE1LjcsMTcxLjNaIi8+PHBhdGggZD0iTTc2LjEsMTk4LjFMNzguOCwyMDYuNEw4Ny41LDIwNi40TDgwLjUsMjExLjZMODMuMiwyMTkuOUw3Ni4xLDIxNC44TDY5LjAsMjE5LjlMNzEuNywyMTEuNkw2NC42LDIwNi40TDczLjQsMjA2LjRaIi8+PHBhdGggZD0iTTE1Mi4yLDE5OC4xTDE1NC45LDIwNi40TDE2My42LDIwNi40TDE1Ni41LDIxMS42TDE1OS4yLDIxOS45TDE1Mi4yLDIxNC44TDE0NS4xLDIxOS45TDE0Ny44LDIxMS42TDE0MC43LDIwNi40TDE0OS40LDIwNi40WiIvPjxwYXRoIGQ9Ik0yMjguMiwxOTguMUwyMzAuOSwyMDYuNEwyMzkuNywyMDYuNEwyMzIuNiwyMTEuNkwyMzUuMywyMTkuOUwyMjguMiwyMTQuOEwyMjEuMSwyMTkuOUwyMjMuOCwyMTEuNkwyMTYuOCwyMDYuNEwyMjUuNSwyMDYuNFoiLz48cGF0aCBkPSJNMzA0LjMsMTk4LjFMMzA3LjAsMjA2LjRMMzE1LjgsMjA2LjRMMzA4LjcsMjExLjZMMzExLjQsMjE5LjlMMzA0LjMsMjE0LjhMMjk3LjIsMjE5LjlMMjk5LjksMjExLjZMMjkyLjgsMjA2LjRMMzAxLjYsMjA2LjRaIi8+PHBhdGggZD0iTTM4MC40LDE5OC4xTDM4My4xLDIwNi40TDM5MS44LDIwNi40TDM4NC44LDIxMS42TDM4Ny41LDIxOS45TDM4MC40LDIxNC44TDM3My4zLDIxOS45TDM3Ni4wLDIxMS42TDM2OC45LDIwNi40TDM3Ny43LDIwNi40WiIvPjxwYXRoIGQ9Ik0zOC4wLDIzMy4zTDQwLjcsMjQxLjZMNDkuNSwyNDEuNkw0Mi40LDI0Ni44TDQ1LjEsMjU1LjFMMzguMCwyNTAuMEwzMS4wLDI1NS4xTDMzLjcsMjQ2LjhMMjYuNiwyNDEuNkwzNS4zLDI0MS42WiIvPjxwYXRoIGQ9Ik0xMTQuMSwyMzMuM0wxMTYuOCwyNDEuNkwxMjUuNiwyNDEuNkwxMTguNSwyNDYuOEwxMjEuMiwyNTUuMUwxMTQuMSwyNTAuMEwxMDcuMCwyNTUuMUwxMDkuNywyNDYuOEwxMDIuNiwyNDEuNkwxMTEuNCwyNDEuNloiLz48cGF0aCBkPSJNMTkwLjIsMjMzLjNMMTkyLjksMjQxLjZMMjAxLjcsMjQxLjZMMTk0LjYsMjQ2LjhMMTk3LjMsMjU1LjFMMTkwLjIsMjUwLjBMMTgzLjEsMjU1LjFMMTg1LjgsMjQ2LjhMMTc4LjcsMjQxLjZMMTg3LjUsMjQxLjZaIi8+PHBhdGggZD0iTTI2Ni4zLDIzMy4zTDI2OS4wLDI0MS42TDI3Ny43LDI0MS42TDI3MC42LDI0Ni44TDI3My40LDI1NS4xTDI2Ni4zLDI1MC4wTDI1OS4yLDI1NS4xTDI2MS45LDI0Ni44TDI1NC44LDI0MS42TDI2My42LDI0MS42WiIvPjxwYXRoIGQ9Ik0zNDIuMywyMzMuM0wzNDUuMCwyNDEuNkwzNTMuOCwyNDEuNkwzNDYuNywyNDYuOEwzNDkuNCwyNTUuMUwzNDIuMywyNTAuMEwzMzUuMywyNTUuMUwzMzguMCwyNDYuOEwzMzAuOSwyNDEuNkwzMzkuNiwyNDEuNloiLz48cGF0aCBkPSJNNDE4LjQsMjMzLjNMNDIxLjEsMjQxLjZMNDI5LjksMjQxLjZMNDIyLjgsMjQ2LjhMNDI1LjUsMjU1LjFMNDE4LjQsMjUwLjBMNDExLjMsMjU1LjFMNDE0LjAsMjQ2LjhMNDA3LjAsMjQxLjZMNDE1LjcsMjQxLjZaIi8+PHBhdGggZD0iTTc2LjEsMjY4LjVMNzguOCwyNzYuOEw4Ny41LDI3Ni44TDgwLjUsMjgxLjlMODMuMiwyOTAuM0w3Ni4xLDI4NS4xTDY5LjAsMjkwLjNMNzEuNywyODEuOUw2NC42LDI3Ni44TDczLjQsMjc2LjhaIi8+PHBhdGggZD0iTTE1Mi4yLDI2OC41TDE1NC45LDI3Ni44TDE2My42LDI3Ni44TDE1Ni41LDI4MS45TDE1OS4yLDI5MC4zTDE1Mi4yLDI4NS4xTDE0NS4xLDI5MC4zTDE0Ny44LDI4MS45TDE0MC43LDI3Ni44TDE0OS40LDI3Ni44WiIvPjxwYXRoIGQ9Ik0yMjguMiwyNjguNUwyMzAuOSwyNzYuOEwyMzkuNywyNzYuOEwyMzIuNiwyODEuOUwyMzUuMywyOTAuM0wyMjguMiwyODUuMUwyMjEuMSwyOTAuM0wyMjMuOCwyODEuOUwyMTYuOCwyNzYuOEwyMjUuNSwyNzYuOFoiLz48cGF0aCBkPSJNMzA0LjMsMjY4LjVMMzA3LjAsMjc2LjhMMzE1LjgsMjc2LjhMMzA4LjcsMjgxLjlMMzExLjQsMjkwLjNMMzA0LjMsMjg1LjFMMjk3LjIsMjkwLjNMMjk5LjksMjgxLjlMMjkyLjgsMjc2LjhMMzAxLjYsMjc2LjhaIi8+PHBhdGggZD0iTTM4MC40LDI2OC41TDM4My4xLDI3Ni44TDM5MS44LDI3Ni44TDM4NC44LDI4MS45TDM4Ny41LDI5MC4zTDM4MC40LDI4NS4xTDM3My4zLDI5MC4zTDM3Ni4wLDI4MS45TDM2OC45LDI3Ni44TDM3Ny43LDI3Ni44WiIvPjxwYXRoIGQ9Ik0zOC4wLDMwMy42TDQwLjcsMzEyLjBMNDkuNSwzMTIuMEw0Mi40LDMxNy4xTDQ1LjEsMzI1LjVMMzguMCwzMjAuM0wzMS4wLDMyNS41TDMzLjcsMzE3LjFMMjYuNiwzMTIuMEwzNS4zLDMxMi4wWiIvPjxwYXRoIGQ9Ik0xMTQuMSwzMDMuNkwxMTYuOCwzMTIuMEwxMjUuNiwzMTIuMEwxMTguNSwzMTcuMUwxMjEuMiwzMjUuNUwxMTQuMSwzMjAuM0wxMDcuMCwzMjUuNUwxMDkuNywzMTcuMUwxMDIuNiwzMTIuMEwxMTEuNCwzMTIuMFoiLz48cGF0aCBkPSJNMTkwLjIsMzAzLjZMMTkyLjksMzEyLjBMMjAxLjcsMzEyLjBMMTk0LjYsMzE3LjFMMTk3LjMsMzI1LjVMMTkwLjIsMzIwLjNMMTgzLjEsMzI1LjVMMTg1LjgsMzE3LjFMMTc4LjcsMzEyLjBMMTg3LjUsMzEyLjBaIi8+PHBhdGggZD0iTTI2Ni4zLDMwMy42TDI2OS4wLDMxMi4wTDI3Ny43LDMxMi4wTDI3MC42LDMxNy4xTDI3My40LDMyNS41TDI2Ni4zLDMyMC4zTDI1OS4yLDMyNS41TDI2MS45LDMxNy4xTDI1NC44LDMxMi4wTDI2My42LDMxMi4wWiIvPjxwYXRoIGQ9Ik0zNDIuMywzMDMuNkwzNDUuMCwzMTIuMEwzNTMuOCwzMTIuMEwzNDYuNywzMTcuMUwzNDkuNCwzMjUuNUwzNDIuMywzMjAuM0wzMzUuMywzMjUuNUwzMzguMCwzMTcuMUwzMzAuOSwzMTIuMEwzMzkuNiwzMTIuMFoiLz48cGF0aCBkPSJNNDE4LjQsMzAzLjZMNDIxLjEsMzEyLjBMNDI5LjksMzEyLjBMNDIyLjgsMzE3LjFMNDI1LjUsMzI1LjVMNDE4LjQsMzIwLjNMNDExLjMsMzI1LjVMNDE0LjAsMzE3LjFMNDA3LjAsMzEyLjBMNDE1LjcsMzEyLjBaIi8+PC9nPjwvc3ZnPg==);background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.92;box-shadow:0 10px 30px rgba(0,0,0,.45);-webkit-mask-image:radial-gradient(120% 120% at 60% 40%,#000 62%,rgba(0,0,0,.35) 88%,transparent 100%);mask-image:radial-gradient(120% 120% at 60% 40%,#000 62%,rgba(0,0,0,.35) 88%,transparent 100%)}
@media(max-width:1100px){footer::before{width:190px;height:100px;right:22px;top:24px;opacity:.85}}
@media(max-width:860px){footer::before{width:150px;height:79px;right:20px;top:22px;opacity:.85}}@media(max-width:520px){footer::before{width:112px;height:59px;right:16px;top:20px;opacity:.8}}

/* gold button: flat fill, no rim */
.btn-gold{background:var(--gold);background-image:none;border-color:var(--gold);color:#16283F;box-shadow:0 4px 12px rgba(131,96,38,.22)}
.btn-gold::after{display:none!important}
.btn-gold:hover{background:var(--gold-2);border-color:var(--gold-2);color:#fff;transform:translateY(-2px);box-shadow:0 10px 22px rgba(131,96,38,.30)}
.btn-gold:active{transform:translateY(0)}
.btn-gold:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
/* interviews card: two stacked photos */
.iv-photos{display:flex;flex-direction:column;gap:12px}
.iv-photos .framed{margin:0}
@media(max-width:820px){.iv-photos{gap:10px}}

/* --- QC fixes 2026-08-21 --- */
/* 1. button labels were being clipped by nowrap+overflow at small widths */
@media(max-width:560px){
  .btn{white-space:normal;overflow:visible;text-align:center;line-height:1.25}
}
/* 2. mega-menu CTA lost its dark label to .nav-links a specificity (3.62:1) */
.nav-links .mega-foot .acts a.btn-gold{color:#16283F}
.nav-links .mega-foot .acts a.btn-gold:hover{color:#fff}
/* 3. form fields had outline:none with only a 2.44:1 border cue */
select:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:3px solid var(--navy);outline-offset:2px;border-color:var(--gold)}
/* 4. smooth scrolling ignored prefers-reduced-motion */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* 5. wide checklist tables were clipped with no way to scroll to them */
.cl-doc table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}

/* consultation CTA + call button */
.call-fab{display:grid}
@media(min-width:761px){.call-fab{right:26px;bottom:26px;width:64px;height:64px}.call-fab svg{width:28px;height:28px}}
.call-fab{border:2px solid rgba(255,255,255,.92);box-shadow:0 10px 26px rgba(0,0,0,.34)}
/* pulse ring must read on navy bands too, so it is gold rather than navy */
@keyframes callRing{0%{box-shadow:0 0 0 0 rgba(199,161,91,.55)}70%{box-shadow:0 0 0 16px rgba(199,161,91,0)}100%{box-shadow:0 0 0 0 rgba(199,161,91,0)}}
.call-fab:hover{background:var(--navy-2)}
.call-fab:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
#start,#intakeForm{scroll-margin-top:100px}

/* hero eyebrow reads as a credential line, so it carries more weight than a section label */
.hero .eyebrow{font-size:.9rem;letter-spacing:.12em}
.hero .eyebrow:before{width:28px}
@media(max-width:560px){.hero .eyebrow{font-size:.86rem;letter-spacing:.12em;align-items:flex-start}
  /* once the line wraps the gold dash must lead the first line, not float between the two */
  .hero .eyebrow:before{margin-top:.58em;flex:0 0 auto}}
