/* ================================================================
   HOME · VARIATION C — Deck Cover
   Deep navy ground, cream serif, soft-gold italic accent, sonar motif.
   ================================================================ */

body.navy {
  /* palette */
  --c-bg:        #0A1825;      /* deep navy ground */
  --c-bg-2:      #0E1F2E;      /* lifted card */
  --c-bg-3:      #061320;      /* recessed band */
  --c-text:      #ECE2CE;      /* cream */
  --c-soft:      rgba(236,226,206,0.7);
  --c-mute:      rgba(236,226,206,0.5);
  --c-dim:       rgba(236,226,206,0.3);
  --c-rule:      rgba(236,226,206,0.14);
  --c-rule-2:    rgba(236,226,206,0.22);
  --c-gold:      #C8A968;      /* italic accent */
  --c-gold-soft: rgba(200,169,104,0.6);
  --c-amber:     #B85C2A;      /* operational tag */

  background: var(--c-bg);
  color: var(--c-text);
  font-family: var(--sans);

  /* override site-wide */
  --paper: var(--c-bg);
  --paper-bright: var(--c-bg-2);
  --paper-deep: var(--c-bg-3);
  --paper-rule: var(--c-rule);
  --ink: var(--c-text);
  --ink-soft: var(--c-soft);
  --ink-mute: var(--c-mute);
  --ink-dim: var(--c-dim);
  --amber: var(--c-gold);
}

body.navy a { color: inherit; text-decoration: none; }
body.navy ::selection { background: var(--c-gold); color: var(--c-bg); }

/* image-slot dark fallback */
body.navy image-slot {
  background: var(--c-bg-2);
  border-color: var(--c-rule-2);
  color: var(--c-mute);
}

/* ================================================================
   COVER / HERO
   ================================================================ */

.cover {
  position: relative;
  min-height: 100vh;
  padding: 32px var(--gutter) 32px;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 24px;
  overflow: hidden;
  background:
    radial-gradient(120% 90% at 100% 0%, rgba(20, 42, 64, 0.7), transparent 60%),
    radial-gradient(80% 80% at 0% 100%, rgba(11, 32, 50, 0.65), transparent 70%),
    linear-gradient(180deg, #0B1A28 0%, #081523 100%);
}

/* ambient map grid */
.cover__grid {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(to right, rgba(236,226,206,0.035) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(236,226,206,0.035) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(120% 80% at 60% 60%, black 30%, transparent 90%);
  pointer-events: none;
  opacity: 0;
}
/* contour map — terrain lines behind hero */
.cover__contours {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  pointer-events: none;
  z-index: 0;
  -webkit-mask-image: radial-gradient(120% 80% at 30% 50%, transparent 5%, #000 60%);
          mask-image: radial-gradient(120% 80% at 30% 50%, transparent 5%, #000 60%);
}

/* sonar SVG */
.cover__sonar {
  position: absolute;
  top: 0; right: -4%; bottom: 0;
  width: 70%; height: 100%;
  pointer-events: none;
  opacity: 0.95;
}

/* brand bar (top) */
.cover__brandbar {
  position: relative; z-index: 2;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 32px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--c-rule);
}
.cover__mark {
  display: inline-flex; align-items: center; gap: 12px;
}
.cover__glyph {
  width: 22px; height: 22px;
  color: var(--c-text);
}
.cover__brand {
  font-family: var(--mono);
  font-size: 14px;
  letter-spacing: 0.22em;
  font-weight: 600;
  color: var(--c-text);
}
.cover__nav {
  display: flex; gap: 32px;
  justify-content: center;
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c-soft);
}
.cover__nav a { transition: color 0.15s; }
.cover__nav a:hover { color: var(--c-gold); }
.cover__brand-meta {
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-soft);
}

/* main body */
.cover__body {
  position: relative; z-index: 2;
  display: flex; flex-direction: column;
  justify-content: center;
  padding: 32px 0 24px;
  max-width: 1500px;
}

.cover__operational {
  display: inline-flex; align-items: center; gap: 12px;
  font-family: var(--mono);
  font-size: 11.5px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-soft);
  margin-bottom: 56px;
  align-self: flex-start;
}
.cover__dot {
  width: 8px; height: 8px;
  background: var(--c-amber);
  border-radius: 50%;
  box-shadow: 0 0 10px var(--c-amber);
  flex: none;
}

.cover__title {
  font-family: var(--display);
  font-weight: 400;
  font-size: clamp(64px, 9.2vw, 168px);
  line-height: 0.96;
  letter-spacing: -0.025em;
  margin: 0 0 36px;
  color: var(--c-text);
  font-variation-settings: "opsz" 72;
  text-wrap: balance;
}
.cover__italic {
  font-style: italic;
  font-weight: 400;
  color: var(--c-gold);
  font-variation-settings: "opsz" 72;
}

.cover__lede {
  font-family: var(--sans);
  font-weight: 400;
  font-size: clamp(17px, 1.45vw, 21px);
  line-height: 1.5;
  max-width: 56ch;
  color: var(--c-soft);
  margin: 0 0 48px;
}

.cover__rule {
  border: 0; height: 1px; background: var(--c-rule);
  margin: 0 0 28px;
  max-width: 680px;
}

.cover__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(200px, 1fr));
  gap: 32px;
  max-width: 760px;
  margin: 0 0 48px;
}
.cover__stats > div { display: flex; flex-direction: column; gap: 12px; }
.cover__stats dt {
  font-family: var(--mono);
  font-size: 10.5px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-mute);
}
.cover__stats dd {
  font-family: var(--display);
  font-weight: 400;
  font-size: clamp(22px, 2.1vw, 30px);
  letter-spacing: -0.01em;
  margin: 0;
  color: var(--c-text);
}

.cover__cta-row {
  display: flex; gap: 28px; flex-wrap: wrap; align-items: center;
}
.cover__cta {
  display: inline-flex; align-items: center; gap: 12px;
  padding: 16px 22px;
  font-family: var(--mono);
  font-size: 11.5px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--c-bg);
  background: var(--c-gold);
  border: 1px solid var(--c-gold);
  transition: background 0.15s, color 0.15s;
}
.cover__cta:hover {
  background: transparent;
  color: var(--c-gold);
}
.cover__cta--ghost {
  background: transparent;
  border-color: var(--c-rule-2);
  color: var(--c-soft);
}
.cover__cta--ghost:hover {
  border-color: var(--c-gold);
  color: var(--c-gold);
  background: transparent;
}

/* feet chrome */
.cover__feet {
  position: relative; z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
  padding-top: 22px;
  border-top: 1px solid var(--c-rule);
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-mute);
}
.cover__feet-c { text-align: center; }
.cover__feet-r { text-align: right; }
.cover__feet em { font-style: italic; color: var(--c-gold); }

/* ================================================================
   GENERIC BAND
   ================================================================ */

.cv-band {
  position: relative;
  padding: 112px var(--gutter);
  border-top: 1px solid var(--c-rule);
  background: var(--c-bg);
  overflow: hidden;
}

/* ambient bathymetric texture — subtle intelligence-map isobaths behind every band */
.cv-band::before {
  content: "";
  position: absolute; inset: 0;
  pointer-events: none;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><defs><pattern id="b" patternUnits="userSpaceOnUse" width="14" height="14"><circle cx="7" cy="7" r="0.55" fill="%23ECE2CE" fill-opacity="0.025"/></pattern></defs><rect width="800" height="600" fill="url(%23b)"/><g fill="none" stroke="%23ECE2CE" stroke-width="1"><g stroke-opacity="0.08"><path d="M 40 240 Q 110 130 240 150 Q 360 175 390 240 Q 400 320 320 350 Q 200 370 120 340 Q 50 310 40 240 Z"/><path d="M 90 240 Q 140 170 240 185 Q 340 200 365 250 Q 370 320 305 335 Q 215 350 145 330 Q 100 305 90 240 Z"/><path d="M 140 245 Q 175 200 240 215 Q 305 225 325 260 Q 330 310 280 320 Q 215 330 165 315 Q 145 290 140 245 Z"/><path d="M 185 250 Q 210 225 240 235 Q 285 245 290 270 Q 290 300 260 305 Q 215 310 195 300 Q 185 280 185 250 Z"/><path d="M 220 258 Q 235 248 250 252 Q 275 262 270 277 Q 263 290 250 290 Q 235 290 225 285 Q 220 272 220 258 Z"/></g><g stroke-opacity="0.07"><path d="M 410 360 Q 500 270 660 270 Q 790 285 800 380 Q 780 480 640 510 Q 480 510 410 450 Q 380 410 410 360 Z"/><path d="M 460 365 Q 540 300 660 300 Q 760 315 770 385 Q 750 460 630 485 Q 500 485 450 440 Q 425 410 460 365 Z"/><path d="M 510 380 Q 575 335 660 335 Q 740 345 745 395 Q 730 445 625 465 Q 525 465 490 435 Q 470 410 510 380 Z"/><path d="M 560 395 Q 610 365 660 365 Q 715 370 720 405 Q 705 435 625 445 Q 555 445 530 425 Q 515 410 560 395 Z"/><path d="M 605 410 Q 640 395 660 395 Q 695 400 695 415 Q 685 430 625 435 Q 580 435 565 425 Q 555 415 605 410 Z"/></g><g stroke-opacity="0.11" stroke-dasharray="3 5"><path d="M 20 410 Q 180 380 340 410 Q 420 425 430 500"/><path d="M 360 200 Q 450 230 540 220"/></g><g stroke-opacity="0.07"><path d="M -20 540 Q 200 510 400 530 Q 600 555 800 545"/><path d="M -20 570 Q 200 545 400 560 Q 600 580 800 575"/></g></g><g fill="%23ECE2CE" fill-opacity="0.15"><rect x="249" y="249" width="2" height="2"/><rect x="659" y="399" width="2" height="2"/></g></svg>');
  background-size: 800px 600px;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);
          mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);
  z-index: 0;
}
/* Hide the secondary crosshair overlay — the bathymetric pattern carries its own marks */
.cv-band::after { display: none; }
.cv-band > * { position: relative; z-index: 1; }

/* in the lifted "alt" sections the grid is the same colour but the band is
   lighter, so dial brightness down */
.cv-band--alt::before { opacity: 0.7; }
.cv-band--quote::before { opacity: 1.2; }
.cv-band--quote::after  { opacity: 1.2; }
.cv-band--alt { background: var(--c-bg-2); }
.cv-band--quote { background: var(--c-bg-3); }

.cv-marker {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 14px;
  align-items: center;
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-mute);
  margin-bottom: 64px;
}
.cv-marker .line { height: 1px; background: var(--c-rule); }

.cv-title {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 64px;
  align-items: end;
  margin-bottom: 56px;
}
.cv-title p {
  color: var(--c-soft);
  font-size: 17px;
  line-height: 1.55;
  max-width: 46ch;
  margin: 0;
}

.cv-eye {
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-gold);
  margin-bottom: 18px;
}

.cv-h {
  font-family: var(--display);
  font-weight: 400;
  font-size: clamp(40px, 5.4vw, 84px);
  line-height: 1.0;
  letter-spacing: -0.025em;
  margin: 0;
  color: var(--c-text);
  font-variation-settings: "opsz" 60;
  text-wrap: balance;
}
.cv-h em {
  font-style: italic;
  color: var(--c-gold);
  font-weight: 400;
}

.cv-body {
  font-family: var(--sans);
  font-size: 16.5px;
  line-height: 1.6;
  color: var(--c-soft);
  max-width: 56ch;
}

/* ================================================================
   THESIS / TENETS
   ================================================================ */

.cv-thesis__lede {
  margin-bottom: 72px;
  max-width: 1100px;
}
.cv-thesis__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border-top: 1px solid var(--c-rule);
}
.cv-tenet {
  padding: 40px 32px 40px 0;
  border-bottom: 1px solid var(--c-rule);
  border-right: 1px solid var(--c-rule);
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 24px;
  align-items: start;
}
.cv-tenet:nth-child(2) { padding-left: 32px; }
.cv-tenet:nth-child(3) { padding-left: 32px; border-right: 0; }
.cv-tenet:nth-child(even) {
  /* no special even rules; using nth-child(2)/(3) above */
}
.cv-tenet:nth-last-child(-n+3) { border-bottom: 0; }
.cv-tenet__n {
  font-family: var(--display);
  font-style: italic;
  font-weight: 400;
  font-size: 64px;
  line-height: 0.9;
  color: var(--c-gold);
  letter-spacing: -0.04em;
}
.cv-tenet h3 {
  font-family: var(--display);
  font-weight: 500;
  font-size: 26px;
  margin: 0 0 14px;
  letter-spacing: -0.01em;
  color: var(--c-text);
}
.cv-tenet p {
  color: var(--c-soft);
  font-size: 15.5px;
  line-height: 1.55;
  margin: 0;
  max-width: 42ch;
}

/* ================================================================
   CAPABILITIES
   ================================================================ */

.cv-caps {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-top: 1px solid var(--c-rule);
}
.cv-card {
  padding: 48px 40px 40px 0;
  border-right: 1px solid var(--c-rule);
  display: flex; flex-direction: column;
}
.cv-card + .cv-card {
  padding: 48px 0 40px 40px;
  border-right: 0;
}
.cv-card header {
  display: flex; justify-content: space-between;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--c-rule);
}
.cv-chip {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  border: 1px solid var(--c-rule-2);
  color: var(--c-soft);
}
.cv-chip--gold {
  color: var(--c-gold);
  border-color: var(--c-gold-soft);
}
.cv-card__h {
  font-family: var(--display);
  font-weight: 400;
  font-size: clamp(34px, 3.6vw, 52px);
  line-height: 1.02;
  letter-spacing: -0.02em;
  margin: 28px 0 18px;
  color: var(--c-text);
  font-variation-settings: "opsz" 48;
}
.cv-card__h em {
  font-style: italic;
  color: var(--c-gold);
}
.cv-card__lede {
  font-family: var(--display);
  font-weight: 300;
  font-size: 19px;
  line-height: 1.4;
  margin: 0 0 32px;
  max-width: 44ch;
  color: var(--c-soft);
  font-variation-settings: "opsz" 24;
}
.cv-card__lines {
  list-style: none; margin: 0 0 36px; padding: 0;
  border-top: 1px solid var(--c-rule);
}
.cv-card__lines li {
  padding: 16px 0;
  border-bottom: 1px solid var(--c-rule);
  font-family: var(--display);
  font-weight: 500;
  font-size: 19px;
  color: var(--c-text);
  letter-spacing: -0.005em;
  display: flex; align-items: center; gap: 14px;
  font-variation-settings: "opsz" 24;
}
.cv-card__lines li::before {
  content: "";
  display: inline-block; width: 6px; height: 6px;
  background: var(--c-gold);
}
.cv-card__cta {
  align-self: flex-start; margin-top: auto;
  display: inline-flex; align-items: center; gap: 12px;
  padding: 14px 20px;
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  border: 1px solid var(--c-rule-2);
  color: var(--c-text);
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.cv-card__cta:hover {
  background: var(--c-gold);
  color: var(--c-bg);
  border-color: var(--c-gold);
}

/* ================================================================
   PHOTO BAND
   ================================================================ */

.cv-photo {
  background: var(--c-bg-3);
  border-top: 1px solid var(--c-rule);
  border-bottom: 1px solid var(--c-rule);
  position: relative;
  overflow: hidden;
}
.cv-photo::before {
  content: "";
  position: absolute; inset: 0;
  pointer-events: none;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><g fill="none" stroke="%23ECE2CE" stroke-width="1" stroke-opacity="0.055"><path d="M 40 240 Q 110 130 240 150 Q 360 175 390 240 Q 400 320 320 350 Q 200 370 120 340 Q 50 310 40 240 Z"/><path d="M 90 240 Q 140 170 240 185 Q 340 200 365 250 Q 370 320 305 335 Q 215 350 145 330 Q 100 305 90 240 Z"/><path d="M 140 245 Q 175 200 240 215 Q 305 225 325 260 Q 330 310 280 320 Q 215 330 165 315 Q 145 290 140 245 Z"/><path d="M 410 360 Q 500 270 660 270 Q 790 285 800 380 Q 780 480 640 510 Q 480 510 410 450 Q 380 410 410 360 Z"/><path d="M 460 365 Q 540 300 660 300 Q 760 315 770 385 Q 750 460 630 485 Q 500 485 450 440 Q 425 410 460 365 Z"/></g></svg>');
  background-size: 800px 600px;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%);
          mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%);
  z-index: 0;
}
.cv-photo > * { position: relative; z-index: 1; }
.cv-photo__inner { padding: 80px var(--gutter); }
.cv-photo__cap {
  display: flex; justify-content: space-between;
  margin-top: 18px;
  font-family: var(--mono);
  font-size: 10.5px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-mute);
}
.cv-photo__cap-r { color: var(--c-gold); }

/* ================================================================
   QUOTE
   ================================================================ */

.cv-quote {
  max-width: 1100px;
  margin: 0 auto;
}
.cv-quote__q {
  font-family: var(--display);
  font-weight: 400;
  font-size: clamp(40px, 5.8vw, 96px);
  line-height: 1.05;
  letter-spacing: -0.025em;
  margin: 0 0 36px;
  font-variation-settings: "opsz" 72;
  text-wrap: balance;
  color: var(--c-text);
  quotes: "“" "”";
}
.cv-quote__q::before { content: open-quote; color: var(--c-gold); }
.cv-quote__q::after  { content: close-quote; color: var(--c-gold); }
.cv-quote__q em {
  font-style: italic;
  font-weight: 400;
  color: var(--c-gold);
}
.cv-quote__attr {
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-mute);
}

/* ================================================================
   MODEL — α β γ δ steps
   ================================================================ */

.cv-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border-top: 1px solid var(--c-rule);
}
.cv-step {
  padding: 36px 32px 36px 0;
  border-right: 1px solid var(--c-rule);
  display: flex; flex-direction: column; gap: 14px;
}
.cv-step:last-child { border-right: 0; padding-right: 0; }
.cv-step:not(:first-child) { padding-left: 32px; }
.cv-step__n {
  font-family: var(--display);
  font-style: italic;
  font-weight: 400;
  font-size: 88px;
  line-height: 0.88;
  color: var(--c-gold);
  letter-spacing: -0.04em;
}
.cv-step h4 {
  font-family: var(--display);
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.01em;
  margin: 0;
  color: var(--c-text);
}
.cv-step p {
  color: var(--c-soft);
  font-size: 14.5px;
  line-height: 1.55;
  margin: 0;
}

/* ================================================================
   LEADERSHIP
   ================================================================ */

.cv-lead {
  display: grid;
  grid-template-columns: 1.3fr 0.8fr;
  gap: 80px;
  align-items: end;
}
.cv-lead__copy h2 {
  font-size: clamp(40px, 5vw, 80px);
  margin-bottom: 24px;
}
.cv-lead__copy h2 em { color: var(--c-gold); }
.cv-lead__copy .cv-card__cta { margin-top: 28px; }

html[data-leadership="off"] [data-leadership-section] { display: none; }

/* ================================================================
   ENGAGE
   ================================================================ */

.cv-engage__inner {
  max-width: 1100px;
  margin: 0 auto;
  text-align: center;
}
.cv-engage__h {
  font-size: clamp(56px, 8vw, 128px);
  margin-bottom: 28px;
}
.cv-engage__lede {
  font-family: var(--display);
  font-weight: 300;
  font-size: clamp(20px, 1.7vw, 26px);
  line-height: 1.4;
  color: var(--c-soft);
  max-width: 50ch;
  margin: 0 auto 40px;
  font-variation-settings: "opsz" 24;
}
.cv-engage__cta {
  display: inline-flex; align-items: center; gap: 14px;
  padding: 20px 28px;
  background: var(--c-gold);
  color: var(--c-bg);
  font-family: var(--mono);
  font-size: 13px;
  letter-spacing: 0.18em;
  margin-bottom: 28px;
  transition: background 0.15s;
}
.cv-engage__cta:hover { background: #D8BC7B; }
.cv-engage__meta {
  display: flex; gap: 16px; justify-content: center;
  font-family: var(--mono);
  font-size: 10.5px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-mute);
}
.cv-engage__meta .sep { color: var(--c-gold-soft); }

/* ================================================================
   FOOTER
   ================================================================ */

.cv-foot {
  border-top: 1px solid var(--c-rule);
  padding: 64px var(--gutter) 28px;
  background: var(--c-bg-3);
  color: var(--c-soft);
}
.cv-foot__grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 48px;
  align-items: start;
}
.cv-foot__brand p {
  max-width: 40ch;
  margin: 16px 0 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--c-mute);
}
.cv-foot__mark {
  display: inline-flex; align-items: center; gap: 12px;
}
.cv-foot__mark svg { width: 22px; height: 22px; color: var(--c-text); }
.cv-foot__mark span {
  font-family: var(--mono);
  font-size: 13px;
  letter-spacing: 0.22em;
  font-weight: 600;
  color: var(--c-text);
}
.cv-foot h4 {
  font-family: var(--mono);
  font-size: 10.5px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-mute);
  font-weight: 500;
  margin: 0 0 16px;
}
.cv-foot ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.cv-foot a:hover { color: var(--c-gold); }
.cv-foot__base {
  margin-top: 56px;
  padding-top: 20px;
  border-top: 1px solid var(--c-rule);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  font-family: var(--mono);
  font-size: 10.5px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--c-mute);
}
.cv-foot__base .mid { text-align: center; color: var(--c-gold); }
.cv-foot__base .right { text-align: right; }

/* ================================================================
   RESPONSIVE
   ================================================================ */

@media (max-width: 1080px) {
  .cover__brandbar { grid-template-columns: 1fr 1fr; }
  .cover__nav { display: none; }
  .cover__brand-meta { text-align: right; }
  .cover__feet { grid-template-columns: 1fr 1fr; gap: 4px; }
  .cover__feet-c { display: none; }
  .cover__stats { grid-template-columns: 1fr 1fr; }
  .cv-thesis__grid { grid-template-columns: 1fr; }
  .cv-tenet, .cv-tenet:nth-child(even) {
    padding: 28px 0;
    border-right: 0;
  }
  .cv-caps { grid-template-columns: 1fr; }
  .cv-card, .cv-card + .cv-card {
    padding: 36px 0;
    border-right: 0;
    border-bottom: 1px solid var(--c-rule);
  }
  .cv-title { grid-template-columns: 1fr; gap: 24px; }
  .cv-steps { grid-template-columns: 1fr 1fr; }
  .cv-step, .cv-step:not(:first-child) {
    padding: 28px 24px;
    border-right: 0;
    border-bottom: 1px solid var(--c-rule);
  }
  .cv-lead { grid-template-columns: 1fr; gap: 40px; }
  .cv-foot__grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}

@media (max-width: 640px) {
  .cover__stats { grid-template-columns: 1fr; }
  .cover { padding-left: 20px; padding-right: 20px; }
  .cv-band { padding: 64px 20px; }
}
