/* ============================================================
   AVYA — REFRESH COMPONENTS
   Shared components for the refreshed pages (home, Money at Risk
   family, Explore, Partners, Embedded, Protector IQ, Claims, Saathi,
   Trust, Policy check …). Loaded after base.css, which supplies the
   tokens and self-hosted fonts. Colours come only from the existing
   AVYA palette: rust, terracotta, espresso, ink, ground, tint, brass,
   line, plus midnight/ivory for the shared site chrome.
   ============================================================ */

:root{
  --ter:#C76830;          /* terracotta */
  --ter-soft:#F0D9C8;     /* terracotta wash */
  --mid:#0D1B2A;          /* midnight — shared nav + footer */
  --ivo:#EEE8D5;          /* ivory on midnight */
  --shadow:0 24px 70px rgba(51,34,26,.12);
}

*{margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} }
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;padding-top:64px;overflow-x:hidden}
img,svg{display:block;max-width:100%}
p,li{max-width:none}

.skip{position:absolute;left:-9999px;top:0;z-index:300;background:var(--rust);color:var(--white);padding:.7rem 1rem;border-radius:0 0 8px 0;font-weight:600}
.skip:focus{left:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.shell{width:min(100% - 2rem, 76rem);margin-inline:auto}
.band{padding-block:clamp(4rem,8vw,7rem)}
.band-white{background:var(--white)}
.band-tint{background:var(--tint)}
.band-line{border-top:1px solid var(--line)}

.eyebrow{font-family:var(--body);font-size:.74rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--rust);margin-bottom:.9rem;display:block}
.eyebrow-ter{color:#9A4A1F}
.band-tint .eyebrow,.band-tint .text-link{color:#8A3C1C}
.band-tint .btn-outline{background:var(--white)}
.band-tint .res .num{color:#9A4A1F}
h1,h2,h3{font-family:var(--display);color:var(--espresso);letter-spacing:-.02em;text-wrap:balance}
h1{font-size:clamp(2.5rem,6.2vw,4.9rem);line-height:1.02;font-weight:560}
h2{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.06;font-weight:560}
h3{font-size:1.2rem;line-height:1.25;font-weight:600;letter-spacing:-.01em}
.lede{font-size:clamp(1.05rem,2vw,1.24rem);line-height:1.65;color:var(--ink-soft);max-width:40rem}
.body-soft{color:var(--ink-soft);line-height:1.7}
.mt-s{margin-top:1rem}.mt-m{margin-top:1.6rem}.mt-l{margin-top:2.4rem}

/* ============ BUTTONS ============ */
.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.75rem 1.5rem;border-radius:999px;font-family:var(--body);font-weight:600;font-size:1rem;line-height:1.2;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.btn svg{width:18px;height:18px;flex-shrink:0}
.btn-primary{background:var(--rust);color:var(--white);box-shadow:0 12px 28px rgba(194,84,45,.22)}
.btn-primary:hover{background:#A84526;transform:translateY(-1px)}
.btn-ter{background:var(--ter);color:var(--ink)}
.btn-ter:hover{background:#D4764E;transform:translateY(-1px)}
.btn-outline{background:rgba(255,255,255,.6);color:var(--rust);border-color:rgba(194,84,45,.28)}
.btn-outline:hover{background:var(--white)}
.btn-dark{background:var(--espresso);color:var(--white)}
.btn-dark:hover{background:var(--rust)}
.ext-note{font-size:.72rem;opacity:.8;font-weight:500}
.text-link{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--rust);text-decoration:none}
.text-link svg{width:16px;height:16px;transition:transform .18s ease}
.text-link:hover{text-decoration:underline}
.text-link:hover svg{transform:translateX(3px)}

/* ============ HERO ============ */
.hero{position:relative;border-bottom:1px solid var(--line);overflow:hidden}
.hero-grid{display:grid;gap:3rem;align-items:center;padding-block:clamp(3.5rem,8vw,6.5rem)}
@media(min-width:1000px){ .hero-grid{grid-template-columns:1.05fr .95fr;gap:4rem} }
.hero-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1rem;border-radius:999px;border:1px solid rgba(194,84,45,.18);background:rgba(255,255,255,.6);font-size:.78rem;font-weight:700;color:var(--rust)}
.hero-pill svg{width:14px;height:14px;color:var(--ter)}
.hero h1{margin-top:1.4rem}
.hero .lede{margin-top:1.5rem}
.trust-labels{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:2rem;padding:0;list-style:none}
.trust-labels li{display:flex;align-items:center;gap:.4rem;font-size:.84rem;font-weight:600;color:var(--ink-soft)}
.trust-labels svg{width:16px;height:16px;color:var(--brass)}
.backing{margin-top:1.1rem;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brass)}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem;padding:0;list-style:none}
.chips li{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.65);font-size:.8rem;font-weight:600;color:var(--ink-soft)}
.chips svg{width:14px;height:14px;color:var(--brass)}

/* ============ MONEY AT RISK SNAPSHOT ============ */
.snapshot{background:var(--white);border-radius:28px;box-shadow:0 30px 90px rgba(51,34,26,.14);border:1px solid rgba(194,84,45,.1);overflow:hidden;max-width:36rem;width:100%;margin-inline:auto}
.snap-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 1.75rem;border-bottom:1px solid var(--line)}
.snap-head .eyebrow{margin-bottom:.4rem}
.snap-title{font-family:var(--display);font-size:1.45rem;font-weight:600;color:var(--espresso);line-height:1.2}
.snap-sub{font-size:.9rem;color:var(--ink-soft)}
.score-ring{--p:38;position:relative;flex-shrink:0;width:92px;height:92px;border-radius:50%;background:conic-gradient(var(--rust) calc(var(--p)*1%),var(--tint) 0);display:grid;place-items:center}
.score-ring::after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--white)}
.score-ring span{position:relative;z-index:1;text-align:center;line-height:1}
.score-ring b{display:block;font-size:1.6rem;font-weight:700;color:var(--espresso)}
.score-ring small{display:block;font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-top:.2rem}
.snap-body{padding:1.5rem 1.75rem 1.75rem}
.snap-total{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding:1.2rem 1.3rem;border-radius:18px;background:var(--rust);color:var(--white)}
.snap-total p{font-size:.8rem;font-weight:600;color:#FFFFFF}
.snap-total strong{display:block;font-size:2rem;font-weight:700;letter-spacing:-.02em;margin-top:.15rem}
.tag-sample{flex-shrink:0;border-radius:999px;background:rgba(255,255,255,.16);padding:.35rem .75rem;font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.score-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:.8rem 1rem;border-radius:14px;background:var(--ground);font-size:.86rem;color:var(--ink-soft)}
.score-meta b{color:var(--espresso)}
.status{display:inline-block;padding:.25rem .65rem;border-radius:999px;background:var(--ter-soft);color:#8A3C1C;font-size:.74rem;font-weight:700}
.bars{list-style:none;padding:0;margin-top:1.3rem;display:grid;gap:1rem}
.bars li{max-width:none}
.bar-label{display:flex;justify-content:space-between;font-size:.84rem;font-weight:600;color:var(--ink-soft);margin-bottom:.4rem}
.bar-track{height:8px;border-radius:999px;background:var(--tint);overflow:hidden}
.bar-fill{height:100%;border-radius:999px;background:var(--ter);transform-origin:left}
.bar-fill.f2{background:var(--brass)}.bar-fill.f3{background:var(--rust)}.bar-fill.f4{background:var(--espresso)}
.snap-foot{margin-top:1.3rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.78rem;line-height:1.55;color:var(--ink-soft)}
.snap-foot a{font-weight:700}

/* ============ ASK AVYA LAUNCHER ============ */
.ask-grid{display:grid;gap:2rem;align-items:center}
@media(min-width:1000px){ .ask-grid{grid-template-columns:.75fr 1.25fr;gap:3.5rem} }
.composer{border-radius:28px;background:var(--ground);border:1px solid var(--line);padding:1rem;box-shadow:var(--shadow)}
@media(min-width:640px){ .composer{padding:1.4rem} }
.composer-launch{display:flex;align-items:center;gap:1rem;min-height:84px;padding:1rem 1.1rem;border-radius:20px;background:var(--white);border:1.5px solid rgba(194,84,45,.2);text-decoration:none;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease}
.composer-launch:hover{border-color:var(--ter);box-shadow:0 14px 34px rgba(51,34,26,.1)}
.composer-launch:focus-visible{outline:3px solid var(--brass);outline-offset:4px}
.c-icon{flex-shrink:0;width:46px;height:46px;border-radius:50%;background:var(--rust);color:var(--white);display:grid;place-items:center}
.c-icon svg{width:22px;height:22px}
.c-text{flex:1;min-width:0}
.c-label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9A4A1F}
.c-prompt{display:block;margin-top:.2rem;font-size:1rem;font-weight:600;line-height:1.45;color:var(--espresso);min-height:2.9em}
@media(min-width:640px){ .c-prompt{font-size:1.08rem;min-height:1.6em} }
.c-go{flex-shrink:0;width:42px;height:42px;border-radius:50%;background:var(--ter);color:var(--ink);display:grid;place-items:center;transition:transform .2s ease}
.c-go svg{width:18px;height:18px}
.composer-launch:hover .c-go{transform:translateX(3px)}
.composer-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem;padding-inline:.25rem;font-size:.82rem;color:var(--ink-soft)}
.composer-meta span{display:inline-flex;align-items:center;gap:.4rem}
.composer-meta svg{width:15px;height:15px;color:var(--brass)}
.composer-own{font-weight:700;color:var(--rust)}
.prompt-list{list-style:none;padding:0;margin-top:1rem;display:flex;flex-wrap:wrap;gap:.5rem}
.prompt-list li{font-size:.8rem;padding:.4rem .8rem;border-radius:999px;background:var(--white);border:1px solid var(--line);color:var(--ink-soft)}

/* ============ SPLIT + CARD GRIDS ============ */
.split{display:grid;gap:2.5rem}
@media(min-width:1000px){ .split{grid-template-columns:.8fr 1.2fr;gap:4rem} .split-sticky>div:first-child{position:sticky;top:96px;align-self:start} }
.grid{display:grid;gap:.9rem}
@media(min-width:640px){ .grid-2,.grid-3,.grid-4{grid-template-columns:1fr 1fr} }
@media(min-width:1000px){ .grid-3{grid-template-columns:repeat(3,1fr)} .grid-4{grid-template-columns:repeat(4,1fr)} }
.card{position:relative;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:1.4rem 1.4rem 1.5rem}
.band-white .card{background:var(--ground)}
.card h3{margin-top:1rem}
.card p{margin-top:.5rem;font-size:.95rem;line-height:1.65;color:var(--ink-soft)}
.card .text-link{margin-top:1rem;font-size:.92rem}
a.card{display:block;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
a.card:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(51,34,26,.1);background:var(--white)}
a.card .card-arrow{margin-top:1rem;width:18px;height:18px;color:var(--ter);transition:transform .2s ease}
a.card:hover .card-arrow{transform:translateX(4px)}
.ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--tint);color:var(--espresso)}
.ic svg{width:21px;height:21px}
.ic.alt{background:var(--ter-soft)}
.ic.brass{background:#EFE3CB}
.card-tag{position:absolute;top:1.2rem;right:1.2rem;border-radius:999px;background:var(--tint);padding:.25rem .6rem;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}
.row-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.1rem;background:var(--white);border:1px solid var(--line);border-radius:18px}
.row-card span.lbl{font-weight:700;color:var(--espresso)}
.row-card small{display:block;font-weight:400;color:var(--ink-soft);font-size:.86rem;margin-top:.1rem}
.callout{margin-top:1.6rem;border-left:4px solid var(--ter);background:var(--white);border-radius:14px;padding:1rem 1.2rem;font-weight:600;color:var(--espresso);line-height:1.6}
.band-white .callout{background:var(--ground)}

/* ============ FEATURE PANELS ============ */
.panel{border-radius:28px;padding:2rem;display:flex;flex-direction:column;text-decoration:none;min-height:18rem;transition:transform .2s ease,box-shadow .2s ease}
.panel h3{font-size:1.7rem;margin-top:auto;padding-top:2rem}
.panel p{margin-top:.8rem;line-height:1.65;font-size:.95rem}
.panel svg.card-arrow{margin-top:1.4rem;width:20px;height:20px;transition:transform .2s ease}
a.panel:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(51,34,26,.18)}
a.panel:hover svg.card-arrow{transform:translateX(4px)}
.panel-rust{background:var(--rust);color:var(--white)}
.panel-rust h3,.panel-rust p,.panel-rust .eyebrow{color:var(--white)}
.panel-dark{background:var(--espresso);color:var(--white)}
.panel-dark h3{color:var(--white)}.panel-dark p{color:#E9D9CC}.panel-dark .eyebrow{color:#E0B98F}
.panel-light{background:var(--white);border:1px solid var(--line);color:var(--ink)}
.panel-light p{color:var(--ink-soft)}

/* ============ RESILIENCE (women-focused) ============ */
.res-grid{display:grid;gap:.9rem}
@media(min-width:640px){ .res-grid{grid-template-columns:1fr 1fr} }
@media(min-width:1100px){ .res-grid{grid-template-columns:repeat(3,1fr)} }
.res{border-radius:20px;padding:1.4rem;background:var(--white);border:1px solid rgba(194,84,45,.14)}
.res .num{font-size:.72rem;font-weight:700;letter-spacing:.14em;color:#9A4A1F}
.res h3{margin-top:.9rem}
.res p{margin-top:.45rem;font-size:.93rem;line-height:1.6;color:var(--ink-soft)}
.vision{margin-top:1.8rem;font-family:var(--display);font-size:clamp(1.25rem,2.4vw,1.6rem);line-height:1.4;color:var(--espresso);font-style:italic}
.vision-src{margin-top:.5rem;font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brass)}

/* ============ BULLET PANEL ============ */
.bullets{border-radius:28px;background:var(--espresso);padding:1.8rem;box-shadow:0 20px 60px rgba(51,34,26,.16);list-style:none}
@media(min-width:760px){ .bullets{padding:2.2rem} }
.bullets li{display:flex;gap:.8rem;align-items:flex-start;color:#F6E7DA;line-height:1.6;font-size:.98rem}
.bullets li+li{margin-top:1rem}
.bullets .tick{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:#E0B98F;color:var(--espresso);display:grid;place-items:center;margin-top:.1rem}
.bullets .tick svg{width:14px;height:14px;stroke-width:3}
.quote-panel{border-radius:28px;background:var(--tint);padding:2rem}
.band-tint .quote-panel{background:var(--white)}
.quote-panel p{font-size:1.18rem;line-height:1.65;font-weight:600;color:var(--espresso)}

/* ============ STEPS ============ */
.steps{display:grid;gap:.9rem;counter-reset:s;list-style:none;padding:0}
@media(min-width:760px){ .steps{grid-template-columns:repeat(3,1fr)} }
.steps li{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:1.4rem}
.steps li::before{counter-increment:s;content:"0" counter(s);display:block;font-size:.74rem;font-weight:700;letter-spacing:.14em;color:#9A4A1F}
.steps h3{margin-top:.7rem}
.steps p{margin-top:.4rem;font-size:.93rem;color:var(--ink-soft);line-height:1.6}

/* ============ NOTE BAND + CTA BAND ============ */
.note-band{background:var(--rust);color:var(--white);text-align:center;padding-block:3.5rem}
.note-band p{margin-inline:auto;max-width:52rem;font-family:var(--display);font-size:clamp(1.4rem,3.2vw,2.3rem);line-height:1.3}
.cta-band{background:var(--rust)}
.cta-inner{display:flex;flex-direction:column;align-items:flex-start;gap:1.6rem;padding-block:3.5rem}
@media(min-width:860px){ .cta-inner{flex-direction:row;align-items:center;justify-content:space-between} }
.cta-band .eyebrow{color:var(--white)}
.cta-band h2{font-size:clamp(1.7rem,3.4vw,2.7rem);color:var(--white);max-width:40rem}
.cta-band .btn-dark:hover{background:#1f140f}

/* ============ FAQ ============ */
.faq-list details{border-bottom:1px solid var(--line);padding:1.1rem 0}
.faq-list summary{font-weight:600;font-size:1.04rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1.2rem;color:var(--espresso)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";font-family:var(--display);font-size:1.5rem;color:var(--rust);flex-shrink:0;line-height:1}
.faq-list details[open] summary::after{content:"\2013"}
.faq-list details p{margin-top:.7rem;color:var(--ink-soft);line-height:1.7}
.faq-list summary:focus-visible{outline:3px solid var(--brass);outline-offset:4px;border-radius:6px}

.disclaimer{margin-top:1.4rem;font-size:.82rem;line-height:1.6;color:var(--ink-soft)}
.pill-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin-top:1.8rem}
.pill-list li{padding:.45rem .85rem;border-radius:999px;border:1px solid var(--line);background:var(--ground);font-size:.8rem;font-weight:600;color:var(--ink-soft)}
.band-white .pill-list li{background:var(--ground)}

/* ============ SCROLL REVEAL + HERO ENTRANCE (site pattern) ============ */
.rv{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.rv.on{opacity:1;transform:none}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes barGrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ringIn{from{--p:0}to{--p:38}}
@keyframes promptIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@property --p{syntax:'<number>';inherits:false;initial-value:38}
.fu{animation:fadeUp .8s ease both}
.fu1{animation-delay:.3s}.fu2{animation-delay:.5s}.fu3{animation-delay:.7s}.fu4{animation-delay:.85s}
.bar-fill{animation:barGrow 1.1s cubic-bezier(.22,1,.36,1) .9s both}
.score-ring{animation:ringIn 1.3s cubic-bezier(.22,1,.36,1) .8s both}
.c-prompt.swap{animation:promptIn .5s ease both}
/* fallback: if a renderer never advances CSS animations, show the final state */
.anim-done .fu,.anim-done .bar-fill,.anim-done .score-ring{animation:none}
@media (prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  .fu,.bar-fill,.score-ring,.c-prompt.swap{animation:none}
  .btn,a.card,a.panel,.c-go,.text-link svg,.card-arrow{transition:none}
  .btn:hover,a.card:hover,a.panel:hover{transform:none}
}

/* ============ SHARED SITE CHROME (matches the rest of beavya.in) ============ */
nav.site-nav{position:fixed;top:0;left:0;right:0;z-index:100;height:64px;background:rgba(13,27,42,.97);display:flex;align-items:center;border-bottom:1px solid rgba(238,232,213,.07)}
.nav-inner{max-width:1180px;margin:0 auto;padding:0 1.5rem;width:100%;display:flex;align-items:center;justify-content:space-between}
.nav-links{display:flex;align-items:center;gap:1.1rem}
.nav-links a{font-size:.73rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(238,232,213,.62);text-decoration:none;transition:color .2s;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--ivo)}
.nav-links .nav-cta{background:var(--rust);color:#FFFFFF;padding:.55rem 1.1rem;border-radius:2px;letter-spacing:.08em}
.nav-links .nav-cta:hover{background:#A84526;color:#FFFFFF}
.nav-dropdown{position:relative}
.nav-dropdown>button{font-family:var(--body);font-size:.73rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(238,232,213,.62);background:none;border:none;cursor:pointer;padding:.5rem 0;white-space:nowrap}
.nav-dropdown>button:hover,.nav-dropdown.active>button{color:var(--ivo)}
.nav-dropdown-menu{display:none;position:absolute;top:100%;left:-1rem;min-width:270px;background:var(--mid);border:1px solid rgba(238,232,213,.1);padding:.6rem 0;box-shadow:0 18px 40px rgba(0,0,0,.35)}
.nav-dropdown-r .nav-dropdown-menu{left:auto;right:-1rem}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{display:block}
.nav-dropdown-menu a{display:block;padding:.6rem 1.2rem;font-size:.72rem;white-space:normal}
.nav-dropdown-menu a:hover{background:rgba(238,232,213,.05)}
.nav-desc{display:block;text-transform:none;letter-spacing:0;font-size:.74rem;color:rgba(238,232,213,.62);margin-top:.15rem}
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:none;border:none}
.nav-hamburger span{display:block;width:24px;height:2px;background:var(--ivo)}
@media(max-width:1099px){ .nav-links{display:none} .nav-hamburger{display:flex} }
.mob-nav{display:none;position:fixed;inset:0;z-index:200;background:var(--mid);flex-direction:column;align-items:center;gap:1.3rem;overflow-y:auto;padding:4.5rem 1.5rem 3rem}
.mob-nav.open{display:flex}
.mob-nav a{font-family:var(--body);font-size:1.05rem;color:var(--ivo);text-decoration:none;letter-spacing:.06em;text-transform:uppercase;text-align:center}
.mob-nav .mob-cta{background:var(--rust);color:#FFFFFF;padding:.8rem 2rem;border-radius:2px;margin-top:.5rem}
.mob-close{position:absolute;top:1rem;right:1.2rem;background:none;border:none;color:var(--ivo);font-size:2rem;cursor:pointer;line-height:1}
.mob-group{width:100%;max-width:340px;text-align:center}
.mob-group>button{width:100%;font-family:var(--body);font-size:1.05rem;color:var(--ivo);background:none;border:none;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:.2rem 0}
.mob-group-items{display:none;flex-direction:column;gap:.9rem;margin-top:.9rem}
.mob-group.open .mob-group-items{display:flex}
.mob-group-items a{font-size:.9rem;color:rgba(238,232,213,.75);text-transform:none;letter-spacing:.02em}

footer.site-footer{background:var(--mid);padding:3.5rem 1.5rem 2.5rem;color:var(--ivo)}
.footer-top{max-width:1180px;margin:0 auto;display:grid;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(238,232,213,.1)}
@media(min-width:1000px){ .footer-top{grid-template-columns:1fr 2.4fr} }
.footer-about p{font-size:.9rem;line-height:1.65;color:rgba(238,232,213,.72);margin-top:1rem;max-width:22rem}
.footer-values{display:inline-block;margin-top:1.1rem;font-size:.72rem;font-weight:600;color:#E0B98F;letter-spacing:.04em}
.footer-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}
@media(min-width:760px){ .footer-cols{grid-template-columns:repeat(4,1fr)} }
.footer-col-title{display:block;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#E0895A;margin-bottom:1rem;font-weight:600}
.footer-col a{display:block;font-size:.84rem;color:rgba(238,232,213,.66);text-decoration:none;margin-bottom:.7rem}
.footer-col a:hover{color:var(--ivo)}
.footer-bottom{max-width:1180px;margin:0 auto;padding-top:1.6rem;text-align:center}
.footer-tagline{font-family:var(--display);font-style:italic;font-size:.95rem;color:#E0895A;margin-bottom:.6rem;display:block}
.footer-copy{font-size:.74rem;line-height:1.6;color:rgba(238,232,213,.58);margin:0 auto .35rem;max-width:52rem}

/* sticky mobile bar + WhatsApp (carried over from the previous homepage) */
.sticky-bar{position:fixed;bottom:0;left:0;right:0;z-index:90;display:flex;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--white);border-top:1px solid var(--line)}
.sticky-bar .btn{flex:1;min-height:46px;padding:.6rem .8rem;font-size:.95rem}
@media(min-width:760px){ .sticky-bar{display:none} }
@media(max-width:759px){ footer.site-footer{padding-bottom:7rem} }
.wa-btn{position:fixed;bottom:1.5rem;right:1.5rem;z-index:80;width:56px;height:56px;border-radius:50%;background:#25D366;display:none;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.2)}
@media(min-width:760px){ .wa-btn{display:flex} }

/* callback modal */
dialog{border:none;border-radius:20px;padding:0;max-width:430px;width:calc(100% - 40px);margin:auto;box-shadow:0 30px 80px rgba(36,26,39,.35)}
dialog::backdrop{background:rgba(36,26,39,.5)}
.modal-inner{padding:2.2rem 2rem;position:relative}
.modal-inner h3{font-size:1.4rem;margin-bottom:.4rem}
.modal-inner .promise{font-size:.92rem;color:var(--ink-soft);margin-bottom:1.3rem}
.field{margin-bottom:1rem}
.field label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.35rem}
.field input,.field select{width:100%;padding:.8rem .9rem;font-size:1rem;font-family:var(--body);border:1.5px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink)}
.field input:focus,.field select:focus{outline:none;border-color:var(--rust)}
.modal-inner .btn{width:100%;margin-top:.4rem}
.modal-close{position:absolute;top:.8rem;right:1rem;background:none;border:none;font-size:1.6rem;color:var(--ink-soft);cursor:pointer}
.form-err{font-size:.88rem;color:#A33B2E;margin-top:.8rem;display:none}
.micro{font-size:.82rem;color:var(--ink-soft);margin-top:.8rem}
