*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f0e9;color:#171612;font-family:Manrope,sans-serif}a{color:inherit;text-decoration:none}header{height:86px;position:absolute;z-index:20;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;color:white;border-bottom:1px solid #ffffff35}.brand{font-weight:600;letter-spacing:.18em;font-size:15px}.brand span{font-weight:300}nav{display:flex;gap:34px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.menu{display:none;background:none;border:0;color:white;font-size:24px}.hero{height:100svh;min-height:650px;position:relative;color:white;overflow:hidden}.slides,.slide,.shade{position:absolute;inset:0}.slide{background-size:cover;background-position:center;opacity:0;transform:scale(1.04);transition:opacity 1.3s ease,transform 7s ease}.slide.active{opacity:1;transform:scale(1)}.shade{background:linear-gradient(90deg,#080705b8 0%,#08070555 50%,#08070515 100%)}.hero-copy{position:absolute;left:7vw;bottom:13vh;max-width:750px}.eyebrow{font-size:11px;letter-spacing:.28em;font-weight:600;margin:0 0 24px}.eyebrow.dark{color:#806d54}.hero h1,.intro h2,.section-head h2,.statement h2,.contact h2{font:500 clamp(48px,6.5vw,96px)/.98 'Playfair Display',serif;margin:0}.hero h1 em,.statement h2 em{font-weight:500;color:#d7c5a6}.hero-copy>p:not(.eyebrow){max-width:570px;line-height:1.8;color:#eee8df;margin:30px 0}.actions{display:flex;gap:12px}.btn{display:inline-block;padding:17px 25px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.light{background:#f6f2ea;color:#171612}.ghost{border:1px solid #ffffff80}.dark{background:#171612;color:white}.counter{position:absolute;right:5vw;bottom:7vh;display:flex;align-items:center;gap:12px;font-size:11px}.counter i{display:block;width:70px;height:1px;background:#ffffff77}.intro{padding:140px 7vw;display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;align-items:end}.intro>p:last-child{line-height:1.9;color:#625e57;max-width:520px}.projects{padding:0 5vw 130px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.section-head h2{font-size:clamp(44px,5vw,72px)}.section-head>p{font-size:13px;line-height:1.8;color:#6c675e}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid figure{height:600px;margin:0;position:relative;overflow:hidden}.grid figure.wide{grid-column:span 2;height:700px}.grid img,.statement img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.grid figure:hover img{transform:scale(1.025)}figcaption{position:absolute;left:0;right:0;bottom:0;padding:55px 32px 28px;color:white;background:linear-gradient(transparent,#0009);display:flex;justify-content:space-between;align-items:end}figcaption span{font-size:10px;letter-spacing:.2em;text-transform:uppercase}figcaption b{font-family:'Playfair Display';font-size:20px;font-weight:500}.services{background:#181713;color:#f5f0e8;padding:130px 7vw}.services .section-head{margin-bottom:70px}.service-list{border-top:1px solid #ffffff26}.service-list article{display:grid;grid-template-columns:80px 1fr 1fr;align-items:center;padding:35px 0;border-bottom:1px solid #ffffff26}.service-list span{font-size:10px;color:#a99271}.service-list h3{font:500 35px 'Playfair Display'}.service-list p{color:#aaa49a;line-height:1.7;max-width:420px}.statement{height:85vh;position:relative;color:white;display:flex;align-items:center;padding:7vw;overflow:hidden}.statement>div:last-child{position:relative;z-index:2}.contact{padding:140px 7vw;display:grid;grid-template-columns:1fr .5fr;gap:10vw;align-items:end}.contact>div:first-child>p:not(.eyebrow){line-height:1.9;color:#625e57;max-width:560px;margin:30px 0}.contact-note{font-size:11px;letter-spacing:.14em;line-height:2;color:#81796f}footer{background:#0e0e0c;color:#ddd5c8;padding:50px 5vw 90px;display:flex;justify-content:space-between;align-items:center;font-size:11px}.mobile-cta{display:none}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:760px){header{height:70px;padding:0 20px}nav{display:none}.menu{display:block}.hero{min-height:700px}.hero-copy{left:22px;right:22px;bottom:15vh}.hero h1{font-size:50px}.hero-copy>p:not(.eyebrow){font-size:13px;margin:22px 0}.actions{flex-direction:column;align-items:flex-start}.counter{right:22px}.intro{padding:90px 22px;display:block}.intro h2{font-size:46px;margin-bottom:30px}.projects{padding:0 14px 90px}.section-head{display:block;margin:0 8px 30px}.section-head>p{margin-top:20px}.grid{display:block}.grid figure,.grid figure.wide{height:62vh;min-height:430px;margin-bottom:14px}.grid figcaption{padding:50px 20px 20px;display:block}.grid figcaption b{display:block;margin-top:8px}.services{padding:90px 22px}.services .section-head h2{font-size:48px}.service-list article{grid-template-columns:45px 1fr;padding:28px 0}.service-list h3{font-size:29px}.service-list p{grid-column:2}.statement{height:70vh;padding:22px}.statement h2{font-size:52px}.contact{padding:90px 22px 130px;display:block}.contact h2{font-size:50px}.contact-note{margin-top:60px}footer{display:block;padding:45px 22px 100px}footer p{margin-top:25px}.mobile-cta{display:flex;position:fixed;z-index:50;bottom:12px;left:12px;right:12px;background:#e8ddca;color:#171612;padding:17px 20px;justify-content:space-between;font-size:12px;text-transform:uppercase;letter-spacing:.1em;box-shadow:0 8px 30px #0004}}

.contact-actions{display:flex;gap:10px;flex-wrap:wrap}.outline-dark{border:1px solid #171612;color:#171612;background:transparent}@media(max-width:760px){.contact-actions{flex-direction:column;align-items:stretch}.contact-actions .btn{text-align:center}}


.slide{background-image:var(--photo);transform:none;transition:opacity 1.2s ease}.slide.active{transform:none}.hero>.shade{z-index:1;background:linear-gradient(90deg,rgba(10,9,8,.78),rgba(10,9,8,.40) 55%,rgba(10,9,8,.20))}.hero-copy{z-index:2}.counter{z-index:2}.grid figure,.grid figure.wide{height:auto;aspect-ratio:4/3}.grid img{display:block}.statement img{position:absolute;inset:0}.hero{height:92svh;min-height:650px}.hero-copy{bottom:12vh}.hero h1{font-size:clamp(48px,6vw,88px)}
@media(max-width:760px){.hero{height:100svh;min-height:720px;padding:0;display:block}.slides{position:absolute;inset:0;width:auto;aspect-ratio:auto}.slide{background-image:var(--photo-mobile)}.hero>.shade{display:block;background:linear-gradient(180deg,rgba(10,9,8,.35),rgba(10,9,8,.25) 25%,rgba(10,9,8,.75) 65%,rgba(10,9,8,.90))}.hero-copy{position:absolute;left:22px;right:22px;bottom:115px;padding:0;max-width:none}.hero h1{font-size:clamp(38px,10.5vw,50px)}.hero-copy>p:not(.eyebrow){margin:20px 0;line-height:1.65}.hero .actions{flex-direction:row;flex-wrap:wrap}.hero .btn{padding:15px 18px}.hero .counter{bottom:75px;right:22px}.grid figure,.grid figure.wide{height:auto;min-height:0;aspect-ratio:4/3}.statement{height:65vh;min-height:400px}.grid figure:hover img{transform:none}}

@media(max-width:760px){.slide{transition:none;transform:none!important}.hero-copy.reveal{transform:none;transition:opacity .7s ease}.counter{display:none}.reveal{transform:none;transition:opacity .6s ease}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.slide,.reveal{transition:none;transform:none}.reveal{opacity:1}}

@media(max-width:760px){.hero{background:#181713;height:90svh;min-height:700px}.slides{inset:0 0 auto;height:65%;min-height:380px}.slide{background-image:var(--photo);background-position:center;transition:opacity 1.2s ease;transform:none!important}.hero>.shade{background:linear-gradient(180deg,rgba(10,9,8,.25) 0%,rgba(10,9,8,.10) 25%,rgba(24,23,19,.6) 45%,#181713 65%,#181713 100%)}.hero-copy{bottom:100px}.hero h1{font-size:clamp(36px,9.6vw,46px)}.hero .counter{display:none}}

.intake-section{align-items:start;gap:60px}.intake-card{background:#fff;padding:32px;border:1px solid #dedbd4;scroll-margin-top:100px}.intake-card fieldset{border:0;padding:0;margin:25px 0}.intake-card legend{font:28px "Playfair Display",serif;margin-bottom:20px}.intake-card label{display:block;font-size:14px;margin:16px 0}.intake-card label span{opacity:.6}.intake-card input:not([type=checkbox]),.intake-card select,.intake-card textarea{width:100%;padding:13px;margin-top:8px;border:1px solid #c9c5bc;background:#faf9f6;color:#181713;font:inherit;border-radius:0}.intake-card input:focus,.intake-card select:focus,.intake-card textarea:focus{outline:2px solid #9a8060;outline-offset:2px}.intake-card .consent{display:flex;gap:10px;line-height:1.6}.consent input{flex-shrink:0;width:18px}.step-count{font-size:12px;text-transform:uppercase;letter-spacing:2px}.step-progress{display:flex;gap:8px}.step-progress span{height:3px;flex:1;background:#e4e0d9}.step-progress .selected{background:#806748}.intake-actions{display:flex;gap:10px;justify-content:space-between}.intake-actions button{cursor:pointer}.upload-note{font-size:13px!important;line-height:1.6!important}.intake-card [hidden]{display:none!important}#form-error{color:#9c2727;font-size:14px}.thank-you{max-width:800px;margin:15vh auto;padding:30px}.thank-you h1{font:clamp(38px,6vw,64px) "Playfair Display",serif}.thank-you p{margin:25px 0;line-height:1.7}@media(max-width:760px){.intake-section{display:block}.intake-card{margin-top:30px;padding:22px}.intake-actions button{padding:14px 16px;font-size:11px}}

.intake-section{grid-template-columns:1fr 1fr}.intake-section .eyebrow.dark,.thank-you .eyebrow.dark{background:transparent}.intake-section h2{font-size:clamp(42px,5vw,68px)}@media(max-width:760px){.intake-section h2{font-size:44px}}

.quote-invite{padding:42px;border:1px solid #c9c2b6;background:repeating-linear-gradient(0deg,transparent,transparent 23px,#b9ad9a17 24px),repeating-linear-gradient(90deg,transparent,transparent 23px,#b9ad9a17 24px);align-self:stretch}.quote-invite h3{font:40px/1.1 "Playfair Display",serif;margin:22px 0}.quote-invite p:not(.eyebrow){line-height:1.7;font-size:15px;margin-bottom:28px}.quote-invite>span{display:block;font-size:11px;letter-spacing:1px;margin-top:20px}.quote-dialog{padding:0;border:0;width:min(960px,calc(100vw - 32px));max-height:90svh;background:#fbfaf7;color:#181713;overflow:auto;box-shadow:0 30px 100px #0006}.quote-dialog::backdrop{background:#141310b8;backdrop-filter:blur(5px)}.quote-dialog[open]{animation:dialog-in .4s cubic-bezier(.2,.8,.2,1)}.dialog-shell{display:grid;grid-template-columns:.85fr 1fr;min-height:590px}.design-panel{position:relative;padding:34px;background:#262c29;color:#d2c2a3;overflow:hidden;background-image:linear-gradient(#d2c2a312 1px,transparent 1px),linear-gradient(90deg,#d2c2a312 1px,transparent 1px);background-size:25px 25px}.drawing-label{font-size:9px!important;letter-spacing:2px;line-height:1.8}.architectural-drawing{width:100%;margin:30px 0 10px;opacity:.9}.architectural-drawing path{stroke-dasharray:700;stroke-dashoffset:0;animation:draw-plan 2s ease both}.design-copy h2{font:42px/1.05 "Playfair Display",serif;margin:15px 0}.design-copy>p:last-child{font-size:13px;line-height:1.7;color:#d7dbd6}.drawing-footer{display:flex;justify-content:space-between;font:8px monospace;letter-spacing:1px;margin-top:40px;border-top:1px solid #d2c2a344;padding-top:15px}.quote-dialog .intake-card{padding:50px 34px 32px;border:0;margin:0;background:#fbfaf7;position:relative;scroll-margin:0}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:transparent;font-size:30px;width:40px;height:40px;cursor:pointer;color:#625e57}.quote-dialog fieldset:not([hidden]){animation:step-in .35s ease both}.quote-dialog input[type=file]{background:#f0ede6;border:1px dashed #b6ab98;font-size:12px}.quote-dialog .btn{transition:background .2s,transform .2s}.quote-dialog .btn:hover{transform:translateY(-2px)}.step-progress span{transition:background .35s}.quote-dialog .step-count{margin-bottom:14px}.quote-dialog .intake-actions{margin-top:25px}.quote-invite .eyebrow.dark{background:transparent}@keyframes dialog-in{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}@keyframes step-in{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}@keyframes draw-plan{from{stroke-dashoffset:700}to{stroke-dashoffset:0}}@media(max-width:760px){.quote-invite{padding:28px;margin-top:30px}.quote-dialog{width:calc(100vw - 20px);max-height:92svh}.dialog-shell{display:block;min-height:0}.design-panel{padding:20px 24px}.architectural-drawing{position:absolute;width:135px;right:8px;top:25px;margin:0;opacity:.35}.design-copy h2{font-size:30px}.design-copy>p:last-child,.drawing-footer,.design-copy .drawing-label{display:none}.design-panel>.drawing-label{font-size:8px!important;padding-right:30px}.quote-dialog .intake-card{padding:24px}.dialog-close{position:fixed;top:8px;right:8px;color:#fff;background:#262c29;border-radius:50%;z-index:5}.quote-dialog legend{font-size:25px}.quote-dialog .step-count{margin-top:0}}@media(prefers-reduced-motion:reduce){.quote-dialog[open],.quote-dialog fieldset:not([hidden]),.architectural-drawing path{animation:none}.quote-dialog .btn:hover{transform:none}}

.kitchen-drawing{margin:30px 0 15px}.kitchen-drawing path{stroke-dasharray:1200;animation:draw-kitchen 2.8s ease both}.kitchen-drawing .kitchen-upper{animation-delay:.2s}.kitchen-drawing .kitchen-counter{animation-delay:.45s}.kitchen-drawing .kitchen-appliances{animation-delay:.65s}.kitchen-drawing .kitchen-island{animation-delay:.9s}.kitchen-drawing .kitchen-detail{animation-delay:1.1s}@keyframes draw-kitchen{from{stroke-dashoffset:1200;opacity:0}to{stroke-dashoffset:0;opacity:1}}@media(max-width:760px){.kitchen-drawing{width:150px;top:25px;margin:0}}@media(prefers-reduced-motion:reduce){.kitchen-drawing path{animation:none}}
