/*
  CMC Media — Shared Stylesheet
  Colors pulled from logo: CMC red #C0392B → #8B1A10, media amber #D4580A → #E8761A
*/
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400;1,700&family=Inter:wght@300;400;500;600&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  /* Brand colors from logo */
  --cmc-red:#C0392B;
  --cmc-red-dark:#8B1A10;
  --cmc-amber:#D4580A;
  --cmc-amber-light:#E8761A;

  /* Neutrals */
  --ink:#181412;
  --ink-mid:#3a3330;
  --ink-soft:#6e6560;
  --ink-faint:#a8a09a;
  --paper:#f8f5f0;
  --paper-warm:#f0ebe2;
  --card:#ffffff;
  --border:rgba(24,20,18,0.10);
  --shadow-sm:0 1px 6px rgba(24,20,18,0.08);
  --shadow-md:0 4px 24px rgba(24,20,18,0.12);
  --shadow-lg:0 12px 48px rgba(24,20,18,0.16);
}

body{
  font-family:'Inter',sans-serif;
  background:var(--paper);
  color:var(--ink);
  line-height:1.6;
}

/* ── NAVIGATION ────────────────────────────────────────────── */
.site-nav{
  background:var(--ink);
  position:sticky;
  top:0;
  z-index:200;
  border-bottom:2px solid var(--cmc-red-dark);
}
.nav-inner{
  max-width:1140px;
  margin:0 auto;
  padding:0 48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:68px;
}
.nav-logo img{
  height:32px;
  width:auto;
  display:block;
}
.nav-links{
  display:flex;
  align-items:center;
  gap:32px;
  list-style:none;
}
.nav-links a{
  font-size:13px;
  font-weight:600;
  letter-spacing:.04em;
  color:rgba(248,245,240,0.55);
  text-decoration:none;
  transition:color .15s;
}
.nav-links a:hover,.nav-links a.active{color:#f8f5f0}
.nav-cta{
  background:var(--cmc-red);
  color:#fff !important;
  padding:9px 20px;
  border-radius:8px;
  transition:background .15s !important;
}
.nav-cta:hover{background:var(--cmc-red-dark) !important}

/* ── FOOTER ────────────────────────────────────────────────── */
.site-footer{
  background:var(--ink);
  padding:64px 48px 32px;
}
.footer-inner{
  max-width:1140px;
  margin:0 auto;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1fr;
  gap:48px;
  margin-bottom:48px;
}
.footer-brand-col .footer-logo{
  height:28px;
  width:auto;
  margin-bottom:16px;
  display:block;
}
.footer-tagline{
  font-size:13px;
  color:rgba(248,245,240,0.45);
  line-height:1.7;
  max-width:240px;
}
.footer-col-title{
  font-size:11px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(248,245,240,0.3);
  margin-bottom:16px;
}
.footer-col-links{
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:9px;
}
.footer-col-links a{
  font-size:13px;
  color:rgba(248,245,240,0.5);
  text-decoration:none;
  transition:color .15s;
}
.footer-col-links a:hover{color:#f8f5f0}
.footer-bottom{
  border-top:1px solid rgba(248,245,240,0.08);
  padding-top:24px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}
.footer-copy{
  font-size:12px;
  color:rgba(248,245,240,0.25);
}
.footer-since{
  font-size:12px;
  color:rgba(248,245,240,0.25);
  font-style:italic;
}

/* ── SHARED COMPONENTS ─────────────────────────────────────── */
.eyebrow{
  font-size:11px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--cmc-red);
  margin-bottom:14px;
  display:flex;
  align-items:center;
  gap:10px;
}
.eyebrow::after{
  content:'';
  flex:1;
  height:1px;
  background:rgba(192,57,43,0.2);
  max-width:60px;
}
.section-title{
  font-family:'Playfair Display',serif;
  font-size:42px;
  font-weight:700;
  color:var(--ink);
  line-height:1.1;
  margin-bottom:16px;
}
.section-body{
  font-size:16px;
  color:var(--ink-soft);
  line-height:1.75;
  max-width:680px;
}
.section-body p{margin-bottom:14px}
.section-body p:last-child{margin-bottom:0}
.btn-primary{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:var(--cmc-red);
  color:#fff;
  font-size:14px;
  font-weight:600;
  padding:14px 28px;
  border-radius:10px;
  text-decoration:none;
  transition:background .15s;
  border:none;
  cursor:pointer;
  font-family:'Inter',sans-serif;
}
.btn-primary:hover{background:var(--cmc-red-dark)}
.btn-secondary{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:transparent;
  color:var(--ink-mid);
  font-size:14px;
  font-weight:600;
  padding:14px 24px;
  border-radius:10px;
  text-decoration:none;
  border:1.5px solid var(--border);
  transition:all .15s;
  cursor:pointer;
  font-family:'Inter',sans-serif;
}
.btn-secondary:hover{border-color:var(--cmc-red);color:var(--cmc-red)}
.btn-ghost{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:rgba(255,255,255,0.08);
  color:rgba(248,245,240,0.75);
  font-size:14px;
  font-weight:600;
  padding:13px 24px;
  border-radius:10px;
  text-decoration:none;
  border:1px solid rgba(255,255,255,0.15);
  transition:all .15s;
}
.btn-ghost:hover{background:rgba(255,255,255,0.14);color:#f8f5f0}

.wrap{max-width:1140px;margin:0 auto;padding:0 48px}
.section{padding:88px 0}
.section-sm{padding:56px 0}

@media(max-width:900px){
  .nav-inner{padding:0 24px}
  .nav-links{gap:18px}
  .nav-links li:not(:last-child){display:none}
  .wrap{padding:0 24px}
  .section{padding:60px 0}
  .section-title{font-size:30px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .site-footer{padding:48px 24px 24px}
}
@media(max-width:600px){
  .footer-grid{grid-template-columns:1fr}
}
