@charset "UTF-8";
:root{--charcoal:#252824;--deep:#1e211e;--cream:#f5f2eb;--paper:#ebe6dc;--brass:#c9a570;--ink:#30352f;--muted:#666c63;--line:rgba(47,53,46,.2)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--charcoal);color:var(--cream);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--brass);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;line-height:1.05}h1{font-size:clamp(60px,6.5vw,96px)}h2{font-size:clamp(42px,4.4vw,64px)}h3{font-family:Georgia,'Times New Roman',serif;font-size:28px;font-weight:400;letter-spacing:-.025em;line-height:1.2}em{font-weight:400;color:var(--brass)}.container{width:min(1180px,calc(100% - 96px));margin-inline:auto}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;line-height:1.6}.site-header{border-bottom:1px solid #ffffff19}.header-inner{min-height:136px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;flex-direction:column;flex-shrink:0}.wordmark{font-size:26px;letter-spacing:.05em;font-weight:700;line-height:1.3}.wordmark>span{font-weight:400;color:var(--brass)}.brand-caption{font-size:8px;letter-spacing:.24em;color:#c5c8bf;margin-top:5px}.brand-logo{display:block;width:230px;max-width:100%;height:auto;object-fit:contain}.site-nav{display:flex;align-items:center}
.nav-toggle{display:none;background:none;border:0;color:var(--cream);font:inherit;cursor:pointer;align-items:center;gap:10px;padding:8px 0}
.nav-toggle-label{font-size:12px;letter-spacing:.14em;font-weight:700}
.nav-toggle-bars{display:flex;flex-direction:column;gap:5px;width:20px}
.nav-toggle-bars span{display:block;height:2px;background:var(--cream);transition:transform .2s ease,opacity .2s ease}
.nav-toggle.is-open .nav-toggle-bars span:first-child{transform:translateY(3.5px) rotate(45deg)}
.nav-toggle.is-open .nav-toggle-bars span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.nav-menu{display:flex;gap:32px;font-size:13px;color:#dedfd7}
.nav-menu a{position:relative;padding-block:6px}
.nav-menu a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--brass);transition:width .2s ease}
.nav-menu a:hover,.nav-menu a[aria-current="page"],.header-phone:hover{color:var(--brass)}
.nav-menu a[aria-current="page"]::after,.nav-menu a:hover::after{width:100%}
.footer-nav{display:flex;gap:20px}
.footer-nav a:hover{color:var(--brass)}.header-phone{font-size:14px;white-space:nowrap}.header-phone span{margin-left:16px;color:var(--brass)}.hero{overflow:hidden;background:radial-gradient(ellipse at 80% 35%,#44443544,transparent 65%)}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;padding-top:88px;padding-bottom:80px}.hero .eyebrow{color:var(--brass);display:flex;align-items:center;gap:12px;margin-bottom:25px}.small-rule{width:27px;height:1px;background:var(--brass);flex-shrink:0}.hero-intro{max-width:440px;color:#c6c9bf;font-size:17px;line-height:1.8;margin-top:28px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.button{padding:16px 24px;min-height:54px;display:inline-flex;justify-content:space-between;align-items:center;gap:30px;font-size:13px;font-weight:700;border:1px solid transparent;transition:background .15s,color .15s}.button-brass{background:var(--brass);color:var(--deep)}.button-brass:hover{background:#e0bd88}.button-outline{border-color:#ffffff45}.button-outline:hover{background:#ffffff12}.hero-note{font-size:12px;color:#aeb3a6;margin-top:20px}.hero-bottom{padding-block:22px;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;gap:12px;color:#bdc3b5;font-size:10px;letter-spacing:.22em}.hero-art{position:relative;min-height:444px;border:1px solid #c9a57035;background:linear-gradient(90deg,#c9a57006 1px,transparent 1px),linear-gradient(#c9a57006 1px,transparent 1px);background-size:28px 28px;display:flex;align-items:center;justify-content:center;margin-left:15px}.drawing-label{position:absolute;top:24px;left:26px;font-size:8px;letter-spacing:.2em;color:#c9a570b0}.door-drawing{position:relative;width:155px;height:292px;border:6px double #c9a57085;box-shadow:0 0 0 8px #252824,0 0 0 9px #c9a57045;transform:rotate(-7deg);background:linear-gradient(95deg,#b6956415,#b695642a,#b6956408)}.door-panel{position:absolute;left:17px;right:17px;border:3px double #c9a57070}.door-panel.upper{top:19px;height:139px}.door-panel.lower{bottom:19px;height:76px}.door-handle{position:absolute;right:7px;top:165px;height:5px;width:24px;background:var(--brass);border-radius:3px}.door-handle:before{content:"";position:absolute;right:0;top:-3px;width:5px;height:21px;background:var(--brass)}.measure{position:absolute;color:#c9a57090;font-size:8px;letter-spacing:.15em}.measure-top{width:200px;border-top:1px solid #c9a57050;top:65px;left:calc(50% - 100px);text-align:center}.measure-top span{position:relative;top:-20px}.measure-side{height:285px;right:44px;top:85px;border-right:1px solid #c9a57050}.measure-side span{writing-mode:vertical-rl;position:relative;right:-17px;top:80px}.art-caption{position:absolute;bottom:21px;left:25px;right:25px;display:flex;justify-content:space-between;gap:14px;color:#b8b9a8;font-family:Georgia,serif;font-style:italic;font-size:12px}.section-light{background:var(--cream);color:var(--ink)}.services{padding:94px 0 100px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:52px}.section-heading .eyebrow{color:#746449;margin-bottom:18px}.section-heading>p{max-width:330px;color:var(--muted);font-size:15px;padding-bottom:6px}.service-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.service-card{padding:34px 40px 36px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.service-card:nth-child(even){border-left:1px solid var(--line);padding-left:42px;padding-right:0}.service-number{color:#8b7350;font-size:11px;letter-spacing:.12em;display:block;margin-bottom:24px}.service-card h3{margin-bottom:18px}.service-card p{max-width:440px;color:var(--muted);font-size:14px;margin-bottom:28px}.service-card>a{margin-top:auto;font-size:12px;font-weight:700;display:flex;gap:24px;align-items:center;padding-block:8px}.service-card>a:hover{text-decoration:underline}.service-card>a span{color:#8b7350;font-size:18px}.approach{padding:100px 0}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px}.approach .eyebrow{color:var(--brass);margin-bottom:23px}.approach-intro{color:#c6c9bf;max-width:365px;margin-top:26px;font-size:15px}.signature{display:block;font:italic 30px Georgia,serif;margin-top:30px;color:var(--brass)}.signature span{font:11px Arial,sans-serif;letter-spacing:.08em;color:#aeb3a6;margin-left:10px}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:25px;border-top:1px solid #ffffff25;padding:26px 0}.steps li>span{color:var(--brass);font-size:11px;padding-top:5px}.steps h3{font-size:24px;margin-bottom:11px}.steps p{color:#b9c0b1;font-size:14px}.area-strip{background:#30352e;border-block:1px solid #ffffff15;padding:47px 0;text-align:center}.area-strip .eyebrow{color:var(--brass);margin-bottom:12px}.area-strip h2{font-size:36px}.area-strip p:last-child{font-size:13px;color:#c0c5b7;margin-top:15px}.contact{padding:96px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.contact .eyebrow{color:#746449;margin-bottom:23px}.contact h2 em{color:#927348}.contact-grid>div>p:last-child{max-width:390px;margin-top:25px;color:var(--muted);font-size:15px}.contact-card{background:var(--paper);padding:38px 36px;border-top:3px solid #b2966f}.contact-label{font-size:10px;font-weight:700;letter-spacing:.18em;color:#686252}.contact-number{display:block;font-family:Georgia,serif;font-size:clamp(27px,3vw,40px);letter-spacing:-.025em;margin-block:7px 17px;white-space:nowrap}.contact-number:hover{text-decoration:underline}.contact-card p{color:#64675e;font-size:13px;max-width:330px}.button-dark{background:var(--charcoal);color:var(--cream);margin-top:25px;width:100%;gap:12px}.button-dark:hover{background:#454c40}.email-link{display:block;margin-top:20px;text-decoration:underline;font-size:14px;overflow-wrap:anywhere}.site-footer{padding:35px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:11px;color:#aeb3a6}.footer-brand{color:var(--cream);font-size:19px;font-family:Georgia,serif}.footer-brand span{display:block;font:10px Arial,sans-serif;color:#aeb3a6;margin-top:7px}.footer-inner>a:last-child{padding:10px}.mobile-contact{display:none}.skip-link{position:fixed;top:-100px;left:16px;padding:12px 22px;background:var(--brass);color:var(--deep);z-index:100}.skip-link:focus{top:12px}
.kitchen-process,.kitchen-detail{padding:72px 0}
.kitchen-handmade{padding:80px 0;border-top:1px solid #ffffff19;background:radial-gradient(ellipse at 85% 30%,#44443544,transparent 65%)}
.kitchen-handmade .eyebrow{color:var(--brass);margin-bottom:18px}
.kitchen-section{padding:72px 0;border-top:1px solid var(--line)}
.kitchen-section .detail-body strong{color:var(--brass);font-weight:700}
.kitchen-cta{padding:96px 0;border-top:1px solid #ffffff19;background:radial-gradient(ellipse at 20% 80%,#44443544,transparent 65%)}
.kitchen-cta-inner{max-width:760px}
.kitchen-cta .eyebrow{color:var(--brass);margin-bottom:20px}
.kitchen-cta h2{font-size:clamp(30px,3.4vw,44px);letter-spacing:-.03em;margin-bottom:24px}
.kitchen-cta-sub{max-width:560px;color:#c6c9bf;margin-bottom:32px}
.kitchen-steps-four{grid-template-columns:repeat(4,1fr)}
.kitchen-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;counter-reset:kitchen}
.kitchen-steps li{border-top:2px solid var(--brass);padding-top:22px}
.kitchen-steps li>span{display:block;font-size:12px;letter-spacing:.14em;color:var(--brass);font-weight:700;margin-bottom:14px}
.kitchen-steps h3{font-size:24px;margin-bottom:12px}
.kitchen-steps p{font-size:14px;color:inherit;opacity:.85;max-width:320px}
.tick-list{list-style:none;margin:0 0 26px;padding:0;max-width:520px}
.tick-list li{position:relative;padding:10px 0 10px 34px;border-bottom:1px solid var(--line);font-size:15px}
.tick-list li::before{content:"";position:absolute;left:2px;top:16px;width:14px;height:8px;border-left:2px solid var(--brass);border-bottom:2px solid var(--brass);transform:rotate(-45deg)}
.section-light .tick-list li{border-bottom-color:rgba(47,53,46,.15)}
.page-hero{padding:88px 0 64px;background:radial-gradient(ellipse at 85% 20%,#44443544,transparent 65%)}
.page-hero .eyebrow{color:var(--brass);display:flex;align-items:center;gap:12px;margin-bottom:25px}
.page-hero h1{font-size:clamp(52px,6vw,84px)}
.page-hero-intro{max-width:520px;color:#c6c9bf;font-size:17px;margin-top:26px}
.service-detail{padding:72px 0;border-top:1px solid var(--line)}
.detail-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:start}
.detail-grid .eyebrow{color:var(--brass);margin-bottom:18px}
.detail-body p{max-width:520px;margin-bottom:18px}
.detail-body p:last-of-type{margin-bottom:26px}
.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--brass);border-bottom:1px solid currentColor;padding-bottom:4px}
.text-link:hover{opacity:.8}
.split-teaser{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;padding:80px 0}
.split-teaser .eyebrow{color:var(--brass);margin-bottom:18px}
.split-teaser-body p{max-width:440px;color:#c6c9bf;margin-bottom:24px}
.cta-band{border-top:1px solid #ffffff19;padding:56px 0}
.cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap}
.cta-band .eyebrow{color:var(--brass);margin-bottom:14px}
.cta-band h2{font-size:clamp(34px,3.6vw,48px)}
.cta-band-actions{display:flex;gap:14px;flex-wrap:wrap}
.contact-notes{padding:60px 0}
.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.note{border-top:2px solid var(--brass);padding-top:20px}
.note .eyebrow{color:var(--brass);margin-bottom:14px}
.note p:last-child{color:#c6c9bf;font-size:14px;max-width:300px}
@media(min-width:1440px){.hero-grid{padding-top:100px;padding-bottom:100px}}
@media(max-width:1000px){.kitchen-steps-four{grid-template-columns:1fr 1fr;gap:32px}.container{width:calc(100% - 56px)}.header-inner{gap:20px}.nav-menu{gap:20px}.header-phone{display:none}.detail-grid,.split-teaser{grid-template-columns:1fr;gap:36px}.kitchen-steps,.kitchen-steps-four{grid-template-columns:1fr;gap:28px}.notes-grid{grid-template-columns:1fr;gap:28px}.cta-band-inner{align-items:flex-start;flex-direction:column}.hero-grid{gap:25px;padding-top:65px}.hero-art{margin-left:0;min-height:405px}.drawing-label{font-size:7px;left:18px}.measure-side{right:22px}.art-caption{font-size:10px;left:18px;right:18px}.approach-grid,.contact-grid{gap:45px}.contact-card{padding:30px 24px}}
@media(max-width:680px){.container{width:calc(100% - 40px)}.header-inner{min-height:100px;flex-direction:column;align-items:flex-start;gap:17px;padding-block:22px}.brand-logo{width:220px;height:auto}.wordmark{font-size:24px}.brand-caption{font-size:7px}.site-nav{width:100%}
.nav-toggle{display:flex}
.nav-menu{display:none;flex-direction:column;gap:0;width:100%;margin-top:14px;border-top:1px solid #ffffff19;font-size:14px}
.nav-menu.is-open{display:flex}
.nav-menu a{padding:14px 0;border-bottom:1px solid #ffffff14}
.nav-menu a::after{display:none}.hero-grid{grid-template-columns:1fr;padding-top:47px;padding-bottom:35px;gap:36px}h1{font-size:clamp(54px,13vw,76px)}.hero .eyebrow{font-size:9px;letter-spacing:.12em;gap:8px}.hero-intro{font-size:15px;max-width:440px;margin-top:23px}.actions{gap:10px}.actions .button{flex:1;padding:14px 17px;gap:12px}.hero-note{font-size:11px}.hero-art{min-height:270px;margin:0 0 4px}.door-drawing{transform:rotate(-7deg) scale(.66)}.drawing-label{top:18px;left:18px}.measure-top{top:38px;width:150px;left:calc(50% - 75px)}.measure-side{height:170px;top:50px;right:calc(50% - 100px)}.measure-side span{top:36px}.art-caption{font-size:11px;bottom:14px}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:14px 10px;font-size:9px;letter-spacing:.15em;padding-block:20px}.services,.approach,.contact{padding:60px 0}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:24px;max-width:400px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(even){padding:28px 0;border-left:0}.service-number{margin-bottom:15px}.service-card h3{font-size:28px}.service-card p{margin-bottom:15px}.approach-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.steps li{padding:24px 0;gap:18px}.steps h3{font-size:23px}.area-strip{padding:36px 0}.area-strip h2{font-size:32px}.contact-card{padding:28px 24px}.contact-number{font-size:34px}.footer-inner{flex-wrap:wrap;gap:24px 10px}.footer-brand{width:100%}.site-footer{padding-bottom:95px}.mobile-contact{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;background:var(--charcoal);padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:10px;border-top:1px solid #ffffff30;z-index:20}.mobile-contact a{display:flex;justify-content:space-between;padding:12px 17px;font-size:13px;font-weight:700;border:1px solid #ffffff50;min-height:46px}.mobile-contact a:first-child{background:var(--brass);color:var(--deep);border-color:var(--brass)}html{scroll-padding-bottom:100px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92}
.hero-video .drawing-label,.hero-video .art-caption{z-index:2;text-shadow:0 1px 6px #00000090}
.hero-fullscreen{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center}
.hero-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-fullscreen::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,#191b17ee 25%,#191b1788 60%,#191b1738)}
.hero-fullscreen .hero-grid,.hero-fullscreen .hero-bottom{position:relative;z-index:2;grid-template-columns:1fr}
.hero-fullscreen .hero-bottom{margin-top:auto;width:100%;background:#191b1740;backdrop-filter:blur(4px)}
.hero-fullscreen .hero-intro{color:#e4e7dd}
.page-hero-media{margin-top:56px}
.brochure-doc{margin-bottom:56px}
.brochure-doc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:18px}
.brochure-doc-head h3{font-size:26px;margin-bottom:8px}
.brochure-doc-head p{font-size:13px;color:var(--muted);max-width:520px}
.brochure-open{flex-shrink:0;font-size:12px;font-weight:700;padding:12px 18px;border:1px solid var(--line)}
.brochure-open:hover{background:var(--ink);color:var(--cream)}
.brochure-open span{color:#8b7350;font-size:15px}
.brochure-frame{border:1px solid var(--line);background:#fff}
.brochure-frame iframe{display:block;width:100%;height:78vh;min-height:480px;border:0}
.brochure-feature{border:1px solid var(--line);padding:32px;background:var(--deep);color:var(--cream)}
.brochure-feature p{max-width:560px;margin-bottom:18px}
.brochure-linklist{margin-top:44px}
.brochure-linklist .eyebrow{color:#746449;margin-bottom:16px}
.brochure-linklist ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.brochure-linklist li{padding:18px 0;border-bottom:1px solid var(--line)}
.brochure-linklist li>a{font-size:15px;font-weight:700}
.brochure-linklist li>a:hover{text-decoration:underline}
.brochure-linklist li>a span{color:#8b7350;font-size:17px}
.brochure-note{display:block;margin-top:5px;font-size:13px;color:var(--muted)}
@media(max-width:700px){.brochure-doc-head{display:block}.brochure-open{display:inline-block;margin-top:12px}.brochure-frame iframe{height:60vh;min-height:380px}}
.page-hero-media img{width:100%;height:auto;max-height:520px;object-fit:cover;border:1px solid #c9a57035;display:block}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gallery-item{display:block;border:1px solid var(--line);overflow:hidden;aspect-ratio:4/3}
.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.gallery-item:hover img{transform:scale(1.05)}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.gallery-grid{grid-template-columns:1fr}}
