:root{--canvas:#f4f0e8;--paper:#fffdf8;--ink:#20251f;--muted:#5d635c;--forest:#1f4a3b;--forest-dark:#16372c;--forest-soft:#dfe7df;--clay:#925f35;--line:#d7d0c4;--field:#fbfaf6;--error:#8b3028;--error-soft:#fff6f3;--page-gutter:clamp(1.25rem, 4vw, 3.5rem);--page-width:74rem;--space-label-heading:.875rem;--font-display:Georgia, "Times New Roman", serif;--font-body:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color-scheme:light;font-family:var(--font-body)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.65}body,button,input{font-family:var(--font-body)}img{max-width:100%;display:block}a{color:var(--forest);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--forest-dark)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--font-display);letter-spacing:-.035em;font-weight:500}h1{text-wrap:balance;max-width:13ch;margin-bottom:0;font-size:clamp(2.55rem,12.1vw,3.25rem);line-height:.99}h2{text-wrap:balance;margin-bottom:1.25rem;font-size:clamp(1.9rem,7.5vw,3rem);line-height:1.04}h3{font-family:var(--font-body);margin:0;font-size:1.05rem;font-weight:700;line-height:1}.skip-link{z-index:20;background:var(--ink);color:#fff;padding:.65rem .9rem;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus-visible{transform:translateY(0)}.site-header,.hero,.about-section,.process-section,.faq-section,.closing,.site-footer{width:min(var(--page-width), calc(100% - (2 * var(--page-gutter))));margin-inline:auto}.site-header{width:100%;min-height:4.75rem;padding-block:1rem;padding-inline:max(var(--page-gutter), calc((100vw - var(--page-width)) / 2));border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;margin:0;display:flex}.brand{color:var(--ink);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:.7rem;font-size:.83rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.brand-mark{aspect-ratio:1;background:var(--forest);flex:none;width:2rem;display:block;position:relative}.brand-mark:before{background:var(--paper);content:"";position:absolute;inset:.3rem .42rem;mask:url(/lighthouse-mark.png) 50%/contain no-repeat}.header-cta{border-bottom:1px solid var(--forest);align-items:center;min-height:2.75rem;padding-inline:.15rem;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.header-nav{align-items:center;display:flex}.header-contact{color:var(--muted);overflow-wrap:anywhere;font-size:.88rem}.hero{gap:var(--space-label-heading);text-align:center;place-items:start center;padding-block:clamp(3rem,8vw,4rem);display:grid}.section-divider{width:min(var(--page-width), calc(100% - (2 * var(--page-gutter))));border-top:1px solid var(--line);margin-inline:auto}.hero-context{gap:var(--space-label-heading);display:grid}.hero-content{justify-items:center;gap:1.75rem;max-width:62rem;display:grid}.hero h1,.simple-page h1{max-width:18ch;margin:0;font-size:clamp(2.65rem,11vw,3.25rem);line-height:1.02}.eyebrow,.form-kicker{color:var(--clay);letter-spacing:.15em;text-transform:uppercase;margin:0;font-size:1rem;font-weight:700;line-height:1.35}.hero .eyebrow{align-self:start;transform:translateY(-.08em)}.hero .button-link{justify-self:center}button,.button-link{border:1px solid var(--forest);background:var(--forest);color:#fff;text-align:center;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;min-height:3.25rem;padding:.8rem 1.25rem;font-size:.94rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}button:hover,.button-link:hover{border-color:var(--forest-dark);background:var(--forest-dark);color:#fff}button:active,.button-link:active{transform:translateY(1px)}button:focus-visible,.button-link:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #bd8755}.about-section,.process-section,.faq-section{gap:1.5rem;display:grid}.about-section{grid-template-columns:minmax(0,1fr) minmax(8.5rem,9rem);grid-template-areas:"label portrait""title portrait""details details";align-items:start;gap:0 1.25rem;padding-block:clamp(3rem,8vw,4rem) clamp(4rem,9vw,5.5rem)}.section-heading{gap:var(--space-label-heading);align-self:start;display:grid}.about-content{display:contents}.about-content .eyebrow{margin-bottom:var(--space-label-heading);grid-area:label}.about-content h2{grid-area:title;margin:0}.about-portrait{isolation:isolate;grid-area:portrait;width:100%;position:relative}.about-portrait:after{z-index:0;border:1px solid var(--clay);content:"";opacity:.5;pointer-events:none;position:absolute;inset:0;transform:translate(-.45rem,.45rem)}.about-portrait img{z-index:1;aspect-ratio:1;object-fit:cover;width:100%;height:auto;position:relative}.about-details{grid-area:details;max-width:37rem;margin-top:1.5rem}.about-details p{color:var(--muted);margin:0;font-size:1rem;line-height:1.65}.about-details p+p{margin-top:1.25rem}.process-section{padding-block:0 clamp(4.75rem,10vw,6.5rem)}.process-section .section-heading h2,.faq-section .section-heading h2{margin-bottom:0}.process-list{display:grid}.process-item{border-top:1px solid var(--line);grid-template-columns:2.25rem minmax(0,1fr);column-gap:1rem;padding-block:1.35rem;display:grid}.step-number{width:2rem;height:2rem;color:var(--forest);border:1px solid #9fb0a7;border-radius:50%;grid-row:1/span 2;place-items:center;font-size:.78rem;font-weight:700;display:grid}.process-item p{color:var(--muted);grid-column:2;margin:.35rem 0 0;font-size:1rem;line-height:1.65}.contact-section{width:100%;padding:clamp(3.5rem, 10vw, 6.5rem) var(--page-gutter);background:var(--forest-dark)}.contact-panel{border-top:4px solid var(--clay);background:var(--paper);border-radius:2px;gap:1.1rem;width:min(100%,38rem);margin-inline:auto;padding:clamp(1.5rem,6vw,3rem);scroll-margin-top:.75rem;display:grid}.form-title{text-align:center;margin-bottom:.65rem;font-size:clamp(1.8rem,7vw,2.5rem)}.field-group{gap:.4rem;display:grid}.field-group label{color:var(--ink);font-size:.9rem;font-weight:700}.optional-label{color:var(--muted);font-weight:500}.field-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}input{background:var(--field);width:100%;min-height:3.4rem;color:var(--ink);border:1px solid #a9ada6;border-radius:2px;padding:.75rem .9rem;font-size:1rem}input:hover{border-color:var(--muted)}input:focus-visible{border-color:var(--forest);outline-offset:1px;outline-color:#b7cabe}input[aria-invalid=true]{border-color:var(--error);background:var(--error-soft)}.field-help,.field-message{margin:0;font-size:.86rem;line-height:1.4}.field-help{color:var(--muted)}.field-message{color:var(--error);font-weight:600}.privacy-note,.submission-status{color:var(--muted);margin:0;font-size:.85rem;line-height:1.5}.contact-panel button{width:100%;margin-top:.2rem}button:disabled{cursor:progress;background:#77847d;border-color:#77847d}.submission-status[data-tone=pending]{font-weight:700}.submission-status[data-tone=error]{background:var(--error-soft);color:var(--error);border:1px solid #d8aaa3;padding:.65rem .75rem;font-weight:700}.faq-list{border-top:1px solid var(--line);display:grid}.faq-section{padding-block:clamp(4.75rem,10vw,6.5rem) clamp(4rem,9vw,5.5rem)}details{border-bottom:1px solid var(--line)}summary{color:var(--ink);font-family:var(--font-body);cursor:pointer;padding:1.15rem 2.5rem 1.15rem 0;font-size:1rem;font-weight:700;line-height:1.45;list-style:none;position:relative}summary::-webkit-details-marker{display:none}summary:before,summary:after{background:var(--forest);content:"";width:.85rem;height:1px;position:absolute;top:1.85rem;right:.35rem}summary:after{transition:transform .12s;transform:rotate(90deg)}details[open] summary:after{transform:rotate(0)}details p{max-width:43rem;color:var(--muted);margin:.2rem 0 1.25rem;padding-right:1rem;font-size:1rem;line-height:1.65}.closing{padding-block:0 clamp(4.5rem,12vw,7.5rem);position:relative}.closing:before{background:var(--clay);content:"";width:2.75rem;height:3px;margin-bottom:1.75rem;display:block}.closing h2{max-width:18ch}.closing p{max-width:39rem;color:var(--muted);margin-bottom:1.75rem;font-size:1rem;line-height:1.65}.closing .button-link{width:100%}.simple-page{width:min(var(--page-width), calc(100% - (2 * var(--page-gutter))));align-content:start;margin-inline:auto;padding-block:clamp(3rem,8vw,4rem) clamp(4.5rem,12vw,7.5rem);display:grid}.simple-page h1{max-width:15ch;margin-block:var(--space-label-heading) 1.25rem}.simple-page p:not(.eyebrow){max-width:42rem;color:var(--muted);margin-bottom:1.25rem;font-size:1rem;line-height:1.65}.simple-page .button-link{justify-self:start;margin-top:.5rem}.privacy-page{width:min(44rem, calc(100% - (2 * var(--page-gutter))))}.privacy-page h1{max-width:13ch}.site-footer{border-top:1px solid var(--line);background:var(--canvas);width:100%;color:var(--muted);margin:0;padding-block:.75rem;font-size:.875rem}.site-footer p{color:var(--muted);text-align:center;order:2;margin:0;font-size:.8rem}.footer-inner{width:min(var(--page-width), calc(100% - (2 * var(--page-gutter))));flex-flow:column wrap;justify-content:center;align-items:center;gap:0 1.5rem;margin-inline:auto;display:flex}.footer-links{flex-wrap:wrap;order:1;justify-content:center;gap:0 1.25rem;display:flex}.footer-links a{min-height:2.75rem;color:var(--muted);overflow-wrap:anywhere;align-items:center;display:inline-flex}.footer-links a:hover{color:var(--forest-dark)}@media (width>=42rem){:root{--page-width:80vw}.site-footer p{text-align:left;order:0}.footer-inner{flex-direction:row;justify-content:space-between}.footer-links{order:0;justify-content:flex-start}h1{font-size:clamp(3.25rem,7vw,4.7rem)}.hero h1,.simple-page h1{font-size:clamp(3.4rem,6.6vw,4.65rem)}.hero .button-link{justify-self:center;width:auto}.closing .button-link{justify-self:start;width:auto}.about-section{display:flow-root}.about-portrait{float:right;width:clamp(11.5rem,29vw,14rem);margin:0 0 1.5rem clamp(2rem,6vw,3.25rem)}.about-portrait:after{transform:translate(-.7rem,.7rem)}.about-content{display:block}.about-content .eyebrow{margin-bottom:var(--space-label-heading)}.about-content h2{margin-bottom:1.25rem}.about-details{max-width:none;margin-top:0;display:block}.about-details p:first-child{margin-top:0}.about-details p:last-child{margin-top:1.25rem}}@media (width>=56rem){:root{--page-width:70vw}.site-header{min-height:5.5rem}.hero{padding-block:clamp(3.5rem,6vw,4.5rem)}.hero .button-link{justify-self:center}.about-section{display:flow-root}.about-portrait{width:clamp(13rem,24vw,20rem);margin-left:clamp(2.5rem,7vw,5.5rem)}.about-content{max-width:none;display:block}.about-content h2{margin-bottom:1.5rem}.about-details{margin-top:0;display:block}.about-details p:first-child{margin-top:0}.about-details p:last-child{margin-top:1.25rem}.faq-section{grid-template-columns:minmax(10rem,.36fr) minmax(0,.64fr);gap:clamp(3rem,8vw,8rem)}.process-section .section-heading h2{white-space:nowrap;font-size:clamp(2rem,4vw,3rem)}.faq-list{max-width:46rem}}@media (width>=72rem){h1{font-size:5.15rem}.hero h1,.simple-page h1{font-size:4.75rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important}}
