:root{--ink:#21473d;--ink-deep:#173b33;--muted:#5c796e;--soft:#e8f3eb;--soft2:#f2f8f2;--line:#d4e2d8;--coral:#e87f69;--coral-light:#f5a18e;--white:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,"Segoe UI",sans-serif;background:#f8fbf8;line-height:1.5}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:min(100% - 48px,1290px);margin-inline:auto}.skip-link{position:fixed;z-index:100;left:12px;top:-60px;padding:10px 15px;background:#fff;color:var(--ink)}.skip-link:focus{top:12px}.demo-notice{min-height:30px;display:grid;place-items:center;padding:5px 15px;background:#f8ddd4;color:#724438;text-align:center;font-size:12px;font-weight:700;letter-spacing:.02em}.site-header{background:#f8fbf8;position:relative;z-index:20;border-bottom:1px solid #dce8de}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:inline-flex;flex-direction:column;line-height:.96;white-space:nowrap}.brand strong{font-size:24px;font-weight:900;letter-spacing:-.06em}.brand span{font-size:10px;font-weight:800;letter-spacing:.26em;margin-top:8px}.site-nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:700}.site-nav>a:not(.button):hover,.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}.button{border:0;border-radius:7px;min-height:52px;padding:0 23px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:14px;font-weight:800;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease;text-align:center}.button:hover{transform:translateY(-2px);box-shadow:0 6px 18px #173b3322}.button-dark{background:#246457;color:white}.button-dark:hover{background:#174e43}.button-outline{border:1px solid #b7cfc0;background:white;color:var(--ink)}.button-block{width:100%}.menu-toggle{display:none}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:900;margin:0 0 18px}.eyebrow-coral{color:#d9705b}.hero{background:var(--soft)}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(520px,.98fr);align-items:center;gap:7%;min-height:665px;padding-top:55px;padding-bottom:55px}.hero-copy h1{font-size:clamp(62px,5.4vw,86px);line-height:1.02;letter-spacing:-.065em;max-width:610px;margin:0 0 20px}.hero-copy h1 span{color:var(--coral)}.hero-lede{max-width:500px;font-size:18px;color:var(--muted);line-height:1.62;margin:0 0 34px}.hero-photo{width:min(100%,470px);height:180px;object-fit:cover;object-position:center 52%;border-radius:18px}.quote-card{background:white;border-radius:23px;padding:30px;box-shadow:0 20px 60px #173b3313;scroll-margin-top:25px}.quote-card-heading h2{font-size:29px;line-height:1.15;letter-spacing:-.04em;margin:0 0 20px}.quote-card-heading .eyebrow{margin-bottom:7px}.service-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0;margin:0 0 15px;border:0}.service-option{position:relative;min-height:105px;border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;font-size:13px;font-weight:800;text-align:center;padding:8px;cursor:pointer}.service-option:has(input:checked){background:#dbefe4;border-color:#8dbda2}.service-option:hover{border-color:#75a58e}.service-option input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.service-option:has(input:focus-visible){outline:3px solid #173b33;outline-offset:3px}.service-icon{font-size:26px;font-weight:400;line-height:1}.form-field{display:block;color:#385d51;font-size:13px;font-weight:800;margin-bottom:12px}.optional{font-weight:400;color:#759184}.form-field input,.form-field textarea{display:block;width:100%;margin-top:6px;border:1px solid #d8e5db;border-radius:8px;background:#fff;color:var(--ink);padding:13px 14px;min-height:47px;outline:none}.form-field textarea{min-height:80px;resize:vertical}.form-field input::placeholder,.form-field textarea::placeholder{color:#8a9b91}.form-field input:focus,.form-field textarea:focus{border-color:#227360;box-shadow:0 0 0 3px #2a775a2b}.form-field input[aria-invalid="true"],.form-field textarea[aria-invalid="true"]{border-color:#c34836}.form-error{background:#fff1ed;color:#9b3729;padding:10px 12px;border-radius:7px;font-size:13px;margin:0 0 12px}.quote-note{color:#688579;font-size:12px;line-height:1.45;margin:16px 0 0}.step-caption{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#d9705b;margin:0 0 16px}.step-actions{display:flex;gap:10px}.step-actions .button{flex:1}.quote-result h3{font-size:23px;margin:4px 0 15px}.quote-result dl{margin:0 0 18px}.quote-result dl>div{display:grid;grid-template-columns:115px 1fr;gap:12px;border-top:1px solid var(--line);padding:9px 0;font-size:13px}.quote-result dt{font-weight:800}.quote-result dd{margin:0;overflow-wrap:anywhere}.result-note{font-size:13px;color:#476b5f;font-weight:700}.section{padding:100px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.section-head h2,.agreement h2,.process h2,.faq h2{font-size:clamp(36px,3.7vw,53px);line-height:1.1;letter-spacing:-.055em;margin:0}.section-head>p{max-width:320px;color:var(--muted);margin:0 0 4px}.services{background:#f8fbf8}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{background:#f0f6ef;border-radius:17px;overflow:hidden;min-width:0}.service-card img{height:235px;width:100%;object-fit:cover}.service-card:nth-child(3) img{object-position:45% center}.service-card-body{padding:25px 26px 28px;min-height:200px;display:flex;flex-direction:column;align-items:flex-start}.service-card h3{font-size:25px;letter-spacing:-.04em;margin:0 0 8px}.service-card p{margin:0 0 20px;color:var(--muted);font-size:15px}.service-card button{margin-top:auto;border:0;background:transparent;color:#206252;font-size:14px;font-weight:800;padding:0}.service-card button:hover{text-decoration:underline;text-underline-offset:4px}.agreement{background:#e8f3eb}.agreement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:36px}.agreement-grid>div{border:1px solid #aac6b6;padding:22px;min-height:155px}.agreement h3{font-size:17px;margin:0 0 12px}.agreement p:not(.eyebrow){color:#4e7063;margin:0;font-size:14px;line-height:1.5}.process{background:#245548;color:white}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:50px}.process-grid>div{background:#326b5c;border-radius:14px;padding:25px 28px;min-height:198px}.process-grid span{font-size:13px;color:#ffab98;font-weight:900}.process-grid h3{font-size:21px;margin:26px 0 10px}.process-grid p{color:#d3e6db;font-size:14px;line-height:1.55;margin:0}.faq{background:#f8fbf8}.faq-grid{display:grid;grid-template-columns:40% 1fr;gap:45px}.faq-list details{border-top:1px solid #d4e2d8}.faq-list details:last-child{border-bottom:1px solid #d4e2d8}.faq-list summary{list-style:none;cursor:pointer;padding:21px 36px 21px 0;font-size:16px;font-weight:800;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:3px;top:16px;font-size:23px;color:var(--coral)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{margin:-2px 30px 20px 0;color:var(--muted);font-size:15px;line-height:1.6}.closing{background:var(--coral-light);padding:55px 0}.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.closing h2{font-size:clamp(30px,3vw,42px);letter-spacing:-.05em;line-height:1.1;margin:0}.site-footer{background:#e8f3eb;padding:58px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr .7fr;gap:55px}.footer-grid p,.footer-grid small{color:#658275;font-size:14px;line-height:1.55}.footer-grid p{margin:24px 0 8px}.footer-grid h3{font-size:15px;margin:0 0 15px}.footer-grid nav a{display:block;margin-bottom:10px;font-size:14px;font-weight:700}.footer-bottom{border-top:1px solid #bdd4c6;margin-top:40px;padding-top:18px;padding-bottom:18px;color:#658275;font-size:12px}.no-script{position:fixed;bottom:0;left:0;right:0;background:#fff8e6;padding:15px;text-align:center;margin:0;z-index:100}:focus-visible{outline:3px solid #c66c57;outline-offset:3px}@media (max-width:1050px){.hero-grid{grid-template-columns:1fr 1fr;gap:4%}.hero-copy h1{font-size:65px}.service-card img{height:190px}.agreement-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.container{width:min(100% - 36px,560px)}.demo-notice{font-size:11px}.header-inner{height:72px}.brand strong{font-size:20px}.brand span{font-size:8px}.menu-toggle{display:flex;border:1px solid var(--line);background:white;border-radius:8px;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{width:19px;height:2px;background:var(--ink)}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#f8fbf8;border-top:1px solid var(--line);box-shadow:0 12px 24px #173b331f;padding:18px;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav>a:not(.button){padding:12px 6px}.site-nav .button{margin-top:10px}.hero-grid{display:grid;grid-template-columns:1fr;gap:28px;padding-top:47px;padding-bottom:55px}.hero-copy h1{font-size:clamp(48px,10vw,70px);max-width:550px}.hero-lede{font-size:16px;margin-bottom:22px}.hero-photo{height:170px;width:100%}.quote-card{padding:23px;border-radius:18px}.section{padding:70px 0}.section-head{display:block;margin-bottom:28px}.section-head>p{margin-top:15px}.section-head h2,.agreement h2,.process h2,.faq h2{font-size:38px}.service-grid{grid-template-columns:1fr;gap:18px}.service-card img{height:220px}.service-card-body{min-height:165px}.agreement-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:1fr;gap:12px;margin-top:30px}.process-grid>div{min-height:0}.process-grid h3{margin-top:15px}.faq-grid{grid-template-columns:1fr;gap:25px}.closing-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}}@media (max-width:420px){.container{width:min(100% - 28px,400px)}.hero-copy h1{font-size:46px}.service-options{gap:5px}.service-option{min-height:95px;font-size:11px;padding:5px}.service-icon{font-size:23px}.quote-card{padding:17px}.quote-card-heading h2{font-size:25px}.agreement-grid{grid-template-columns:1fr}.agreement-grid>div{min-height:0}.step-actions{flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Review pass v02: contrast, controls, and consistent card language. */
:root{--coral:#b94f3c;--muted:#4c685d}
.eyebrow-coral,.step-caption{color:#a33d2b}
.optional,.quote-note{color:#4d685b}
.unit{font-weight:700;color:#385d51}
.form-field input::placeholder,.form-field textarea::placeholder{color:#556f61}
.site-footer .footer-grid p,.site-footer .footer-grid small,.site-footer .footer-bottom{color:#4c665a}
.process-grid span{color:#fff}
.service-option{border-color:#668a74}
.service-option:has(input:checked){border-color:#377357}
.agreement-grid>div{border-radius:12px}
.agreement-grid p:not(.eyebrow){font-size:15px}
:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #173b33}
@media(max-width:420px){.service-option{font-size:13px;line-height:1.25}.service-option .service-icon{font-size:24px}}
/* Final keyboard focus ring: visible on light and dark surfaces. */
:focus-visible{outline:3px solid #173b33;outline-offset:3px;box-shadow:0 0 0 3px #fff}
