:root{--blue:var(--fh-royal);--mint:var(--fh-seafoam);--teal:var(--fh-seafoam);--coral:var(--fh-coral);--fh-blue:var(--fh-royal);--navy:#080b12;--ice:#f3f5ff;--line:#d9deeb;--blue-on-dark:var(--fh-royal-on-dark)}
body{background:#fff;text-rendering:optimizeLegibility}
.fh-wordmark .punct{color:var(--blue)}
.site-header,.guide-header{background:rgba(255,255,255,.98);box-shadow:none;border-bottom:1px solid var(--line)}
.site-header .brand,.guide-logo{background:transparent;border:0;box-shadow:none;padding-left:0}
.site-header .brand:before,.guide-logo:before{display:none}
.site-header nav a{letter-spacing:.04em}
.button{background:var(--blue);color:#fff;border-radius:3px;box-shadow:none;letter-spacing:.075em}
.button:hover{background:var(--fh-royal-hover);box-shadow:none}
.light-button{background:#fff;color:var(--ink)}
.light-button:hover{background:#e9edff;color:var(--ink)}
.hero h1 em,.manifesto em,.guide-hero h1 em,.story-hero h1 em,.relocation-hero h1 em{color:var(--blue-on-dark)}
.hero{min-height:min(850px,calc(100svh - 92px));padding-bottom:6vw}
.hero h1{font-size:clamp(64px,8.8vw,126px);line-height:.93}
.hero-shade{background:linear-gradient(90deg,rgba(8,11,18,.88),rgba(8,11,18,.56) 49%,rgba(8,11,18,.12)),linear-gradient(0deg,rgba(8,11,18,.3),transparent)}
.hero-copy{max-width:820px}
.hero-stamp{border-color:var(--coral);transform:none}
.hero-stamp strong{color:#fff}
.truth-strip{background:var(--ink);border-bottom:3px solid var(--coral);padding:17px}
.section{padding-block:clamp(64px,7vw,100px)}
.area-grid{gap:20px;background:#fff;padding-top:0}
.area-card{box-shadow:none;border-radius:4px;min-height:570px;padding:34px;transition:transform .2s}
.area-card.featured{background:var(--ink);border-top:4px solid var(--coral);box-shadow:none;transform:none}
.area-card.featured em,.area-card.featured .area-label,.light{color:var(--blue-on-dark)}
.area-card .card-action{font-size:12px;text-decoration:none;align-items:center;min-height:48px}
.area-card:hover{transform:translateY(-4px)}
.manifesto,.story-quote,.guide-hero{background:var(--ink)}
.truth-list b{color:var(--coral)}
.cta{background:var(--blue)}
.cta h2 em{color:#fff}
.cta:before{border-color:rgba(255,255,255,.2)}
.quiz,.request-section{background:#f3f5ff}
.intro,.listing-entry,.about,.guide-main,.story-chapters,.story-opening,.story-facts,.story-promise{background:#fff}
.about-monogram{background:#fff;box-shadow:8px 8px 0 var(--blue),12px 12px 0 var(--coral);border-color:var(--ink)}
.about-monogram:before{border-color:var(--blue)}
.about-monogram:after{content:''}
.fh-footer-links{grid-column:1/-1;border-top:1px solid #343945;padding-top:22px;margin-top:0}
.fh-footer-links a{text-decoration:none;text-underline-offset:5px}
.fh-footer-links a:hover{text-decoration:underline}
.fh-skip{position:fixed;top:8px;left:8px;z-index:2000;transform:translateY(-160%);padding:12px 18px;background:var(--ink);color:white}
.fh-skip:focus{transform:none}
.fh-mobile-menu{display:none}
:focus-visible{outline:3px solid var(--coral);outline-offset:4px}
.fit-form input:focus-visible,.fit-form select:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
section[id],h2[id],#main-content{scroll-margin-top:115px}
.fh-route-strip{padding:26px 6vw;display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#fff;border-bottom:1px solid var(--line)}
.fh-route-strip a{padding:14px 24px;text-decoration:none;border-left:2px solid var(--coral)}
.fh-route-strip strong{display:block;font-size:16px;color:var(--ink)}
.fh-route-strip span{display:block;font-size:13px;color:#4d5667;margin-top:5px}
.fh-editorial{padding:72px 6vw;background:#f3f5ff;display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center}
.fh-editorial h2{font:600 clamp(40px,5vw,65px)/1.02 var(--serif);margin:15px 0 20px;letter-spacing:-.025em}
.fh-editorial p{font-size:17px;max-width:640px;line-height:1.65}
.fh-editorial .fh-question{background:var(--ink);color:#fff;padding:32px;border-top:4px solid var(--coral)}
.fh-question strong{display:block;font:600 36px/1.08 var(--serif);margin-bottom:16px}
.fh-question ul{padding-left:20px;margin:0}
.fh-question li{padding:5px 0}
.fh-reading{padding:74px 6vw;background:#fff}
.fh-reading h2{font:600 clamp(38px,5vw,60px)/1 var(--serif);margin:16px 0 28px}
.fh-reading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.fh-reading-grid a{display:block;text-decoration:none;border-top:3px solid var(--blue);padding:22px 0}
.fh-reading-grid h3{font-size:29px;line-height:1.1;margin:0 0 12px}
.fh-reading-grid p{font-size:15px;line-height:1.65;margin:0 0 14px;color:#4d5667}
.fh-reading-grid span{font-size:13px;font-weight:700;color:var(--blue)}
.fh-byline{font-size:13px!important;color:#526074;margin:0 0 26px}
.fh-byline a{color:var(--blue)}
.cost-tool{padding:64px 6vw;background:#f3f5ff}
.cost-tool h2{font:600 clamp(38px,5vw,58px)/1.05 var(--serif);margin:0 0 16px}
.cost-intro{max-width:780px;margin-bottom:28px}
.cost-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cost-home{border:1px solid var(--line);padding:26px;background:#fff;border-top:4px solid var(--blue);min-width:0}
.cost-home:nth-child(2){border-top-color:var(--coral)}
.cost-home legend{font:600 28px/1.1 var(--serif);padding:0 8px}
.cost-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cost-fields label{font-size:13px;font-weight:700;display:block}
.cost-fields label:first-child{grid-column:1/-1}
.cost-fields input{display:block;width:100%;min-width:0;margin-top:7px;border:1px solid #8d98ad;background:#fff;padding:12px;color:var(--ink);font:500 16px/1.3 var(--sans);border-radius:3px}
.cost-total{padding:24px 0 0;border-top:1px solid var(--line);margin-top:26px}
.cost-total output{display:block;font-size:34px;line-height:1.2;font-weight:700;color:var(--blue);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cost-total p{font-size:13px;margin:6px 0}
.cost-home:nth-child(2) .cost-total output{color:var(--ink)}
.cost-status{padding:20px 0;font-size:16px;max-width:900px}
.cost-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}
.cost-note{font-size:13px;line-height:1.6;max-width:850px}
@media(min-width:1051px){.site-header>nav{gap:18px}.site-header>nav a{font-size:11px}}
@media(max-width:1100px) and (min-width:901px){.site-header{padding-inline:3vw}.site-header .button-small{display:none}}
@media(max-width:1050px){
 .site-header>nav,.guide-header>nav{display:none}
 .site-header,.guide-header{height:82px;padding:12px 6vw;position:sticky;top:0;z-index:100;gap:18px}
 .fh-mobile-menu{display:block;margin-left:auto}
 .fh-mobile-menu summary{list-style:none;display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:3px;font:700 13px/1 var(--sans);color:var(--ink);background:#fff;cursor:pointer}
 .fh-mobile-menu summary::-webkit-details-marker{display:none}
 .fh-mobile-menu summary:after{content:' +';margin-left:8px;color:var(--blue)}
 .fh-mobile-menu[open] summary:after{content:' −'}
 .fh-mobile-menu nav{display:grid!important;position:absolute;top:100%;left:0;right:0;padding:16px 6vw 24px;background:#fff;border-bottom:3px solid var(--coral);box-shadow:0 15px 25px rgba(8,11,18,.1);gap:0!important;max-height:75svh;overflow-y:auto}
 .fh-mobile-menu nav a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font:600 14px/1.4 var(--sans)!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none}
 .hero{min-height:690px;padding-bottom:65px}.hero h1{font-size:clamp(58px,10vw,86px)}
 .fh-route-strip{grid-template-columns:1fr}.fh-route-strip a{padding:13px 18px;margin:8px 0}
 .fh-editorial{grid-template-columns:1fr;padding-block:55px}
 .fh-reading-grid{grid-template-columns:1fr}.fh-reading{padding-block:55px}
 .area-card{min-height:0}.cost-grid{grid-template-columns:1fr}
}
@media(max-width:560px){.site-header,.guide-header{height:76px}.hero{min-height:650px}.hero h1{font-size:clamp(52px,15vw,76px)}.hero .kicker{font-size:11px;letter-spacing:.08em}.hero-eyebrow{font-size:10px;top:25px}.hero h1 em{color:var(--fh-royal-on-dark)}.hero-stamp{display:none}.cost-fields{grid-template-columns:1fr}.cost-home{padding:20px}.cost-tool{padding-block:45px}.cost-actions .button{width:100%}.fh-question strong{font-size:30px}}
@media(prefers-reduced-motion:reduce){.area-card{transition:none}.area-card:hover{transform:none}}
