:root{--navy:#161A5C;--navy2:#0D0F42;--char:#2A2C33;--bg:#f5f6f9;--line:#dde0e8;--acc:#2FAF5E;--acc-ink:#161A5C;--acc-soft:rgba(47,175,94,.12);--r:14px;--sh:0 10px 30px rgba(22,26,92,.10);--sh2:0 22px 50px rgba(22,26,92,.18);--hd:"Outfit",system-ui,sans-serif;--bd:"Inter",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:var(--bd);color:var(--char);background:#fff;line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,h4{font-family:var(--hd);color:var(--navy);line-height:1.1;margin:0 0 .5em;letter-spacing:-.01em}
.wrap{width:min(1200px,92vw);margin:0 auto}.sr{position:absolute;left:-9999px}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px}
/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:4px solid var(--acc);transition:box-shadow .2s}
.hdr.scrolled{box-shadow:0 6px 24px rgba(13,15,66,.12)}.hdr .wrap{display:flex;align-items:center;gap:24px;padding:10px 0}
.logo{display:inline-flex;background:#fff;border-radius:8px;padding:4px 8px}.logo img{height:64px;width:auto}


.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--hd);font-weight:700;text-decoration:none;border-radius:999px;padding:14px 26px;font-size:17px;transition:transform .18s,box-shadow .18s,background .18s;border:2px solid transparent;white-space:nowrap}
.btn svg{width:20px;height:20px;flex:none}.btn:hover{transform:translateY(-2px)}
.btn-acc{background:var(--acc);color:var(--acc-ink);box-shadow:0 8px 22px var(--acc-soft)}.btn-acc:hover{box-shadow:0 14px 30px rgba(0,0,0,.25)}
.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff}.btn-ghost:hover{background:rgba(255,255,255,.12)}
.btn-navy{background:var(--navy);color:#fff}


/* hero */
.hero{position:relative;color:#fff;min-height:clamp(560px,82vh,780px);display:flex;align-items:center;overflow:hidden;background:var(--navy2)}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,center);transform:scale(1.04);animation:kb 18s ease-out forwards}
@keyframes kb{to{transform:scale(1)}}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(13,15,66,.94) 0%,rgba(22,26,92,.72) 45%,rgba(22,26,92,.18) 100%),linear-gradient(0deg,rgba(13,15,66,.6),transparent 40%);z-index:1}
.hero .wrap{position:relative;z-index:2;padding:80px 0 90px}.hero .inner{max-width:680px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc-txt2,var(--acc));margin-bottom:18px}
.hero .eyebrow{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:7px 14px;border-radius:999px;color:#fff}.hero .eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 4px var(--acc-soft)}
.hero h1{color:#fff;font-size:clamp(38px,5.6vw,68px);font-weight:800;margin-bottom:18px}.hero h1 em{font-style:normal;color:var(--acc-txt,var(--acc))}
.hero p.sub{font-size:clamp(17px,1.6vw,20px);color:#e3e5f0;max-width:580px;margin:0 0 30px}
.hero .ctas{display:flex;gap:14px;flex-wrap:wrap}.hero .ctas .btn-acc{font-size:19px;padding:17px 30px}
.rating{display:inline-flex;align-items:center;gap:10px;margin-top:28px;color:#fff;text-decoration:none;font-size:15px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:9px 16px;border-radius:12px}
.rating:hover{background:rgba(255,255,255,.14)}.stars{color:#FFCC1A;letter-spacing:2px;font-size:17px}.rating small{opacity:.7}
/* trust strip */
.trust{background:var(--navy);color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.trust .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.trust .t{display:flex;gap:14px;align-items:center;padding:22px 20px;border-left:1px solid rgba(255,255,255,.1)}.trust .t:first-child{border-left:0}
.trust svg{width:34px;height:34px;flex:none;color:var(--acc-txt,var(--acc))}.trust b{display:block;font-family:var(--hd);font-size:16.5px}.trust span{font-size:13.5px;color:#c5c8dc}
.licrow{background:var(--navy2);color:#c5c8dc;font-size:13.5px}.licrow .wrap{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;justify-content:center;padding:11px 0}
.licrow .lic{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:3px 12px;color:#fff;font-weight:600}.licrow .k{opacity:.8;margin-right:4px}
/* sections */
section{padding:96px 0}.alt{background:var(--bg)}
.head{max-width:720px;margin-bottom:48px}.head.c{text-align:center;margin-left:auto;margin-right:auto}
.head h2{font-size:clamp(30px,3.6vw,44px);font-weight:800}.head p{font-size:18px;color:#555a6a;margin:0}
.grid{display:grid;gap:24px}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g2{grid-template-columns:1fr 1fr}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:30px;transition:transform .25s,box-shadow .25s,border-color .25s;position:relative;overflow:hidden}
.card:hover{transform:translateY(-6px);box-shadow:var(--sh2);border-color:transparent}
.card::after{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:var(--acc);transform:scaleX(0);transform-origin:left;transition:transform .3s}.card:hover::after{transform:scaleX(1)}
.ico{width:58px;height:58px;border-radius:14px;background:var(--navy);color:var(--acc-txt,var(--acc));display:grid;place-items:center;margin-bottom:20px}.ico svg{width:30px;height:30px}
.card h3{font-size:21px}.card p{margin:0;color:#555a6a;font-size:16px}
/* steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative}
.step{position:relative;padding:28px 24px;background:#fff;border-radius:var(--r);border:1px solid var(--line)}
.step .n{width:52px;height:52px;border-radius:50%;background:var(--acc);color:var(--acc-ink);font-family:var(--hd);font-weight:800;font-size:22px;display:grid;place-items:center;margin-bottom:18px;box-shadow:0 0 0 7px var(--acc-soft)}
.step h3{font-size:19px}.step p{margin:0;font-size:15.5px;color:#555a6a}
/* split */
.split{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.split .ph{border-radius:20px;overflow:hidden;box-shadow:var(--sh2);aspect-ratio:4/3}.split .ph img{width:100%;height:100%;object-fit:cover}
.checks{list-style:none;padding:0;margin:22px 0 28px;display:grid;gap:12px}.checks li{display:flex;gap:12px;align-items:flex-start}
.checks svg{width:24px;height:24px;flex:none;color:var(--acc-txt,var(--acc));background:var(--navy);border-radius:50%;padding:4px;margin-top:1px}
/* gallery */
.gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:14px}
.gal figure{margin:0;border-radius:14px;overflow:hidden;position:relative;background:#e9ebf2}.gal figure.big{grid-column:span 2;grid-row:span 2}.gal figure.w2{grid-column:span 2}.gal figure.w3{grid-column:span 3}.gal figure.w4{grid-column:span 4}.gal.two{grid-template-columns:1fr 1fr;grid-auto-rows:420px}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gal figure:hover img{transform:scale(1.05)}
.gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 10px;font-size:13.5px;color:#fff;background:linear-gradient(transparent,rgba(13,15,66,.85));font-weight:600}
/* area */
.area{background:var(--navy);color:#e3e5f0;position:relative;overflow:hidden}
.area::before{content:"";position:absolute;right:-180px;top:-180px;width:520px;height:520px;border-radius:50%;background:radial-gradient(var(--acc-soft),transparent 70%)}
.area h2,.area h3{color:#fff}.area .head p{color:#c5c8dc}
.county{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:var(--r);padding:28px}
.county h3{display:flex;align-items:center;gap:10px;font-size:22px}.county h3 svg{width:22px;height:22px;color:var(--acc-txt,var(--acc))}
.county ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.county li{background:rgba(255,255,255,.08);padding:5px 12px;border-radius:999px;font-size:14.5px}
.area .note{margin-top:28px;color:#c5c8dc}
/* bio */
.bio{display:grid;grid-template-columns:320px 1fr;gap:56px;align-items:center}
.mono{aspect-ratio:1;border-radius:24px;background:linear-gradient(145deg,var(--navy) 0%,var(--navy2) 100%);display:grid;place-items:center;position:relative;box-shadow:var(--sh2);overflow:hidden}
.mono::after{content:"";position:absolute;inset:auto -30% -45% -30%;height:70%;background:radial-gradient(var(--acc-soft),transparent 65%)}
.mono span{font-family:var(--hd);font-weight:800;font-size:110px;color:#fff;letter-spacing:-.04em;position:relative;z-index:1}.mono span i{font-style:normal;color:var(--acc-txt,var(--acc))}
.mono small{position:absolute;bottom:22px;left:0;right:0;text-align:center;color:#c5c8dc;font-size:13px;letter-spacing:.14em;text-transform:uppercase;z-index:1}
.facts{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 26px}.facts span{background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:14.5px;font-weight:600;color:var(--navy)}
.lnk{font-family:var(--hd);font-weight:700;color:var(--navy);text-decoration:none;border-bottom:2px solid var(--acc);padding-bottom:2px}.lnk:hover{color:var(--char)}
/* faq */
.faq{max-width:860px;margin:0 auto}.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;transition:box-shadow .2s}
.faq details[open]{box-shadow:var(--sh)}.faq summary{cursor:pointer;list-style:none;padding:20px 24px;font-family:var(--hd);font-weight:700;font-size:18.5px;color:var(--navy);display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";font-size:26px;line-height:1;color:var(--navy);background:var(--acc-soft);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}.faq details p{margin:0;padding:0 24px 22px;color:#4a4e5c}
/* cta band */
.cta{position:relative;color:#fff;overflow:hidden;padding:90px 0;background:var(--navy2)}
.cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28}
.cta::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,15,66,.96),rgba(22,26,92,.75));z-index:1}
.cta .wrap{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap}
.cta h2{color:#fff;font-size:clamp(30px,4vw,48px);font-weight:800;margin:0 0 10px}.cta p{margin:0;color:#d8dbea;font-size:18px;max-width:600px}
.cta .num{font-family:var(--hd);font-size:clamp(26px,3vw,36px);font-weight:800;color:#fff;text-decoration:none;display:block;margin-top:12px;text-align:center}
/* footer */
.ftr{background:var(--navy2);color:#c5c8dc;font-size:15px;padding-top:70px}
.ftr .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:50px}
.ftr h4{color:#fff;font-size:16px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}
.ftr ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.ftr a{color:#c5c8dc;text-decoration:none}.ftr a:hover{color:#fff}
.ftr .logo img{height:64px}.ftr .tel{font-family:var(--hd);font-size:24px;color:#fff;font-weight:800;display:inline-block;margin:16px 0 6px}
.ftr .lics li{display:flex;flex-direction:column;border-left:3px solid var(--acc);padding-left:10px}.ftr .lics b{color:#fff;font-weight:600}.ftr .lics span{font-size:13px}
.ftr .fam2 a[aria-current]{color:#fff;font-weight:600}
.ftr .bot{border-top:1px solid rgba(255,255,255,.1);padding:20px 0 26px;font-size:13.5px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
/* mobile call bar */
.mbar{display:none}
/* page hero (inner pages) */
.phero{background:var(--navy);color:#fff;padding:70px 0 60px;position:relative;overflow:hidden}.phero h1{color:#fff;font-size:clamp(34px,4.6vw,56px);font-weight:800}.phero p{color:#d8dbea;font-size:19px;max-width:700px;margin:0}
.glance{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:10px 0 0}.glance div{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;border-top:4px solid var(--acc)}
.glance b{display:block;font-family:var(--hd);font-size:24px;color:var(--navy);line-height:1.15;margin-bottom:6px}.glance span{font-size:14.5px;color:#555a6a}
.prose{max-width:780px}.prose p{margin:0 0 1.1em}
/* reveal */
.rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.rv.in{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}.d5{transition-delay:.4s}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.hero>img{animation:none}*{scroll-behavior:auto}}
@media (max-width:1080px){.g4,.steps,.glance{grid-template-columns:1fr 1fr}.trust .wrap{grid-template-columns:1fr 1fr}.trust .t:nth-child(3){border-left:0}.trust .t{border-top:1px solid rgba(255,255,255,.08)}.ftr .cols{grid-template-columns:1fr 1fr}.split{gap:40px}}
@media (max-width:760px){
 body{font-size:16px;padding-bottom:74px}section{padding:64px 0}.head{margin-bottom:32px}
 
 .logo img{height:48px}.hdr .wrap{gap:12px;padding:8px 0}.hdr .btn .t{display:none}
 .hero{min-height:0}.hero .wrap{padding:56px 0 60px}.hero::before{background:linear-gradient(180deg,rgba(13,15,66,.62) 0%,rgba(13,15,66,.86) 55%,rgba(13,15,66,.95) 100%)}
 .hero .ctas .btn{width:100%;justify-content:center}
 .g3,.g2,.g4,.steps,.split,.bio,.glance{grid-template-columns:1fr}.bio{gap:28px}.mono{max-width:220px}.mono span{font-size:80px}
 .trust .wrap{grid-template-columns:1fr 1fr}.trust .t{padding:16px 10px;gap:10px;flex-direction:column;align-items:flex-start;border-left:0}.trust svg{width:28px;height:28px}.trust b{font-size:15px}.trust span{font-size:12.5px}
 .gal{grid-template-columns:1fr 1fr;grid-auto-rows:170px}.gal figure.big,.gal figure.w3,.gal figure.w4{grid-column:span 2}.gal figure.w2{grid-column:span 2}.gal.two{grid-auto-rows:260px}
 .card{padding:24px}.cta{padding:64px 0}.cta .wrap{flex-direction:column;align-items:stretch;text-align:left}.cta .btn{justify-content:center}
 .ftr .cols{grid-template-columns:1fr;gap:30px}
 .mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--navy);box-shadow:0 -6px 20px rgba(0,0,0,.25)}
 .mbar a{flex:1;justify-content:center;padding:14px 10px;font-size:17px}
}
/* estimate */
.btn-line{border-color:var(--navy);color:var(--navy);padding:11px 18px;font-size:15.5px}.btn-line:hover{background:var(--navy);color:#fff}
.hdr .est-btn{margin-left:0}
.btn-wl{background:#fff;color:var(--navy)}
.ctabtns{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.estsec{background:linear-gradient(180deg,#fff,var(--bg))}.estgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
.formcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:var(--sh2);border-top:5px solid var(--acc)}
.estform{display:grid;gap:16px}.estform label{display:grid;gap:6px;font-weight:600;font-size:14.5px;color:var(--navy)}
.estform input:not([type=radio]):not([type=file]),.estform select,.estform textarea{font:inherit;font-weight:400;color:var(--char);border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;background:#fbfbfd;width:100%;transition:border-color .15s,box-shadow .15s}
.estform input:focus,.estform select:focus,.estform textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 4px var(--acc-soft);background:#fff}
.estform input[type=file]{font:inherit;font-weight:400;font-size:14.5px}.estform small{font-weight:400;color:#6a6e7d;font-size:13px}
.estform label.bad input,.estform label.bad select,.estform label.bad textarea{border-color:#C23B32;background:#fff6f5}
.fg2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fg3{display:grid;grid-template-columns:2fr .8fr 1fr;gap:16px}
.estform fieldset{border:0;padding:0;margin:0}.estform legend{font-weight:600;font-size:14.5px;color:var(--navy);margin-bottom:8px}
.radios{display:flex;gap:10px;flex-wrap:wrap}.radios label{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--char);border:1.5px solid var(--line);border-radius:999px;padding:9px 16px;cursor:pointer}
.radios label:has(input:checked){border-color:var(--navy);background:var(--acc-soft)}.radios input{accent-color:var(--navy)}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;opacity:0}
.ferr{margin:0;color:#B0302A;font-weight:600}.fnote{margin:0;font-size:14px;color:#6a6e7d}.estform button{justify-content:center;font-size:18px;padding:16px}

@media (max-width:1080px){.estgrid{grid-template-columns:1fr;gap:36px}}
@media (max-width:760px){.fg2,.fg3{grid-template-columns:1fr}.formcard{padding:22px}.mbar a{font-size:16px}}

/* ===== v3: top bar, nav, dropdowns, mobile menu ===== */
.topbar{background:var(--char);color:#c9ccd6;font-size:13px}.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:10px 24px;padding:7px 0;flex-wrap:wrap}
.fam{display:flex;gap:4px 16px;flex-wrap:wrap;align-items:center}.fam a{color:#c9ccd6;text-decoration:none;white-space:nowrap}.fam a:hover{color:#fff}.fam a[aria-current]{color:#fff;font-weight:600;border-bottom:2px solid var(--acc)}.fam .lbl{opacity:.75}
.gbadge{display:inline-flex;align-items:center;gap:6px;color:#fff;text-decoration:none;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:3px 12px;white-space:nowrap}
.gbadge:hover{background:rgba(255,255,255,.16)}.gstar{color:#FFCC1A}.gbadge .n{opacity:.8}.gbadge.dark{color:var(--navy);background:var(--bg);border-color:var(--line);justify-content:center;padding:10px}
.hdr .wrap{gap:18px}.mainnav{margin-left:auto}.mainnav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;align-items:center}
.mainnav li{position:relative;display:flex;align-items:center}.mainnav .top{display:block;padding:10px 9px;font-weight:600;color:var(--navy);text-decoration:none;font-size:15px;border-radius:8px;white-space:nowrap}
.mainnav .top:hover,.mainnav .top[aria-current]{color:var(--navy);background:var(--bg)}.mainnav .top[aria-current]{box-shadow:inset 0 -3px 0 var(--acc)}
.ddbtn{border:0;background:none;padding:4px 2px;margin-left:-6px;cursor:pointer;color:var(--navy);display:grid;place-items:center}.ddbtn svg{width:16px;height:16px;transition:transform .2s}
.dd{position:absolute;top:100%;left:-10px;min-width:290px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh2);padding:10px;display:grid;gap:2px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s;z-index:70}
.dd.dd-cols{grid-template-columns:1fr 1fr;min-width:440px}.dd a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;text-decoration:none;color:var(--char);font-size:14.5px;font-weight:500}
.dd a svg{width:18px;height:18px;color:var(--acc-txt2);flex:none}.dd a:hover{background:var(--bg);color:var(--navy)}.dd .dd-all{grid-column:1/-1;font-weight:700;color:var(--navy);border-bottom:1px solid var(--line);border-radius:9px 9px 0 0;margin-bottom:4px;justify-content:space-between}
.has-dd:hover .dd,.has-dd:focus-within .dd,.has-dd.open .dd{opacity:1;visibility:visible;transform:none}.has-dd:hover .ddbtn svg,.has-dd.open .ddbtn svg{transform:rotate(180deg)}
.hcta{display:flex;align-items:center;gap:10px;flex:none}.hcta .btn{padding:11px 18px;font-size:15.5px}
.burger{display:none;width:46px;height:46px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--navy);cursor:pointer;place-items:center}.burger svg{width:24px;height:24px}
.mnav{position:fixed;left:0;right:0;bottom:0;top:0;background:rgba(13,15,66,.5);z-index:80;overflow:auto}.mnav-in{background:#fff;padding:16px 5vw 120px;display:grid;gap:4px;align-content:start;min-height:100%}
.mnav .m1,.mnav summary{display:flex;justify-content:space-between;align-items:center;padding:14px 4px;border-bottom:1px solid var(--line);font-family:var(--hd);font-weight:700;font-size:18px;color:var(--navy);text-decoration:none;cursor:pointer;list-style:none}
.mnav summary::-webkit-details-marker{display:none}.mnav summary svg{width:20px;height:20px;transition:transform .2s}.mnav details[open] summary svg{transform:rotate(180deg)}
.mnav details a{display:block;padding:10px 14px;color:var(--char);text-decoration:none;border-left:3px solid var(--acc);margin:4px 0 4px 4px;font-size:15.5px}
.mnav .btn{justify-content:center;margin-top:10px}body.menu-open{overflow:hidden}
@media (max-width:1240px){.hcta .est-btn span{display:none}.hcta .est-btn{padding:11px 13px}.mainnav .top{padding:10px 7px;font-size:14.5px}}
@media (max-width:1100px){.mainnav{display:none}.burger{display:grid}.hcta{margin-left:auto}}
@media (max-width:760px){.topbar{font-size:12px}.topbar .wrap{justify-content:center;gap:6px 12px}.fam{justify-content:center;gap:2px 12px}.fam .lbl{display:none}
 .logo img{height:46px}.hdr .wrap{gap:10px;padding:8px 0}.hcta .callbtn .t{display:none}.hcta .callbtn{padding:11px 13px}.hcta .est-btn{display:none}}
/* page hero */
.phero{background:var(--navy);color:#fff;padding:56px 0 64px;position:relative;overflow:hidden}.phero.hasimg{padding:64px 0 76px}
.phero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1}.phero.hasimg::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(13,15,66,.95) 0%,rgba(22,26,92,.84) 50%,rgba(22,26,92,.5) 100%)}
.phero .wrap{position:relative;z-index:2}.phero h1{color:#fff;font-size:clamp(34px,4.6vw,56px);font-weight:800;max-width:820px}.phero .sub{color:#dfe2ef;font-size:clamp(17px,1.5vw,19px);max-width:700px;margin:0 0 26px}
.phero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.crumbs{font-size:14px;color:#c5c8dc;margin-bottom:22px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.crumbs a{color:#fff;text-decoration:none;opacity:.85}.crumbs a:hover{opacity:1;text-decoration:underline}.crumbs .sep{opacity:.5}
.eyebrow.on-dark{color:var(--acc-txt)}.eyebrow{color:var(--acc-txt2)}.hero .eyebrow.pill{color:#fff}
.lead{font-size:18px;color:#4a4e5c}h2{font-size:clamp(28px,3.4vw,42px);font-weight:800}
.row{display:flex;gap:12px;flex-wrap:wrap}.split.rev{grid-template-columns:1fr 1.05fr}
/* detail layout */
.withside{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}.prose{max-width:760px}.prose p{margin:0 0 1.1em;font-size:17.5px}.prose h3{font-size:22px;margin-top:30px}
.side{display:grid;gap:18px;position:sticky;top:120px}.sidecard{background:var(--navy);color:#dfe2ef;border-radius:18px;padding:26px;display:grid;gap:12px}.sidecard h3{color:#fff;font-size:20px;margin:0}.sidecard p{margin:0;font-size:15px}
.sidecard .btn{justify-content:center}.sidecard .hrs{display:flex;gap:8px;align-items:center;font-size:14px;color:#c5c8dc}.sidecard .hrs svg{width:18px;height:18px}
.sidecard.light{background:#fff;border:1px solid var(--line);color:var(--char)}.sidecard.light h3{color:var(--navy)}
.sl{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--navy);font-weight:600;font-size:15px}.sl:last-child{border:0}.sl svg{width:20px;height:20px;color:var(--acc-txt2);flex:none}.sl:hover{color:var(--acc-txt2)}
.lics.small{list-style:none;padding:0;margin:0;display:grid;gap:8px}.lics.small li{display:flex;flex-direction:column;border-left:3px solid var(--acc);padding-left:10px;font-size:14px}.lics.small b{color:var(--navy)}.lics.small span{font-size:12.5px;color:#5b5f6e}
.plain{list-style:none;margin:0;padding:0;display:grid;gap:6px}.plain a{color:var(--navy);font-weight:600;text-decoration:none;font-size:15px}.plain a:hover{text-decoration:underline}
.incgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.inc{display:flex;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;transition:transform .25s,box-shadow .25s}.inc:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.inc>svg{width:30px;height:30px;flex:none;color:var(--acc-txt);background:var(--navy);border-radius:50%;padding:6px}.inc h3{font-size:18px;margin-bottom:6px}.inc p{margin:0;font-size:15.5px;color:#555a6a}
.steps.s5{grid-template-columns:repeat(5,1fr)}
.whysec .why{border-top:4px solid var(--acc);background:#fff;border-radius:var(--r);padding:24px;box-shadow:var(--sh)}.why h3{font-size:18.5px}.why p{margin:0;font-size:15.5px;color:#555a6a}
.linkcard{text-decoration:none;display:block}.linkcard .more{display:inline-flex;gap:6px;align-items:center;margin-top:16px;font-weight:700;color:var(--navy);font-size:15px}.linkcard .more svg{width:16px;height:16px;transition:transform .2s}.linkcard:hover .more svg{transform:translateX(4px)}
.g4 .card{padding:24px}.g4 .card h3{font-size:19px}
.tblwrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh)}.tbl{width:100%;border-collapse:collapse;font-size:15.5px;background:#fff;min-width:620px}
.tbl th,.tbl td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top}.tbl thead th{background:var(--navy);color:#fff;font-family:var(--hd);font-size:15px}.tbl tbody th{color:var(--navy);font-weight:600}.tbl tbody tr:nth-child(even){background:#fafbfd}
.note2{margin-top:18px;font-size:16px}
.xbox{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center;background:var(--navy);color:#dfe2ef;border-radius:22px;padding:44px}.xbox h2{color:#fff;font-size:clamp(26px,2.8vw,34px)}.xbox p{margin:0}.xbox .eyebrow{color:#4BD07E}
.xlinks{display:grid;grid-template-columns:1fr 1fr;gap:10px}.xl{display:flex;gap:10px;align-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:14px 16px;color:#fff;text-decoration:none;font-weight:600;font-size:15px}.xl svg{width:18px;height:18px;color:#4BD07E;flex:none}.xl:hover{background:rgba(255,255,255,.14)}
.revband{padding:56px 0;background:#fff;border-top:1px solid var(--line)}.revin{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.revscore{display:flex;align-items:center;gap:20px}.revscore .big,.revcard .big{font-family:var(--hd);font-weight:800;font-size:64px;color:var(--navy);line-height:1}.revscore div{display:grid;gap:2px}.revscore b{color:var(--navy);font-size:18px}.revscore span{color:#555a6a;font-size:14.5px}
.revbtns{display:flex;gap:12px;flex-wrap:wrap}.revpage{display:grid;grid-template-columns:340px 1fr;gap:56px;align-items:start}
.revcard{display:grid;gap:10px;justify-items:center;text-align:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:36px 28px;box-shadow:var(--sh2);border-top:5px solid var(--acc)}.revcard .btn{width:100%;justify-content:center}.revcard b{color:var(--navy);font-size:18px}.revcard span{color:#555a6a}
.estcta{padding:0 0 96px}.estcta-in{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;background:linear-gradient(120deg,var(--navy),var(--navy2));color:#dfe2ef;border-radius:22px;padding:40px 44px}
.estcta h2{color:#fff;font-size:clamp(24px,2.6vw,32px);margin:0 0 6px}.estcta p{margin:0}.estcta .b{display:flex;gap:12px;flex-wrap:wrap}.btn-line.light{border-color:rgba(255,255,255,.5);color:#fff}.btn-line.light:hover{background:rgba(255,255,255,.12)}
.contactgrid{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:stretch}.cinfo{display:grid;gap:16px}.ci{display:flex;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px}
.ci>svg{width:44px;height:44px;flex:none;background:var(--navy);color:var(--acc-txt);border-radius:12px;padding:10px}.ci h3{font-size:18px;margin-bottom:4px}.ci p{margin:0 0 4px;color:#4a4e5c}.tel2{font-family:var(--hd);font-weight:800;font-size:26px;color:var(--navy);text-decoration:none}
.map{border-radius:20px;overflow:hidden;box-shadow:var(--sh2);min-height:420px;border:1px solid var(--line)}.map iframe{width:100%;height:100%;min-height:420px;border:0;display:block}
.lnk.sm{font-size:14.5px}.faqpage{max-width:900px}.faqgrp{margin-bottom:44px}.faqgrp h2{font-size:clamp(22px,2.4vw,28px);display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap}.faqpage .faq{max-width:none}
.nlist{padding-left:22px;display:grid;gap:12px;font-size:17px;margin:18px 0 26px}.btn-sm{padding:9px 16px;font-size:14.5px}.frev{display:grid;gap:12px;margin-top:16px;justify-items:start}.frev a:first-child{color:#fff}
.ftr .fabout p{margin:16px 0 0}.ftr address{font-style:normal}.btn.big{font-size:20px;padding:18px 34px}.bio.top{align-items:start}
.citycard p{margin:0}
@media (max-width:1080px){.withside,.revpage,.contactgrid,.xbox{grid-template-columns:1fr}.side{position:static}.incgrid{grid-template-columns:1fr 1fr}.steps.s5{grid-template-columns:1fr 1fr 1fr}.split.rev{grid-template-columns:1fr}.split.rev .ph{order:-1}}
@media (max-width:760px){.incgrid,.steps.s5,.xlinks{grid-template-columns:1fr}.phero,.phero.hasimg{padding:40px 0 48px}.phero .ctas .btn{width:100%;justify-content:center}.xbox,.estcta-in{padding:28px 22px}.estcta{padding-bottom:64px}.estcta .b .btn{width:100%;justify-content:center}
 .revscore .big{font-size:48px}.revbtns .btn{width:100%;justify-content:center}.map,.map iframe{min-height:320px}.dd.dd-cols{min-width:0}.tbl{font-size:14.5px}.revpage{gap:32px}}
.revcard .stars,.revscore .stars{color:#F5B400;font-size:22px;letter-spacing:3px}

.tbl .yes{color:var(--acc-txt);font-weight:700;font-size:18px}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}.plan{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--sh)}.plan h3{margin:0 0 8px;color:var(--navy)}.plan p{margin:0}.plan.hl{background:var(--navy);color:#fff}.plan.hl h3{color:#fff}
@media(max-width:760px){.plans{grid-template-columns:1fr}}
.regs{font-size:12.5px;line-height:1.5;opacity:.78;padding-top:14px;padding-bottom:4px}.regs p{margin:0 0 4px}.regs a{color:inherit;text-decoration:underline}
.regs.about{opacity:1;font-size:14px;color:var(--mut,#556);padding:0;margin:-4px 0 18px}
