 :root{
  --black:#0b0d0f;
  --graphite:#15191c;
  --graphite-2:#1d2226;
  --gold:#c9964a;
  --gold-light:#e0b56f;
  --white:#ffffff;
  --off:#f4f1ec;
  --gray:#6b7075;
  --line:rgba(255,255,255,.12);
  --shadow:0 22px 60px rgba(0,0,0,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:#1a1d20;background:var(--white);line-height:1.6}
h1,h2,h3,h4,.brand{font-family:Montserrat,Arial,sans-serif}
h1,h2,h3,p{margin-top:0}
a{color:inherit;text-decoration:none}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(11,13,15,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.nav-wrap{height:76px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:10px;color:var(--white);min-width:max-content}
.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:8px 18px 8px 18px;background:linear-gradient(135deg,#edc47c,var(--gold));color:#101214;font-size:25px;font-weight:900;font-style:italic;box-shadow:inset -8px -8px 18px rgba(0,0,0,.18)}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-text strong{font-size:20px;letter-spacing:.08em}
.brand-text small{font-size:7px;letter-spacing:.22em;margin-top:5px}
.main-nav{margin-left:auto;display:flex;gap:22px;color:#dfe3e6;font-size:13px}
.main-nav a:hover{color:var(--gold-light)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:4px;font-family:Montserrat;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.03em;border:1px solid transparent;cursor:pointer}
.btn-gold{background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#121416}
.btn-gold:hover{filter:brightness(1.05)}
.btn-outline{border-color:rgba(255,255,255,.45);color:white;background:rgba(0,0,0,.15)}
.btn-small{min-height:42px;padding:0 17px}
.nav-toggle{display:none;background:none;border:0;padding:10px;margin-left:auto}
.nav-toggle span{display:block;width:26px;height:2px;background:white;margin:5px}

.hero{position:relative;color:white;min-height:690px;background:
 radial-gradient(circle at 75% 48%,rgba(201,150,74,.34),transparent 27%),
 linear-gradient(110deg,#080a0c 0%,#11161a 52%,#292016 100%);
 overflow:hidden}
.hero::before{content:"";position:absolute;right:-8%;bottom:-28%;width:62%;height:90%;border-radius:45% 0 0 0;transform:skewX(-10deg);background:
 linear-gradient(150deg,transparent 0 43%,rgba(201,150,74,.22) 44% 46%,transparent 47%),
 repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 52px)}
.hero::after{content:"";position:absolute;right:8%;bottom:4%;width:470px;height:250px;border:2px solid rgba(201,150,74,.32);border-left:0;transform:skew(-10deg);opacity:.7}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.16),transparent 75%)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.4fr .6fr;gap:70px;align-items:center;min-height:610px;padding-block:90px 80px}
.eyebrow,.section-kicker{font:600 11px/1.4 Montserrat;letter-spacing:.22em;color:#656a6e}
.eyebrow{color:#d8dde0;border-left:2px solid var(--gold);padding-left:14px;max-width:430px}
.hero h1{font-size:clamp(40px,5.2vw,72px);line-height:1.02;letter-spacing:-.045em;max-width:850px;margin-bottom:22px}
.hero h1 span{color:var(--gold-light)}
.hero-lead{max-width:720px;color:#d4d7d9;font-size:16px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-card{align-self:end;border-left:2px solid var(--gold);padding:18px 0 18px 24px;margin-bottom:70px;color:#d8dcde}
.hero-card span,.hero-card strong{display:block;font-family:Montserrat;letter-spacing:.18em}
.hero-card strong{font-size:18px;color:white;margin-top:4px}
.hero-card p{font-size:12px;letter-spacing:.1em;margin:0}
.mini-line{width:38px;height:2px;background:var(--gold);margin:18px 0}
.pillars{position:absolute;z-index:3;left:0;right:0;bottom:0;background:rgba(7,9,10,.8);border-top:1px solid var(--line)}
.pillars-grid{min-height:78px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;text-align:center;text-transform:uppercase;font:600 11px Montserrat;letter-spacing:.12em}
.pillars-grid div+div{border-left:1px solid var(--line)}

.section{padding:92px 0}
.section-light{background:var(--off)}
.section-dark{background:linear-gradient(180deg,#111416,#07090a);color:white}
.section-kicker{margin-bottom:10px}
.section-kicker.gold{color:var(--gold)}
h2{font-size:clamp(30px,3.7vw,48px);line-height:1.08;letter-spacing:-.035em;margin-bottom:24px}
.split{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:center}
.split>div:first-child p:not(.section-kicker){max-width:650px;color:#53585c}
.benefit-panel{background:#111416;color:white;padding:26px;box-shadow:var(--shadow)}
.benefit-panel article{display:flex;gap:17px;padding:20px 8px;border-bottom:1px solid var(--line)}
.benefit-panel article:last-child{border-bottom:0}
.benefit-panel span{color:var(--gold);font:700 13px Montserrat}
.benefit-panel h3{font-size:15px;margin:0 0 4px}
.benefit-panel p{font-size:13px;color:#bfc4c7;margin:0}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}
.muted{color:#7a7f83}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px}
.service-card{min-height:230px;padding:28px;background:linear-gradient(145deg,#181d20,#0d1012);border:1px solid rgba(255,255,255,.1);transition:.25s}
.service-card:hover{transform:translateY(-5px);border-color:rgba(201,150,74,.55)}
.service-icon{font-size:26px;color:var(--gold)}
.service-card h3{font-size:17px;line-height:1.25;margin:20px 0 10px}
.service-card p{font-size:13px;color:#aeb4b7;margin:0}
.timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:45px}
.timeline article{position:relative;padding-top:54px}
.timeline article::before{content:"";position:absolute;left:0;right:-14px;top:19px;height:1px;background:#d1b07a}
.timeline article:last-child::before{right:70%}
.timeline span{position:absolute;top:0;left:0;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--gold);font:700 12px Montserrat}
.timeline h3{font-size:14px}
.timeline p{font-size:12px;color:#666b6f}
.why{color:white;background:
 linear-gradient(rgba(8,10,11,.9),rgba(8,10,11,.95)),
 radial-gradient(circle at 80% 40%,rgba(201,150,74,.25),transparent 30%),#111}
.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:45px}
.why-grid article{padding:12px 22px;border-left:1px solid var(--line)}
.why-grid article:first-child{border-left:0}
.why-grid h3{font-size:14px;color:var(--gold-light)}
.why-grid p{font-size:12px;color:#bec3c6}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}
.portfolio-placeholder{aspect-ratio:1.25;display:flex;flex-direction:column;justify-content:end;padding:22px;color:white;background:
 linear-gradient(180deg,transparent,#070809 90%),
 linear-gradient(135deg,#4b4032,#131719);border:1px solid #d8d3cb}
.portfolio-placeholder span{color:var(--gold);font:700 12px Montserrat}
.portfolio-placeholder strong{font:700 16px Montserrat}
.portfolio-placeholder small{color:#c9cdcf}
.region-section{background:#0c0f11;color:white}
.region-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.region-grid p{color:#bbc0c3}
.client-list{display:grid;grid-template-columns:1fr 1fr;gap:9px 20px;color:#d8dcde;font-size:14px}
.client-list span::before{content:"•";color:var(--gold);margin-right:8px}
.quote-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}
.form-note{font-size:11px;color:#777;margin-top:12px}
.quote-form{background:white;padding:28px;box-shadow:0 14px 45px rgba(0,0,0,.08)}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:600;color:#555}
input,select,textarea{width:100%;border:1px solid #d8dadd;background:#fafafa;padding:13px 14px;font:14px Inter;border-radius:3px;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--gold)}
.quote-form>label{margin:14px 0}
.form-status{font-size:12px;margin:12px 0 0;color:#5e6468}
.site-footer{background:#090b0c;color:#d2d6d8;padding:60px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1fr 1fr;gap:40px}
.footer-grid h4{color:white;font-size:12px}
.footer-grid a,.footer-grid p{display:block;font-size:12px;color:#b6bbbe;margin:7px 0}
.footer-brand{margin-bottom:20px}
.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:38px;padding-top:20px;font-size:10px;color:#888e92}

@media (max-width: 950px){
  .desktop-cta{display:none}
  .nav-toggle{display:block}
  .main-nav{position:absolute;top:76px;left:0;right:0;display:none;flex-direction:column;background:#0b0d0f;padding:25px 24px;border-top:1px solid var(--line)}
  .main-nav.open{display:flex}
  .hero-grid{grid-template-columns:1fr;gap:0;min-height:720px}
  .hero-card{margin:0 0 70px}
  .split,.quote-grid,.region-grid{grid-template-columns:1fr}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .timeline{grid-template-columns:repeat(3,1fr);row-gap:30px}
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .why-grid article{border-left:0;border-top:1px solid var(--line)}
  .portfolio-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 620px){
  .container{width:min(100% - 28px,1180px)}
  .nav-wrap{height:68px}
  .brand-text strong{font-size:17px}
  .brand-mark{width:40px;height:40px}
  .hero{min-height:720px}
  .hero-grid{padding-top:70px}
  .hero h1{font-size:42px}
  .hero-card{display:none}
  .pillars-grid{grid-template-columns:repeat(2,1fr);padding:12px 0;gap:10px}
  .pillars-grid div+div{border-left:0}
  .section{padding:68px 0}
  .service-grid,.portfolio-grid,.field-grid,.client-list{grid-template-columns:1fr}
  .timeline{grid-template-columns:1fr 1fr}
  .why-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;gap:8px}
}
/* Readability and keyboard access */
html{scroll-padding-top:90px}body{font-size:16px}.main-nav{font-size:14px;gap:18px}.brand-text small{font-size:10px;letter-spacing:.1em}.btn{font-size:14px}.eyebrow,.section-kicker,.pillars-grid{font-size:13px}.benefit-panel p,.service-card p,.timeline p,.why-grid p{font-size:16px}.benefit-panel h3,.timeline h3,.why-grid h3{font-size:17px}.hero-card p,.form-note,.form-status,.footer-grid p,.footer-grid a,.footer-grid h4{font-size:14px}.footer-bottom{font-size:12px}label{font-size:14px}input,select,textarea{font-size:16px;font-family:Inter,Arial,sans-serif}.btn{font-family:Montserrat,Arial,sans-serif}[hidden]{display:none!important}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.footer-grid .brand{display:flex}.hero h1{line-height:1.1}.hero-card{overflow-wrap:anywhere}@media(max-width:620px){.main-nav{top:68px}.hero-grid{min-height:650px;padding-block:65px 130px}.hero h1{font-size:clamp(34px,9vw,42px)}.hero{min-height:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card{transition:none}}
