.geo{--font-head:"Archivo", system-ui, sans-serif;--font-body:"Archivo", system-ui, sans-serif}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-weight:450}img{max-width:100%;display:block}a{color:inherit}.section{padding:clamp(64px,9vw,132px) 0}.eyebrow{letter-spacing:.26em;text-transform:uppercase;color:var(--steel);font-size:.72rem;font-weight:700}.nav{z-index:60;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f4f1eac7;border-bottom:1px solid #0000;transition:border-color .3s,background .3s,padding .3s;position:sticky;top:0}.nav.scrolled{border-color:var(--line-l);background:#f4f1eaeb}.nav .wrap{justify-content:space-between;align-items:center;gap:14px;height:76px;transition:height .3s;display:flex}.nav.scrolled .wrap{height:62px}.nav .ew-wm{color:var(--ink)}.nav .links{gap:22px;display:flex}.nav .links a{letter-spacing:.01em;opacity:.78;white-space:nowrap;font-size:.86rem;font-weight:600;text-decoration:none;transition:opacity .2s;position:relative}.nav .links a:after{content:"";background:var(--ink);width:0;height:1.5px;transition:width .25s;position:absolute;bottom:-5px;left:0}.nav .links a:hover{opacity:1}.nav .links a:hover:after{width:100%}.nav .nav-right{flex:none;align-items:center;gap:18px;display:flex}.nav .phone{letter-spacing:.01em;white-space:nowrap;font-size:.9rem;font-weight:700;text-decoration:none}.nav .nav-cta{padding:.68em 1.2em}.menu-btn{display:none}.mobile-menu{inset-inline:0;background:var(--ink);color:var(--paper);border-top:1px solid var(--line-d);grid-template-rows:0fr;transition:grid-template-rows .32s cubic-bezier(.16,1,.3,1);display:none;position:absolute;top:100%}.mobile-menu.open{grid-template-rows:1fr}.mobile-menu-inner{overflow:hidden}.mobile-menu-links{flex-direction:column;padding:4px clamp(20px,5vw,56px) 0;display:flex}.mobile-menu-links a{border-bottom:1px solid var(--line-d);padding:15px 0;font-size:1.05rem;font-weight:700;text-decoration:none;display:block}.mobile-menu-actions{flex-direction:column;gap:12px;padding:20px clamp(20px,5vw,56px) clamp(28px,6vw,40px);display:flex}.mobile-menu-actions .phone{text-align:center;font-size:1rem;font-weight:700;text-decoration:none}.mobile-menu-actions .btn{width:100%}.nav-logo-compact{display:none}.hero{position:relative;overflow:hidden}.hero-grid{grid-template-columns:1.08fr .92fr;min-height:min(78vh,720px);display:grid}.hero-left{flex-direction:column;justify-content:center;padding:clamp(40px,5vw,84px) clamp(20px,4vw,64px);display:flex}.hero-left h1{font-family:var(--font-head);letter-spacing:-.02em;margin:.28em 0 .42em;font-size:clamp(2.8rem,6.4vw,5.4rem);font-weight:800;line-height:.92}.hero-left h1 .accent{color:var(--steel)}.hero-left .lede{color:var(--graphite);max-width:44ch;font-size:clamp(1.05rem,1.5vw,1.28rem);line-height:1.55}.hero-cta{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.hero-trust{flex-wrap:wrap;gap:26px;margin-top:40px;display:flex}.hero-trust .t{color:var(--graphite);align-items:center;gap:9px;font-size:.82rem;font-weight:600;display:flex}.hero-trust .t svg{flex:none;width:16px;height:16px}.hero-right{background:var(--ink);color:var(--paper);place-items:center;display:grid;position:relative;overflow:hidden}.hero-right .falls{pointer-events:none;position:absolute;inset:0}.hero-right .crest-xl{color:var(--paper);opacity:.14;position:relative}.hero-right .photo-slot{z-index:1;position:absolute;inset:0}.hero-right .ph-tag{z-index:3;letter-spacing:.2em;text-transform:uppercase;color:var(--fog);border:1px solid var(--line-d);background:#0c0c0d80;padding:8px 12px;font-size:.68rem;position:absolute;bottom:20px;left:22px}.hero-right .corner-tag{z-index:3;letter-spacing:.18em;text-transform:uppercase;color:var(--fog);font-size:.68rem;position:absolute;top:22px;right:22px}@keyframes fall{0%{transform:translateY(-120%)}to{transform:translateY(120%)}}.fall-line{background:linear-gradient(#0000,#ffffff80,#0000);width:2px;height:40%;animation:linear infinite fall;position:absolute;top:0}.marquee{background:var(--ink);color:var(--paper);border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d);padding:16px 0;overflow:hidden}.marquee .track{white-space:nowrap;gap:0;width:max-content;animation:32s linear infinite scrollx;display:flex}.marquee:hover .track{animation-play-state:paused}.marquee .item{font-family:var(--font-head);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:26px;padding:0 26px;font-size:1rem;font-weight:800;display:inline-flex}.marquee .item:after{content:"·";color:var(--steel)}@keyframes scrollx{to{transform:translate(-50%)}}.services{background:var(--paper)}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:44px;display:flex}.sec-head h2{font-family:var(--font-head);letter-spacing:-.015em;font-size:clamp(2rem,4.2vw,3.2rem);font-weight:800;line-height:1}.sec-head p{color:var(--graphite);max-width:46ch;line-height:1.55}.svc-grid{background:var(--line-l);border:1px solid var(--line-l);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.svc{background:var(--paper);cursor:default;flex-direction:column;min-height:252px;padding:34px 30px 30px;transition:background .25s;display:flex;position:relative}.svc:hover{background:var(--white)}.svc .num{letter-spacing:.14em;color:var(--steel);font-size:.72rem;font-weight:700}.svc h3{font-family:var(--font-head);letter-spacing:-.01em;margin:18px 0 10px;font-size:1.5rem;font-weight:800}.svc p{color:var(--graphite);flex:1;font-size:.94rem;line-height:1.55}.svc .price{margin-top:16px;font-size:.9rem;font-weight:700}.svc .price .from{color:var(--steel);text-transform:uppercase;letter-spacing:.1em;font-size:.76rem;font-weight:600}.svc .arrow{opacity:0;transition:all .25s;position:absolute;top:30px;right:28px;transform:translate(-6px)}.svc:hover .arrow{opacity:1;transform:translate(0)}.svc.soon{background:var(--ink);color:var(--paper)}.svc.soon h3,.svc.soon .num{color:var(--paper)}.svc.soon p{color:var(--fog)}.svc.soon .tag{letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--line-d);color:var(--mist);margin-top:14px;padding:6px 10px;font-size:.7rem;display:inline-block}.pricing{background:var(--ink);color:var(--paper)}.pricing .sec-head h2{color:var(--paper)}.pricing .sec-head p{color:var(--fog)}.plan-toggle{background:var(--ink-2);border:1px solid var(--line-d);border-radius:3px;gap:4px;padding:4px;display:inline-flex}.plan-toggle button{font-family:var(--font-body);color:var(--fog);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:2px;padding:.7em 1.2em;font-size:.84rem;font-weight:600;transition:all .2s}.plan-toggle button.active{background:var(--paper);color:var(--ink)}.plan-grid{background:var(--line-l);border:1px solid var(--line-l);grid-template-columns:repeat(4,1fr);gap:1px;margin-top:38px;display:grid}.plan{background:var(--paper);color:var(--ink);opacity:0;flex-direction:column;padding:32px 26px 30px;transition:opacity .5s,translate .5s,background .2s,box-shadow .2s,scale .2s;display:flex;position:relative;translate:0 26px}.plan.in-view{opacity:1;translate:0}.plan:hover,.plan:focus-within,.plan:active{background:var(--white);translate:0 -5px;box-shadow:0 14px 34px #0c0c0d29}.plan.featured{box-shadow:0 0 0 1.5px var(--ok) inset, 0 10px 30px #4f7d5b38;z-index:2;scale:1.035}.plan.featured:hover,.plan.featured:focus-within,.plan.featured:active{box-shadow:0 0 0 1.5px var(--ok) inset, 0 16px 38px #4f7d5b4d;box-shadow:0 0 0 1.5px var(--ink) inset, 0 14px 34px #0c0c0d29;translate:0 -5px;scale:1.035}.plan .freq{letter-spacing:.14em;text-transform:uppercase;color:var(--steel);min-height:2.7em;font-size:.78rem;font-weight:700;line-height:1.4}.plan .name{font-family:var(--font-head);margin:8px 0 16px;font-size:1.45rem;font-weight:800}.plan .price{font-family:var(--font-head);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2.9rem;font-weight:800;line-height:1}.plan .price .per{color:var(--steel);letter-spacing:0;font-size:.9rem;font-weight:600}.plan .billed{color:var(--graphite);margin-top:6px;font-size:.85rem}.plan .save{color:var(--graphite);margin-top:4px;font-size:.8rem;font-weight:700;display:block}.plan ul{flex-direction:column;flex:1;gap:12px;margin:22px 0 24px;padding:0;list-style:none;display:flex}.plan li{color:var(--graphite);gap:10px;font-size:.94rem;line-height:1.45;display:flex}.plan li svg{width:16px;height:16px;color:var(--ok);flex:none;margin-top:2px}.plan .badge{position:absolute}.plan .ribbon{z-index:4;letter-spacing:.14em;text-transform:uppercase;color:var(--paper);background:var(--ok);white-space:nowrap;border-radius:2px;padding:5px 10px;font-size:.66rem;font-weight:700;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.plan .price .from-lbl{font-size:.8rem}.price-note{color:var(--fog);margin-top:22px;font-size:.8rem}.cta-band .btn-ghost{color:var(--paper);border-color:#ffffff5c}.cta-band .btn-ghost:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.area{background:var(--paper-2)}.area-grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(30px,5vw,72px);display:grid}.zip-card{background:var(--white);border:1px solid var(--line-l);border-radius:4px;padding:clamp(26px,3vw,38px);transition:box-shadow .2s}.zip-card:hover{box-shadow:0 8px 28px #0c0c0d14}.zip-card h3{font-family:var(--font-head);letter-spacing:-.01em;font-size:1.6rem;font-weight:800}.zip-card p{color:var(--graphite);margin:10px 0 22px;line-height:1.5}.zip-row{gap:10px;display:flex}.zip-row input{border:1.5px solid var(--line-l);background:var(--paper);font:inherit;border-radius:2px;flex:1;padding:.9em 1.1em;font-size:1rem}.zip-row input:focus{border-color:var(--ink);outline:none}.zip-result{opacity:0;min-height:22px;margin-top:16px;font-size:.92rem;font-weight:600;transition:all .35s;transform:translateY(6px)}.zip-result.show{opacity:1;transform:none}.zip-result.ok{color:var(--ok)}.zip-result.no{color:var(--alert)}.towns{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.towns span{border:1px solid var(--line-l);color:var(--graphite);border-radius:99px;padding:6px 11px;font-size:.8rem}.map-frame{aspect-ratio:4/3.4;background:var(--ink);color:var(--paper);border-radius:4px;place-items:center;display:grid;position:relative;overflow:hidden}.map-frame .grid-bg{background-image:linear-gradient(var(--line-d) 1px, transparent 1px), linear-gradient(90deg, var(--line-d) 1px, transparent 1px);opacity:.5;background-size:40px 40px;position:absolute;inset:0}.map-frame .ring{border:1.5px dashed #ffffff59;border-radius:50%;position:absolute}.map-frame .pin{z-index:2;text-align:center;position:relative}.map-frame .pin .dot{background:var(--paper);border-radius:50%;width:14px;height:14px;margin:0 auto 10px;box-shadow:0 0 0 6px #f4f1ea2e}.map-frame .pin .lbl{letter-spacing:.14em;text-transform:uppercase;color:var(--mist);font-size:.74rem}@keyframes ripple{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(1.25)}}.edu{background:var(--paper)}.edu-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:clamp(30px,5vw,64px);display:grid}.facts{background:var(--line-l);border:1px solid var(--line-l);gap:1px;display:grid}.fact{background:var(--paper);padding:26px 28px;transition:transform .2s,box-shadow .2s}.fact:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0c0c0d14}.fact h4{font-family:var(--font-head);margin:0 0 8px;font-size:1.15rem;font-weight:800}.fact p{color:var(--graphite);margin:0;font-size:.92rem;line-height:1.55}.fact .big{font-family:var(--font-head);letter-spacing:-.02em;font-size:2.4rem;font-weight:800;line-height:1}.calc{background:var(--ink);color:var(--paper);border-radius:4px;padding:clamp(26px,3vw,36px);position:sticky;top:92px}.calc h3{font-family:var(--font-head);font-size:1.4rem;font-weight:800}.calc p.sub{color:var(--fog);margin:8px 0 24px;font-size:.9rem;line-height:1.5}.calc label{letter-spacing:.12em;text-transform:uppercase;color:var(--fog);margin-bottom:12px;font-size:.76rem;font-weight:700;display:block}.calc .seg{flex-wrap:wrap;gap:6px;margin-bottom:24px;display:flex}.calc .seg button{background:var(--ink-2);border:1px solid var(--line-d);min-width:56px;color:var(--mist);font:inherit;cursor:pointer;border-radius:2px;flex:1;padding:.7em .4em;font-size:.9rem;font-weight:600;transition:all .18s}.calc .seg button.active{background:var(--paper);color:var(--ink);border-color:var(--paper)}.calc .out{border-top:1px solid var(--line-d);align-items:baseline;gap:12px;padding-top:22px;display:flex}.calc .out .yrs{font-family:var(--font-head);letter-spacing:-.02em;font-size:3.4rem;font-weight:800;line-height:1;transition:all .3s}.calc .out .unit{color:var(--fog);font-size:.95rem}.why{background:var(--ink);color:var(--paper)}.why .sec-head h2{color:var(--paper)}.why-grid{background:var(--line-d);border:1px solid var(--line-d);grid-template-columns:repeat(5,1fr);gap:1px;display:grid}.why-cell{background:var(--ink);padding:30px 22px;transition:transform .2s,box-shadow .2s}.why-cell:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000003d}.why-cell .n{font-family:var(--font-head);color:var(--steel);font-size:1.8rem;font-weight:800}.why-cell p{color:var(--mist);margin:14px 0 0;font-size:.92rem;line-height:1.5}.about{background:var(--paper)}.about-wrap{grid-template-columns:.8fr 1.2fr;align-items:center;gap:clamp(30px,5vw,72px);display:grid}.about .portrait{aspect-ratio:4/5;background:var(--ink);color:var(--paper);border-radius:4px;place-items:center;display:grid;position:relative;overflow:hidden}.about .portrait .ph-tag{letter-spacing:.18em;text-transform:uppercase;color:var(--fog);border:1px solid var(--line-d);padding:6px 10px;font-size:.66rem;position:absolute;bottom:16px;left:18px}.about-body h2{font-family:var(--font-head);letter-spacing:-.015em;font-size:clamp(1.9rem,3.6vw,2.8rem);font-weight:800;line-height:1.02}.about-body p{color:var(--graphite);max-width:56ch;margin-top:18px;font-size:1.05rem;line-height:1.65}.sig{font-family:var(--font-head);margin-top:22px;font-size:1.1rem;font-weight:800}.sig span{color:var(--steel);font-size:.85rem;font-weight:600;display:block}.cta-band{background:var(--ink);color:var(--paper);text-align:center}.cta-band h2{font-family:var(--font-head);letter-spacing:-.02em;font-size:clamp(2.2rem,5vw,4rem);font-weight:800;line-height:.98}.cta-band p{color:var(--fog);max-width:46ch;margin:16px auto 30px;line-height:1.5}.cta-band .hero-cta{justify-content:center}.ig-feed{background:var(--paper)}.ig-head{text-align:center;flex-direction:column;align-items:center;gap:18px;display:flex}.ig-head h2{font-family:var(--font-head);letter-spacing:-.015em;font-size:clamp(2rem,4.2vw,3.2rem);font-weight:800;line-height:1}.ig-strip{scroll-snap-type:x mandatory;gap:14px;margin-top:36px;padding-bottom:6px;display:flex;overflow-x:auto}.ig-tile{aspect-ratio:1;background:var(--ink);scroll-snap-align:start;border-radius:6px;flex:none;height:260px;text-decoration:none;display:block;position:relative;overflow:hidden}.ig-tile-reel{aspect-ratio:9/16}.ig-tile img{object-fit:cover;width:100%;height:100%}.ig-tile-stats{color:var(--paper);letter-spacing:.01em;background:linear-gradient(#0000,#0c0c0db8);padding:9px 11px;font-size:.78rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}.ig-tile-placeholder{background:var(--paper-2);border:1.5px dashed var(--line-l);color:var(--steel);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.ig-tile-mark{opacity:.5;font-size:1.7rem}.ig-tile-caption{letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:700}@media (max-width:640px){.ig-tile{height:190px}}.foot{background:var(--ink);color:var(--mist);border-top:1px solid var(--line-d);padding:56px 0 36px}.foot-top{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;display:grid}.foot .ew-wm{color:var(--paper)}.foot .decal{color:var(--fog);margin-top:18px;font-size:.82rem;line-height:1.7}.foot-social{gap:10px;margin-top:18px;display:flex}.foot-social a{border:1px solid var(--line-d);width:34px;height:34px;color:var(--mist);opacity:1;border-radius:50%;flex:none;place-items:center;transition:border-color .18s,color .18s;display:grid}.foot-social a:hover{border-color:var(--paper);color:var(--paper)}.foot-social svg{width:16px;height:16px}.foot h5{letter-spacing:.16em;text-transform:uppercase;color:var(--steel);margin:0 0 14px;font-size:.72rem}.foot ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.foot a{opacity:.82;font-size:.9rem;text-decoration:none}.foot a:hover{opacity:1}.foot-bottom{border-top:1px solid var(--line-d);color:var(--steel);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:40px;padding-top:22px;font-size:.8rem;line-height:1.6;display:flex}.foot-bottom .btn-ghost{color:var(--paper);border-color:#ffffff57;flex:none}.foot-bottom .btn-ghost:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.reveal{opacity:1}@media (prefers-reduced-motion:reduce){.marquee .track,.fall-line{animation:none!important}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal{animation:linear both rise-in;animation-timeline:view();animation-range:entry entry 35%}.reveal.d1{animation-range:entry 6% entry 41%}.reveal.d2{animation-range:entry 12% entry 47%}.reveal.d3{animation-range:entry 18% entry 53%}.reveal.d4{animation-range:entry 24% entry 59%}}}@keyframes rise-in{0%{transform:translateY(22px)}to{transform:translateY(0)}}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){.hero-right .photo-slot>img{animation:linear both hero-parallax;animation-timeline:scroll(root);animation-range:0 70vh}}}@keyframes hero-parallax{0%{transform:translateY(0)scale(1.08)}to{transform:translateY(5%)scale(1.08)}}.drip-rail{pointer-events:none;z-index:50;width:4px;height:100vh;display:none;position:fixed;top:0;right:clamp(10px,2vw,22px)}.drip-trail{background:var(--ok);opacity:.85;transform-origin:top;border-radius:999px;width:100%;position:absolute;inset:0;transform:scaleY(0)}.drip-tip{width:14px;height:18px;color:var(--ok);position:absolute;top:0;left:50%;transform:translate(-50%)}.drip-tip svg{filter:drop-shadow(0 2px 3px #0c0c0d47);width:100%;height:100%;display:block}.drip-tip svg path{fill:currentColor}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){.drip-rail{display:block}.drip-trail{animation:linear both drip-fill;animation-timeline:scroll(root)}.drip-tip{animation:linear both drip-tip-move;animation-timeline:scroll(root)}}}@keyframes drip-fill{to{transform:scaleY(1)}}@keyframes drip-tip-move{to{transform:translate(-50%,calc(100vh - 18px))}}@media print{.reveal,.hero-right .photo-slot>img{animation:none!important;transform:none!important}.drip-rail{display:none!important}}@media (max-width:1200px){.nav>.wrap .phone{display:none}}@media (max-width:980px){.svc-grid,.plan-grid,.why-grid{grid-template-columns:repeat(2,1fr)}.hero-grid,.area-grid,.edu-grid,.about-wrap{grid-template-columns:1fr}.hero-right{order:2;min-height:340px}.calc{position:static}}@media (max-width:640px){.nav>.wrap .links,.nav>.wrap .phone{display:none}.menu-btn{display:inline-flex}.mobile-menu{display:grid}.nav-logo-full{display:none}.nav-logo-compact{display:inline-flex}.svc-grid,.plan-grid,.why-grid{grid-template-columns:1fr}.foot-top{grid-template-columns:1fr 1fr}.blog-grid{grid-template-columns:1fr}.nav .nav-right{gap:8px}.nav .nav-cta{padding:.6em .85em;font-size:.82rem}}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:26px;display:grid}.blog-card{color:inherit;text-decoration:none;display:block}.blog-card-img{aspect-ratio:16/10;object-fit:cover;background:var(--paper-2);border-radius:8px;width:100%;display:block}.blog-card-img-blank{background:var(--paper-2);border:1.5px dashed var(--line-l)}.blog-card-body{padding-top:14px}.blog-card-date{letter-spacing:.1em;text-transform:uppercase;color:var(--steel);font-size:.72rem;font-weight:700}.blog-card h3{font-family:var(--font-head);margin:8px 0 6px;font-size:1.15rem;font-weight:800;line-height:1.25}.blog-card p{color:var(--graphite);font-size:.9rem;line-height:1.5}.blog-body{color:var(--graphite);font-size:1.02rem;line-height:1.75}.blog-body h2{font-family:var(--font-head);margin:36px 0 14px;font-size:1.5rem;font-weight:800}.blog-body h2:first-child{margin-top:0}.blog-body h3{font-family:var(--font-head);margin:28px 0 12px;font-size:1.2rem;font-weight:800}.blog-body h3:first-child{margin-top:0}.blog-body p{margin:0 0 18px}.blog-body ul,.blog-body ol{margin:0 0 18px;padding-left:22px}.blog-body li{margin-bottom:8px}.blog-body a{color:var(--ink);-webkit-text-decoration-color:var(--line-l);text-decoration-color:var(--line-l)}.blog-body strong{color:var(--ink)}.blog-body hr{border:0;border-top:1.5px solid var(--line-l);margin:36px 0}
