:root{color-scheme:light;--ink:#102a41;--muted:#455963;--paper:#f8f5ee;--white:#fff;--dark:#0b2944;--dark-2:#10344e;--teal-light:#55d3d0;--line:#d4dad8;--teal-dark:#08666b;--sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:1.25rem}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}
a{color:inherit;text-underline-offset:.25em}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #009f9f;outline-offset:4px}
button,input,textarea,select{font:inherit}
h1,h2,h3,p{margin:0}
h1,h2,h3{line-height:1.07;letter-spacing:-.045em}
h1{font-size:clamp(3.25rem,7.5vw,6.6rem);font-weight:720}
h2{font-size:clamp(2.15rem,4.4vw,3.6rem);font-weight:690}
h3{font-size:1.36rem;line-height:1.2}
.wrap{width:min(1150px,calc(100% - 96px));margin-inline:auto}
.skip{position:absolute;z-index:2;left:1rem;top:1rem;transform:translateY(-200%);background:var(--white);color:var(--ink);padding:.7rem 1rem}
.skip:focus{transform:none}
.site-header{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}
.nav-row,.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;min-height:78px}
.brand{display:block;flex:none;max-width:100%;width:clamp(12rem,24vw,14rem)}
.brand img{display:block;width:100%;height:auto}
.footer-inner .brand{width:11.5rem}
nav{display:flex;gap:clamp(.9rem,2.5vw,2.2rem);align-items:center;flex-wrap:wrap}
nav a{font-size:.88rem;text-decoration:none;color:var(--ink)}
nav a:hover{text-decoration:underline}
nav .support-link{display:inline-flex;align-items:center;gap:.25rem;padding:.48rem .8rem;border:1px solid var(--teal-dark);border-radius:6px;color:var(--teal-dark);font-weight:680}
.support-link span{margin-left:.2rem}
.hero{background:var(--dark);color:#faf7f0}
.hero-inner{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(1.65rem,4vw,3.5rem);padding-block:clamp(3.75rem,6.4vw,6rem)}
.eyebrow,.visual-caption{font:700 .75rem/1.5 ui-monospace,"SFMono-Regular",Consolas,monospace;letter-spacing:.12em}
.eyebrow{color:var(--teal-dark);margin-bottom:.95rem}
.hero .eyebrow,.support .eyebrow{color:var(--teal-light)}
.dot{display:inline-block;width:.52rem;height:.52rem;border-radius:50%;background:currentColor;margin-right:.55rem;vertical-align:.08em}
.hero h1,.section h2{font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.052em}
.hero h1{font-size:clamp(2.9rem,5.5vw,5.2rem);text-wrap:balance}
.hero-description{max-width:34rem;margin-top:1.4rem;color:#d7e5ed;font-size:1.09rem}
.actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.75rem}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;min-height:46px;border:1px solid transparent;border-radius:6px;padding:.66rem .98rem;text-decoration:none;font-size:.88rem;font-weight:730;cursor:pointer;transition:background .15s,color .15s}
.primary{background:var(--teal-light);color:#08263b;border-color:#55d3d0}
.primary:hover{background:#86e5e2}
.ghost{color:#faf7f0;border-color:#819eae}
.ghost:hover{background:#173f5c}
.outline{background:transparent;color:inherit;border-color:currentColor}
.outline:hover{background:#008d9320}
.hero-visual{min-width:0;overflow:hidden}
.hero-visual svg{display:block;width:100%;height:auto}
.visual-caption{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 1rem 0;color:#afcbd8}
.section{padding-block:clamp(3.75rem,7.8vw,6.7rem)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1.3rem;margin-bottom:2rem}
.section-heading>p{max-width:24rem;color:var(--muted)}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.service-grid article{background:#fdfbf6;border:1px solid var(--line);border-radius:7px;padding:clamp(1.15rem,2.6vw,1.75rem)}
.service-icon{display:block;width:2rem;height:2rem;color:var(--teal-dark);margin-bottom:.85rem}
.service-grid p,.split p:not(.eyebrow){margin-top:.75rem;color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,7.3vw,6rem)}
.about{background:#eaf2ef;border-block:1px solid var(--line)}
.steps{list-style:none;counter-reset:step;margin:0;padding:0}
.steps li{display:grid;grid-template-columns:2.5rem 1fr;gap:.2rem .7rem;padding:1rem 0;border-bottom:1px solid #c8d9d8}
.steps li:first-child{padding-top:.15rem}
.steps li::before{counter-increment:step;content:counter(step,decimal-leading-zero);grid-row:span 2;font:700 .77rem/2 ui-monospace,monospace;color:var(--teal-dark)}
.steps strong{font-size:1.04rem}
.steps span{color:var(--muted)}
.faq details{border-bottom:1px solid var(--line);padding:1rem 0}
.faq details:first-child{border-top:1px solid var(--line)}
summary{cursor:pointer;font-weight:680}
.faq details p{padding-left:1.15rem}
.support{background:var(--dark-2);color:#faf7f0;padding-block:2.65rem}
.support-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.support h2{font-size:clamp(1.8rem,3.4vw,2.65rem)}
.support p:not(.eyebrow){margin-top:.65rem;color:#d7e5ed;max-width:41rem}
.support a{flex:none}
.contact .location{margin-top:1.45rem;color:var(--teal-dark);font-weight:650}
form{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:clamp(1.1rem,3.4vw,2rem)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}
label{display:block;font-size:.88rem;font-weight:660;margin-bottom:.8rem;min-width:0}
input,textarea,select{display:block;width:100%;min-width:0;margin-top:.28rem;padding:.55rem .62rem;background:#fdfcf8;color:var(--ink);border:1px solid #97aab1;border-radius:5px}
textarea{resize:vertical}
#contact-note,#status{font-size:.83rem;margin:.2rem 0 .8rem}
#draft{margin-top:1rem}
#status:empty{display:none}
footer{border-top:1px solid var(--line);padding-block:.7rem}
.footer-inner p,.footer-inner>a:last-child{font-size:.86rem;color:var(--muted)}
.policy{max-width:49rem}
.policy h1{font-size:clamp(2.8rem,6vw,5rem)}
.policy h2{font-size:1.65rem;margin-top:1.8rem}
.policy p:not(.eyebrow){margin:.7rem 0 1rem}
@media(max-width:850px){.wrap{width:calc(100% - 48px)}.hero-inner{gap:1.65rem}.split{gap:2.3rem}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.nav-row{min-height:0;align-items:flex-start;flex-direction:column;gap:.85rem;padding-block:.85rem}.hero-inner,.split{grid-template-columns:1fr}.hero-inner{padding-block:3.2rem;gap:2rem}.hero-visual{max-width:28rem}.hero-visual svg{max-height:270px}.section-heading,.support-inner,.footer-inner{align-items:flex-start;flex-direction:column;gap:.9rem}.footer-inner{padding-block:.7rem}}
@media(max-width:405px){.service-grid,.field-row{grid-template-columns:1fr}.actions .button{justify-content:flex-start}.visual-caption{letter-spacing:.05em}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
.button:disabled{cursor:not-allowed;opacity:.55}

.decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.decision-grid article{border-top:2px solid var(--teal-dark);padding-top:1.3rem}
.decision-grid h3{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;line-height:1.25;letter-spacing:-.025em}
.decision-grid p:last-child{margin-top:1rem;color:var(--muted)}
.decisions{border-bottom:1px solid var(--line)}
@media(max-width:850px){.decision-grid{grid-template-columns:1fr;gap:2rem}}
