
:root{--sand:#9b927f;--sand-light:#b9af9a;--sand-dark:#6f685c;--black:#080808;--charcoal:#141414;--navy:#14263d;--white:#f5f1e8;--muted:#c8c0ae;--line:rgba(245,241,232,.18);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Georgia,"Times New Roman",serif;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}p{font-size:1.06rem;color:var(--muted)}.container{width:min(var(--max),calc(100% - 32px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,rgba(155,146,127,.98),rgba(111,104,92,.98));border-bottom:2px solid rgba(0,0,0,.45)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 0}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;object-fit:contain}.brand-text{font-size:1.25rem;letter-spacing:.08em;text-transform:uppercase;color:#050505;font-weight:900}.nav{display:flex;align-items:center;gap:22px}.nav a{color:#050505;font-weight:900;text-transform:uppercase;font-size:.88rem;letter-spacing:.08em}.nav a:hover{color:var(--navy)}.menu-toggle{display:none;background:#050505;color:var(--white);border:0;padding:10px 12px;font-weight:900}
.hero{min-height:80vh;display:grid;align-items:end;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.83)),url("../images/hero.jpg") center/cover no-repeat;border-bottom:1px solid var(--line)}.hero-content{padding:96px 0 72px;max-width:850px}.kicker{text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:var(--sand-light);font-size:.85rem;margin-bottom:12px}h1,h2,h3{line-height:1.05;margin:0;color:var(--white)}h1{font-size:clamp(3rem,7vw,6.8rem);letter-spacing:.02em;text-transform:uppercase}h2{font-size:clamp(2.1rem,4vw,4rem);text-transform:uppercase;letter-spacing:.03em}h3{font-size:1.5rem;text-transform:uppercase;letter-spacing:.04em}.hero p{font-size:1.25rem;max-width:650px;color:#efe8d9}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.btn{display:inline-block;padding:13px 20px;border:2px solid var(--sand-light);background:var(--navy);color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.btn.secondary{background:transparent;color:var(--white)}.btn:hover{filter:brightness(1.15)}
.section{padding:76px 0;border-bottom:1px solid var(--line)}.section.sand{background:linear-gradient(180deg,var(--sand),var(--sand-dark));color:#070707;border-bottom:2px solid rgba(0,0,0,.35)}.section.sand h2,.section.sand h3{color:#070707}.section.sand p{color:#181818}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px}.section-head p{max-width:640px;margin:0}
.preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.preview-card{background:#000;border:2px solid var(--white);box-shadow:0 10px 24px rgba(0,0,0,.35)}.preview-card img{width:100%;height:260px;object-fit:contain;background:#050505}.preview-card h3{padding:16px;font-size:1rem}
.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.service-card{background:var(--charcoal);border:1px solid var(--line);box-shadow:0 16px 38px rgba(0,0,0,.28)}.service-card img{width:100%;height:340px;object-fit:contain;background:#050505;border-bottom:2px solid var(--sand)}.service-body{padding:24px}.service-body p{margin-bottom:0}
.gallery-grid{columns:3 280px;column-gap:16px}.gallery-grid a{display:block;break-inside:avoid;margin:0 0 16px;background:#050505;border:2px solid var(--sand)}.gallery-grid img{width:100%;height:auto}
.contact-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;background:var(--charcoal);border:1px solid var(--line);padding:30px}.contact-line{padding:14px 0;border-bottom:1px solid var(--line)}.contact-line strong{display:block;text-transform:uppercase;letter-spacing:.1em;color:var(--sand-light);font-size:.82rem}.contact-line span{font-size:1.2rem}.quote-box{background:#070707;border:1px solid var(--line);padding:24px}.quote-box ul{margin:16px 0 0;padding-left:22px;color:var(--muted);font-size:1.08rem}.footer{background:#050505;color:var(--muted);padding:30px 0;text-align:center}.footer strong{color:var(--white)}.page-hero{background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.9)),var(--black);padding:92px 0 56px;border-bottom:1px solid var(--line)}.page-hero p{max-width:720px;font-size:1.18rem}.small-note{font-size:.95rem;color:var(--muted);margin-top:24px}
@media (max-width:850px){.menu-toggle{display:block}.nav{position:absolute;left:0;right:0;top:84px;background:var(--sand);padding:18px 16px;display:none;flex-direction:column;align-items:flex-start;border-bottom:2px solid #000}.nav.open{display:flex}.preview-grid,.services-grid,.contact-panel{grid-template-columns:1fr}.preview-card img,.service-card img{height:auto}.section-head{display:block}h1{font-size:3.2rem}}


/* Refinement pass */
.hero h1{font-size:clamp(2.72rem,6.24vw,6.09rem)}
.services-grid{grid-template-columns:1fr}
.service-card{max-width:980px;margin:0 auto;width:100%}
.service-card img{border:2px solid var(--white);border-bottom:2px solid var(--white)}
.gallery-title{font-size:clamp(2.4rem,4vw,4.2rem)}
.underlined-heading {
    display: inline-block;
    border-bottom:4px solid #ffffff;
    padding-bottom: 6px;
}