/* ============================================================
   Dr. Adams Global™ — brand.css
   DA-GEOS™ V17 Master Design System — LOCKED
   Single source of truth. No page-level color or font declarations.
   ============================================================ */

/* ---------- TOKENS ---------- */
:root{
  /* Color — locked. No additions without written approval. */
  --navy:#081B33;
  --navy-lift:#0F2B4C;
  --gold:#D4AF37;
  --gold-bright:#E5C356;
  --gold-dim:#8A7328;
  --ivory:#F8F5EF;
  --charcoal:#1B1B1B;
  --white:#FFFFFF;

  /* Derived */
  --rule:rgba(212,175,55,.28);
  --rule-quiet:rgba(27,27,27,.12);
  --muted-on-navy:rgba(248,245,239,.62);
  --muted-on-ivory:rgba(27,27,27,.62);
  --body-on-ivory:rgba(27,27,27,.84);
  --alert:#B4472F;

  /* Type */
  --display:'Cormorant Garamond', Georgia, serif;
  --secondary:'Playfair Display', Georgia, serif;
  --body:'Inter', system-ui, -apple-system, sans-serif;

  /* Scale */
  --measure:66ch;
  --gutter:24px;
  --max:1120px;
  --max-narrow:820px;
}

/* ---------- RESET ---------- */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--body);
  font-weight:300;
  line-height:1.65;
  color:var(--charcoal);
  background:var(--ivory);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* ---------- LAYOUT ---------- */
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.wrap-narrow{max-width:var(--max-narrow);margin:0 auto;padding:0 var(--gutter)}
section{padding:88px 0}
@media (max-width:720px){section{padding:60px 0}}
.on-navy{background:var(--navy);color:var(--ivory)}
.on-ivory{background:var(--ivory);color:var(--charcoal)}
.on-white{background:var(--white);color:var(--charcoal)}

/* ---------- TYPE ---------- */
h1,h2,h3,h4{font-family:var(--display);font-weight:600;line-height:1.1;letter-spacing:-.005em}
h1{font-size:clamp(2.6rem,6.4vw,4.2rem);margin-bottom:16px}
h2{font-size:clamp(2rem,4.6vw,2.9rem);margin-bottom:18px}
h3{font-size:clamp(1.35rem,2.6vw,1.7rem);margin-bottom:10px}
h4{font-family:var(--body);font-weight:600;font-size:1rem;letter-spacing:.01em;margin-bottom:8px}
em{font-style:italic;color:var(--gold)}
.on-ivory em,.on-white em{color:var(--gold-dim)}

p{margin-bottom:16px;max-width:var(--measure)}
p:last-child{margin-bottom:0}
strong{font-weight:600}

.eyebrow{
  font-family:var(--body);font-size:.66rem;font-weight:600;
  letter-spacing:.24em;text-transform:uppercase;
  color:var(--gold);margin-bottom:20px;
}
.on-ivory .eyebrow,.on-white .eyebrow{color:var(--gold-dim)}

.lede{
  font-family:var(--secondary);font-weight:400;
  font-size:clamp(1.1rem,2.2vw,1.35rem);line-height:1.5;
  max-width:60ch;
}
.on-navy .lede{color:rgba(248,245,239,.88)}

.kicker{
  font-family:var(--display);font-style:italic;
  font-size:clamp(1.2rem,2.8vw,1.5rem);color:var(--gold);
}
.small{font-size:.84rem;color:var(--muted-on-ivory)}
.on-navy .small{color:var(--muted-on-navy)}

/* ---------- HEADER ---------- */
.mast{
  background:var(--navy);color:var(--ivory);
  border-bottom:1px solid var(--rule);
  position:sticky;top:0;z-index:50;
}
.mast .wrap{
  display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding-top:16px;padding-bottom:16px;flex-wrap:wrap;
}
.brandmark{
  font-family:var(--body);font-weight:600;font-size:.74rem;
  letter-spacing:.18em;text-transform:uppercase;color:var(--gold);
  text-decoration:none;line-height:1.3;
}
.brandmark span{
  display:block;color:var(--muted-on-navy);
  font-weight:400;font-size:.6rem;letter-spacing:.14em;margin-top:2px;
}
.nav{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.nav a{
  font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;
  font-weight:500;color:var(--muted-on-navy);text-decoration:none;
  transition:color .18s ease;
}
.nav a:hover,.nav a:focus-visible{color:var(--gold)}
.nav a.btn{color:var(--navy)}
.nav a.btn:hover{color:var(--navy)}
@media (max-width:820px){.nav{display:none}}

/* ---------- BUTTONS ---------- */
.btn{
  display:inline-block;font-family:var(--body);font-weight:600;
  font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;
  background:var(--gold);color:var(--navy);
  border:1px solid var(--gold);
  padding:16px 32px;cursor:pointer;text-decoration:none;
  transition:background .18s ease,transform .1s ease;
}
.btn:hover{background:var(--gold-bright);border-color:var(--gold-bright)}
.btn:active{transform:translateY(1px)}
.btn:focus-visible{outline:2px solid var(--ivory);outline-offset:3px}
.btn-ghost{background:transparent;color:var(--gold);border-color:var(--rule)}
.btn-ghost:hover{background:rgba(212,175,55,.08);border-color:var(--gold)}
.on-ivory .btn-ghost,.on-white .btn-ghost{
  color:var(--gold-dim);border-color:rgba(138,115,40,.4);
}
.on-ivory .btn-ghost:hover,.on-white .btn-ghost:hover{background:rgba(212,175,55,.1)}
.btnrow{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:32px}

/* ---------- TABLES ---------- */
table{width:100%;border-collapse:collapse;margin:28px 0;font-size:.94rem}
th{
  text-align:left;font-family:var(--body);font-weight:600;
  font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold-dim);padding:0 16px 12px 0;
  border-bottom:1px solid var(--rule);
}
.on-navy th{color:var(--gold);border-bottom-color:var(--rule)}
td{
  padding:16px 16px 16px 0;vertical-align:top;
  border-bottom:1px solid var(--rule-quiet);
  color:var(--body-on-ivory);
}
.on-navy td{color:rgba(248,245,239,.86);border-bottom-color:rgba(248,245,239,.12)}
td:first-child{font-weight:500;color:var(--charcoal)}
.on-navy td:first-child{color:var(--ivory)}

/* ---------- LISTS ---------- */
.checklist{list-style:none;max-width:var(--measure)}
.checklist li{
  padding:12px 0 12px 30px;position:relative;
  border-bottom:1px solid var(--rule-quiet);
  color:var(--body-on-ivory);
}
.on-navy .checklist li{border-bottom-color:rgba(248,245,239,.12);color:rgba(248,245,239,.86)}
.checklist li::before{
  content:"◆";position:absolute;left:0;top:12px;
  color:var(--gold);font-size:.7rem;
}
.checklist.no li::before{content:"—";color:var(--alert)}

/* ---------- ARC (engagement timeline) ---------- */
.arc{display:grid;gap:0;margin-top:32px}
.arc-step{
  display:grid;grid-template-columns:120px 1fr;gap:28px;
  padding:26px 0;border-top:1px solid var(--rule);
}
.arc-step:last-child{border-bottom:1px solid var(--rule)}
@media (max-width:640px){.arc-step{grid-template-columns:1fr;gap:8px}}
.arc-when{
  font-family:var(--body);font-weight:600;font-size:.68rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--gold);
  padding-top:5px;
}
.arc-what h3{font-family:var(--display);font-size:1.5rem;margin-bottom:6px}
.arc-what p{font-size:.95rem;color:var(--body-on-ivory)}
.on-navy .arc-what p{color:rgba(248,245,239,.8)}

/* ---------- INVESTMENT ---------- */
.invest{
  border:1px solid var(--rule);
  padding:40px;background:var(--white);
  display:grid;grid-template-columns:1fr 1fr;gap:36px;
}
@media (max-width:720px){.invest{grid-template-columns:1fr;padding:28px}}
.invest-tier .amt{
  font-family:var(--display);font-weight:600;
  font-size:3.2rem;line-height:1;color:var(--navy);
  display:block;margin:6px 0 4px;
}
.invest-tier .unit{font-size:.8rem;color:var(--muted-on-ivory);letter-spacing:.04em}
.invest-tier h4{
  font-family:var(--body);font-size:.66rem;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dim);
}
.invest-tier p{font-size:.9rem;margin-top:12px;color:var(--body-on-ivory)}

/* ---------- PROOF ---------- */
.proof{
  border-left:2px solid var(--gold);padding:6px 0 6px 26px;
  max-width:62ch;
}
.proof p{
  font-family:var(--display);font-style:italic;
  font-size:clamp(1.2rem,2.6vw,1.5rem);line-height:1.45;
}
.proof cite{
  display:block;margin-top:14px;font-style:normal;
  font-family:var(--body);font-size:.68rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gold-dim);
}
.on-navy .proof cite{color:var(--gold)}

/* ---------- FORM ---------- */
.field{margin-bottom:22px;max-width:520px}
.field label{
  display:block;font-size:.66rem;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);margin-bottom:8px;
}
.field input,.field select,.field textarea{
  width:100%;font-family:var(--body);font-size:.96rem;font-weight:300;
  background:transparent;color:var(--ivory);
  border:1px solid rgba(248,245,239,.24);
  padding:14px 16px;
}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--gold);
}
.field select option{background:var(--navy);color:var(--ivory)}
.hp{position:absolute;left:-9999px;opacity:0}

/* ---------- FOOTER ---------- */
.foot{background:var(--navy);color:var(--ivory);padding:64px 0 32px}
.foot-grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;
  padding-bottom:40px;border-bottom:1px solid var(--rule);
}
@media (max-width:820px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-grid{grid-template-columns:1fr}}
.foot h4{
  font-family:var(--body);font-size:.64rem;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;
}
.foot ul{list-style:none}
.foot li{margin-bottom:10px}
.foot a{
  font-size:.86rem;color:var(--muted-on-navy);text-decoration:none;
  transition:color .18s ease;
}
.foot a:hover{color:var(--gold)}
.foot-bar{
  padding-top:26px;display:flex;justify-content:space-between;
  gap:14px;flex-wrap:wrap;
  font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted-on-navy);
}
.foot-bar b{color:var(--gold);font-weight:600}

/* ---------- UTIL ---------- */
.tight{margin-top:-40px}
.center{text-align:center}
.center p,.center .lede{margin-left:auto;margin-right:auto}
.center .btnrow{justify-content:center}
