/* ============================================================================
   Aeristo Brand System — Variant 01.5 (Digital)
   Display: Cormorant Garamond (small-caps + italic pivot)
   Working: Inter   Technical: JetBrains Mono
   Palette locked: Bone / Tuscany / Tarmac / Navy
============================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@300;400;500;600&family=JetBrains+Mono:wght@300;400;500&display=swap');

:root{
  /* Core palette — locked */
  --bone:#F4F4EF; --tuscany:#7F2320; --tarmac:#2E2D2B; --navy:#1F2D44;
  /* Working tints */
  --bone-deep:#ECE9E1; --bone-deeper:#E2DED4;
  --tarmac-soft:#58564F; --tarmac-mute:#8A877E; --tuscany-bright:#9A2C29;
  --hairline:rgba(46,45,43,0.18); --hairline-bright:rgba(46,45,43,0.32);
  /* Faces */
  --font-display:'Cormorant Garamond','Cormorant',Georgia,serif;
  --font-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  --font-mono:'JetBrains Mono','SF Mono',Consolas,Menlo,monospace;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--bone); color:var(--tarmac);
  font-family:var(--font-body); font-weight:400; font-size:15px; line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

/* Display headings — Cormorant small-caps from mixed-case source */
.display{
  font-family:var(--font-display); font-weight:500;
  font-variant:small-caps; font-feature-settings:"smcp" 1;
  letter-spacing:0.04em; color:var(--tarmac); line-height:1.15; margin:0;
}
.display .pivot{            /* the single italic Tuscany word */
  font-variant:normal; font-feature-settings:normal;
  font-style:italic; font-weight:400; color:var(--tuscany);
}
h1.display{font-size:34px}
h2.display{font-size:23px}
h3.display{font-size:18px}

/* Eyebrow / label — mono, all caps, wide tracking */
.eyebrow{
  font-family:var(--font-mono); font-size:11px; font-weight:400;
  letter-spacing:0.22em; text-transform:uppercase; color:var(--tarmac-mute);
}

/* Technical / part numbers / codes */
.mono{ font-family:var(--font-mono); }

/* Hairline rule */
.rule{ height:1px; background:var(--hairline); border:0; margin:0; }

/* Forms */
label.field-label{
  display:block; font-family:var(--font-body); font-size:11px; font-weight:600;
  letter-spacing:0.12em; text-transform:uppercase; color:var(--tarmac-soft); margin:14px 0 6px;
}
input.field, select.field{
  width:100%; padding:11px 13px; font-family:var(--font-body); font-size:14px;
  color:var(--tarmac); background:#fff; border:1px solid var(--hairline); border-radius:3px;
}
input.field:focus, select.field:focus{
  outline:none; border-color:var(--tuscany); box-shadow:0 0 0 3px rgba(127,35,32,.12);
}

/* CTA / buttons — Inter 500, all caps, wide tracking */
.cta{
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--font-body); font-weight:500; font-size:12px;
  letter-spacing:0.18em; text-transform:uppercase; cursor:pointer;
  border:1px solid transparent; border-radius:3px; padding:11px 20px; transition:all .18s ease;
}
.cta-primary{ background:var(--tuscany); color:var(--bone); border-color:var(--tuscany); }
.cta-primary:hover{ background:var(--tuscany-bright); }
.cta-ghost{ background:transparent; color:var(--tarmac); border-color:var(--hairline-bright); }
.cta-ghost:hover{ border-color:var(--tarmac); }
.cta:disabled{ opacity:.45; cursor:not-allowed; }

/* Cards / surfaces */
.surface{ background:#fff; border:1px solid var(--hairline); border-radius:3px; }
.surface-bone{ background:var(--bone-deep); }

/* Tables */
table.brand{ width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--hairline); }
table.brand th{
  text-align:left; padding:9px 13px; background:var(--bone-deep);
  font-family:var(--font-mono); font-size:10px; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--tarmac-soft); border-bottom:1px solid var(--hairline);
}
table.brand td{ padding:9px 13px; font-size:13px; border-bottom:1px solid var(--hairline); color:var(--tarmac-soft); }
table.brand tr:last-child td{ border-bottom:0; }
table.brand td.pn{ font-family:var(--font-mono); font-weight:500; color:var(--tarmac); }
.chip{
  display:inline-block; font-family:var(--font-mono); font-size:10px; letter-spacing:0.08em;
  background:var(--navy); color:var(--bone); border-radius:2px; padding:1px 6px; margin-left:5px;
}
.chip-tuscany{ background:var(--tuscany); }
