/* ===== Region Guide look — asymmetric, arches & circles, pills. Loaded after styles.css. ===== */
:root{
  --head:"Bricolage Grotesque",system-ui,sans-serif;
  --body-font:Figtree,system-ui,sans-serif;
  --paper:#fffdf9; --peach:#fdebe4; --peach-2:#f8cbbd; --char:#1c2530; --brick:#b5452f;
  --r-lg:32px; --r-md:24px;
}
body{font-family:var(--body-font);background:var(--paper);color:#23272e}
h1,h2,h3,h4,.h-xl,.h-lg,.h-md{font-family:var(--head)!important;letter-spacing:-1px!important;text-transform:none!important;font-weight:800}
.kicker{font-family:var(--body-font);letter-spacing:2px;color:var(--brick);font-weight:700}

/* buttons → pills */
.btn{border-radius:999px!important;text-transform:none!important;letter-spacing:0!important;font-family:var(--body-font)!important;font-weight:700!important}
.btn--primary{background:var(--brick)!important;border-color:var(--brick)!important;color:#fff!important}
.btn--navy{background:var(--char)!important;color:#fff!important}

/* header (light, dashed rule) */
.hdrg{background:var(--paper);border-bottom:1px dashed #e7d9cf;position:sticky;top:0;z-index:40}
.hdrg .wrap{display:flex;align-items:center;gap:22px;min-height:78px}
.hdrg .brand img{height:48px!important}
.hdrg nav{margin-left:auto}
.hdrg .mainnav{gap:4px}
.hdrg .mainnav>li>a{color:var(--char)!important;font-family:var(--body-font)!important;text-transform:none!important;letter-spacing:0!important;font-weight:600;border-radius:999px;padding:9px 14px}
.hdrg .mainnav>li>a:hover,.hdrg .mainnav>li.active>a{background:var(--peach)}
.hdrg .submenu{border-radius:20px!important;overflow:hidden;border:0;box-shadow:0 18px 40px rgba(28,37,48,.14)}
.hdrg__call{display:inline-flex;align-items:center;gap:8px;background:var(--char);color:#fff;border-radius:999px;padding:11px 20px;font-weight:700;white-space:nowrap}
.hdrg__call svg{width:16px;height:16px}
.hdrg .burger span{background:var(--char)!important}
@media(max-width:980px){.hdrg .wrap{min-height:66px;gap:12px}.hdrg .brand img{height:38px!important}.hdrg__call{margin-left:auto;padding:10px 14px;font-size:14px}}

/* inner-page hero: text + arch photo + stamp */
.phero{background:var(--paper)!important;color:var(--char)!important;padding:46px 0 36px!important}
.phero h1{color:var(--char)!important;font-size:clamp(36px,5.6vw,64px)!important;line-height:1.02}
.phero p{color:#4a4f57!important}
.phero .crumbs,.phero .crumbs a{color:var(--muted,#6b7079)!important}
.phero__grid{display:grid;grid-template-columns:1.25fr .75fr;gap:44px;align-items:center}
.phero__art{position:relative;aspect-ratio:4/5;border-radius:220px 220px 32px 32px;background:#2d3a49 center/cover no-repeat;max-width:380px;width:100%;margin-left:auto}
.stamp{position:absolute;left:-30px;bottom:30px;width:118px;height:118px;border-radius:50%;background:var(--brick);color:#fff;display:grid;place-items:center;text-align:center;font-family:var(--head);font-weight:800;line-height:1.05;font-size:20px;transform:rotate(-10deg);box-shadow:0 14px 30px rgba(181,69,47,.35);border:4px dashed rgba(255,255,255,.55)}
.stamp small{display:block;font-size:11px;font-weight:600;letter-spacing:1px;font-family:var(--body-font)}
.phero .btn--ghost-light{background:#fff!important;color:var(--char)!important;border:1.5px solid #e7d9cf!important}
@media(max-width:860px){.phero__grid{grid-template-columns:1fr}.phero__art{max-width:300px;margin:6px auto 0;aspect-ratio:1/1}.stamp{left:-8px;width:100px;height:100px;font-size:17px}}

/* hub hero (light) */
.hero--light{background:var(--paper)!important}
.hero--light .hero__h1 .navy{color:var(--char)!important}.hero--light .hero__h1 .or{color:var(--brick)!important}
.hero__callbox,.quote,.quote__head{border-radius:var(--r-lg)!important;overflow:hidden}

/* trust bar → pill row */
.trustbar{background:transparent!important;border:0!important;padding:10px 0 4px!important}
.trustbar .wrap{display:flex!important;flex-wrap:wrap;gap:10px;justify-content:center}
.trustbar__item{background:var(--peach)!important;border-radius:999px!important;padding:10px 18px!important;border:0!important;flex:none!important}
.trustbar__item span{color:#7a3222!important}.trustbar__item b{color:var(--char)!important}

/* sections: alternating peach blocks with big rounded corners */
.section.bg-alt{background:var(--peach)!important;border-radius:56px;margin:0 14px}
.section.bg-navy{background:var(--char)!important;border-radius:56px;margin:0 14px}
.sec-head h2{font-size:clamp(30px,4.2vw,50px)!important}

/* cards / offers / steps / services */
.offer,.offer-card,.offer-strip,.offer-menu__row,.fin__card,.svc__cell,.rev__card,.bundle-card,.callout,.sidebar-cta,.featlist li,.logos__chip,.stats__cell{border-radius:var(--r-md)!important}
.offer,.svc__cell{border:0!important;box-shadow:0 14px 34px rgba(28,37,48,.08)!important;background:#fff!important}
.offer__price{font-family:var(--head)!important;color:var(--brick)!important}
.offer__tag,.offer-menu__tag{border-radius:999px!important}
.step__n{border-radius:50%!important;background:#fff!important;color:var(--brick)!important;box-shadow:0 8px 18px rgba(181,69,47,.18);font-family:var(--head)!important}
.svc__ic{border-radius:50%!important;background:var(--peach)!important;color:var(--brick)!important}
.callout{background:var(--peach)!important;border:0!important}
.callout h4{color:var(--char)!important}

/* FAQ rows */
.faq__item{border-radius:22px!important;border:0!important;background:#fff!important;box-shadow:0 2px 0 rgba(28,37,48,.05);margin-bottom:10px!important;overflow:hidden}
.section.bg-alt .faq__item{background:#fff!important}

/* prose tables (price tables) */
.prose table{border-radius:var(--r-md);overflow:hidden;box-shadow:0 0 0 1px #eadfd6}
.prose h2{font-size:clamp(26px,3vw,36px)!important}

/* area links as a dotted directory */
.area-cols{columns:3;column-gap:34px;display:block!important}
.area-cols a{display:flex!important;align-items:center;gap:8px;padding:9px 0;border-bottom:1px dashed #e7d9cf;break-inside:avoid;font-weight:600;border-radius:0!important;background:none!important}
@media(max-width:760px){.area-cols{columns:1}}

/* CTA band + footer */
.ctaband{background:var(--char)!important;border-radius:56px;margin:40px 14px 0!important}
.ctaband h2{color:#fff!important}
.foot{border-radius:56px 56px 0 0;margin-top:40px}

/* mobile call bar → floating pill */
.mobilebar{left:12px!important;right:12px!important;bottom:12px!important;border-radius:999px!important;overflow:hidden;box-shadow:0 14px 34px rgba(28,37,48,.3)}

/* form + modal */
.field input,.field select,.field textarea{border-radius:16px!important}
.msform,.modal__card{border-radius:var(--r-lg)!important}

/* ---------- home: Region Guide composition ---------- */
.gh-hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:center;padding-top:56px;padding-bottom:56px}
.gh-hero h1{font-size:clamp(44px,7vw,86px);line-height:1;margin:14px 0 0}
.gh-hero h1 u{text-decoration:none;background:linear-gradient(transparent 62%,var(--peach-2) 62%)}
.gh-hero p{font-size:18.5px;color:#4a4f57;max-width:48ch;margin:22px 0 28px}
.gh-hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.gh-hero .arrow{width:26px;height:26px;border-radius:50%;background:#fff;color:var(--brick);display:inline-grid;place-items:center;font-size:14px;margin-left:4px}
.gh-art{position:relative}
.gh-art .arch{aspect-ratio:4/5;border-radius:220px 220px 32px 32px;background:#2d3a49 center/cover no-repeat}
@media(max-width:900px){.gh-hero .wrap{grid-template-columns:1fr}.gh-art .arch{max-width:340px;margin:0 auto}.gh-art .stamp{left:-6px}}
.gh-ribbon{background:var(--char);color:#fff;border-radius:999px;margin:0 16px;padding:14px 26px;display:flex;justify-content:center;gap:34px;flex-wrap:wrap;font-weight:600}
.gh-ribbon b{color:#ff9478}
@media(max-width:760px){.gh-ribbon{border-radius:28px;flex-direction:column;align-items:center;gap:8px;padding:18px}}
.gh-zig{padding:80px 0 10px}
.gh-row{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;margin-bottom:76px}
.gh-row.rev .gh-media{order:2}
.gh-media{aspect-ratio:1;border-radius:50%;background:var(--peach) center/cover no-repeat;max-width:420px;width:100%;margin:0 auto}
.gh-row.rev .gh-media{border-radius:200px 200px 28px 28px;aspect-ratio:4/5}
.gh-row h2{font-size:clamp(30px,4.2vw,50px)}.gh-row p{color:#4a4f57;font-size:17px}
.gh-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.gh-chips a,.gh-chips span{background:var(--peach);color:#7a3222;border-radius:999px;padding:8px 14px;font-weight:600;font-size:14px;text-decoration:none}
@media(max-width:900px){.gh-row{grid-template-columns:1fr;gap:24px}.gh-row.rev .gh-media{order:0}}
.gh-offers{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.gh-offer{background:#fff;border-radius:28px;padding:28px;box-shadow:0 14px 34px rgba(28,37,48,.08);display:flex;flex-direction:column;gap:8px}
.gh-offer .p{font-family:var(--head);font-weight:800;font-size:46px;color:var(--brick);line-height:1}
.gh-offer h3{font-size:22px;letter-spacing:-.4px}.gh-offer p{color:#555;margin:0 0 10px}
.gh-offer .btn{margin-top:auto;align-self:flex-start}
@media(max-width:900px){.gh-offers{grid-template-columns:1fr}}
.gh-time{background:var(--peach);border-radius:56px 56px 0 0;padding:76px 0;margin-top:30px}
.gh-tl{max-width:760px;margin:26px auto 0;position:relative}
.gh-tl:before{content:"";position:absolute;left:25px;top:10px;bottom:10px;border-left:3px dotted #e0a894}
.gh-ti{position:relative;padding:0 0 28px 76px}
.gh-ti .d{position:absolute;left:0;top:0;width:52px;height:52px;border-radius:50%;background:#fff;color:var(--brick);display:grid;place-items:center;font-family:var(--head);font-weight:800;font-size:20px;box-shadow:0 8px 18px rgba(181,69,47,.18)}
.gh-ti h3{font-size:22px;letter-spacing:-.4px;margin:0}.gh-ti p{margin:4px 0 0;color:#5e4d47}
.gh-dir{padding:76px 0 30px}
.gh-cols{columns:3;column-gap:40px;margin-top:22px}
.gh-cols a{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed #e7d9cf;font-weight:600;break-inside:avoid;text-decoration:none;color:var(--char)}
.gh-cols a span{color:#6b7079;font-weight:500;font-size:14px}
@media(max-width:760px){.gh-cols{columns:1}}
.gh-faq{max-width:820px;margin:0 auto;padding:40px 0}
.kicker:before,.kicker::before,.kicker:after,.kicker::after{display:none!important;content:none!important}
.kicker{padding-left:0!important}
.mobilebar a,.mobilebar button{font-family:var(--body-font)!important;text-transform:none!important;letter-spacing:0!important;font-weight:700!important}
.sec-head,.sec-head h2,.sec-head .h-lg,.sec-head.center{border-left:0!important;padding-left:0!important}
.sec-head h2::before,.sec-head::before,.sec-head h2:before,.sec-head:before{display:none!important;content:none!important}
@media(max-width:560px){.hdrg__call [data-phone]{display:none}.hdrg__call{padding:0;width:44px;height:44px;justify-content:center}.hdrg__call svg{width:18px;height:18px}.hdrg .burger{flex:none}}

/* Rule 14: nothing hidden until JavaScript runs */
.reveal{opacity:1!important;transform:none!important}
