:root{--brand-black:#0e0e0e;--brand-gold:#d8a861;--brand-silver:#868484;--brand-white:#edebe8;--charcoal:#1b1b1b;--text:#fff;--muted:#b7b7b7;--line:#333;--font-heading:"Jost",Arial,sans-serif;--font-body:"DM Sans",Arial,sans-serif;--font:var(--font-body);--weight-hero:300;--weight-heading:400;--weight-subheading:500;--weight-body:400;--weight-nav:500;--weight-button:600;--hero-tracking:.16em;--content:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--brand-black);color:var(--text);font:400 14px/1.7 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--brand-gold);outline-offset:5px}a,button{transition:color .2s,background-color .2s,border-color .2s}a:hover{color:var(--brand-gold)}.skip{position:absolute;top:-90px;left:15px;z-index:20;background:var(--brand-gold);padding:10px;color:#000}.skip:focus{top:10px}.site-header{background:#080808;border-bottom:1px solid #202020}.header-inner{max-width:var(--content);margin:auto;padding:0 38px;min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:35px}.logo{position:relative;display:block;width:150px;height:98px;overflow:hidden;flex:none}.logo img{position:absolute;width:165px;height:165px;left:-8px;top:-34px;object-fit:contain}nav{display:flex;align-items:center;gap:28px;font-size:11px;font-weight:500}nav>a{position:relative;white-space:nowrap}.active:after{content:'';position:absolute;bottom:-12px;left:0;width:27px;height:2px;background:var(--brand-gold)}.nav-quote{border:1px solid var(--brand-gold);padding:9px 19px;margin-left:5px}.nav-quote:hover{background:var(--brand-gold);color:#080808}.menu-toggle{display:none}.hero{position:relative;min-height:640px;isolation:isolate;background:#080808;overflow:hidden}.hero-photo{position:absolute;z-index:-3;right:0;top:0;height:100%;width:72%;object-fit:cover;object-position:38% center;filter:saturate(.65) brightness(.73)}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#080808 0%,#080808 23%,rgba(8,8,8,.96) 34%,rgba(8,8,8,.7) 48%,rgba(8,8,8,.12) 70%,transparent 100%),linear-gradient(0deg,rgba(0,0,0,.2),transparent 40%)}.hero-inner{max-width:var(--content);margin:auto;padding:90px 60px 100px;position:relative;min-height:640px;display:flex;align-items:center}.hero-copy{max-width:590px}.eyebrow{font-size:11px;font-weight:500;letter-spacing:1.3px;color:var(--brand-gold);margin:0 0 23px}.hero h1{font-size:clamp(36px,4vw,58px);font-weight:300;line-height:1.35;letter-spacing:.19em;margin:0 0 25px}.gold-rule{height:2px;width:76px;background:var(--brand-gold);margin-bottom:27px}.hero-description{font-size:14px;line-height:1.65;max-width:365px;margin:0 0 29px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(110deg,#e7bd77,var(--brand-gold) 65%,#c18e42);color:#080808;border:1px solid var(--brand-gold);padding:14px 22px;min-height:48px;cursor:pointer;font-size:12px;font-weight:600}.button:hover{background:var(--brand-gold);color:#080808}.button>span{font-size:20px;line-height:1;font-weight:400}.hero-bottom{position:absolute;bottom:30px;left:60px;right:40px;display:flex;justify-content:space-between;align-items:center}.markers{display:flex;gap:7px}.markers span{width:20px;height:3px;background:var(--brand-silver)}.markers span:first-child{background:var(--brand-gold)}.hero-bottom p{font-size:8px;color:#c2c2c2;margin:0}.section{max-width:var(--content);margin:auto;padding:80px 60px;scroll-margin-top:15px}.section h2{font-weight:300;font-size:32px;line-height:1.3;margin:0;letter-spacing:-.5px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:36px}.section-top>p{max-width:320px;color:var(--muted);font-size:12px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.service-card{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:28px;min-height:230px;display:flex;flex-direction:column}.number{font-size:10px;letter-spacing:2px;color:var(--brand-gold)}h3{font-weight:500;font-size:16px;line-height:1.4;margin:20px 0 12px}.service-card p{color:var(--muted);font-size:12px;margin:0 0 24px}.service-card a{font-size:10px;margin-top:auto;display:flex;justify-content:space-between;gap:10px}.service-card a span{color:var(--brand-gold)}.call-card{background:var(--charcoal)}.call-card .eyebrow{font-size:9px;color:var(--brand-gold)}.call-card h3{margin:0 0 15px;font-weight:300;font-size:25px}.compact-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-block:1px solid var(--line)}.compact-section p{color:var(--muted);margin-top:0}.small{font-size:11px}.muted{color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;gap:75px;border-bottom:1px solid var(--line)}.about>div>p{color:var(--muted);font-size:13px;max-width:450px;margin-top:24px}.about ol{list-style:none;margin:0;padding:0}.about li{display:flex;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}.about li:first-child{padding-top:0}.about h3{margin:0 0 7px;font-size:14px}.about li p{font-size:12px;color:var(--muted);margin:0}.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:75px}.contact>div>p{color:var(--muted)}.phone{display:block;font-size:27px;font-weight:300;margin:30px 0 20px;white-space:nowrap}.phone span{font-size:20px;color:var(--brand-gold);margin-left:16px}.email-note{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.email-note .eyebrow{font-size:9px;margin:0 0 12px}.email-note p{font-size:12px}.email-note .small{font-size:10px;max-width:270px}form{background:var(--charcoal);border:1px solid var(--line);padding:28px}form h3{margin:0 0 18px;font-size:21px;font-weight:300}.form-notice{border:1px solid #645139;background:#28231d;padding:12px;font-size:10px;color:#e0cfb7;margin:0 0 20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:10px;margin-bottom:17px}label>span{color:var(--muted)}input,select,textarea{display:block;width:100%;min-width:0;margin-top:7px;border:1px solid #494949;background:#101010;padding:11px 12px;color:#fff;font-size:12px;border-radius:0}input::placeholder,textarea::placeholder{color:#aaa}textarea{resize:vertical}form>.button{width:100%;margin-top:6px}.form-status{color:var(--brand-gold);font-size:12px;margin-bottom:0}.form-status:empty{display:none}footer{max-width:var(--content);margin:auto;border-top:1px solid var(--line);padding:20px 50px;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-size:10px;color:var(--muted)}footer p span{font-size:9px}footer .logo{width:115px;height:80px}footer .logo img{width:130px;height:130px;top:-25px}
@media(min-width:1500px){.hero-inner{min-height:740px}.hero-photo{width:68%}}@media(max-width:1000px){.header-inner{padding:0 30px}nav{gap:20px;font-size:10px}.hero-inner{padding:75px 42px 95px;min-height:620px}.hero{min-height:620px}.hero h1{font-size:43px}.hero-bottom{left:42px;right:30px}.section{padding:65px 40px}.service-card{padding:22px}.about,.contact{gap:40px}.phone{font-size:23px}}
@media(max-width:720px){.header-inner{min-height:91px;padding:0 24px;position:relative}.logo{width:118px;height:85px}.logo img{width:136px;height:136px;top:-25px}.menu-toggle{display:flex;align-items:center;gap:14px;background:transparent;color:var(--brand-white);border:1px solid var(--brand-gold);padding:8px 12px;font-size:11px}.menu-toggle span{font-size:17px}nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:10;background:#080808;border-bottom:1px solid var(--line);padding:24px;flex-wrap:wrap;gap:24px;font-size:12px}nav.is-open{display:flex}.active:after{bottom:-7px}.nav-quote{margin-left:0}.hero,.hero-inner{min-height:630px}.hero-inner{padding:82px 28px 100px;align-items:center}.hero h1{font-size:clamp(30px,7.7vw,47px);letter-spacing:.15em}.hero .eyebrow{font-size:9px;letter-spacing:1px}.hero-photo{width:100%;object-position:55% center;filter:saturate(.6) brightness(.63)}.hero-shade{background:linear-gradient(90deg,rgba(8,8,8,.96),rgba(8,8,8,.88) 35%,rgba(8,8,8,.25)),linear-gradient(0deg,rgba(8,8,8,.25),transparent)}.hero-description{max-width:300px;font-size:13px}.hero-bottom{left:28px;right:24px;bottom:27px}.hero-bottom p{max-width:130px;font-size:7px;text-align:right}.section{padding:52px 25px}.section h2{font-size:27px}.section-top{display:block}.section-top>p{margin-top:20px;max-width:100%}.service-grid{grid-template-columns:1fr 1fr}.service-card{padding:20px 17px;min-height:250px}.service-card h3{font-size:14px}.service-card p{font-size:11px}.service-card a{font-size:9px}.call-card h3{font-size:22px}.compact-section,.about,.contact{grid-template-columns:1fr;gap:28px}.about>div>p{max-width:100%}.phone{font-size:27px}form{padding:23px 20px}.fields{grid-template-columns:1fr;gap:0}footer{padding:20px 25px;flex-wrap:wrap}footer>p:last-child{width:100%;margin:0}.eyebrow{font-size:9px}.gold-rule{width:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,button{transition:none}}
/* Simplified homepage and integrated original logo. */
.site-header{background:var(--brand-black)}.logo img{mix-blend-mode:screen;filter:contrast(1.12)}nav{background:var(--brand-black)}.hero-bottom{justify-content:flex-end}.services>.section-heading{margin-bottom:30px}.service-grid{grid-template-columns:repeat(5,minmax(0,1fr));border:0;gap:28px}.service-card{min-height:0;padding:20px 0 0;border:0;border-top:1px solid var(--line)}.service-card h3{margin:0 0 12px;font-size:14px}.service-card p{font-size:11px;margin-bottom:20px}.service-card a{font-size:11px}.about{display:grid;grid-template-columns:1fr 2fr;align-items:center;padding-top:40px;padding-bottom:40px;border-top:1px solid var(--line)}.about>p{margin:0;color:var(--muted);font-size:13px;max-width:680px}.contact .section-heading{max-width:350px}.section h2{font-size:29px}.services{padding-top:55px;padding-bottom:55px}@media(max-width:1000px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.service-card{min-height:0;padding-top:17px}.about{grid-template-columns:1fr;gap:15px}.services{padding-top:40px;padding-bottom:40px}.section h2{font-size:26px}nav{background:var(--brand-black)}}
.logo img{mix-blend-mode:lighten;filter:contrast(1.3)}
.theme-toggle{display:flex;align-items:center;gap:8px;flex:none;margin-left:auto;border:0;background:transparent;color:var(--text);padding:10px 0;cursor:pointer;font-size:10px}.theme-track{display:block;width:36px;height:20px;border:1px solid var(--brand-gold);border-radius:20px;padding:3px;background:#222}.theme-track>span{display:block;width:12px;height:12px;border-radius:50%;background:var(--brand-gold);transition:transform .2s}.theme-toggle[aria-checked=true] .theme-track>span{transform:translateX(16px)}.services-action{margin-top:30px}.services-action .button{min-width:160px}.service-card p{margin-bottom:0}.header-inner{gap:24px}
html[data-theme=light]{--brand-black:#f7f5f1;--charcoal:#eeebe5;--text:#171717;--muted:#565656;--line:#d4cfc6}html[data-theme=light] .site-header{border-bottom-color:var(--line)}html[data-theme=light] .logo{background:#0e0e0e;border-radius:4px}html[data-theme=light] .logo img{mix-blend-mode:normal;filter:none}html[data-theme=light] .hero{color:#fff}html[data-theme=light] .nav-quote{color:#171717}html[data-theme=light] .nav-quote:hover{background:var(--brand-gold)}html[data-theme=light] input,html[data-theme=light] select,html[data-theme=light] textarea{background:#fff;color:#171717;border-color:#b7b0a4}html[data-theme=light] input::placeholder,html[data-theme=light] textarea::placeholder{color:#6a6a6a}html[data-theme=light] .form-notice{background:#f4e9d7;color:#584225;border-color:#bfaa87}html[data-theme=light] .email-note .eyebrow,html[data-theme=light] .form-status{color:#855d22}html[data-theme=light] a:hover{color:#815a24}html[data-theme=light] .button:hover{color:#080808}
@media(max-width:720px){.header-inner{gap:15px}.theme-toggle{font-size:9px;gap:6px}.theme-track{width:34px}.theme-toggle[aria-checked=true] .theme-track>span{transform:translateX(14px)}}@media(prefers-reduced-motion:reduce){.theme-track>span{transition:none}}
/* The original logo adapts through CSS; its source artwork is unchanged. */
html[data-theme=light] .logo{background:transparent;border-radius:0}
html[data-theme=light] .logo img{filter:contrast(1.3) invert(1) hue-rotate(180deg);mix-blend-mode:multiply}
.hero-photo{object-position:center;filter:saturate(.8) brightness(.75)}
html[data-theme=light] .hero{background:#f7f5f1;color:#171717}
html[data-theme=light] .hero-photo{filter:saturate(.85) brightness(1.03)}
html[data-theme=light] .hero-shade{background:linear-gradient(90deg,#f7f5f1 0%,#f7f5f1 22%,rgba(247,245,241,.95) 35%,rgba(247,245,241,.7) 48%,rgba(247,245,241,.05) 72%,transparent 100%)}
html[data-theme=light] .hero .eyebrow{color:#805a25}
html[data-theme=light] .hero-bottom p{color:#333;background:rgba(247,245,241,.8);padding:2px 6px}
@media(max-width:720px){html[data-theme=light] .hero-shade{background:linear-gradient(90deg,rgba(247,245,241,.98),rgba(247,245,241,.92) 40%,rgba(247,245,241,.38))}}
.portfolio-main{min-height:70vh}.portfolio-intro{padding-bottom:35px}.portfolio-intro h1{font-size:clamp(40px,6vw,70px);font-weight:300;line-height:1.2;margin:0 0 20px}.portfolio-intro>p:last-child{color:var(--muted)}.portfolio-empty{margin-bottom:70px;border-block:1px solid var(--line);text-align:center;padding-top:55px;padding-bottom:55px}.portfolio-symbol{font-family:var(--font-heading);font-size:55px;color:var(--brand-gold);line-height:1;margin-bottom:25px}.portfolio-empty>p{max-width:550px;margin:22px auto 28px;color:var(--muted);font-size:13px}.portfolio-home{display:block;font-size:12px;margin-top:22px}.header-inner{gap:18px}nav{gap:20px}@media(max-width:900px) and (min-width:721px){nav{gap:12px;font-size:9px}.header-inner{padding-inline:22px;gap:14px}.nav-quote{padding:8px 12px}.logo{width:130px}.theme-toggle{gap:5px;font-size:9px}}
/* Consistent champagne gold on both pages in light mode. */
html[data-theme=light]{--brand-gold:#d8ad67;--gold-text:#92691f}
html[data-theme=light] .logo img{filter:contrast(1.3) invert(1) hue-rotate(180deg) saturate(.65) brightness(1.55);mix-blend-mode:multiply}
html[data-theme=light] .button{background:linear-gradient(110deg,#efd093,#d8ad67 65%,#cf9f50);border-color:var(--brand-gold);color:#171717}
html[data-theme=light] .eyebrow,html[data-theme=light] .hero .eyebrow,html[data-theme=light] .email-note .eyebrow,html[data-theme=light] .form-status{color:var(--gold-text)}
html[data-theme=light] a:hover{color:var(--gold-text)}
html[data-theme=light] .button:hover,html[data-theme=light] .nav-quote:hover{background:#e3bd7b;color:#171717}
html[data-theme=light] .theme-track{background:#f0e2cb}
html[data-theme=light] .logo img{filter:contrast(1.3) invert(1) hue-rotate(180deg) saturate(.65) brightness(2.2);mix-blend-mode:multiply}
/* Flat gold finish, without metallic gradients. */
:root{--brand-gold:#c49a50}
html[data-theme=light]{--brand-gold:#c49a50}
.button,html[data-theme=light] .button{background:var(--brand-gold);border-color:var(--brand-gold)}
.button:hover,html[data-theme=light] .button:hover,html[data-theme=light] .nav-quote:hover{background:#b78c43;color:#111}
html[data-theme=light] .logo img{filter:url('#flat-light-logo');mix-blend-mode:multiply}
.logo-filter{position:absolute;pointer-events:none}
/* Premium typography: shared across the homepage and portfolio. */
body{font-family:var(--font-body);font-weight:var(--weight-body);font-synthesis:none}
h1,h2,h3,.portfolio-symbol{font-family:var(--font-heading)}
.hero h1{font-weight:var(--weight-hero);letter-spacing:var(--hero-tracking);white-space:nowrap}
.section h2,.portfolio-intro h1{font-weight:var(--weight-heading)}
h3,.service-card h3,form h3{font-weight:var(--weight-subheading)}
p,label,input,select,textarea{font-family:var(--font-body);font-weight:var(--weight-body)}
nav{font-family:var(--font-body);font-weight:var(--weight-nav)}
button,.button,.nav-quote{font-family:var(--font-body);font-weight:var(--weight-button)}
.phone{font-family:var(--font-body);font-weight:var(--weight-body)}
@media(max-width:720px){.hero h1{font-size:clamp(28px,7.7vw,47px);letter-spacing:var(--hero-tracking)}}

/* Rounded gold calls to action across both pages. */
.button,.nav-quote{border-radius:999px}
/* Comfortable reading sizes while retaining the understated hierarchy. */
body{font-size:16px;line-height:1.7}
nav{font-size:14px}
.hero-description{font-size:16px;line-height:1.7}
.eyebrow{font-size:12px}
.button,.nav-quote{font-size:14px}
.theme-toggle{font-size:12px}
.service-card h3{font-size:18px}
.service-card p,.about>p,.portfolio-empty>p{font-size:15px;line-height:1.7}
label{font-size:14px}
input,select,textarea{font-size:16px;line-height:1.5}
.form-notice,.small,.email-note p,.email-note .small,.privacy,footer p{font-size:13px;line-height:1.65}
.email-note .eyebrow{font-size:11px}
.form-status{font-size:14px}
footer p span,.hero-bottom p{font-size:11px}
.portfolio-home{font-size:14px}
@media(min-width:721px) and (max-width:1100px){nav{font-size:12px;gap:15px}.header-inner{gap:14px;padding-inline:25px}.nav-quote{font-size:12px;padding-inline:13px}.theme-toggle{font-size:11px}.logo{width:125px}}
@media(max-width:720px){nav{font-size:15px;gap:22px}.hero-description{font-size:15px}.hero .eyebrow{font-size:11px}.service-card h3{font-size:17px}.service-card p{font-size:14px}.theme-toggle{font-size:11px}.menu-toggle{font-size:13px}.hero-bottom p{font-size:10px;max-width:175px}.button,.nav-quote{font-size:14px}.small,.form-notice,footer p,.email-note p,.email-note .small{font-size:13px}}
/* Inset the service dropdown indicator from the right edge. */
select{appearance:none;-webkit-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23b7b7b7' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
html[data-theme=light] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23565656' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
.portfolio-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;padding-top:15px}.portfolio-gallery figure{margin:0;min-width:0}.project-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--charcoal)}.project-photo img{display:block;width:100%;height:100%;object-fit:cover}.kitchen-photo img{position:absolute;left:0;top:-94.8%;width:100%;height:auto;max-width:none}.portfolio-gallery figcaption{font-family:var(--font-heading);font-weight:500;font-size:20px;padding-top:17px}@media(max-width:720px){.portfolio-gallery{grid-template-columns:1fr;gap:30px}}
