:root{color:#20302b;font-synthesis:none;text-rendering:optimizelegibility;--limestone:#f7f2e8;--card:#fffdf8;--juniper:#274c43;--foreground:#20302b;--terracotta:#9c4f2e;--sand:#ece4d8;--border:#d8cdbe;--muted:#59655f;--container:1240px;--section-space:clamp(4.5rem, 7vw, 7rem);--radius:.45rem;background:#f7f2e8;font-family:Public Sans,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{background:var(--limestone);min-width:320px;margin:0}body,button,input,select,textarea{font:inherit}img,svg{max-width:100%;display:block}a{color:inherit}button,a,summary{touch-action:manipulation}p{line-height:1.65}h1,h2,h3{margin:0;font-family:Lora,Georgia,serif;font-weight:500;line-height:1.08}h1,h2{text-wrap:balance}h1{letter-spacing:-.035em;max-width:10ch;font-size:clamp(3.25rem,5.4vw,5.5rem)}h2{letter-spacing:-.025em;font-size:clamp(2.15rem,3.4vw,3.75rem)}h3{font-family:Public Sans,system-ui,sans-serif;font-size:1rem;font-weight:700;line-height:1.35}:focus-visible{outline:3px solid var(--terracotta);outline-offset:4px}.top-anchor{position:absolute;top:0}.skip-link{z-index:20;color:#fff;background:var(--juniper);padding:.8rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus-visible{transform:translateY(0)}.container{width:min(100% - 3rem, var(--container));margin-inline:auto}.section{padding-block:var(--section-space)}.concept-bar{text-align:center;background:var(--sand);margin:0;padding:.45rem 1rem;font-size:.72rem}.site-header{border-bottom:1px solid var(--border);background:#fffdf8f5}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:5.25rem;display:flex}.brand{color:var(--juniper);align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.brand-name{font-family:Lora,Georgia,serif;font-size:clamp(1.35rem,2vw,1.75rem);font-weight:600}.brand svg{color:var(--terracotta);transform:rotate(-22deg)}.nav-list{gap:clamp(1.25rem,3vw,2.8rem);margin:0;padding:0;list-style:none;display:flex}.nav-list a{font-size:.88rem;font-weight:600;text-decoration:none}.nav-list a:hover{color:var(--terracotta)}.button{color:#fff;background:var(--juniper);cursor:pointer;border:0;border-radius:.18rem;justify-content:center;align-items:center;min-height:48px;padding:.85rem 1.5rem;font-weight:700;text-decoration:none;transition:background-color .18s,transform .18s;display:inline-flex}.button:hover{background:#183b33;transform:translateY(-1px)}.header-cta{min-width:174px}.menu-button,.menu-close{min-width:44px;min-height:44px;color:var(--juniper);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:none}.mobile-menu{width:min(100%,430px);max-width:none;height:100dvh;max-height:none;color:var(--foreground);background:var(--card);overscroll-behavior:contain;border:0;margin:0 0 0 auto;padding:0}.mobile-menu::backdrop{background:#20302b94}.mobile-menu-inner{flex-direction:column;min-height:100%;padding:1.4rem;display:flex}.mobile-menu-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1.25rem;display:flex}.mobile-menu .menu-close{display:inline-flex}.mobile-nav-list{margin:2.5rem 0;padding:0;list-style:none}.mobile-nav-list a{border-bottom:1px solid var(--border);align-items:center;min-height:54px;font-family:Lora,Georgia,serif;font-size:1.5rem;text-decoration:none;display:flex}.mobile-menu-cta{width:100%}.mobile-menu-inner>p{color:var(--muted);margin-top:auto;font-size:.78rem}body:has(.mobile-menu[open]){overflow:hidden}.hero{border-bottom:1px solid var(--border);background:var(--card)}.hero-grid{grid-template-columns:minmax(420px,.9fr) minmax(0,1.35fr);max-width:1500px;min-height:570px;margin-inline:auto;display:grid}.hero-copy{align-self:center;padding:4.5rem clamp(2rem,7vw,7rem)}.hero-image{object-fit:cover;width:100%;height:100%;min-height:570px}.lead{color:#34423d;max-width:55ch;font-size:1.02rem}.hero .lead{max-width:44ch;margin-top:1.5rem}.eyebrow{color:var(--terracotta);letter-spacing:.04em;text-transform:uppercase;margin:0 0 1rem;font-size:.75rem;font-weight:700}.actions{align-items:center;gap:2.25rem;margin-top:2.25rem;display:flex}.text-link{min-height:44px;-webkit-text-decoration-color:var(--terracotta);text-decoration-color:var(--terracotta);text-underline-offset:.55rem;align-items:center;gap:.65rem;font-weight:700;text-decoration-thickness:2px;display:inline-flex}.quiet{color:var(--muted);margin-top:2rem;font-size:.82rem}.trust-strip{border-bottom:1px solid var(--border);background:var(--card)}.trust-grid{grid-template-columns:repeat(4,1fr);display:grid}.trust-item{text-align:center;border-right:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;min-height:120px;padding:1.5rem;display:flex}.trust-item:last-child{border-right:0}.trust-item svg{color:var(--juniper)}.trust-item span{max-width:13ch;font-size:.88rem;line-height:1.35}.section-heading{margin-bottom:3rem}.section-heading.centered{text-align:center;flex-direction:column;align-items:center;display:flex}.section-heading p{color:#3e4945;max-width:680px;margin:.8rem auto 0}.accent-line{background:var(--terracotta);width:32px;height:2px;margin-top:.9rem;display:block}.service-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.5rem;display:grid}.service-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);overflow:hidden}.service-card.featured{border:2px solid var(--juniper)}.service-card img{aspect-ratio:1.35;object-fit:cover;width:100%}.service-card-copy{padding:1.4rem 1.35rem 1.6rem}.service-card-copy p{color:#3f4a46;margin:.75rem 0 0;font-size:.88rem;line-height:1.65}.story-section{background:var(--card)}.story-grid{grid-template-columns:1fr 1.25fr;max-width:1500px;min-height:540px;margin-inline:auto;display:grid}.story-image{object-fit:cover;width:100%;height:100%;min-height:540px}.story-copy{align-self:center;max-width:680px;padding:4rem clamp(2.5rem,7vw,7rem)}.story-copy h2{max-width:15ch}.story-copy .lead{margin:1.4rem 0 1.8rem}.care-list{margin:0;padding:0;list-style:none}.care-list li{border-bottom:1px solid var(--border);grid-template-columns:28px 1fr;align-items:center;gap:1rem;padding:1rem 0;display:grid}.care-list svg{color:var(--juniper)}.care-list span{font-size:.9rem}.process-section{background:var(--limestone)}.process-grid{grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.process-grid li{border-right:1px solid var(--border);grid-template-columns:auto auto 1fr;align-items:start;gap:1.25rem;padding:.5rem 2.5rem;display:grid}.process-grid li:last-child{border-right:0}.process-grid svg{color:var(--juniper)}.step-number{color:var(--terracotta);font-family:Lora,Georgia,serif;font-size:2.5rem;line-height:.95}.process-grid p{margin:.45rem 0 0;font-size:.84rem}.service-area{background:var(--sand);padding-block:3rem}.service-area-grid{grid-template-columns:.75fr 1.5fr;align-items:center;gap:3rem;display:grid}.service-area h2{max-width:12ch}.service-area p{max-width:28ch;margin-top:1.25rem}.service-area img{object-fit:contain;mix-blend-mode:multiply;width:100%;max-height:300px}.contact-section{background:var(--card)}.contact-grid{grid-template-columns:1fr 1.25fr;display:grid}.faq-column,.quote-column{padding-block:var(--section-space)}.faq-column{padding-right:clamp(2rem,6vw,6rem)}.quote-column{border-left:1px solid var(--border);padding-left:clamp(2rem,6vw,6rem)}.faq-column h2,.quote-column h2{max-width:13ch}.faq-list{border-top:1px solid var(--border);margin-top:2.25rem}.faq-list details{border-bottom:1px solid var(--border)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:50px;padding:.8rem .6rem;font-size:.86rem;font-weight:700;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span:before{content:"+";font-size:1.2rem;font-weight:400}.faq-list details[open] summary span:before{content:"−"}.faq-list details p{color:var(--muted);margin:0;padding:0 .6rem 1rem;font-size:.82rem}.quote-column>p{color:var(--muted);margin:.75rem 0 1.5rem}.quote-form{gap:1rem;display:grid}.field-grid{grid-template-columns:1fr 1fr;gap:.8rem 1rem;display:grid}.quote-form label{gap:.4rem;font-size:.78rem;font-weight:600;display:grid}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-height:44px;color:var(--foreground);background:#fff;border:1px solid #cfc6ba;border-radius:.15rem;padding:.65rem .75rem}.quote-form textarea{resize:vertical;min-height:104px}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--juniper);outline:2px solid #274c4329}.form-button{width:100%}.form-note{color:var(--muted);justify-content:center;align-items:center;gap:.35rem;margin:-.35rem 0 0;font-size:.7rem;display:flex}.form-success{min-height:1.3rem;color:var(--juniper);text-align:center;margin:-.35rem 0 0;font-size:.78rem;font-weight:700}.site-footer{color:#fff;background:#12493e;padding-block:3rem 1.5rem}.footer-grid{grid-template-columns:1.5fr 1.2fr 1fr .9fr;gap:3rem;display:grid}.footer-grid h2{letter-spacing:0;margin-bottom:.8rem;font-family:Public Sans,sans-serif;font-size:.78rem;font-weight:700}.footer-grid p{color:#e2eee9;margin:.35rem 0;font-size:.78rem}.footer-grid p svg{vertical-align:-.15rem;margin-right:.35rem;display:inline}.footer-grid a{text-underline-offset:.2rem;text-decoration-thickness:1px}.footer-brand{grid-template-columns:auto 1fr;align-items:center;column-gap:.55rem;display:grid}.footer-brand span{font-family:Lora,Georgia,serif;font-size:1.45rem}.footer-brand svg{color:#d48661;transform:rotate(-22deg)}.footer-brand strong,.footer-brand p{grid-column:1/-1}.footer-brand strong{margin-top:.2rem;font-family:Lora,Georgia,serif;font-size:1.15rem;font-weight:500}.disclosure{color:#c9ded6;text-align:center;border-top:1px solid #fff3;margin-top:2.25rem;padding-top:1.2rem;font-size:.68rem}@media (width<=1050px){.nav-list{gap:1.1rem}.hero-grid{grid-template-columns:.9fr 1.1fr}.hero-copy{padding-inline:2.5rem}.service-grid{gap:.8rem}.process-grid li{padding-inline:1rem}}@media (width<=900px){.nav-list,.header-cta{display:none}.menu-button{display:inline-flex}.service-grid{grid-template-columns:repeat(2,1fr)}.story-copy{padding-inline:2.5rem}.process-grid{grid-template-columns:1fr;gap:1.5rem}.process-grid li{border-right:0;border-bottom:1px solid var(--border);padding-bottom:1.5rem}.service-area-grid{grid-template-columns:1fr 1.4fr}}@media (width<=800px){.hero-grid,.story-grid,.contact-grid,.service-area-grid{grid-template-columns:1fr}.hero-copy{padding:4rem 2rem 3rem}.hero-image{min-height:420px}.story-image{min-height:430px}.story-copy{max-width:none;padding:4rem 2rem}.service-area-grid{gap:1.5rem}.service-area h2{max-width:16ch}.faq-column,.quote-column{padding:4.5rem 0}.quote-column{border-top:1px solid var(--border);border-left:0}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.container{width:min(100% - 2rem, var(--container))}h1{font-size:clamp(3.1rem,14vw,4.2rem)}h2{font-size:clamp(2.1rem,10vw,3rem)}.concept-bar{font-size:.65rem}.header-inner{min-height:4.5rem}.brand-name{font-size:1.25rem}.hero-copy{padding:3.5rem 1.25rem 2.5rem}.hero-image{height:88vw;min-height:330px;max-height:430px}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item{min-height:108px;padding:1.1rem}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid var(--border)}.services-section{padding-block:4.5rem}.section-heading{margin-bottom:2rem}.service-grid{grid-template-columns:1fr}.service-card img{aspect-ratio:1.6}.story-image{min-height:360px}.story-copy{padding:3.5rem 1.25rem}.process-section{padding-block:4rem}.process-grid li{grid-template-columns:52px 38px 1fr;padding-inline:0}.service-area{padding-block:3.5rem}.service-area img{margin-top:1rem}.faq-column,.quote-column{padding:3.5rem 0}.field-grid,.footer-grid{grid-template-columns:1fr}.quote-form input,.quote-form select,.quote-form textarea{font-size:1rem}.actions{flex-direction:column;align-items:stretch;gap:.8rem}.text-link{justify-content:center}.site-footer{padding-top:2.5rem}.footer-grid{gap:2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
