:root{
  --ink:#11100e; --charcoal:#1d1a17; --cream:#f5efe6; --taupe:#c8b49c; --gold:#b88a45; --soft:#fffaf2;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--cream);color:var(--ink);line-height:1.55} a{color:inherit;text-decoration:none} img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:18px 6vw;background:rgba(245,239,230,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(29,26,23,.12)}
.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:42px;height:42px;border:1px solid var(--gold);display:grid;place-items:center;font-weight:800;letter-spacing:.06em}.brand small{display:block;text-transform:uppercase;letter-spacing:.18em;font-size:10px;color:#6c6258}nav{display:flex;gap:24px;font-size:14px;text-transform:uppercase;letter-spacing:.12em}nav a:hover{color:var(--gold)}
.hero{min-height:86vh;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding:70px 6vw 60px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--gold);font-weight:700;font-size:12px}.hero h1,.section h2{font-family:Georgia,serif;font-weight:500;line-height:1.02;margin:12px 0 18px}.hero h1{font-size:clamp(44px,7vw,86px)}.lead{font-size:20px;max-width:680px;color:#4e463d}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.button{padding:15px 22px;border:1px solid var(--ink);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.primary{background:var(--ink);color:var(--soft)}.secondary:hover,.primary:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}.hero-card{padding:14px;background:var(--soft);box-shadow:0 24px 80px rgba(29,26,23,.18)}.hero-card img{aspect-ratio:4/5;object-fit:cover}
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid rgba(29,26,23,.15);text-align:center;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800}.trust-strip span{padding:20px;border-right:1px solid rgba(29,26,23,.15)}
.section{padding:90px 6vw}.section h2{font-size:clamp(34px,5vw,58px);max-width:860px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.service-grid article{background:var(--soft);padding:28px;border:1px solid rgba(29,26,23,.1)}.service-grid h3{font-family:Georgia,serif;font-size:26px;margin:0 0 8px}.service-grid p{color:#5d554c;margin:0}.dark{background:var(--charcoal);color:var(--soft)}.dark .eyebrow{color:var(--taupe)}.gallery{columns:3 260px;column-gap:18px;margin-top:34px}.gallery img{break-inside:avoid;margin-bottom:18px;border:10px solid rgba(255,250,242,.08);background:#2c2823}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px}.about-copy{font-size:18px;color:#4e463d}.estimate{background:var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.contact-card{background:var(--charcoal);color:var(--soft);padding:34px;display:grid;gap:16px}.contact-card a{font-size:22px;font-family:Georgia,serif}.contact-card a:hover{color:var(--taupe)}footer{padding:34px 6vw;background:var(--ink);color:var(--cream);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px;color:#d9cfc2}
@media(max-width:800px){.site-header{align-items:flex-start}.site-header nav{display:none}.hero,.split,.estimate{grid-template-columns:1fr}.hero{padding-top:44px}.trust-strip{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr}.gallery{columns:1}.contact-card a{font-size:18px}}
