/* Walsh Engraving — Shared chrome (dark editorial) */
:root {
  --bg: #0B0B0B; --bg-2: #131313; --bg-3: #1a1a1a;
  --line: rgba(255,255,255,0.10); --line-strong: rgba(255,255,255,0.22);
  --fg: #F5F4F1; --fg-dim: rgba(245,244,241,0.62); --fg-mute: rgba(245,244,241,0.40);
  --accent: #C9A84C; --accent-2: #E0C36A;
  --paper: #F5F4F1; --ink: #0B0B0B;
  --serif: 'Instrument Serif','Times New Roman',serif;
  --sans: 'DM Sans',-apple-system,BlinkMacSystemFont,system-ui,sans-serif;
  --container: 1320px; --section-pad: 96px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html,body{background:var(--bg);color:var(--fg);}
body{font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
.container{max-width:var(--container);margin:0 auto;padding:0 32px;}
.rule{height:1px;background:var(--line);width:100%;}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:var(--fg-mute);}
.eyebrow .dot{color:var(--accent);margin-right:8px;}
.serif-it{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-0.01em;}
.display{font-family:var(--sans);font-weight:900;letter-spacing:-0.045em;line-height:0.88;text-transform:uppercase;font-stretch:75%;}

/* NAV */
.nav{position:sticky;top:0;z-index:50;background:rgba(11,11,11,0.85);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line);}
.nav-inner{max-width:var(--container);margin:0 auto;padding:14px 28px;display:grid;grid-template-columns:auto 1fr auto auto;gap:20px;align-items:center;}
.nav-logo{display:flex;align-items:center;gap:10px;}
.nav-logo img{height:34px;width:auto;filter:invert(1);}
.nav-links{display:flex;justify-content:center;gap:22px;list-style:none;}
.nav-links a{font-size:12.5px;font-weight:500;color:var(--fg-dim);letter-spacing:0.01em;transition:color .15s;white-space:nowrap;}
.nav-links a:hover,.nav-links a.active{color:var(--fg);}
.nav-cta{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--ink);padding:10px 16px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;transition:transform .15s,background .15s;white-space:nowrap;}
.nav-toggle{display:none;background:transparent;border:1px solid var(--line-strong);width:40px;height:40px;border-radius:999px;cursor:pointer;align-items:center;justify-content:center;padding:0;}
.nav-toggle svg{width:18px;height:18px;color:var(--fg);}
.nav-toggle:hover{border-color:var(--fg);}
.nav-cta:hover{background:var(--accent-2);transform:translateY(-1px);}
.nav-cta .arrow{display:inline-block;transition:transform .2s;}
.nav-cta:hover .arrow{transform:translateX(3px);}

/* PAGE HERO (compact, used on inner pages) */
.page-hero{padding:96px 32px 56px;border-bottom:1px solid var(--line);position:relative;overflow:hidden;}
.page-hero-inner{max-width:var(--container);margin:0 auto;position:relative;z-index:1;}
.page-hero .eyebrow{margin-bottom:18px;}
.page-hero h1{font-family:var(--sans);font-weight:900;letter-spacing:-0.04em;line-height:0.92;font-size:clamp(56px,9vw,128px);text-transform:uppercase;font-stretch:75%;margin-bottom:24px;}
.page-hero h1 .it{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;letter-spacing:-0.02em;color:var(--accent);}
.page-hero p.lede{font-size:18px;color:var(--fg-dim);max-width:640px;line-height:1.5;}
.page-hero .meta-row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-top:48px;padding-top:32px;border-top:1px solid var(--line);}
.page-hero .meta-row .right{display:flex;gap:24px;font-size:11px;color:var(--fg-mute);letter-spacing:0.18em;text-transform:uppercase;}
.page-hero .meta-row .right b{color:var(--fg);font-weight:700;}

/* BUTTONS */
.btn-pill{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;transition:transform .15s,background .15s,border-color .15s;cursor:pointer;border:1px solid transparent;font-family:inherit;}
.btn-primary{background:var(--accent);color:var(--ink);}
.btn-primary:hover{background:var(--accent-2);transform:translateY(-1px);}
.btn-ghost{background:transparent;color:var(--fg);border-color:var(--line-strong);}
.btn-ghost:hover{border-color:var(--fg);transform:translateY(-1px);}
.btn-pill .arrow{transition:transform .2s;}
.btn-pill:hover .arrow{transform:translateX(3px);}

/* SECTION SCAFFOLD */
.section{padding:var(--section-pad) 0;}
.section-head{max-width:var(--container);margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:48px;}
.section-head h2{font-family:var(--sans);font-weight:900;letter-spacing:-0.04em;line-height:0.92;font-size:clamp(40px,6vw,80px);text-transform:uppercase;font-stretch:75%;}
.section-head h2 .it{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;letter-spacing:-0.02em;color:var(--accent);}
.section-head p{color:var(--fg-dim);font-size:16px;max-width:520px;}

/* PROOF / CTA STRIP */
.cta-strip{background:var(--paper);color:var(--ink);padding:80px 32px;}
.cta-strip-inner{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center;}
.cta-strip h2{font-family:var(--sans);font-weight:900;letter-spacing:-0.04em;line-height:0.92;font-size:clamp(40px,6vw,80px);text-transform:uppercase;font-stretch:75%;}
.cta-strip h2 .it{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;color:#8a6a1a;letter-spacing:-0.02em;}
.cta-strip p{color:rgba(11,11,11,0.7);font-size:17px;margin-top:18px;max-width:480px;}
.cta-strip .ctas{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap;}
.cta-strip .btn-primary{background:var(--ink);color:var(--paper);}
.cta-strip .btn-primary:hover{background:#1f1f1f;}
.cta-strip .btn-ghost{color:var(--ink);border-color:rgba(11,11,11,0.25);}
.cta-strip .btn-ghost:hover{border-color:var(--ink);}
.cta-strip .stats{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.cta-strip .st{padding:20px;border:1px solid rgba(11,11,11,0.12);background:#fff;}
.cta-strip .st .num{font-family:var(--sans);font-weight:900;font-size:38px;letter-spacing:-0.04em;line-height:1;}
.cta-strip .st .lbl{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(11,11,11,0.6);font-weight:700;margin-top:6px;}

/* FOOTER */
.foot{background:var(--bg-2);border-top:1px solid var(--line);padding:80px 0 32px;}
.foot-inner{max-width:var(--container);margin:0 auto;padding:0 32px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;}
.foot-brand img{height:38px;filter:invert(1);margin-bottom:18px;}
.foot-brand p{font-size:14px;color:var(--fg-dim);line-height:1.7;max-width:320px;}
.foot-col h4{font-size:11px;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;}
.foot-col ul{list-style:none;}
.foot-col li{margin-bottom:10px;}
.foot-col a{color:var(--fg-dim);font-size:14px;transition:color .15s;}
.foot-col a:hover{color:var(--fg);}
.foot-bottom{max-width:var(--container);margin:48px auto 0;padding:24px 32px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--fg-mute);letter-spacing:0.05em;}
.foot-socials{display:flex;gap:14px;}
.foot-socials a{color:var(--fg-mute);transition:color .15s;}
.foot-socials a:hover{color:var(--fg);}

/* MEDIUM — tighten nav at laptop widths */
@media (max-width: 1140px){
  .nav-links{gap:16px;}
  .nav-links a{font-size:12px;}
}
.nav-link-phone{display:none;}

/* MOBILE */
@media (max-width: 880px){
  :root{--section-pad:64px;}
  .container,.nav-inner,.foot-inner,.cta-strip-inner,.page-hero,.section-head{padding-left:20px;padding-right:20px;}
  .nav-inner{grid-template-columns:1fr auto auto;gap:10px;}
  .nav-links{display:none;position:fixed;top:64px;left:0;right:0;width:100vw;background:#0B0B0B;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;padding:12px 0 24px;border-bottom:1px solid var(--line);box-shadow:0 12px 32px rgba(0,0,0,0.6);z-index:60;}
  .nav-links.open{display:flex;}
  .nav-links a{font-size:16px;padding:16px 24px;border-bottom:1px solid var(--line);color:var(--fg);letter-spacing:0.02em;}
  .nav-links a:last-child{border-bottom:none;}
  .nav-links .nav-link-phone{display:block;background:var(--accent);color:var(--ink);font-weight:700;letter-spacing:0.02em;margin:12px 20px 0;padding:14px 20px;border-radius:999px;text-align:center;border-bottom:none;}
  .nav-toggle{display:inline-flex;}
  .nav-cta{padding:9px 14px;font-size:11px;}
  .section-head{grid-template-columns:1fr;gap:24px;}
  .cta-strip-inner{grid-template-columns:1fr;gap:32px;}
  .foot-inner{grid-template-columns:1fr 1fr;gap:32px;}
  .page-hero .meta-row{flex-direction:column;align-items:flex-start;gap:16px;}
}
@media (max-width: 540px){
  .foot-inner{grid-template-columns:1fr;}
}