
:root{--black:#0d0d0c;--black2:#171613;--gold:#c79a4d;--gold2:#a97830;--cream:#f6f3ee;--ink:#1a1917;--muted:#6f6a63;--line:#ded8cf;--white:#fff;--max:1240px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--cream);color:var(--ink);line-height:1.55}
a{color:inherit;text-decoration:none} img{display:block;width:100%}
.wrap{overflow:hidden}
.container{width:min(var(--max),calc(100% - 36px));margin:auto}
.topbar{background:#080808;color:#d8d1c8;font-size:13px;letter-spacing:.04em}
.topbar .container{display:flex;justify-content:space-between;padding:10px 0;gap:16px;flex-wrap:wrap}
.header{position:sticky;top:0;z-index:20;background:rgba(13,13,12,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:28px}
.logo{display:flex;align-items:center;gap:13px;color:white}
.mark{width:44px;height:44px;border:2px solid var(--gold);border-radius:7px;display:grid;place-items:center;font-weight:900;font-size:18px;color:var(--gold);position:relative}
.mark:after{content:'B';position:absolute;transform:translate(8px,7px);opacity:.65}
.logo strong{display:block;font-size:21px;letter-spacing:.14em}
.logo small{display:block;color:#bbb4aa;letter-spacing:.32em;font-size:9px;margin-top:2px}
.links{display:flex;align-items:center;gap:24px;color:#eee9e1;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 21px;border-radius:2px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;font-size:12px;border:1px solid transparent;transition:.2s}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:white;box-shadow:0 12px 24px rgba(169,120,48,.22)}
.btn-outline{border-color:rgba(255,255,255,.5);color:white;background:rgba(0,0,0,.18)}
.hero{background:var(--black);color:white;position:relative}
.hero-inner{min-height:690px;display:grid;grid-template-columns:1fr .95fr;align-items:stretch}
.hero-copy{padding:94px 52px 82px 0;display:flex;flex-direction:column;justify-content:center}
.eyebrow{color:var(--gold);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.18em;margin-bottom:14px}
h1,h2,h3{margin:0 0 16px;line-height:1.05;letter-spacing:-.03em}
h1{font-size:clamp(48px,6vw,82px);text-transform:uppercase}
h1 span{color:var(--gold)}
.lead{font-size:19px;color:#ddd5ca;max-width:58ch;margin:0 0 28px}
.hero-buttons{display:flex;gap:14px;flex-wrap:wrap}
.hero-img{position:relative;min-height:690px}
.hero-img img{height:100%;object-fit:contain;background:#11110f}
.hero-img:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,var(--black) 0%,rgba(13,13,12,.45) 26%,transparent 58%)}
.service-strip{background:#11110f;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.service-strip .container{display:grid;grid-template-columns:repeat(4,1fr)}
.service-item{display:flex;gap:15px;padding:25px 20px;border-right:1px solid rgba(255,255,255,.12);color:white}
.service-item:last-child{border-right:0}
.icon{color:var(--gold);font-size:27px;line-height:1}
.service-item strong{display:block;text-transform:uppercase;letter-spacing:.04em;font-size:14px;margin-bottom:4px}
.service-item span{display:block;color:#bbb4aa;font-size:12px}
.section{padding:84px 0}
.section-white{background:#fff}
.section-black{background:var(--black);color:white}
.section-head{max-width:760px;margin:0 auto 34px;text-align:center}
.section-head h2{font-size:clamp(34px,4vw,52px);text-transform:uppercase}
.section-head p{color:var(--muted);margin:0}
.section-black .section-head p{color:#c8c0b5}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:white;border:1px solid var(--line);box-shadow:0 18px 45px rgba(0,0,0,.08)}
.card img{aspect-ratio:1.12/1;object-fit:contain;background:#f1ede7}
.card-copy{padding:22px}
.card-copy h3{font-size:18px;text-transform:uppercase;margin-bottom:9px}
.card-copy p{margin:0;color:var(--muted);font-size:14px}
.gold-line{width:38px;height:3px;background:var(--gold);margin-bottom:14px}
.project-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:18px}
.project-main,.project-small{position:relative;overflow:hidden;background:#222}
.project-main img{height:100%;min-height:630px;object-fit:contain;background:#151513}
.project-stack{display:grid;gap:18px}
.project-small img{height:306px;object-fit:contain;background:#151513}
.overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.78));display:flex;align-items:flex-end;padding:24px;color:white}
.overlay strong{font-size:20px;text-transform:uppercase}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center}
.about-grid img{height:560px;object-fit:contain;background:#151513}
.about-copy h2{font-size:clamp(38px,5vw,62px);text-transform:uppercase}
.about-copy p{color:#d6cec2}
.points{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.point{border-top:1px solid rgba(255,255,255,.18);padding-top:18px}
.point strong{color:var(--gold);display:block;text-transform:uppercase;font-size:13px;letter-spacing:.08em;margin-bottom:7px}
.point span{color:#beb6aa;font-size:13px}
.area-contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}
.area-box,.contact-box{background:white;border:1px solid var(--line);padding:34px;box-shadow:0 18px 45px rgba(0,0,0,.07)}
.area-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}
.area{padding:18px;background:#f1ede7;border-left:3px solid var(--gold);font-weight:800;text-transform:uppercase;font-size:13px}
.contact-box form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.contact-box input,.contact-box textarea,.contact-box select{width:100%;padding:14px;border:1px solid var(--line);font:inherit;background:#fbfaf8}
.contact-box textarea{grid-column:1/-1;min-height:130px;resize:vertical}
.contact-box button{grid-column:1/-1}
.footer{background:#090909;color:#bfb7ac;padding:50px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.2fr .7fr .7fr .8fr;gap:25px}
.footer h4{color:white;text-transform:uppercase;font-size:13px;letter-spacing:.08em;margin:0 0 12px}
.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:13px}
.copy{border-top:1px solid rgba(255,255,255,.1);margin-top:30px;padding-top:16px;font-size:12px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
@media(max-width:1000px){.links a:not(.btn){display:none}.hero-inner,.about-grid,.area-contact,.project-grid{grid-template-columns:1fr}.hero-copy{padding:72px 0 42px}.hero-img{min-height:520px}.service-strip .container{grid-template-columns:repeat(2,1fr)}.service-item:nth-child(2){border-right:0}.cards{grid-template-columns:repeat(2,1fr)}.project-main img{min-height:500px}.points{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.container{width:min(var(--max),calc(100% - 24px))}.topbar .container{justify-content:center;text-align:center}.nav{min-height:66px}.logo strong{font-size:17px}.mark{width:38px;height:38px}.hero-copy{padding:54px 0 32px}h1{font-size:44px}.lead{font-size:16px}.hero-img{min-height:390px}.service-strip .container,.cards,.footer-grid{grid-template-columns:1fr}.service-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.section{padding:64px 0}.project-small img{height:240px}.about-grid img{height:420px}.area-grid,.contact-box form{grid-template-columns:1fr}.contact-box textarea,.contact-box button{grid-column:auto}}


/* Multi-page additions that preserve the approved dark/gold visual language */
.page-hero{background:var(--black);color:white}
.page-hero-grid{min-height:520px;display:grid;grid-template-columns:1fr .9fr;align-items:stretch}
.page-hero-copy{padding:86px 54px 72px 0;display:flex;flex-direction:column;justify-content:center}
.page-hero h1{font-size:clamp(44px,5.4vw,72px);text-transform:uppercase}
.page-hero h1 span{color:var(--gold)}
.page-hero-media{position:relative;min-height:520px}
.page-hero-media img{height:100%;object-fit:contain;background:#11110f}
.page-hero-media:before{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,var(--black),rgba(13,13,12,.25) 45%,transparent 72%)}
.breadcrumb{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#bfb7ac;margin-bottom:16px}
.breadcrumb a{color:var(--gold)}
.content-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:start}
.copy-panel{background:#fff;border:1px solid var(--line);padding:38px;box-shadow:0 18px 45px rgba(0,0,0,.07)}
.copy-panel h2{font-size:clamp(34px,4vw,50px);text-transform:uppercase}
.copy-panel p{color:var(--muted)}
.feature-list{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:13px}
.feature-list li{position:relative;padding:13px 0 13px 28px;border-bottom:1px solid var(--line);color:var(--muted)}
.feature-list li:before{content:'◆';position:absolute;left:0;top:14px;color:var(--gold);font-size:11px}
.side-photo{background:#111;padding:12px;box-shadow:0 20px 50px rgba(0,0,0,.15)}
.side-photo img{height:520px;object-fit:contain}
.cta-band{background:var(--black);color:white;padding:46px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;border-top:3px solid var(--gold)}
.cta-band h2{font-size:clamp(34px,4vw,52px);text-transform:uppercase}
.cta-band p{color:#c8c0b5;margin:0}
.cta-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.services-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.service-wide{display:grid;grid-template-columns:.9fr 1.1fr;background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(0,0,0,.07);min-height:300px}
.service-wide img{height:100%;object-fit:contain;background:#151513}
.service-wide-copy{padding:30px;display:flex;flex-direction:column;justify-content:center}
.service-wide-copy h3{font-size:25px;text-transform:uppercase}
.service-wide-copy p{color:var(--muted)}
.text-link{color:var(--gold2);font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:12px}
.gallery-full{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gallery-tile{position:relative;overflow:hidden;background:#111;align-self:start}
.gallery-tile img{height:auto;object-fit:contain}
.gallery-tile .overlay strong{font-size:16px}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.process-step{background:white;border:1px solid var(--line);padding:27px;box-shadow:0 12px 35px rgba(0,0,0,.06)}
.process-step b{display:inline-grid;place-items:center;width:38px;height:38px;background:var(--gold);color:white;margin-bottom:16px}
.process-step h3{font-size:18px;text-transform:uppercase}
.process-step p{color:var(--muted);font-size:14px;margin:0}
.quote-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px}
.contact-dark{background:var(--black);color:white;padding:38px;border-top:3px solid var(--gold)}
.contact-dark h2{font-size:42px;text-transform:uppercase}
.contact-dark p{color:#c9c1b6}
.contact-dark ul{list-style:none;padding:0;margin:22px 0;display:grid;gap:12px;color:#d7d0c7}
.contact-dark li{border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:12px}
.legal-page{max-width:900px;margin:auto;background:white;border:1px solid var(--line);padding:42px;box-shadow:0 18px 45px rgba(0,0,0,.06)}
.center-state{min-height:65vh;display:grid;place-items:center;text-align:center;background:var(--black);color:white;padding:50px 20px}
.center-state .box{max-width:780px}
.center-state h1{font-size:clamp(48px,7vw,88px)}
.center-state p{color:#c8c0b5;font-size:18px}
@media(max-width:1000px){.page-hero-grid,.content-grid,.cta-band,.service-wide,.quote-layout{grid-template-columns:1fr}.page-hero-copy{padding:72px 0 36px}.page-hero-media{min-height:430px}.services-list{grid-template-columns:1fr}.gallery-full{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr)}.cta-actions{justify-content:flex-start}.side-photo img{height:440px}}
@media(max-width:620px){.page-hero-media{min-height:360px}.copy-panel,.contact-dark,.legal-page,.cta-band{padding:26px}.gallery-full,.process{grid-template-columns:1fr}.service-wide img{height:260px}.side-photo img{height:360px}}

/* Production-only additions */
.links a.active{color:var(--gold)}
.mobile-toggle{display:none;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.28);width:44px;height:42px;align-items:center;justify-content:center;cursor:pointer}
.mobile-toggle span,.mobile-toggle:before,.mobile-toggle:after{content:"";display:block;width:20px;height:2px;background:currentColor;position:absolute}
.mobile-toggle{position:relative}.mobile-toggle:before{transform:translateY(-6px)}.mobile-toggle:after{transform:translateY(6px)}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:1000px){
 .mobile-toggle{display:inline-flex}
 .links{display:none;position:absolute;left:0;right:0;top:100%;background:#0d0d0c;padding:20px max(18px,calc((100vw - var(--max))/2));flex-direction:column;align-items:stretch;border-top:1px solid rgba(255,255,255,.08);box-shadow:0 18px 30px rgba(0,0,0,.25)}
 .links.open{display:flex}.links a:not(.btn){display:block}.links .btn{width:100%}
}


/* Exact client logo artwork, real project photography, and insurance documentation */
.logo-full-img{width:72px;height:72px;object-fit:contain;background:#fff;flex:none}
.logo-mark-img{width:50px;height:50px;object-fit:contain;flex:none}
.logo-text{display:block}
.logo-text strong{display:block;font-size:21px;letter-spacing:.14em}
.logo-text small{display:block;color:#cdb08a;letter-spacing:.32em;font-size:9px;margin-top:2px}
.trust-note,.mini-proof{margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15)}
.trust-note strong,.mini-proof strong{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.08em;font-size:13px;margin-bottom:8px}
.trust-note p,.mini-proof p{margin:0 0 10px;color:#cfc7bc;font-size:14px}
.mini-proof p{color:var(--muted)}
.credentials-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:28px;align-items:start}
.doc-card{background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(0,0,0,.07);overflow:hidden}
.doc-card img{width:100%;max-height:760px;object-fit:contain;background:#f6f3ee}
.doc-card-copy{padding:18px 22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.doc-card-copy strong{font-size:14px;text-transform:uppercase;letter-spacing:.06em}
.doc-card-copy span{font-size:13px;color:var(--muted)}
@media(max-width:1000px){.credentials-grid{grid-template-columns:1fr}}
@media(max-width:620px){.nav{min-height:74px}.logo-full-img{width:58px;height:58px}.logo-mark-img{width:42px;height:42px}.logo-text strong{font-size:17px}}
