:root{--ink:#222a28;--muted:#5d6d67;--blue:#08785b;--deep:#07513f;--sky:#e7f4ee;--mint:#d2eee2;--paper:#f4f7f5;--white:#fff;--line:#d2ded9;--danger:#a1262f;--shadow:0 22px 60px rgba(34,42,40,.13);--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.65 "Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}button,input,select{font:inherit}.wrap{width:min(100%,calc(var(--max) + 48px));margin:auto;padding-inline:24px}.skip{position:fixed;left:16px;top:8px;z-index:1000;transform:translateY(-150%);padding:10px 14px;border-radius:8px;background:var(--ink);color:#fff}.skip:focus{transform:none}.independence{background:var(--ink);color:#d9e5e0;font-size:14px}.independence .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:7px}.independence strong{color:#fff}.site-header{position:sticky;top:0;z-index:100;background:rgba(244,247,245,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(34,42,40,.1)}.header-inner{min-height:80px;display:flex;align-items:center;gap:24px}.logo{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:900;letter-spacing:-.03em}.logo-symbol{position:relative;width:38px;height:38px}.logo-symbol:before,.logo-symbol:after{content:"";position:absolute;top:5px;width:10px;height:28px;border-radius:8px;background:var(--blue);transform-origin:bottom}.logo-symbol:before{left:7px;transform:rotate(-34deg)}.logo-symbol:after{right:7px;transform:rotate(34deg);background:#3aa47f}.logo small{display:block;color:var(--muted);font-weight:650;font-size:11px;letter-spacing:.11em;text-transform:uppercase}.main-nav{margin-left:auto;display:flex;align-items:center;gap:20px}.main-nav a{font-weight:700;font-size:14px;text-decoration:none}.main-nav a:hover,.main-nav a[aria-current="page"]{color:var(--blue)}.header-phone{white-space:nowrap;text-decoration:none;font-weight:900}.menu-button{display:none;margin-left:auto;width:48px;height:48px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.menu-button i,.menu-button:before,.menu-button:after{content:"";display:block;width:22px;height:2px;background:currentColor;margin:5px auto;transition:.2s}.menu-button[aria-expanded="true"] i{opacity:0}.menu-button[aria-expanded="true"]:before{transform:translateY(7px) rotate(45deg)}.menu-button[aria-expanded="true"]:after{transform:translateY(-7px) rotate(-45deg)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;border:1px solid var(--blue);border-radius:9px;background:var(--blue);color:#fff;font-weight:850;text-decoration:none;cursor:pointer;transition:.18s}.button:hover{background:var(--deep);border-color:var(--deep);transform:translateY(-1px)}.button.ghost{background:transparent;color:var(--blue)}.button.ghost:hover{background:var(--sky)}.button.light{background:#fff;color:var(--blue);border-color:#fff}.kicker{display:flex;align-items:center;gap:10px;color:var(--blue);font-size:13px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.kicker:before{content:"";width:32px;height:2px;background:currentColor}h1,h2,h3{margin:0 0 .55em;line-height:1.08;letter-spacing:-.04em}h1{font-size:clamp(2.7rem,5.8vw,4.7rem)}h2{font-size:clamp(2rem,4vw,3.25rem)}h3{font-size:1.35rem}p{margin:0 0 1em}.hero{padding:76px 0 68px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:48px;align-items:end}.hero h1{max-width:820px;margin-top:20px}.hero-statement{font-size:clamp(1.45rem,2.7vw,2.25rem);font-weight:780;color:var(--blue);letter-spacing:-.03em;margin-bottom:20px}.hero-copy{max-width:760px;font-size:1.2rem;color:#40534c}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0}.hero-address{font-size:15px;color:var(--muted);padding-top:18px;border-top:1px solid var(--line)}.hero-identity{position:relative;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:30px;border-radius:12px}.hero-identity:before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:linear-gradient(var(--blue) 50%,#3aa47f 50%);border-radius:12px 0 0 12px}.hero-identity .monogram{font-size:4.8rem;line-height:.9;font-weight:900;color:var(--ink);letter-spacing:-.09em;margin:22px 0}.hero-identity dl{margin:0;display:grid;gap:11px}.hero-identity div{display:flex;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:11px}.hero-identity dt{color:var(--muted)}.hero-identity dd{margin:0;text-align:right;font-weight:750}.route-section{padding:76px 0}.section-title{display:grid;grid-template-columns:150px 1fr;gap:28px;margin-bottom:38px}.section-count{color:var(--blue);font-size:13px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;padding-top:10px}.section-title p{max-width:760px;color:var(--muted);font-size:1.08rem}.dual-map{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.lane{padding:38px}.lane.family{background:linear-gradient(145deg,#fff 20%,#edf8f3)}.lane+.lane{border-left:1px solid var(--line)}.lane-number{font-size:4rem;font-weight:900;line-height:1;color:rgba(8,120,91,.16)}.lane-head{min-height:148px;border-bottom:2px solid var(--blue);margin-bottom:18px}.lane.family .lane-head{border-color:#3aa47f}.lane-head p{color:var(--muted)}.route-link{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);text-decoration:none}.route-link span{color:var(--muted);font-size:14px}.route-link b{font-size:1.06rem}.route-link:after{content:"→";color:var(--blue);font-size:1.35rem}.route-link:hover b{color:var(--blue)}.document-bridge{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:26px 38px;background:var(--ink);color:#fff;text-decoration:none}.document-bridge strong{font-size:1.35rem}.document-bridge span{color:#c9ddd5}.document-bridge em{font-size:1.8rem;font-style:normal}.lead-zone{background:var(--blue);padding:78px 0;position:relative;overflow:hidden}.lead-zone:before,.lead-zone:after{content:"";position:absolute;top:0;width:1px;height:60px;background:rgba(255,255,255,.4)}.lead-zone:before{left:33%}.lead-zone:after{right:33%}.lead-intro{color:#fff;display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:28px}.lead-intro h2{max-width:720px}.lead-intro p{max-width:400px;color:#ddf5ea}.lead-panel{background:#fff;border-radius:14px;box-shadow:0 28px 70px rgba(3,71,53,.24);padding:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px}.field.topic{grid-column:1/-1}.field label,.consent-row label{font-size:14px;font-weight:800}.field input,.field select{width:100%;min-height:54px;border:1px solid #b6c7c0;border-radius:8px;background:#fff;padding:0 14px;color:var(--ink);font-size:16px}.field input:focus,.field select:focus,.consent-row input:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid rgba(8,120,91,.24);outline-offset:2px;border-color:var(--blue)}.field-error{min-height:20px;color:var(--danger);font-size:13px}.consent-row{display:grid;grid-template-columns:22px 1fr;gap:11px;margin:18px 0;align-items:start}.consent-row input{width:20px;height:20px;margin:3px 0 0}.consent-row label{font-weight:500;color:#40534c}.submit-row{display:flex;align-items:center;gap:20px}.submit-row .button{min-width:240px}.submit-note{font-size:13px;color:var(--muted);max-width:610px}.form-status{display:none;margin-top:16px;padding:13px 15px;border-radius:8px}.form-status.show{display:block}.form-status.success{background:#e1f3e8;color:#155d37}.form-status.error{background:#fff0f0;color:#8f252c}.lead-hours{margin-top:18px;color:#ddf5ea;font-size:14px}.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.process{padding:82px 0}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.process-step{background:#fff;padding:28px}.process-step b{display:block;color:var(--blue);font-size:12px;letter-spacing:.14em;margin-bottom:30px}.process-step p{color:var(--muted);margin:0}.profile-band{padding:82px 0;background:#e8f0ec}.profile-card{display:grid;grid-template-columns:290px 1fr;gap:0;background:#fff;border:1px solid var(--line)}.profile-mark{padding:36px;background:var(--deep);color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:360px}.profile-mark strong{font-size:5rem;line-height:.9;letter-spacing:-.09em}.profile-mark span{color:#cee1d9}.profile-copy{padding:40px}.facts{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0}.tag{padding:7px 11px;border:1px solid var(--line);border-radius:99px;background:var(--paper);font-size:14px;font-weight:750}.profile-copy p{max-width:700px;color:#40534c}.articles{padding:82px 0}.article-previews{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.preview-card{display:flex;flex-direction:column;min-height:260px;padding:24px;border:1px solid var(--line);background:#fff;text-decoration:none}.preview-card small{color:var(--blue);font-weight:900;text-transform:uppercase;letter-spacing:.11em}.preview-card h3{margin-top:auto}.preview-card p{color:var(--muted);font-size:15px;margin:0}.price-section{padding:82px 0}.price-layout{display:grid;grid-template-columns:330px 1fr;gap:48px;align-items:start}.price-note{position:sticky;top:112px;padding:26px;background:var(--ink);color:#fff;border-radius:10px}.price-note p{color:#cbddd6}.price-table{border-top:2px solid var(--ink)}.price-row{display:grid;grid-template-columns:1.1fr .45fr 1.2fr;gap:18px;padding:20px 4px;border-bottom:1px solid var(--line)}.price-row strong:nth-child(2){color:var(--blue)}.price-row span{color:var(--muted);font-size:15px}.contact-strip{background:#3aa47f;color:#fff;padding:58px 0}.contact-strip .wrap{display:flex;justify-content:space-between;gap:30px;align-items:center}.contact-strip p{color:#e1f5ec}.breadcrumbs{padding:22px 0 0;font-size:14px;color:var(--muted)}.breadcrumbs ol{display:flex;list-style:none;gap:8px;flex-wrap:wrap;margin:0;padding:0}.breadcrumbs li+li:before{content:"/";margin-right:8px;color:#9aa9a3}.article-hero{padding:54px 0 44px;border-bottom:1px solid var(--line)}.article-hero h1{max-width:1030px}.article-hero p{max-width:800px;font-size:1.2rem;color:#40534c}.article-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.article-layout{display:grid;grid-template-columns:minmax(0,780px) 1fr;gap:72px;align-items:start}.article{padding:62px 0}.article h2{font-size:2.2rem;margin-top:1.8em}.article h2:first-child{margin-top:0}.summary{font-size:1.18rem;border-left:5px solid var(--blue);padding:22px 24px;background:var(--sky)}.triad{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:28px 0}.info-block{border:1px solid var(--line);background:#fff;padding:22px}.info-block b{display:block;color:var(--blue);font-size:12px;letter-spacing:.13em;text-transform:uppercase}.info-block ul{padding-left:20px;margin-bottom:0}.memo{width:100%;border-collapse:collapse;margin:28px 0;background:#fff;border:1px solid var(--line)}.memo th,.memo td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--line)}.memo th{width:30%;background:var(--sky);font-size:14px}.article-aside{position:sticky;top:112px;margin-top:62px;padding-left:20px;border-left:2px solid var(--line)}.article-aside strong{font-size:13px;letter-spacing:.12em;text-transform:uppercase}.article-aside a{display:block;margin-top:12px;text-decoration:none;color:var(--muted);font-size:15px}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{position:relative;cursor:pointer;list-style:none;padding:19px 44px 19px 0;font-weight:800}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:10px;top:12px;color:var(--blue);font-size:27px}.faq details[open] summary:after{content:"−"}.faq p{padding:0 44px 18px 0;color:var(--muted)}.related{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.related a{padding:16px;border:1px solid var(--line);background:#fff;text-decoration:none;font-weight:750}.related a:hover{border-color:var(--blue);color:var(--blue)}.source-note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:34px}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.contact-box{padding:28px;border:1px solid var(--line);background:#fff}.contact-box address{font-style:normal}.legal{max-width:820px;padding:58px 24px 100px}.legal h1{font-size:clamp(2.4rem,5vw,4rem)}.legal h2{font-size:1.8rem;margin-top:1.7em}.legal .notice-box{padding:15px;border:1px solid #dabd6a;background:#fff9e8}.footer{background:var(--ink);color:#d5e4de;padding:54px 0 24px}.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:42px}.footer strong,.footer a{color:#fff}.footer nav{display:grid;gap:8px}.footer-bottom{margin-top:38px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);font-size:13px;color:#a7beb5}.mobile-cta{display:none}.not-found{min-height:64vh;display:grid;place-items:center;text-align:center}.not-found strong{font-size:7rem;color:var(--blue);line-height:1}.noscript{padding:12px;text-align:center;background:#fff3d6;border:1px solid #ddc275}
@media(max-width:1080px){.main-nav{display:none;position:fixed;top:80px;left:0;right:0;background:#fff;padding:24px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{font-size:18px;padding:8px}.header-phone{margin-left:auto}.header-inner>.button{display:none}.menu-button{display:block}.hero-grid,.article-layout{grid-template-columns:1fr}.hero-identity{max-width:620px}.article-aside{position:static;margin:0;padding:24px 0;border-left:0;border-top:1px solid var(--line)}.article-previews{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{font-size:16px}.wrap{padding-inline:18px}.independence .wrap{padding-block:7px}.independence span:last-child{display:none}.header-inner{min-height:70px}.logo small,.header-phone{display:none}.main-nav{top:70px}.hero{padding:48px 0}.hero-grid{gap:28px}.hero-actions{flex-direction:column;align-items:stretch}.dual-map{grid-template-columns:1fr}.lane{padding:26px 22px}.lane+.lane{border-left:0;border-top:1px solid var(--line)}.lane-head{min-height:auto}.document-bridge{grid-template-columns:1fr auto;padding:24px}.document-bridge span{grid-column:1/-1}.lead-zone{padding:60px 0}.lead-intro{display:block}.lead-panel{padding:22px}.form-grid{grid-template-columns:1fr}.field.topic{grid-column:auto}.submit-row{flex-direction:column;align-items:stretch}.submit-row .button{width:100%}.section-title{grid-template-columns:1fr;gap:5px}.process-grid,.article-previews,.triad,.related,.contact-grid{grid-template-columns:1fr}.profile-card{grid-template-columns:1fr}.profile-mark{min-height:220px}.profile-copy{padding:26px}.price-layout{grid-template-columns:1fr}.price-note{position:static}.price-row{grid-template-columns:1fr}.contact-strip .wrap{display:block}.article{padding-top:44px}.memo{display:block;overflow-x:auto}.footer-grid{grid-template-columns:1fr}.footer{padding-bottom:90px}.mobile-cta{display:block;position:fixed;left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:85}.mobile-cta .button{width:100%;box-shadow:0 14px 36px rgba(34,42,40,.25)}.mobile-cta.hidden{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Header and consent alignment refinements */
.header-inner{gap:18px}
.logo>span:last-child,.main-nav a,.header-phone,.header-inner>.button{white-space:nowrap}
.main-nav{gap:15px}
.main-nav a{font-size:13px}
.header-phone{font-size:15px}
.header-inner>.button{min-height:48px;padding-inline:16px}
.consent-row>div{font-size:14px;line-height:1.55}
.consent-row>div>label{display:inline;font-size:14px;font-weight:500;color:#40534c}
.consent-row>div>.field-error:empty{display:none}
.consent-row>div>a{display:inline;margin-left:.35em}
.form-grid{align-items:start}
.field{align-self:start;align-content:start}
.field input,.field select{height:54px;min-height:54px}
@media(max-width:1240px){.main-nav{display:none;position:fixed;top:80px;left:0;right:0;background:#fff;padding:24px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{font-size:18px;padding:8px}.header-phone{margin-left:auto}.header-inner>.button{display:none}.menu-button{display:block}}
@media(max-width:760px){.main-nav{top:70px}}
