:root,[data-theme=light]{--font-display:'Zodiak',Georgia,serif;--font-body:'Satoshi',Arial,sans-serif;--color-bg:oklch(.975 .012 90);--color-surface:oklch(.995 .004 90);--color-offset:oklch(.93 .019 95);--color-text:oklch(.27 .036 135);--color-muted:oklch(.46 .025 125);--color-primary:oklch(.35 .052 137);--color-primary-hover:oklch(.28 .05 137);--color-inverse:oklch(.98 .012 90);--color-border:oklch(.27 .036 135 / .18);--color-dark:oklch(.27 .039 139);--color-error:oklch(.45 .17 25);--text-xs:clamp(.75rem,.72rem + .15vw,.82rem);--text-sm:clamp(.875rem,.83rem + .18vw,.96rem);--text-base:clamp(1rem,.96rem + .18vw,1.08rem);--text-lg:clamp(1.13rem,1.07rem + .28vw,1.3rem);--text-xl:clamp(1.85rem,1.2rem + 1.6vw,3rem);--text-hero:clamp(3.15rem,1.8rem + 3.5vw,5.4rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--gutter:clamp(var(--space-6),5vw,var(--space-20))}
[data-theme=dark]{--color-bg:oklch(.2 .016 130);--color-surface:oklch(.25 .019 130);--color-offset:oklch(.29 .023 130);--color-text:oklch(.94 .015 90);--color-muted:oklch(.77 .02 100);--color-primary:oklch(.84 .055 110);--color-primary-hover:oklch(.91 .04 110);--color-inverse:oklch(.22 .02 130);--color-border:oklch(.94 .015 90 / .2);--color-dark:oklch(.16 .02 135);--color-error:oklch(.8 .11 25)}
.skip{position:absolute;left:var(--space-4);top:-100px;z-index:200;background:var(--color-surface);padding:var(--space-3)}.skip:focus{top:var(--space-2)}
.demo-bar{min-height:34px;display:flex;justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-4);background:var(--color-primary);color:var(--color-inverse);font-size:var(--text-xs);letter-spacing:.08em}.demo-bar span{letter-spacing:0;opacity:.92}
.header{position:sticky;top:0;z-index:20;min-height:96px;padding:var(--space-5) var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);background:var(--color-bg);border-bottom:1px solid var(--color-border)}
.brand{display:flex;align-items:center;gap:var(--space-3);text-decoration:none}.brand>span{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.1;letter-spacing:-.065em}.brand small{font-family:var(--font-body);font-size:var(--text-xs);display:block;letter-spacing:.16em;margin-top:var(--space-1)}
.desktop-nav{display:flex;gap:var(--space-8)}.desktop-nav a,.mobile-nav a{font-size:var(--text-sm);text-decoration:none;padding-block:var(--space-3)}.desktop-nav a:hover,.text-link:hover{color:var(--color-primary);text-decoration:underline;text-underline-offset:6px}
.header-actions{display:flex;align-items:center;gap:var(--space-4)}.theme-toggle{font-size:var(--text-lg);width:44px;height:44px;border:1px solid var(--color-border);border-radius:50%}.theme-toggle:hover{background:var(--color-offset)}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-8);background:var(--color-primary);color:var(--color-inverse);padding:var(--space-4) var(--space-6);border-radius:var(--radius-sm);font-weight:700;font-size:var(--text-sm);text-decoration:none;border:1px solid transparent}
.button:hover{background:var(--color-primary-hover)}.button:active{transform:translateY(1px)}.button.compact{min-height:44px;padding:var(--space-3) var(--space-5);gap:var(--space-5)}.button.full{width:100%;margin-top:var(--space-4)}
.menu-toggle{display:none;min-height:44px;padding:var(--space-2);font-size:var(--text-sm)}.mobile-nav{position:absolute;left:0;right:0;top:100%;background:var(--color-bg);padding:var(--space-4) var(--gutter);border-bottom:1px solid var(--color-border)}.mobile-nav a{display:block}
.hero{display:grid;grid-template-columns:1.02fr 1fr;min-height:650px}.hero-copy{padding:var(--space-20) var(--space-8) var(--space-10) var(--gutter);display:flex;align-items:flex-start;flex-direction:column}.eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:.15em;margin-bottom:var(--space-6)}h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.045em}h1{font-size:var(--text-hero);line-height:1.09;max-width:11ch}h1 span{color:var(--color-muted)}
.hero-description{color:var(--color-muted);margin-block:var(--space-6) var(--space-8);max-width:42ch}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-height:44px;font-size:var(--text-sm);font-weight:700;text-decoration:none}.hero-copy>.text-link{margin-top:var(--space-3)}.hero-bottom{display:flex;align-items:center;gap:var(--space-4);margin-top:auto;padding-top:var(--space-10);font-size:var(--text-xs);line-height:1.6}.small-leaf{font-family:var(--font-display);font-size:var(--text-xl)}
.hero-image{position:relative;margin:var(--space-6) var(--space-6) var(--space-6) 0;overflow:hidden;border-radius:var(--radius-sm)}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:63% center}.hero-image figcaption{position:absolute;bottom:var(--space-6);left:var(--space-6);right:var(--space-6);display:flex;justify-content:space-between;gap:var(--space-4);font-size:var(--text-xs);letter-spacing:.1em;color:#fff;background:rgba(31,40,29,.77);padding:var(--space-3) var(--space-4);max-width:none}
.service-strip{display:flex;justify-content:center;align-items:center;gap:var(--space-12);padding:var(--space-5) var(--gutter);border-block:1px solid var(--color-border);font-size:var(--text-sm)}.strip-dot{width:4px;height:4px;flex-shrink:0;background:var(--color-muted);border-radius:50%}
.section-wrap{max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}h2{font-size:var(--text-xl);line-height:1.25}h3{font-size:var(--text-lg);font-weight:700;line-height:1.3}
.services{display:grid;grid-template-columns:.84fr 1fr;gap:clamp(var(--space-8),7vw,var(--space-24));padding-block:var(--space-24)}.kitchen-image{position:relative;height:570px}.kitchen-image img{width:100%;height:100%;object-fit:cover;object-position:center 48%;border-radius:var(--radius-sm)}.kitchen-image figcaption{position:absolute;bottom:var(--space-6);right:calc(-1 * var(--space-6));background:var(--color-bg);padding:var(--space-5) var(--space-8);font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-text)}.service-copy{padding-top:var(--space-4)}.service-copy>p:not(.eyebrow){margin-top:var(--space-5);color:var(--color-muted)}
.service-tabs{display:flex;border-bottom:1px solid var(--color-border);gap:var(--space-5);margin-block:var(--space-8) var(--space-6)}.service-tabs button{font-size:var(--text-sm);min-height:48px;padding:var(--space-3) var(--space-1);border-bottom:2px solid transparent;color:var(--color-muted)}.service-tabs button[aria-selected=true]{border-bottom-color:var(--color-primary);font-weight:700;color:var(--color-text)}.service-tabs button:hover{background:var(--color-offset)}
#service-panel{min-height:260px}#service-description{margin-top:var(--space-3);color:var(--color-muted);font-size:var(--text-sm)}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3) var(--space-4);margin-block:var(--space-5);font-size:var(--text-sm)}.checklist li{display:flex;gap:var(--space-2)}.checklist li::before{content:'✓';color:var(--color-primary);font-weight:700}
.approach{padding-block:var(--space-4) var(--space-24);display:grid;grid-template-columns:1fr 1.05fr;gap:var(--space-16)}.approach-intro>p:last-child{color:var(--color-muted);margin-top:var(--space-5);max-width:30ch}.steps{list-style:none;display:grid}.steps li{display:flex;gap:var(--space-8);padding-block:var(--space-6);border-top:1px solid var(--color-border)}.steps li>span{font-size:var(--text-xs);padding-top:var(--space-1);font-weight:700}.steps li p{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-muted)}
.quote-section{background:var(--color-dark)}.quote-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24);padding-block:var(--space-20);align-items:start}.quote-intro{color:#f4f3e8;padding-top:var(--space-6)}.quote-intro .eyebrow{color:#ced4bd}.quote-intro h2{font-size:clamp(2.4rem,2rem + 1vw,3.5rem);max-width:13ch}.quote-intro>p:not(.eyebrow){margin-top:var(--space-6);color:#d0d5c8;max-width:33ch}.demo-note{margin-top:var(--space-16);padding-top:var(--space-6);border-top:1px solid #ffffff35;max-width:36ch}.demo-note strong{font-size:var(--text-sm)}.demo-note p{font-size:var(--text-sm);color:#d0d5c8;margin-top:var(--space-2)}
.quote-card{padding:var(--space-8);background:var(--color-surface);border-radius:var(--radius-md)}.form-top{display:flex;justify-content:space-between;gap:var(--space-4);font-size:var(--text-xs);font-weight:700}.form-top span:first-child{letter-spacing:.1em}.form-top span:last-child{color:var(--color-muted);font-weight:400}.progress-track{height:3px;background:var(--color-border);margin-block:var(--space-4) var(--space-8)}#progress{height:100%;width:50%;background:var(--color-primary);transition:width 240ms ease}.form-subtitle{color:var(--color-muted);font-size:var(--text-sm);margin-block:var(--space-2) var(--space-6)}.field{margin-bottom:var(--space-4)}.field label,legend{display:block;font-size:var(--text-sm);font-weight:700;margin-bottom:var(--space-2)}.field input,.field select{width:100%;min-width:0;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:48px;padding:var(--space-3);font-size:var(--text-base)}input::placeholder{color:var(--color-muted);opacity:.85}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.micro{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-2)}.error{font-size:var(--text-xs);color:var(--color-error);margin-top:var(--space-2)}[aria-invalid=true]{border-color:var(--color-error)!important}.extras{border:0;margin-block:var(--space-4)}.extras legend span{font-weight:400;color:var(--color-muted)}.extras label{display:flex;align-items:center;gap:var(--space-3);min-height:44px;font-size:var(--text-sm)}.extras input{accent-color:var(--color-primary);width:18px;height:18px}.sample-button,.back-button{font-size:var(--text-sm);text-decoration:underline;text-underline-offset:4px;min-height:44px}.sample-button{margin-bottom:var(--space-3)}.back-button{display:block;margin-inline:auto;margin-top:var(--space-2)}.request-summary{margin-block:var(--space-6)}.request-summary>div{display:grid;grid-template-columns:90px 1fr;gap:var(--space-3);padding-block:var(--space-3);border-bottom:1px solid var(--color-border);font-size:var(--text-sm)}dt{color:var(--color-muted)}dd{overflow-wrap:anywhere;font-weight:500}.result-disclaimer{font-size:var(--text-sm);color:var(--color-muted)}
.areas{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-20);padding-block:var(--space-24)}.areas p:not(.eyebrow){margin-top:var(--space-5);max-width:36ch;color:var(--color-muted)}.towns{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-8);align-content:center}.towns>span{padding-block:var(--space-5);border-bottom:1px solid var(--color-border);font-size:var(--text-base)}.towns small{display:block;color:var(--color-muted);font-size:var(--text-xs);margin-top:var(--space-1)}
.faq{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-20);padding-block:0 var(--space-24)}.faq-items{border-top:1px solid var(--color-border)}details{border-bottom:1px solid var(--color-border)}summary{cursor:pointer;padding:var(--space-5) 0;font-size:var(--text-base);font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:var(--space-4)}summary::after{content:'+';font-size:var(--text-lg)}details[open] summary::after{content:'−'}details p{font-size:var(--text-sm);color:var(--color-muted);padding-bottom:var(--space-5)}
.footer{border-top:1px solid var(--color-border);display:flex;justify-content:space-between;gap:var(--space-8);padding-block:var(--space-10)}.footer-wordmark{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.06em;text-decoration:none}.footer p{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-2)}.footer-notes{text-align:right;align-self:end}.noscript-note{padding:var(--space-6);background:var(--color-offset)}
@media(max-width:1100px){.desktop-nav{gap:var(--space-5)}.hero{min-height:620px}.hero-copy{padding-top:var(--space-12)}.quote-layout{gap:var(--space-12)}.services{gap:var(--space-12)}.kitchen-image{height:600px}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:block}.header{min-height:80px}.hero{min-height:560px}.hero-copy{padding-bottom:var(--space-8)}.hero-image{margin-right:var(--space-4)}.hero-bottom{padding-top:var(--space-8)}.service-strip{gap:var(--space-6)}.services,.approach,.areas,.faq{gap:var(--space-8)}.checklist{grid-template-columns:1fr}.kitchen-image{height:630px}.quote-layout{gap:var(--space-8)}.quote-card{padding:var(--space-6)}.towns{gap:0 var(--space-4)}}
@media(max-width:680px){.demo-bar{font-size:var(--text-xs);gap:var(--space-2);flex-wrap:wrap;line-height:1.3}.demo-bar>span{font-size:var(--text-xs)}.header{padding:var(--space-3) var(--gutter);gap:var(--space-3)}.brand>span{font-size:clamp(1.65rem,5vw,2rem)}.brand svg{width:32px}.brand small{font-size:var(--text-xs);letter-spacing:.08em}.header-actions{gap:var(--space-2)}.header-actions .compact{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:var(--space-12) var(--gutter) var(--space-8)}.hero h1{font-size:clamp(3.3rem,12vw,4.6rem);max-width:12ch}.hero-description{margin-block:var(--space-5) var(--space-6)}.hero-bottom{display:none}.hero-image{height:360px;margin:0 var(--gutter) var(--space-6)}.hero-image figcaption{left:var(--space-4);right:var(--space-4);bottom:var(--space-4);padding:var(--space-3);font-size:var(--text-xs)}.service-strip{gap:var(--space-3);flex-wrap:wrap;padding:var(--space-4);font-size:var(--text-xs)}.service-strip .strip-dot{width:3px;height:3px}.services{grid-template-columns:1fr;padding-block:var(--space-16);gap:var(--space-10)}.kitchen-image{height:330px}.kitchen-image img{object-position:center 57%}.kitchen-image figcaption{right:calc(-1 * var(--space-2));padding:var(--space-4) var(--space-5);font-size:var(--text-lg)}.service-copy{padding-top:0}.service-tabs{gap:var(--space-6);margin-top:var(--space-6)}.checklist{grid-template-columns:1fr 1fr}.approach,.quote-layout,.areas,.faq{grid-template-columns:1fr}.approach{padding-bottom:var(--space-16);gap:var(--space-8)}.steps li{gap:var(--space-5)}.quote-layout{padding-block:var(--space-12);gap:var(--space-8)}.quote-intro{padding-top:0}.quote-intro h2{max-width:none}.quote-intro>p:not(.eyebrow){margin-top:var(--space-4)}.demo-note{margin-top:var(--space-6);padding-top:var(--space-5)}.quote-card{padding:var(--space-5)}.quote-layout.section-wrap{padding-inline:var(--space-4)}.quote-intro{padding-inline:var(--space-2)}.areas{padding-block:var(--space-16);gap:var(--space-6)}.faq{padding-bottom:var(--space-16);gap:var(--space-8)}.footer{flex-direction:column;padding-block:var(--space-8);gap:var(--space-4)}.footer-notes{text-align:left;align-self:start}.eyebrow{margin-bottom:var(--space-4)}}
@media(max-width:360px){.checklist{grid-template-columns:1fr}.service-tabs{gap:var(--space-3)}.field-row{grid-template-columns:1fr}.service-strip{gap:var(--space-2)}}
