* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; background: #15171c; }
body {
  margin: 0;
  background: transparent;
  color: #ede6d6;
  font-family: "Archivo", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
/* site-wide drifting aura */
body::before {
  content: "";
  position: fixed;
  inset: -28vh -18vw;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(34vw 34vw at 20% 16%, rgba(232,228,218,.13), transparent 60%),
    radial-gradient(42vw 42vw at 82% 74%, rgba(150,172,214,.11), transparent 62%),
    radial-gradient(30vw 30vw at 64% 6%, rgba(214,222,236,.08), transparent 60%),
    radial-gradient(38vw 38vw at 8% 88%, rgba(232,228,218,.07), transparent 64%);
  filter: blur(46px);
  animation: auraDrift 30s ease-in-out infinite alternate;
  will-change: transform;
}
::selection { background: #e8e4da; color: #15171c; }
a { color: inherit; }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes spinrev { to { transform: rotate(-360deg); } }
@keyframes marquee { to { transform: translateX(-50%); } }
@keyframes gridpan { to { background-position: 60px 60px; } }
@keyframes glow {
  0%, 100% { opacity: .45; transform: translate(-50%, -50%) scale(1); }
  50% { opacity: .7; transform: translate(-50%, -50%) scale(1.12); }
}
@keyframes reveal { from { opacity: 0; transform: translateY(34px); } to { opacity: 1; transform: none; } }
@keyframes auraDrift {
  0%   { transform: translate3d(0,0,0) rotate(0deg) scale(1); }
  50%  { transform: translate3d(2.5%,-2%,0) rotate(8deg) scale(1.08); }
  100% { transform: translate3d(-2%,2.5%,0) rotate(-6deg) scale(1.04); }
}
@keyframes auraPulse {
  0%,100% { opacity: .55; }
  50%     { opacity: .9; }
}
@keyframes footerAura {
  0%,100% { opacity: .6; transform: translateY(0) scale(1); }
  50%     { opacity: 1;  transform: translateY(-3%) scale(1.06); }
}
@keyframes sheen {
  0%   { background-position: -140% 0; }
  100% { background-position: 240% 0; }
}
:root {
  --ink: #15171c;
  --bone: #f4f3ef;
  --cream: #f1efe9;
  --accent: #e8e4da;
  --line: rgba(244,243,239,.09);
  --line-strong: rgba(244,243,239,.16);
  --muted: rgba(244,243,239,.64);
  --faint: rgba(244,243,239,.42);
}
.site {
  position: relative;
  min-height: 100vh;
  overflow-x: hidden;
}
.progress {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--accent);
  transform: scaleX(0);
  transform-origin: left center;
  z-index: 120;
}
.nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  background: rgba(14,20,15,.58);
  border-bottom: 1px solid var(--line);
}
.nav-inner {
  max-width: 1320px;
  height: 70px;
  margin: 0 auto;
  padding: 0 clamp(18px,4vw,44px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.brand {
  display: flex;
  align-items: center;
  gap: 13px;
  text-decoration: none;
}
.mark { display: inline-flex; align-items: center; gap: 3px; }
.mark span { display: block; width: 5px; height: 20px; background: var(--bone); transform: skewX(-18deg); }
.mark span:first-child { background: var(--accent); }
.mark span:last-child { opacity: .4; }
.brand-text { display: flex; flex-direction: column; line-height: 1; }
.brand-text b { font-size: 16px; letter-spacing: .04em; }
.brand-text small {
  margin-top: 2px;
  font-family: "Space Mono", monospace;
  font-size: 9px;
  letter-spacing: .42em;
  color: rgba(244,243,239,.5);
}
.nav-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(10px,1.3vw,20px);
  flex-wrap: wrap;
}
.nav-links a {
  font-family: "Space Mono", monospace;
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(244,243,239,.62);
  text-decoration: none;
  transition: color .25s;
}
.nav-links a:hover,
.nav-links a.active { color: var(--accent); }
.nav-links .nav-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 82px;
  background: var(--accent);
  color: var(--ink);
  padding: 11px 16px;
  border-radius: 3px;
  font-weight: 700;
}

.partner-list {
  border-top: 1px solid var(--line);
}
.partner-line {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) 1.5fr minmax(130px, .45fr);
  gap: 28px;
  align-items: center;
  padding: 30px 0;
  border-bottom: 1px solid var(--line);
}
.partner-line h3 {
  font-size: clamp(24px,3vw,44px);
  line-height: 1;
  text-transform: uppercase;
}
.partner-line p {
  color: rgba(244,243,239,.66);
  line-height: 1.65;
}
.partner-type {
  justify-self: end;
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--accent);
}
.nav-links .nav-cta.active,
.nav-links .nav-cta:hover {
  color: var(--ink);
}
.nav-toggle { display: none; }
.wrap {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 clamp(18px,4vw,44px);
}
.hero {
  position: relative;
  min-height: 92vh;
  display: flex;
  align-items: center;
  padding-top: 70px;
  overflow: hidden;
  border-bottom: 1px solid var(--line);
}
.hero.compact { min-height: 64vh; padding-bottom: clamp(48px,8vh,104px); }
.grid-bg {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(244,243,239,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(244,243,239,.045) 1px, transparent 1px);
  background-size: 60px 60px;
  animation: gridpan 9s linear infinite;
  mask-image: radial-gradient(120% 90% at 30% 40%, #000 30%, transparent 88%);
  -webkit-mask-image: radial-gradient(120% 90% at 30% 40%, #000 30%, transparent 88%);
}
.glow {
  position: absolute;
  top: 42%;
  left: 62%;
  width: 760px;
  height: 760px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--accent), transparent 62%);
  filter: blur(40px);
  opacity: .45;
  animation: glow 7s ease-in-out infinite;
  pointer-events: none;
}
.orbit {
  position: absolute;
  top: 50%;
  left: 72%;
  width: 680px;
  height: 680px;
  transform: translateY(-50%);
  z-index: 1;
  opacity: .9;
  pointer-events: none;
}
.orbit-ring { position: absolute; inset: 0; border: 1px dashed rgba(244,243,239,.16); border-radius: 50%; animation: spin 60s linear infinite; }
.orbit-ring.two { inset: 90px; border-color: rgba(244,243,239,.28); animation: spinrev 44s linear infinite; }
.orbit-chip {
  position: absolute;
  top: 50%;
  left: 50%;
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: 8px 14px;
  border: 1px solid rgba(244,243,239,.14);
  border-radius: 30px;
  background: rgba(14,20,15,.6);
  backdrop-filter: blur(6px);
  white-space: nowrap;
}
.orbit-chip.accent { color: var(--accent); border-color: rgba(244,243,239,.4); }
.orbit-chip:nth-child(3) { transform: rotate(0deg) translate(300px) rotate(0deg) translate(-50%,-50%); }
.orbit-chip:nth-child(4) { transform: rotate(60deg) translate(300px) rotate(-60deg) translate(-50%,-50%); }
.orbit-chip:nth-child(5) { transform: rotate(120deg) translate(300px) rotate(-120deg) translate(-50%,-50%); }
.orbit-chip:nth-child(6) { transform: rotate(180deg) translate(300px) rotate(-180deg) translate(-50%,-50%); }
.orbit-chip:nth-child(7) { transform: rotate(240deg) translate(300px) rotate(-240deg) translate(-50%,-50%); }
.orbit-chip:nth-child(8) { transform: rotate(300deg) translate(300px) rotate(-300deg) translate(-50%,-50%); }
.orbit-core {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--accent);
  transform: translate(-50%,-50%);
  box-shadow: 0 0 24px 4px var(--accent);
}
.hero-content { position: relative; z-index: 3; max-width: 900px; }
.eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 26px;
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(244,243,239,.58);
}
.eyebrow::before { content: ""; width: 30px; height: 1px; background: var(--accent); }
h1, h2, h3, p { margin: 0; }
.display {
  font-weight: 800;
  font-size: clamp(42px,7vw,118px);
  line-height: .92;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  text-wrap: balance;
}
.display .accent, .section-title .accent { color: var(--accent); }
.lede {
  max-width: 700px;
  margin-top: 30px;
  font-size: clamp(16px,1.45vw,20px);
  line-height: 1.58;
  color: rgba(244,243,239,.74);
}
.mono-note {
  max-width: 680px;
  margin-top: 20px;
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .04em;
  line-height: 1.7;
  color: rgba(244,243,239,.5);
}
.btn-row { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 38px; }
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 15px 26px;
  border-radius: 3px;
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
  transition: transform .25s, box-shadow .25s, border-color .25s, color .25s, background .25s;
}
.btn-primary { background: var(--accent); color: var(--ink); border: 1px solid var(--accent); }
.btn-primary:hover { transform: translateY(-3px); box-shadow: 0 16px 40px -10px var(--accent); }
.btn-secondary { color: var(--bone); border: 1px solid rgba(244,243,239,.26); }
.btn-secondary:hover { color: var(--accent); border-color: var(--accent); }
.page-switch {
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  gap: 0;
  margin-top: 26px;
  border: 1px solid var(--line-strong);
  border-radius: 4px;
  overflow: hidden;
  background: rgba(244,243,239,.025);
}
.page-switch a {
  padding: 14px 18px;
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .13em;
  text-transform: uppercase;
  text-decoration: none;
  color: rgba(244,243,239,.64);
  border-right: 1px solid var(--line-strong);
}
.page-switch a:last-child { border-right: 0; }
.page-switch a.active,
.page-switch a:hover {
  background: var(--accent);
  color: var(--ink);
  font-weight: 700;
}
.conversion-band {
  margin: 0 0 42px;
  border: 1px solid rgba(244,243,239,.5);
  border-radius: 4px;
  padding: clamp(22px, 3vw, 34px);
  background:
    radial-gradient(circle at 86% 20%, rgba(244,243,239,.16), transparent 24vw),
    linear-gradient(180deg, rgba(244,243,239,.07), rgba(244,243,239,.012));
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: center;
}
.conversion-band h2 {
  font-size: clamp(25px,3vw,42px);
  line-height: .98;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}
.conversion-band p {
  max-width: 760px;
  margin-top: 12px;
  color: rgba(244,243,239,.66);
  line-height: 1.6;
}
.card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.mini-btn {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 10px 13px;
  border: 1px solid rgba(244,243,239,.2);
  border-radius: 3px;
  font-family: "Space Mono", monospace;
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--bone);
  transition: background .2s, color .2s, border-color .2s;
}
.mini-btn.primary {
  background: var(--accent);
  border-color: var(--accent);
  color: var(--ink);
  font-weight: 700;
}
.mini-btn:hover { border-color: var(--accent); color: var(--accent); }
.mini-btn.primary:hover { color: var(--ink); }
#inquiry-context {
  display: none;
  margin-bottom: 22px;
  border: 1px solid rgba(244,243,239,.45);
  border-radius: 4px;
  padding: 16px 18px;
  background: rgba(244,243,239,.07);
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .08em;
  line-height: 1.55;
  text-transform: uppercase;
  color: rgba(244,243,239,.76);
}
.ticker {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  border-top: 1px solid var(--line);
  background: rgba(14,20,15,.44);
  backdrop-filter: blur(6px);
  overflow: hidden;
  padding: 14px 0;
  z-index: 3;
}
.ticker-track { display: flex; width: max-content; animation: marquee 26s linear infinite; }
.ticker-set {
  display: flex;
  gap: 34px;
  padding-right: 34px;
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(244,243,239,.55);
}
.slash { color: var(--accent); }
.section {
  position: relative;
  padding: clamp(82px,11vh,145px) 0;
  border-bottom: 1px solid var(--line);
}
.section.cream { background: var(--cream); color: var(--ink); --accent: #1b1c21; }
/* monochrome: on light sections, accent-as-background elements need light text */
.section.cream .btn-primary,
.section.cream .mini-btn.primary,
.section.cream .pill:hover,
.section.cream .pill.active,
.section.cream .aud-tab.active,
.section.cream .page-switch a.active,
.section.cream .page-switch a:hover { color: #f4f3ef; }
.section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 34px;
  margin-bottom: 46px;
}
.section-title {
  font-weight: 800;
  font-size: clamp(34px,5.5vw,88px);
  line-height: .94;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  text-wrap: balance;
}
.section-copy {
  max-width: 580px;
  font-size: 16.5px;
  line-height: 1.62;
  color: var(--muted);
}
.cream .section-copy { color: rgba(14,20,15,.7); }
.kicker {
  margin-bottom: 20px;
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--accent);
}
.grid { display: grid; gap: 18px; }
.grid.two { grid-template-columns: repeat(2, minmax(0,1fr)); }
.grid.three { grid-template-columns: repeat(3, minmax(0,1fr)); }
.grid.four { grid-template-columns: repeat(4, minmax(0,1fr)); }
.grid.five { grid-template-columns: repeat(5, minmax(0,1fr)); }

/* method steps */
.steps { display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid var(--line); border-bottom: 0; margin-top: 16px; }
.step { padding: 32px 26px; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); transition: background .3s; }
.step:last-child { border-right: 0; }
.step:hover { background: linear-gradient(180deg, rgba(244,243,239,.06), transparent); }
.step .ix { font-family: "Space Mono", monospace; font-size: 12px; letter-spacing: .1em; color: var(--accent); }
.step h4 { margin: 16px 0 9px; font-weight: 800; font-size: clamp(17px,1.6vw,23px); letter-spacing: -0.01em; text-transform: uppercase; line-height: 1.02; }
.step p { margin: 0; font-size: 14px; line-height: 1.5; color: rgba(244,243,239,.6); }
.cream .steps { border-color: rgba(14,20,15,.16); }
.cream .step { border-color: rgba(14,20,15,.16); }
.cream .step p { color: rgba(14,20,15,.62); }

/* big numbered lane list */
.lane-list { border-top: 1px solid var(--line-strong); margin-top: 12px; }
.lane {
  display: grid;
  grid-template-columns: 70px 1fr auto;
  gap: clamp(18px,3vw,48px);
  align-items: center;
  padding: 34px 6px;
  border-bottom: 1px solid var(--line);
  text-decoration: none;
  color: var(--bone);
  transition: padding-left .3s, color .3s, background .3s;
}
.lane:hover { padding-left: 14px; color: var(--accent); background: linear-gradient(90deg, rgba(244,243,239,.06), transparent 70%); }
.lane .lx { font-family: "Space Mono", monospace; font-size: 13px; letter-spacing: .2em; color: var(--faint); }
.lane h3 { font-weight: 800; font-size: clamp(24px,3.4vw,46px); line-height: 1; letter-spacing: -0.02em; text-transform: uppercase; }
.lane p { margin-top: 8px; font-size: 15px; line-height: 1.5; color: rgba(244,243,239,.6); max-width: 60ch; }
.lane:hover p { color: rgba(244,243,239,.78); }
.lane .larr { color: var(--accent); opacity: 0; transform: translateX(-8px); transition: opacity .3s, transform .3s; font-size: 22px; }
.lane:hover .larr { opacity: 1; transform: none; }
@media (max-width: 1100px) { .grid.five { grid-template-columns: repeat(2, minmax(0,1fr)); } }

/* approach — editorial phases */
.approach { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 30px; }
.phase { padding: 4px 34px; border-left: 1px solid rgba(14,20,15,.18); }
.phase:first-child { padding-left: 0; border-left: 0; }
.phase .pn {
  font-weight: 900;
  font-size: clamp(46px,5.5vw,82px);
  line-height: .9;
  letter-spacing: -0.05em;
  color: transparent;
  -webkit-text-stroke: 1px rgba(14,20,15,.26);
}
.phase h4 { margin: 20px 0 10px; font-weight: 800; font-size: clamp(20px,1.9vw,27px); text-transform: uppercase; letter-spacing: -0.015em; line-height: 1; }
.phase p { margin: 0; font-size: 14.5px; line-height: 1.58; color: rgba(14,20,15,.62); }
.phase .pn .accent { -webkit-text-stroke: 1px var(--accent); color: transparent; }
@media (max-width: 820px) {
  .approach { grid-template-columns: 1fr 1fr; gap: 30px 0; }
  .phase:nth-child(3) { padding-left: 0; border-left: 0; }
}
@media (max-width: 520px) {
  .approach { grid-template-columns: 1fr; gap: 26px; }
  .phase { padding-left: 0; border-left: 0; }
}
@media (max-width: 980px) {
  .steps { grid-template-columns: repeat(2, 1fr); }
  .step:nth-child(2n) { border-right: 0; }
}
@media (max-width: 680px) {
  .grid.five { grid-template-columns: 1fr; }
  .steps { grid-template-columns: 1fr; }
  .step { border-right: 0; }
  .lane { grid-template-columns: 44px 1fr; }
  .lane .larr { display: none; }
}
.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 245px;
  padding: 30px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: linear-gradient(180deg, rgba(244,243,239,.035), rgba(244,243,239,.008));
  text-decoration: none;
  transition: transform .35s cubic-bezier(.2,.7,.2,1), border-color .35s, background .35s;
}
.card:hover { transform: translateY(-7px); border-color: var(--accent); background: linear-gradient(180deg, rgba(244,243,239,.08), rgba(244,243,239,.01)); }
.card .num {
  display: flex;
  justify-content: space-between;
  margin-bottom: 22px;
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .18em;
  color: rgba(244,243,239,.45);
}
.card h3 {
  font-weight: 750;
  font-size: clamp(22px,2vw,30px);
  line-height: 1.02;
  letter-spacing: -0.01em;
}
.card p {
  margin-top: 14px;
  font-size: 15px;
  line-height: 1.62;
  color: rgba(244,243,239,.62);
}
.card .meta {
  margin-top: auto;
  padding-top: 22px;
  border-top: 1px solid rgba(244,243,239,.08);
  font-family: "Space Mono", monospace;
  font-size: 10.5px;
  letter-spacing: .08em;
  line-height: 1.5;
  color: rgba(244,243,239,.42);
}
.cream-list { border-top: 1px solid rgba(14,20,15,.16); }
.cream-row {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 20px 4px;
  border-bottom: 1px solid rgba(14,20,15,.16);
  font-weight: 800;
  font-size: clamp(20px,2.35vw,33px);
  line-height: 1.05;
  letter-spacing: -0.01em;
  text-transform: uppercase;
  transition: padding-left .25s, color .25s;
}
.cream-row:hover { padding-left: 14px; color: var(--accent); }
.cream-row span {
  min-width: 26px;
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .1em;
  color: rgba(14,20,15,.4);
  font-weight: 400;
}
.split {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: clamp(30px,5vw,70px);
  align-items: start;
}
.proof-row {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: clamp(20px,4vw,60px);
  padding: 34px 6px;
  border-bottom: 1px solid rgba(244,243,239,.1);
  color: var(--bone);
  text-decoration: none;
  transition: padding-left .3s, color .3s;
}
.proof-row:hover { padding-left: 14px; color: var(--accent); }
.proof-row .index {
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .2em;
  color: rgba(244,243,239,.42);
  padding-top: 10px;
}
.proof-row h3 {
  font-weight: 800;
  font-size: clamp(28px,3.6vw,50px);
  letter-spacing: -0.01em;
  text-transform: uppercase;
}
.proof-row p {
  max-width: 760px;
  margin-top: 10px;
  font-size: 15.5px;
  line-height: 1.62;
  color: rgba(244,243,239,.64);
}
.tag {
  display: inline-flex;
  margin-left: 12px;
  transform: translateY(-6px);
  font-family: "Space Mono", monospace;
  font-size: 9px;
  letter-spacing: .14em;
  color: var(--bone);
  background: rgba(244,243,239,.1);
  padding: 5px 9px;
  border-radius: 3px;
}
.property-boxes {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  flex-wrap: wrap;
}
.property-box {
  flex: 1;
  min-width: 190px;
  border: 1px dashed rgba(244,243,239,.25);
  border-radius: 4px;
  padding: 30px 22px;
  background: rgba(244,243,239,.015);
}
.property-box.after {
  border: 1px solid var(--accent);
  background: linear-gradient(180deg, rgba(244,243,239,.1), rgba(244,243,239,.02));
}
.property-box small {
  display: block;
  font-family: "Space Mono", monospace;
  font-size: 10px;
  letter-spacing: .18em;
  color: rgba(244,243,239,.45);
  margin-bottom: 14px;
}
.property-box.after small { color: var(--accent); }
.property-box b {
  display: block;
  font-size: 29px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}
.arrow-big { color: var(--accent); font-size: 30px; }
.quote {
  margin-top: 34px;
  padding: 24px 28px;
  border-left: 2px solid var(--accent);
  background: rgba(244,243,239,.02);
  font-size: clamp(18px,1.7vw,24px);
  line-height: 1.5;
  font-weight: 650;
}
.service-list {
  display: grid;
  grid-template-columns: .42fr 1fr;
  gap: 24px;
  padding: 26px 0;
  border-bottom: 1px solid rgba(244,243,239,.1);
}
.service-list h3 {
  font-size: clamp(24px,2.5vw,38px);
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}
.service-list ul {
  margin: 0;
  padding-left: 18px;
  color: var(--muted);
  line-height: 1.8;
}
.notice {
  margin-top: 36px;
  border: 1px solid var(--accent);
  border-radius: 4px;
  padding: 24px 28px;
  background: linear-gradient(180deg, rgba(244,243,239,.08), rgba(244,243,239,.01));
  font-size: 17px;
  line-height: 1.6;
  color: rgba(244,243,239,.78);
}
form {
  border: 1px solid rgba(244,243,239,.1);
  border-radius: 6px;
  background: rgba(244,243,239,.02);
  backdrop-filter: blur(8px);
  padding: clamp(24px,4vw,44px);
}
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 22px; }
label { display: flex; flex-direction: column; gap: 9px; }
label span,
.choice-title {
  font-family: "Space Mono", monospace;
  font-size: 10.5px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(244,243,239,.5);
}
input, textarea {
  width: 100%;
  background: rgba(0,0,0,.25);
  border: 1px solid rgba(244,243,239,.12);
  border-radius: 3px;
  padding: 13px 14px;
  color: var(--bone);
  font: 15px "Archivo", sans-serif;
  outline: none;
}
input:focus, textarea:focus { border-color: var(--accent); }
textarea { resize: vertical; }
.choice-wrap { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.pill {
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 11px 16px;
  border-radius: 3px;
  cursor: pointer;
  border: 1px solid rgba(244,243,239,.16);
  background: transparent;
  color: rgba(244,243,239,.72);
}
.pill:hover, .pill.active { border-color: var(--accent); background: var(--accent); color: var(--ink); font-weight: 700; }
.footer {
  position: relative;
  overflow: hidden;
  border-top: 1px solid var(--line);
  padding: 84px 0 22px;
}
.footer-grid {
  display: flex;
  justify-content: space-between;
  gap: 38px;
  flex-wrap: wrap;
}
.footer p {
  max-width: 460px;
  margin-top: 18px;
  color: rgba(244,243,239,.55);
  line-height: 1.6;
}
.footer-links { display: flex; gap: 54px; flex-wrap: wrap; }
.footer-col { display: flex; flex-direction: column; gap: 12px; }
.footer-col b {
  margin-bottom: 4px;
  font-family: "Space Mono", monospace;
  font-size: 10px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(244,243,239,.4);
}
.footer-col a {
  color: rgba(244,243,239,.7);
  text-decoration: none;
  font-size: 14px;
}
.footer-col a:hover { color: var(--accent); }
.footer-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 14px;
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
  font-family: "Space Mono", monospace;
  font-size: 10.5px;
  letter-spacing: .08em;
  color: rgba(244,243,239,.4);
}
.reveal { animation: reveal both linear; animation-timeline: view(); animation-range: entry 2% cover 30%; }
@media (max-width: 980px) {
  .nav-links { display: none; }
  .nav-toggle {
    display: inline-flex;
    width: 42px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line-strong);
    background: transparent;
    color: var(--bone);
  }
  .nav-toggle::before { content: "MENU"; font-family: "Space Mono", monospace; font-size: 10px; letter-spacing: .12em; }
  .nav.open .nav-links {
    display: grid;
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
    padding: 20px clamp(18px,4vw,44px);
    background: rgba(14,20,15,.96);
    border-bottom: 1px solid var(--line);
  }
  .orbit { opacity: .35; left: 58%; }
  .grid.three, .grid.four { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .section-head, .split, .service-list { grid-template-columns: 1fr; display: grid; }
  .conversion-band { grid-template-columns: 1fr; }
  .partner-line { grid-template-columns: 1fr; gap: 12px; }
  .partner-type { justify-self: start; }
}
@media (max-width: 680px) {
  .hero { min-height: 86vh; }
  .display { font-size: clamp(39px,13vw,72px); }
  .orbit, .glow { display: none; }
  .grid.two, .grid.three, .grid.four, .field-grid { grid-template-columns: 1fr; }
  .page-switch { grid-template-columns: 1fr; width: 100%; }
  .page-switch a { border-right: 0; border-bottom: 1px solid var(--line-strong); }
  .page-switch a:last-child { border-bottom: 0; }
  .proof-row { grid-template-columns: 1fr; gap: 6px; }
  .card { min-height: 210px; padding: 25px; }
  .ticker-set { font-size: 11px; gap: 24px; padding-right: 24px; }
}

/* ===== Homepage v2 — motion + new modules ===== */
.hero .display {
  font-size: clamp(34px,5.4vw,80px);
  line-height: .96;
  letter-spacing: -0.025em;
}
.hero .hero-content { max-width: 1120px; }
.hero .lede {
  max-width: 600px;
  margin-top: 26px;
  color: rgba(244,243,239,.7);
}
.hero .display br { display: block; }
@media (max-width: 620px) { .hero .display br { display: none; } }
@keyframes revealUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: none; } }
html.js [data-reveal] { opacity: 0; }
[data-reveal].in {
  animation: revealUp .8s cubic-bezier(.2,.7,.2,1) both;
  animation-delay: var(--d, 0s);
}
@media (prefers-reduced-motion: reduce) {
  html.js [data-reveal] { opacity: 1; }
  [data-reveal].in { animation: none; }
  .arrow-big, .glow, .grid-bg, .ticker-track, body::before, .footer::before, .footer::after { animation: none !important; }
}

/* hero side data panel */
.hero-side {
  position: absolute;
  top: 92px;
  right: clamp(18px,4vw,44px);
  display: flex;
  flex-direction: column;
  gap: 6px;
  text-align: right;
  font-family: "Space Mono", monospace;
  font-size: 10px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--faint);
  z-index: 3;
}
.hero-side .accent { color: var(--accent); }

/* ===== Services page v2 ===== */
.svc-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.card.svc { padding: 36px 34px; }
.card.svc .num { align-items: center; }
.card.svc .price {
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .04em;
  color: var(--accent);
  border: 1px solid rgba(244,243,239,.45);
  padding: 6px 11px;
  border-radius: 3px;
}
.card.svc h3 { margin-top: 16px; font-size: clamp(26px,2.4vw,38px); text-transform: uppercase; }
.card.svc .who { margin-top: 12px; font-size: 15px; line-height: 1.55; color: rgba(244,243,239,.62); max-width: 46ch; }
.svc-list { list-style: none; margin: 22px 0 0; padding: 0; display: grid; gap: 11px; }
.svc-list li { display: flex; gap: 12px; font-size: 14.5px; line-height: 1.4; color: rgba(244,243,239,.78); }
.svc-list li::before { content: "+"; color: var(--accent); flex: none; }
.svc-outcome {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
  font-size: 14.5px;
  line-height: 1.5;
  color: rgba(244,243,239,.7);
}
.svc-outcome b { color: var(--bone); font-weight: 700; }
/* cream-section overrides for light-text components */
.cream .svc-list li { color: rgba(14,20,15,.82); }
.cream .svc-outcome { color: rgba(14,20,15,.7); border-top-color: rgba(14,20,15,.16); }
.cream .svc-outcome b { color: var(--ink); }
.cream .card.svc .who { color: rgba(14,20,15,.66); }
.cream .notice { color: rgba(14,20,15,.78); }
/* cream-section card overrides */
.cream .card { background: linear-gradient(180deg, rgba(14,20,15,.035), rgba(14,20,15,.008)); border-color: rgba(14,20,15,.14); }
.cream .card:hover { border-color: var(--accent); background: linear-gradient(180deg, rgba(244,243,239,.09), rgba(14,20,15,.01)); }
.cream .card h3 { color: var(--ink); }
.cream .card p { color: rgba(14,20,15,.66); }
.cream .card .num { color: rgba(14,20,15,.42); }
.cream .card .num .accent { color: var(--accent); }
.cream .card .meta { color: rgba(14,20,15,.5); border-top-color: rgba(14,20,15,.12); }
.cream .cap-card .cap-tag { color: rgba(14,20,15,.55); border-top-color: rgba(14,20,15,.14); }

/* photography plates — art-directed placeholders */
.plate { position: relative; overflow: hidden; border: 1px solid var(--line-strong); border-radius: 4px; background: #0e0e11; min-height: 100%; }
.plate.ar43 { aspect-ratio: 4 / 3; }
.plate.ar11 { aspect-ratio: 1 / 1; }
.plate.ar169 { aspect-ratio: 16 / 9; }
.plate .plate-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(244,243,239,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(244,243,239,.06) 1px, transparent 1px); background-size: 34px 34px; mask-image: radial-gradient(120% 90% at 50% 38%, #000 28%, transparent 92%); -webkit-mask-image: radial-gradient(120% 90% at 50% 38%, #000 28%, transparent 92%); }
.plate .plate-mark { position: absolute; top: 13px; right: 14px; width: 18px; height: 18px; border-top: 1px solid var(--accent); border-right: 1px solid var(--accent); }
.plate .plate-mark.bl { top: auto; right: auto; bottom: 13px; left: 14px; border-top: 0; border-right: 0; border-bottom: 1px solid rgba(244,243,239,.4); border-left: 1px solid rgba(244,243,239,.4); }
.plate .plate-cap { position: absolute; left: 16px; bottom: 14px; font-family: "Space Mono", monospace; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: rgba(244,243,239,.52); }
.plate .plate-cap b { display:block; color: rgba(244,243,239,.78); font-weight: 700; letter-spacing:.12em; }
.cream .plate { background: #e3ddd0; border-color: rgba(14,20,15,.18); }
.cream .plate .plate-grid { background-image: linear-gradient(rgba(14,20,15,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(14,20,15,.06) 1px, transparent 1px); }
.cream .plate .plate-mark.bl { border-bottom-color: rgba(14,20,15,.35); border-left-color: rgba(14,20,15,.35); }
.cream .plate .plate-cap { color: rgba(14,20,15,.5); }
.cream .plate .plate-cap b { color: rgba(14,20,15,.78); }

/* partner / collaborator strip */
.collab { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 16px; }
.collab span { font-family: "Space Mono", monospace; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: rgba(244,243,239,.6); border: 1px solid var(--line-strong); padding: 11px 16px; border-radius: 40px; }
.cream .collab span { color: rgba(14,20,15,.62); border-color: rgba(14,20,15,.2); }

/* contact detail rows */
.contact-meta { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); margin-top: 16px; }
.contact-meta > div { padding: 24px 22px; border-right: 1px solid var(--line); }
.contact-meta > div:last-child { border-right: 0; }
.contact-meta .cm-k { font-family: "Space Mono", monospace; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--accent); }
.contact-meta .cm-v { margin-top: 9px; font-weight: 700; font-size: clamp(15px,1.4vw,19px); letter-spacing: -0.01em; }
@media (max-width: 680px) { .contact-meta { grid-template-columns: 1fr; } .contact-meta > div { border-right: 0; border-bottom: 1px solid var(--line); } }
.card.svc .card-actions { margin-top: 24px; align-items: center; }
.svc-link {
  font-family: "Space Mono", monospace;
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(244,243,239,.55);
  text-decoration: none;
  transition: color .25s;
}
.svc-link:hover { color: var(--accent); }

/* process strip — fully bordered, animated boxes */
.process { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 22px; }
.process-step {
  position: relative; overflow: hidden;
  padding: 30px 28px 32px;
  border: 1px solid var(--line-strong); border-radius: 5px;
  background: linear-gradient(180deg, rgba(244,243,239,.022), transparent);
  transition: transform .4s cubic-bezier(.2,.7,.2,1), border-color .4s, background .4s, box-shadow .4s;
}
.process-step::before { content: ""; position: absolute; top: 16px; right: 18px; width: 14px; height: 14px; border-top: 1px solid var(--accent); border-right: 1px solid var(--accent); opacity: .5; transition: opacity .4s; }
.process-step::after { content: ""; position: absolute; left: 0; bottom: 0; height: 2px; width: 0; background: var(--accent); transition: width .45s cubic-bezier(.2,.7,.2,1); }
.process-step:hover { transform: translateY(-6px); border-color: var(--accent); background: linear-gradient(180deg, rgba(244,243,239,.06), transparent); box-shadow: 0 20px 46px -24px rgba(0,0,0,.65); }
.process-step:hover::before { opacity: 1; }
.process-step:hover::after { width: 100%; }
.process-step .ix { position: relative; z-index: 1; font-family: "Space Mono", monospace; font-size: 12px; letter-spacing: .18em; color: var(--accent); }
.process-step h4 { position: relative; z-index: 1; margin: 14px 0 10px; font-weight: 800; font-size: clamp(18px,1.7vw,24px); letter-spacing: -0.01em; text-transform: uppercase; line-height: 1.04; }
.process-step p { position: relative; z-index: 1; margin: 0; font-size: 14px; line-height: 1.55; color: rgba(244,243,239,.62); }

/* pricing snapshot */
.price-snapshot { border-top: 1px solid var(--line-strong); margin-top: 16px; }
.price-snapshot a {
  display: flex; align-items: baseline; justify-content: space-between; gap: 20px;
  padding: 19px 4px; border-bottom: 1px solid var(--line);
  text-decoration: none; color: var(--bone);
  transition: padding-left .25s, color .25s, background .25s;
}
.price-snapshot a:hover { padding-left: 12px; color: var(--accent); background: linear-gradient(90deg, rgba(244,243,239,.06), transparent 70%); }
.price-snapshot .pl { font-weight: 700; font-size: clamp(17px,1.7vw,23px); letter-spacing: -0.01em; }
.price-snapshot .pr { font-family: "Space Mono", monospace; font-size: 13px; letter-spacing: .04em; color: var(--accent); white-space: nowrap; }
.cream .price-snapshot { border-top-color: rgba(14,20,15,.2); }
.cream .price-snapshot a { color: var(--ink); border-bottom-color: rgba(14,20,15,.14); }
.cream .price-snapshot a:hover { color: var(--accent); }
.proof-list { border-top: 1px solid var(--line); margin-top: 8px; }
.proof-list .proof-row { padding: 30px 4px; border-bottom: 1px solid var(--line); }
.cream .founder-block { border-top-color: rgba(14,20,15,.18); }
.cream .founder-line { color: var(--ink); }
.cream .founder-line b { color: var(--accent); }
.cream .cred { color: rgba(14,20,15,.66); border-color: rgba(14,20,15,.2); }
.cream .cred:hover, .cream .cred.accent { color: var(--accent); border-color: var(--accent); }

/* ===== Storefront ===== */
.guarantee {
  display: inline-flex; align-items: center; gap: 10px;
  margin-top: 24px; padding: 11px 16px;
  border: 1px solid rgba(244,243,239,.4); border-radius: 40px;
  background: rgba(244,243,239,.06);
  font-size: 14px; color: rgba(244,243,239,.82);
}
.guarantee b { color: var(--bone); font-weight: 700; }
.g-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 10px 2px var(--accent); flex: none; }

.aud-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0 32px; }
.aud-tab {
  font-family: "Space Mono", monospace; font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase;
  padding: 11px 16px; border: 1px solid var(--line-strong); background: transparent;
  color: rgba(244,243,239,.66); cursor: pointer; border-radius: 3px;
  transition: background .2s, color .2s, border-color .2s;
}
.aud-tab:hover { border-color: var(--accent); color: var(--accent); }
.aud-tab.active { background: var(--accent); border-color: var(--accent); color: var(--ink); font-weight: 700; }

.product { transition: transform .35s cubic-bezier(.2,.7,.2,1), border-color .35s, background .35s, opacity .3s; }
.product .tier { font-family: "Space Mono", monospace; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: rgba(244,243,239,.45); }
.product .price { font-family: "Space Mono", monospace; font-size: 13px; letter-spacing: .03em; color: var(--accent); }
.product.hide { display: none; }
.book-btn {
  margin-top: 22px; width: 100%;
  font-family: "Space Mono", monospace; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; font-weight: 700;
  background: var(--accent); color: var(--ink); border: 1px solid var(--accent);
  padding: 15px; cursor: pointer; transition: transform .25s, box-shadow .25s, background .2s, color .2s;
}
.book-btn:hover { transform: translateY(-2px); box-shadow: 0 14px 32px -12px var(--accent); }
.empty-note { margin-top: 28px; font-size: 15px; color: rgba(244,243,239,.6); }
.empty-note a { color: var(--accent); }

/* checkout modal */
.checkout { position: fixed; inset: 0; z-index: 400; display: flex; align-items: center; justify-content: center; padding: 20px; }
.checkout[hidden] { display: none; }
.checkout-overlay { position: absolute; inset: 0; background: rgba(5,5,7,.78); backdrop-filter: blur(6px); animation: coFade .25s ease both; }
@keyframes coFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes coRise { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
.checkout-panel {
  position: relative; width: min(560px, 100%); max-height: 92vh; overflow-y: auto;
  background: #101013; border: 1px solid var(--line-strong); padding: clamp(26px,4vw,42px);
  animation: coRise .35s cubic-bezier(.2,.7,.2,1) both;
}
.checkout-x { position: absolute; top: 16px; right: 18px; background: none; border: 0; color: rgba(244,243,239,.6); font-size: 26px; line-height: 1; cursor: pointer; transition: color .2s; }
.checkout-x:hover { color: var(--accent); }
.co-eyebrow { font-family: "Space Mono", monospace; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--accent); }
.co-body h3, .co-confirm h3 { margin: 12px 0 0; font-weight: 800; font-size: clamp(24px,3vw,34px); letter-spacing: -0.02em; text-transform: uppercase; line-height: 1; }
.co-price { margin-top: 10px; font-family: "Space Mono", monospace; font-size: 16px; color: var(--accent); }
.co-guarantee { display: flex; align-items: center; gap: 9px; margin: 18px 0 22px; padding: 12px 14px; border: 1px solid rgba(244,243,239,.3); background: rgba(244,243,239,.05); font-size: 13px; color: rgba(244,243,239,.78); }
.co-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
#co-form label, .co-full { display: flex; flex-direction: column; gap: 7px; font-family: "Space Mono", monospace; font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: rgba(244,243,239,.55); }
.co-full { margin-top: 14px; }
#co-form input, #co-form textarea {
  background: rgba(0,0,0,.3); border: 1px solid var(--line-strong); padding: 12px 13px;
  color: var(--bone); font-family: "Archivo", sans-serif; font-size: 15px; letter-spacing: 0; text-transform: none; outline: none; transition: border-color .2s; resize: vertical;
}
#co-form input:focus, #co-form textarea:focus { border-color: var(--accent); }
.co-submit { width: 100%; margin-top: 20px; }
.co-fineprint { margin: 12px 0 0; font-family: "Space Mono", monospace; font-size: 10px; letter-spacing: .04em; color: rgba(244,243,239,.4); text-align: center; }
.co-confirm { text-align: center; padding: 20px 0; }
.co-check { width: 58px; height: 58px; margin: 0 auto 18px; border-radius: 50%; background: rgba(244,243,239,.12); border: 1px solid var(--accent); color: var(--accent); display: flex; align-items: center; justify-content: center; font-size: 26px; }
.co-confirm p { margin: 12px auto 24px; max-width: 380px; font-size: 15px; line-height: 1.55; color: rgba(244,243,239,.68); }
@media (max-width: 520px) { .co-grid { grid-template-columns: 1fr; } }

/* ===== Proof / Capability page ===== */
.stat-row { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--line); margin-top: 40px; }
.stat { padding: 28px 24px; border-right: 1px solid var(--line); }
.stat:last-child { border-right: 0; }
.stat b { display: block; font-weight: 900; font-size: clamp(28px,3.2vw,46px); letter-spacing: -0.025em; line-height: .95; color: var(--bone); }
.stat b .accent { color: var(--accent); }
.stat span { display: block; margin-top: 10px; font-family: "Space Mono", monospace; font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: rgba(244,243,239,.5); line-height: 1.5; }

.cap-card { padding: 38px 34px; }
.cap-card .num span:first-child { color: var(--accent); }
.cap-card h3 { margin-top: 18px; font-size: clamp(24px,2.4vw,36px); text-transform: uppercase; letter-spacing: -0.02em; }
.cap-card p { font-size: 15.5px; }
.cap-card .cap-tag { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line); font-family: "Space Mono", monospace; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: rgba(244,243,239,.5); }

.marker-wall { display: flex; flex-wrap: wrap; gap: 12px 22px; align-items: center; margin-top: 8px; padding: 36px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.marker { font-weight: 800; font-size: clamp(17px,1.9vw,27px); letter-spacing: -0.01em; color: rgba(244,243,239,.72); text-transform: uppercase; }
.marker.accent { color: var(--accent); }
.marker-dot { width: 5px; height: 5px; border-radius: 50%; background: var(--accent); opacity: .7; }

.path-grid { margin-top: 16px; }
.path-card { display: flex; flex-direction: column; justify-content: space-between; min-height: 230px; text-decoration: none; }
.path-card .path-aud { font-family: "Space Mono", monospace; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--accent); }
.path-card h3 { margin-top: 14px; font-size: clamp(22px,2.1vw,30px); text-transform: uppercase; letter-spacing: -0.015em; color: var(--bone); transition: color .3s; }
.path-card p { margin-top: 12px; flex: 1; }
.path-card .path-go { margin-top: 22px; font-family: "Space Mono", monospace; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--bone); display: inline-flex; align-items: center; gap: 8px; }
.path-card:hover h3 { color: var(--accent); }

.stroke-name { position: absolute; top: -6%; right: -1%; font-weight: 900; font-size: clamp(110px,22vw,360px); line-height: .78; letter-spacing: -0.05em; color: transparent; -webkit-text-stroke: 1px rgba(244,243,239,.06); pointer-events: none; user-select: none; }

@media (max-width: 760px) {
  .stat-row { grid-template-columns: 1fr 1fr; }
  .stat:nth-child(2) { border-right: 0; }
  .stat:nth-child(1), .stat:nth-child(2) { border-bottom: 1px solid var(--line); }
}

@media (max-width: 860px) {
  .svc-grid { grid-template-columns: 1fr; }
  .process { grid-template-columns: 1fr; }
  .process-step { border-right: 0; }
}
.micro-line {
  margin-top: 24px;
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--muted);
}
.micro-line i { color: var(--accent); font-style: normal; margin: 0 4px; }

/* buttons additions */
.btn-lg { min-height: 60px; padding: 19px 40px; font-size: 13px; }
.btn-dark { background: var(--ink); color: var(--bone); border: 1px solid var(--ink); }
.btn-dark:hover { background: var(--accent); border-color: var(--accent); color: var(--ink); }

/* who we help — interactive index list */
.index-list {
  margin-top: 12px;
  border-top: 1px solid var(--line-strong);
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: clamp(28px,5vw,80px);
}
.index-row {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px 6px;
  border-bottom: 1px solid var(--line);
  text-decoration: none;
  color: var(--bone);
  transition: padding-left .3s, color .3s, background .3s;
}
.index-row:hover {
  padding-left: 16px;
  color: var(--accent);
  background: linear-gradient(90deg, rgba(244,243,239,.07), transparent 70%);
}
.index-row .ix {
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .1em;
  color: var(--faint);
  min-width: 26px;
}
.index-row .nm {
  font-weight: 800;
  font-size: clamp(20px,2.4vw,38px);
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}
.index-row .arr {
  margin-left: auto;
  color: var(--accent);
  opacity: 0;
  transform: translateX(-8px);
  transition: opacity .3s, transform .3s;
}
.index-row:hover .arr { opacity: 1; transform: none; }

/* property feature section */
.property-feature { position: relative; overflow: hidden; }
.property-feature .blueprint {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(244,243,239,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(244,243,239,.04) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: radial-gradient(80% 70% at 78% 40%, #000, transparent 78%);
  -webkit-mask-image: radial-gradient(80% 70% at 78% 40%, #000, transparent 78%);
  pointer-events: none;
}
.property-feature .wrap { position: relative; z-index: 2; align-items: center; }
@keyframes arrowmove { 0%,100% { transform: translateX(0); } 50% { transform: translateX(9px); } }
.arrow-big { animation: arrowmove 1.8s ease-in-out infinite; }
.property-box { transition: transform .4s cubic-bezier(.2,.7,.2,1), border-color .4s, box-shadow .4s; }
.property-box:hover { transform: translateY(-7px); }
.property-box.after:hover { box-shadow: 0 22px 55px -18px var(--accent); }

/* proof categories + founder block */
.proof-cats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 16px;
  border: 1px solid var(--line);
  border-bottom: 0;
}
.proof-cat {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 30px 26px;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  transition: background .3s, color .3s;
}
.proof-cat:nth-child(3n) { border-right: 0; }
.proof-cat:hover { background: linear-gradient(180deg, rgba(244,243,239,.07), transparent); }
.proof-cat .ix {
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .1em;
  color: var(--accent);
}
.proof-cat b {
  font-weight: 750;
  font-size: clamp(16px,1.5vw,21px);
  line-height: 1.1;
  letter-spacing: -0.01em;
  text-transform: uppercase;
}
.founder-block {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: clamp(28px,4vw,56px);
  align-items: center;
  padding-top: 40px;
  border-top: 1px solid var(--line);
}
.founder-line {
  font-size: clamp(18px,1.9vw,26px);
  line-height: 1.45;
  font-weight: 600;
  letter-spacing: -0.01em;
}
.founder-line b { color: var(--accent); font-weight: 800; }
.creds { display: flex; flex-wrap: wrap; gap: 10px; }
.cred {
  font-family: "Space Mono", monospace;
  font-size: 10.5px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--muted);
  border: 1px solid var(--line-strong);
  padding: 9px 13px;
  border-radius: 3px;
  transition: border-color .25s, color .25s;
}
.cred:hover { border-color: var(--accent); color: var(--accent); }
.cred.accent { border-color: var(--accent); color: var(--accent); }

/* about points */
.about-points {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 40px;
}
.about-point {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 28px 26px;
  border: 1px solid rgba(14,20,15,.16);
  border-radius: 4px;
  transition: transform .3s, border-color .3s;
}
.about-point:hover { transform: translateY(-5px); border-color: var(--accent); }
.about-point .ix {
  font-family: "Space Mono", monospace;
  font-size: 12px;
  letter-spacing: .1em;
  color: var(--accent);
}
.about-point b {
  font-weight: 800;
  font-size: clamp(18px,1.8vw,26px);
  letter-spacing: -0.01em;
  text-transform: uppercase;
}

/* final CTA */
.cta-final { position: relative; overflow: hidden; border-bottom: 0; }
.cta-final .grid-bg {
  mask-image: radial-gradient(90% 80% at 50% 0%, #000, transparent 78%);
  -webkit-mask-image: radial-gradient(90% 80% at 50% 0%, #000, transparent 78%);
}

@media (max-width: 980px) {
  .index-list { grid-template-columns: 1fr; }
  .proof-cats { grid-template-columns: 1fr 1fr; }
  .proof-cat:nth-child(3n) { border-right: 1px solid var(--line); }
  .proof-cat:nth-child(2n) { border-right: 0; }
  .founder-block { grid-template-columns: 1fr; gap: 24px; }
  .about-points { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .hero-side { display: none; }
  .proof-cats { grid-template-columns: 1fr; }
  .proof-cat { border-right: 0 !important; }
  .index-row .nm { font-size: clamp(20px,7vw,30px); }
}


/* ===== Added: FAQ, tiers, socials, 4-step process ===== */
.process.p4 { grid-template-columns: repeat(4,1fr); }
#families { padding-bottom: clamp(96px,13vh,168px); }
@media (max-width: 860px) { .process.p4 { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .process.p4 { grid-template-columns: 1fr; } }

/* tier "starting point" label reuse */
.card.svc .tierfmt { font-family:"Space Mono",monospace; font-size:11px; letter-spacing:.12em; text-transform:uppercase; color: var(--accent); }

/* FAQ accordion */
.faq { margin-top: 18px; border-top: 1px solid var(--line); }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { list-style:none; cursor:pointer; padding: 24px 4px; display:flex; align-items:center; gap:18px; font-weight:700; font-size: clamp(17px,1.7vw,23px); letter-spacing:-0.012em; color: var(--bone); }
.faq summary::-webkit-details-marker { display:none; }
.faq summary .q { font-family:"Space Mono",monospace; font-size:12px; color:var(--accent); letter-spacing:.1em; min-width: 30px; }
.faq summary .pm { margin-left:auto; color:var(--accent); transition: transform .3s; font-size:24px; line-height:1; flex:none; }
.faq details[open] summary .pm { transform: rotate(45deg); }
.faq .fa { padding: 0 4px 28px 48px; max-width: 72ch; color: rgba(244,243,239,.66); line-height:1.62; font-size:15.5px; }
.faq .fa a { color: var(--accent); }
.cream .faq, .cream .faq details { border-color: rgba(14,20,15,.16); }
.cream .faq summary { color: var(--ink); }
.cream .faq .fa { color: rgba(14,20,15,.68); }

/* footer socials */
/* ===== world-class footer polish ===== */
.footer .wrap { position: relative; z-index: 2; }
.footer::before {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 78%;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(64% 120% at 50% 128%, rgba(232,228,218,.16), rgba(150,172,214,.06) 42%, transparent 72%);
  animation: footerAura 11s ease-in-out infinite;
}
.footer::after {
  content: "ELBROOK";
  position: absolute;
  left: 50%; bottom: -0.04em;
  transform: translateX(-50%);
  z-index: 1;
  pointer-events: none;
  font-family: "Space Grotesk", sans-serif;
  font-weight: 700;
  font-size: clamp(72px, 15vw, 220px);
  line-height: .72;
  letter-spacing: -0.05em;
  white-space: nowrap;
  color: transparent;
  -webkit-text-stroke: 1px rgba(244,243,239,.07);
  background: linear-gradient(100deg, transparent 38%, rgba(232,228,218,.16) 50%, transparent 62%);
  background-size: 220% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  animation: sheen 7s linear infinite;
}
.footer-social-row { display:flex; gap:16px; flex-wrap:wrap; padding-top:6px; padding-bottom:28px; }
.footer-social-row a {
  position: relative;
  display: inline-flex; align-items: center; gap: 10px;
  font-family:"Space Mono",monospace; font-size:10.5px; letter-spacing:.16em; text-transform:uppercase;
  color: rgba(244,243,239,.72); text-decoration:none;
  border:1px solid var(--line-strong); border-radius:0;
  padding:13px 18px;
  transition: color .3s, border-color .3s, background .3s, transform .3s;
}
.footer-social-row a::before {
  content:""; position:absolute; top:-1px; left:-1px; width:12px; height:12px;
  border-top:2px solid var(--accent); border-left:2px solid var(--accent);
  transition: width .3s, height .3s;
}
.footer-social-row a:hover { color: var(--accent); border-color: var(--accent); background: rgba(244,243,239,.04); transform: translateY(-2px); }
.footer-social-row a:hover::before { width:18px; height:18px; }

/* process strip on cream */
.cream .process-step { border-color: rgba(14,20,15,.18); background: linear-gradient(180deg, rgba(14,20,15,.02), transparent); }
.cream .process-step:hover { border-color: var(--accent); background: linear-gradient(180deg, rgba(14,20,15,.05), transparent); box-shadow: 0 18px 40px -26px rgba(14,20,15,.4); }
.cream .process-step p { color: rgba(14,20,15,.64); }

/* cream-list used on a dark section */
.dark-list.cream-list, .dark-list { border-top-color: var(--line); }
.dark-list .cream-row { color: var(--bone); border-color: var(--line); }
.dark-list .cream-row span { color: var(--accent); }

/* ecosystem distinction list (subtle) */
.eco-list { margin-top: 26px; border-top: 1px solid rgba(14,20,15,.16); }
.eco-row { display: grid; grid-template-columns: 220px 1fr; gap: 18px; padding: 20px 4px; border-bottom: 1px solid rgba(14,20,15,.16); align-items: baseline; }
.eco-row b { font-weight: 800; font-size: clamp(16px,1.5vw,20px); letter-spacing: -0.01em; color: var(--ink); }
.eco-row:first-child b { color: var(--accent); }
.eco-row span { font-size: 15px; line-height: 1.5; color: rgba(14,20,15,.66); }
@media (max-width: 620px) { .eco-row { grid-template-columns: 1fr; gap: 4px; } }

/* ===== Build/Maintain/Advise/Participate ladder ===== */
.ladder { display: grid; grid-template-columns: repeat(4,1fr); gap: 0; margin-top: 18px; border: 1px solid var(--line); }
.rung { position: relative; padding: 30px 26px 32px; border-right: 1px solid var(--line); overflow: hidden; transition: background .3s; }
.rung:last-child { border-right: 0; }
.rung:hover { background: linear-gradient(180deg, rgba(244,243,239,.06), transparent); }
.rung .rstep { font-family:"Space Mono",monospace; font-size:11px; letter-spacing:.18em; color: var(--accent); }
.rung h3 { margin: 16px 0 12px; font-weight: 900; font-size: clamp(22px,2.3vw,32px); letter-spacing:-0.02em; text-transform: uppercase; line-height: .98; }
.rung p { margin: 0; font-size: 13.5px; line-height: 1.55; color: rgba(244,243,239,.62); }
.rung .rbar { position:absolute; left:0; bottom:0; height:3px; background: var(--accent); width: var(--w,25%); opacity:.85; }
.rung .rnum { position:absolute; top:18px; right:20px; font-family:"Space Mono",monospace; font-size:11px; color: var(--faint); }
@media (max-width: 900px){ .ladder{ grid-template-columns:1fr 1fr; } .rung:nth-child(2){border-right:0;} .rung:nth-child(1),.rung:nth-child(2){border-bottom:1px solid var(--line);} }
@media (max-width: 560px){ .ladder{ grid-template-columns:1fr; } .rung{ border-right:0; border-bottom:1px solid var(--line);} .rung:last-child{border-bottom:0;} }

/* checklist (What We Can Build) */
.checklist { display:grid; grid-template-columns:1fr 1fr; gap:0 40px; margin-top:6px; }
.checklist .ck { display:flex; gap:14px; align-items:baseline; padding:15px 2px; border-bottom:1px solid var(--line); font-size:15.5px; color: var(--bone); }
.checklist .ck::before { content:"+"; color:var(--accent); font-family:"Space Mono",monospace; font-size:13px; flex:none; }
.cream .checklist .ck { color: var(--ink); border-color: rgba(14,20,15,.16); }
@media (max-width:600px){ .checklist{ grid-template-columns:1fr; } }

/* ===== pricing cards ===== */
.price-grid { display:grid; grid-template-columns: repeat(3,1fr); gap:18px; margin-top:18px; }
@media (max-width:900px){ .price-grid{ grid-template-columns:1fr; } }
.pcard { position:relative; display:flex; flex-direction:column; border:1px solid rgba(244,243,239,.16); border-radius:6px; padding:30px 28px 28px; background:linear-gradient(180deg,rgba(24,26,32,.74),rgba(17,19,24,.62)); box-shadow:0 20px 46px -30px rgba(0,0,0,.75); overflow:hidden; }
.pcard.feature { border-color: var(--accent); background:linear-gradient(180deg,rgba(34,31,42,.78),rgba(20,22,28,.64)); box-shadow:0 0 0 1px rgba(232,228,218,.10) inset, 0 24px 54px -30px rgba(0,0,0,.8); }
.pcard .ptag { font-family:"Space Mono",monospace; font-size:10.5px; letter-spacing:.16em; text-transform:uppercase; color: var(--faint); }
.pcard.feature .ptag { color: var(--accent); }
.pcard h3 { margin:14px 0 0; font-weight:800; font-size:clamp(20px,2vw,26px); letter-spacing:-0.015em; }
.pcard .price { margin-top:14px; display:flex; flex-wrap:wrap; align-items:baseline; gap:8px; }
.pcard .price b { font-size:clamp(34px,4.4vw,52px); font-weight:900; letter-spacing:-0.03em; line-height:1; }
.pcard .price small { flex-basis:100%; margin-top:5px; font-size:13px; color:rgba(244,243,239,.72); font-weight:600; letter-spacing:.01em; }
.pcard .pdesc { margin-top:14px; font-size:14.5px; line-height:1.55; color:rgba(244,243,239,.62); }
.pcard ul { list-style:none; margin:18px 0 0; padding:18px 0 0; border-top:1px solid var(--line); display:flex; flex-direction:column; gap:10px; }
.pcard ul li { position:relative; padding-left:20px; font-size:14px; line-height:1.45; color:rgba(244,243,239,.78); }
.pcard ul li::before { content:"+"; position:absolute; left:0; color:var(--accent); font-family:"Space Mono",monospace; font-size:12px; }
.pcard .pfoot { margin-top:auto; padding-top:22px; }
.pcard .pfoot .mini-btn { width:100%; justify-content:center; text-align:center; }
.pcard .pnote { margin-top:13px; font-size:12px; line-height:1.5; color:var(--faint); }

/* terms strip */
.terms { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); margin-top:18px; }
.terms > div { padding:22px 22px; border-right:1px solid var(--line); }
.terms > div:last-child { border-right:0; }
.terms .tk { font-family:"Space Mono",monospace; font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:var(--accent); }
.terms .tv { margin-top:9px; font-size:14.5px; line-height:1.5; color:rgba(244,243,239,.78); }
@media (max-width:760px){ .terms{ grid-template-columns:1fr; } .terms>div{ border-right:0; border-bottom:1px solid var(--line);} .terms>div:last-child{border-bottom:0;} }

/* add-on rows */
.addon-row { display:grid; grid-template-columns: 1fr auto; gap:18px; align-items:center; padding:22px 4px; border-bottom:1px solid var(--line); }
.addon-row:first-child{ border-top:1px solid var(--line-strong); }
.addon-row .al b { font-weight:800; font-size:clamp(17px,1.7vw,21px); letter-spacing:-0.01em; }
.addon-row .al p { margin:6px 0 0; font-size:14px; line-height:1.5; color:rgba(244,243,239,.6); max-width:62ch; }
.addon-row .ap { font-family:"Space Mono",monospace; font-size:13px; letter-spacing:.04em; color:var(--accent); white-space:nowrap; font-weight:700; }

/* inline price points row */
.pricepoints { display:flex; flex-wrap:wrap; gap:10px; }
.pricepoints span { font-family:"Space Mono",monospace; font-size:11.5px; letter-spacing:.04em; color:rgba(244,243,239,.62); border:1px solid var(--line-strong); border-radius:40px; padding:9px 15px; }
.pricepoints span b { color:var(--bone); font-weight:700; }
.cream .pricepoints span { color:rgba(14,20,15,.62); border-color:rgba(14,20,15,.2); }
.cream .pricepoints span b { color:var(--ink); }

/* ===== balanced text wrapping (visual polish) ===== */
h1, h2, h3, h4,
.display, .section-title, .lede, .eyebrow, .kicker,
.hero-content h1, .conversion-band h2, .pcard h3, .rung h3,
.cta-final h2 { text-wrap: balance; }
.section-copy, .card p, .rung p, .pcard .pdesc, .who, .pdesc,
.lane p, .step p, .phase p, .addon-row .al p, .terms .tv,
.eco-row span, p.lede { text-wrap: pretty; }

/* who-we-serve audience cards */
.aud-card { min-height: 0; }
.aud-card .aud-problem { color: var(--accent); font-weight: 600; font-size: 14px; margin: 4px 0 12px; }
.aud-card > p { color: rgba(244,243,239,.66); }
.aud-card .aud-next { margin-top: 18px; font-family:"Space Mono",monospace; font-size: 12px; letter-spacing:.06em; color: var(--bone); text-decoration:none; transition: color .25s; }
.aud-card .aud-next:hover { color: var(--accent); }
.aud-card h3 { margin-bottom: 2px; }

/* editable photo: real img with graceful placeholder fallback */
.plate .plate-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; z-index:1; }
.plate .plate-img[hidden] { display:none; }

/* cream-section addon rows + stat row */
.cream .addon-row { border-color: rgba(14,20,15,.16); }
.cream .addon-row:first-child { border-top-color: rgba(14,20,15,.28); }
.cream .addon-row .al b { color: var(--ink); }
.cream .addon-row .al p { color: rgba(14,20,15,.6); }
.cream .stat-row { border-color: rgba(14,20,15,.16); }
.cream .stat { border-color: rgba(14,20,15,.16); }
.cream .stat b { color: var(--ink); }
.cream .stat span { color: rgba(14,20,15,.55); }

/* pay → brief → build flow */
.flow3 { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:18px; }
.flowstep { position:relative; padding:24px 24px 26px; border:1px solid var(--line); border-radius:5px; background:linear-gradient(180deg,rgba(244,243,239,.015),transparent); }
.flowstep .fn { font-family:"Space Mono",monospace; font-size:12px; letter-spacing:.16em; color:var(--accent); }
.flowstep b { display:block; margin:12px 0 7px; font-size:clamp(17px,1.7vw,21px); font-weight:800; letter-spacing:-0.01em; }
.flowstep p { margin:0; font-size:14px; line-height:1.5; color:rgba(244,243,239,.62); }
@media (max-width:760px){ .flow3{ grid-template-columns:1fr; } }
/* secondary mini-btn (non-primary) */
.mini-btn:not(.primary) { display:inline-flex; align-items:center; justify-content:center; width:100%; padding:13px 18px; border:1px solid var(--line-strong); border-radius:3px; font-family:"Space Mono",monospace; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--bone); text-decoration:none; transition:border-color .25s,color .25s; }
.mini-btn:not(.primary):hover { border-color:var(--accent); color:var(--accent); }
/* paid-link confirmation note injected by JS */
.pay-note { margin-top:10px; font-size:12px; color:rgba(244,243,239,.5); }

/* families picker: tabs + panels */
.fam-tabs { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.fam-tab { display:flex; align-items:center; gap:12px; padding:14px 18px; border:1px solid var(--line); border-radius:4px; cursor:pointer; background:transparent; color:var(--bone); font-family:inherit; text-align:left; transition:border-color .25s, background .25s; }
.fam-tab:hover { border-color:var(--accent); }
.fam-tab.active { border-color:var(--accent); background:linear-gradient(180deg,rgba(244,243,239,.10),transparent); }
.fam-tab .ft-n { font-family:"Space Mono",monospace; font-size:11px; letter-spacing:.1em; color:var(--faint); }
.fam-tab .ft-name { font-weight:700; font-size:14px; letter-spacing:-0.01em; }
.fam-tab .ft-price { margin-left:14px; font-family:"Space Mono",monospace; font-size:12px; font-weight:700; color:var(--accent); text-transform:uppercase; letter-spacing:.04em; }
.fam-panel { display:none; margin-top:34px; padding-top:30px; border-top:1px solid var(--line); }
.fam-panel.active { display:block; }
.fam-title { font-weight:800; font-size:clamp(28px,3.4vw,46px); line-height:1; letter-spacing:-0.02em; text-transform:uppercase; }
@media (max-width:680px){ .fam-tab{ flex:1 1 100%; } }

/* Heritage: serif display headlines */
.display, .section-title { font-family: "Space Grotesk", sans-serif; font-weight: 600; letter-spacing: -0.01em; }
.display { font-weight: 600; }

/* ===== Charcoal / Violet theme ===== */
body, .site { background: transparent; color:#f4f3ef; }
.display, .section-title { font-family:"Space Grotesk", sans-serif; font-weight:600; letter-spacing:-0.02em; }
.brand-text b { font-family:"Space Grotesk", sans-serif; font-weight:700; letter-spacing:-0.01em; }
.nav { background:rgba(21,23,28,.72); border-bottom-color:rgba(244,243,239,.12); }
.ticker { background:rgba(21,23,28,.5); }
.glow { opacity:.22; }
.btn-primary, .btn-primary:hover, .nav-links .nav-cta, .nav-links .nav-cta:hover, .nav-links .nav-cta.active, .mini-btn.primary, .pill:hover, .pill.active, .page-switch a.active, .page-switch a:hover, .btn-dark:hover { color:#15171c; }
@media (max-width: 900px){ .nav-links { background:rgba(21,23,28,.98); } }


/* ===== about: iconic value tiles (cream section) ===== */
.value-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; margin-top:26px; }
.vtile {
  position:relative; overflow:hidden;
  display:flex; flex-direction:column; justify-content:flex-end;
  min-height:142px; padding:20px 18px;
  border:1px solid rgba(14,20,15,.16); border-radius:4px;
  background:linear-gradient(180deg, rgba(14,20,15,.025), transparent);
  transition:transform .4s cubic-bezier(.2,.7,.2,1), border-color .4s, background .4s;
}
.vtile:hover { transform:translateY(-6px); border-color:var(--accent); background:linear-gradient(180deg, rgba(14,20,15,.05), transparent); }
.vtile .vn {
  position:absolute; top:-.20em; right:6px; z-index:0;
  font-family:"Space Grotesk",sans-serif; font-weight:700;
  font-size:clamp(78px,7vw,118px); line-height:1; letter-spacing:-0.05em;
  color:rgba(14,20,15,.05); -webkit-text-stroke:1.5px rgba(14,20,15,.40);
  pointer-events:none; transition:-webkit-text-stroke-color .4s, color .4s;
}
.vtile:hover .vn { color:rgba(27,28,33,.10); -webkit-text-stroke-color:var(--accent); }
.vtile .vmark { position:absolute; top:14px; left:16px; width:15px; height:15px; border-top:1px solid var(--accent); border-left:1px solid var(--accent); opacity:.6; }
.vtile h3 { position:relative; z-index:1; color:var(--ink); font-weight:800; font-size:clamp(14px,1vw,17px); text-transform:uppercase; letter-spacing:-0.005em; line-height:1.08; text-wrap:balance; }
@media (max-width:1000px){ .value-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:600px){ .value-grid{ grid-template-columns:repeat(2,1fr); } }


/* ===== Global copy rule: balanced / even line wrapping (default) ===== */
.display, .section-title, h1, h2, h3, h4, .eyebrow, .kicker,
.aud-card .aud-problem, .rung h3, .step h4, .process-step h4, .vtile h3, .card h3 { text-wrap: balance; }
.lede, .section-copy, .mono-note, .card p, .rung p, .step p, .process-step p, .cap-card p, .aud-card p, .pdesc, .footer p { text-wrap: pretty; }


/* ===== Night-sky (site-wide, behind dark sections) ===== */
.night-sky { position:fixed; inset:0; z-index:-1; pointer-events:none; overflow:hidden; }
.night-sky .fs-moon { position:absolute; top:6%; right:7%; width:clamp(118px,12vw,188px); height:clamp(118px,12vw,188px); border-radius:50%; background: radial-gradient(circle at 34% 31%, #fcfbf7, #e9e5db 44%, #cbc5b6 73%, #b1ab9b 100%); -webkit-mask: radial-gradient(circle at 67% 33%, transparent 0 53%, #000 54%); mask: radial-gradient(circle at 67% 33%, transparent 0 53%, #000 54%); filter: drop-shadow(0 0 20px rgba(244,243,239,.45)) drop-shadow(0 0 66px rgba(232,228,218,.26)); opacity:.92; animation: fsMoon 70s ease-in-out infinite alternate; }
.night-sky .fs-haze { position:absolute; inset:-20%; background: radial-gradient(54% 64% at 88% 6%, rgba(244,243,239,.07), transparent 58%), radial-gradient(50% 60% at 16% 84%, rgba(150,172,214,.03), transparent 64%); filter: blur(36px); animation: fsHaze 46s ease-in-out infinite alternate; }
.night-sky .fs-star { position:absolute; border-radius:50%; animation: fsTwinkle var(--tw,3.6s) ease-in-out infinite; will-change:opacity,transform; }
.night-sky .fs-shoot { position:absolute; border-radius:50%; pointer-events:none; }
@keyframes fsTwinkle { 0%,100%{opacity:var(--o0,.14)} 50%{opacity:var(--o1,.7)} }
@keyframes fsHaze { 0%{transform:translate3d(0,0,0)} 100%{transform:translate3d(2%,-2%,0)} }
@keyframes fsMoon { 0%{transform:translate3d(0,0,0) rotate(-15deg) scale(1)} 100%{transform:translate3d(-1.5%,2%,0) rotate(-11deg) scale(1.03)} }
@media (prefers-reduced-motion: reduce){ .night-sky .fs-star,.night-sky .fs-haze,.night-sky .fs-moon{animation:none!important} }

/* ===== editorial: lowercase small labels, calmer hero top ===== */
.eyebrow, .kicker, .ptag, .cap-tag, .ft-n, .ft-price, .cm-k, .footer-col b, .footer-bottom,
.path-aud, .plate-cap, .step .ix, .process-step .ix, .rung .rstep, .lane .lx, .stat span { text-transform: lowercase; }
.footer-col a { text-transform: none; }
.hero { padding-top: 116px; }
.hero.compact { padding-top: 104px; }


/* ===== Contact intake gateway ===== */
.intake-grid { display:grid; grid-template-columns:1.5fr .9fr; gap:24px; align-items:start; }
.intake-card { border:1px solid rgba(244,243,239,.16); border-radius:8px; padding:clamp(24px,3vw,40px); background:linear-gradient(180deg,rgba(24,26,32,.72),rgba(17,19,24,.6)); box-shadow:0 24px 60px -34px rgba(0,0,0,.8); }
.intake-aside { border:1px solid var(--line); border-radius:8px; padding:clamp(24px,3vw,32px); background:rgba(244,243,239,.025); }
.choice-sub { font-family:"Space Mono",monospace; font-size:10.5px; letter-spacing:.16em; color:var(--accent); margin:22px 0 12px; }
.reasons { list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:15px; }
.reasons li { position:relative; padding-left:22px; font-size:15px; line-height:1.5; color:rgba(244,243,239,.86); font-weight:450; text-wrap:balance; }
.reasons li::before { content:""; position:absolute; left:0; top:8px; width:8px; height:8px; border-top:1px solid var(--accent); border-left:1px solid var(--accent); }
.intake-note { margin:18px 0 0; font-size:13.5px; line-height:1.55; color:rgba(244,243,239,.5); text-wrap:pretty; }
.intake-meta { margin-top:26px; padding-top:20px; border-top:1px solid var(--line); display:flex; flex-direction:column; gap:16px; }
.intake-meta .cm-k { font-family:"Space Mono",monospace; font-size:10px; letter-spacing:.16em; color:var(--accent); }
.intake-meta .cm-v { margin-top:6px; font-weight:700; font-size:15px; letter-spacing:-0.01em; }
@media (max-width:880px){ .intake-grid{ grid-template-columns:1fr; } }


/* keep the night-sky to hero / CTA / footer — solid content sections elsewhere */
.section { background: #15171c; }
.section.cream { background: var(--cream); }
.section.cta-final { background: transparent; }


/* ===== Footer closing signature ===== */
.footer-cta { position:relative; z-index:2; text-align:center; max-width:760px; margin:0 auto; padding:8px 0 54px; }
.footer-cta h2 { font-family:"Space Grotesk",sans-serif; font-weight:600; font-size:clamp(30px,4vw,54px); letter-spacing:-0.02em; text-transform:uppercase; line-height:.98; text-wrap:balance; }
.footer-cta p { margin:18px auto 26px; max-width:500px; color:rgba(244,243,239,.66); line-height:1.6; text-wrap:pretty; }
.footer-cta .btn-row { justify-content:center; gap:14px; }
.footer-thesis { margin-top:14px; font-family:"Space Mono",monospace; font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); line-height:1.8; opacity:.85; }
.footer-bottom { color: rgba(244,243,239,.58); }
.footer::after { -webkit-text-stroke-color: rgba(244,243,239,.10); }


/* stronger editorial subtext + framed callout */
.section-copy { color: rgba(244,243,239,.82); font-weight: 450; line-height: 1.6; }
.cream .section-copy { color: rgba(14,20,15,.76); }
.callout { border:1px solid var(--line-strong); border-radius:8px; padding:clamp(26px,2.6vw,38px); background:linear-gradient(180deg,rgba(244,243,239,.045),transparent); }
.callout-title { margin:0; font-family:"Space Grotesk",sans-serif; font-weight:700; font-size:clamp(20px,1.9vw,26px); letter-spacing:-0.01em; text-transform:uppercase; line-height:1.05; text-wrap:balance; }
.callout p { margin:14px 0 0; font-size:16px; line-height:1.62; color:rgba(244,243,239,.8); font-weight:450; text-wrap:pretty; }
.cream .callout { border-color:rgba(14,20,15,.18); background:linear-gradient(180deg,rgba(14,20,15,.035),transparent); }
.cream .callout p { color:rgba(14,20,15,.74); }

.plate-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:1}



/* balanced achievement subtext */
.addon-row .al p { text-wrap: balance; }
