/* Lean Leadership shared styles: brand tokens, base, header, logo, buttons, footer.
   Palette per Brand Color Artwork Specifications (Sept 2026). */
:root{
  --ink:#0E2A3F;      /* Deep Ink: primary, headings, full-bleed fields */
  --slate:#4C6577;    /* Slate: body copy, captions */
  --paper:#FAFAF8;    /* Warm White: default light field */
  --mist:#E0E7E2;     /* Mist: dividers, panels, quiet backgrounds */
  --sage:#9DB2A3;     /* Sage: accent, CTAs on dark, key emphasis (max 20%) */
  --oxblood:#6B2A24;  /* Oxblood: logo block and rare single-point emphasis only */
  --font-display:'Libre Caslon Text', Georgia, serif;
  --font-body:'Inter', -apple-system, 'Segoe UI', sans-serif;
  --wrap:1120px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth; color-scheme:light; background:var(--paper); overflow-x:hidden;}
body{overflow-x:hidden;}
@supports (overflow:clip){ html, body{overflow-x:clip;} }
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:var(--font-body); font-size:17px; line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img,svg{display:block; max-width:100%;}
a{color:inherit;}
ul,ol{margin:0; padding:0; list-style:none;}
h1,h2,h3,h4,p{margin:0;}
h1,h2,h3{font-family:var(--font-display); font-weight:400; color:var(--ink);}
.wrap{max-width:var(--wrap); margin:0 auto; padding:0 32px;}
@media (max-width:720px){ .wrap{padding:0 20px;} }

.eyebrow{
  display:flex; align-items:center; gap:12px;
  font-size:12.5px; letter-spacing:0.16em; text-transform:uppercase;
  font-weight:600; color:var(--slate); margin:0 0 16px;
}
.eyebrow::before{content:""; width:22px; height:2px; background:var(--sage); flex:none;}

/* logo */
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--ink);}
.brand-mark{width:28px; height:28px; flex:none;}
.brand-name{font-family:var(--font-display); font-size:19px; font-weight:400; color:var(--ink); white-space:nowrap;}

/* buttons */
.btn{
  display:inline-flex; align-items:center; justify-content:center; text-decoration:none; font-weight:600;
  font-family:var(--font-body); cursor:pointer;
  padding:15px 28px; border-radius:2px; font-size:15px; border:1px solid transparent;
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.btn-primary{background:var(--ink); color:var(--paper);}
.btn-primary:hover{background:var(--slate);}
.btn-sage{background:var(--sage); color:var(--ink);}
.btn-sage:hover{background:var(--mist);}
.btn-ghost{background:transparent; color:var(--ink); border-color:var(--ink);}
.btn-ghost:hover{background:var(--mist);}
.btn-small{padding:11px 20px; font-size:13.5px;}
.btn-large{padding:18px 34px; font-size:16px;}

/* footer */
.site-footer{border-top:1px solid var(--mist); padding:36px 0; font-size:13px; color:var(--slate); background:var(--paper);}
.footer-inner{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px;}
.site-footer .brand-mark{width:22px; height:22px;}
.site-footer .brand-name{font-size:15px;}

[hidden]{display:none !important;}
