:root {
  --bg: #06060A;
  --bg-2: #0A0A12;
  --bg-3: #0E0E18;
  --fg: #EDEAE4;
  --fg-muted: rgba(237,234,228,.68);
  --fg-dim: rgba(237,234,228,.42);
  --gold: #C9A55A;
  --gold-hi: #E8C480;
  --gold-pale: #D4B97A;
  --gold-dim: rgba(201,165,90,.12);
  --gold-glow: rgba(201,165,90,.07);
  --border: rgba(237,234,228,.08);
  --border-gold: rgba(201,165,90,.24);
  --ease: cubic-bezier(0.16,1,0.3,1);
  --gutter: clamp(1.5rem,5vw,5.5rem);
  --max: 1180px;
}

*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at top, rgba(201,165,90,.06), transparent 30%),
    linear-gradient(180deg, #06060A 0%, #090913 50%, #06060A 100%);
  color:var(--fg);
  font-family:'DM Sans',system-ui,sans-serif;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  position:relative;
  overflow-x:hidden;
}
body::before,
body::after {
  content:'';
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
}
body::before {
  background:
    radial-gradient(circle at 12% 18%, rgba(201,165,90,.06), transparent 26%),
    radial-gradient(circle at 86% 14%, rgba(201,165,90,.05), transparent 28%);
  opacity:.85;
}
body::after {
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.015) 1px, transparent 1px);
  background-size:100% 176px, 176px 100%;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.55), transparent 92%);
  opacity:.22;
}
body.page-about::before {
  background:
    radial-gradient(circle at 16% 16%, rgba(201,165,90,.08), transparent 24%),
    radial-gradient(circle at 88% 22%, rgba(201,165,90,.07), transparent 32%);
}
body.page-services::before {
  background:
    radial-gradient(circle at 82% 12%, rgba(201,165,90,.09), transparent 24%),
    radial-gradient(circle at 12% 68%, rgba(201,165,90,.06), transparent 28%);
}
a { color:inherit; text-decoration:none; }
img,svg { display:block; max-width:100%; }

.skip-link {
  position:fixed;
  left:1rem;
  top:-100%;
  z-index:10001;
  background:var(--gold);
  color:var(--bg);
  padding:.75rem 1rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.72rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.skip-link:focus { top:1rem; }

.site-shell {
  width:min(calc(100% - (2 * var(--gutter))), var(--max));
  margin:0 auto;
}

.site-header {
  position:sticky;
  top:0;
  z-index:1000;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  background:rgba(6,6,10,.78);
  border-bottom:1px solid var(--border);
}
.site-header .site-shell {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  min-height:76px;
}
.brand {
  display:inline-flex;
  align-items:center;
  gap:.9rem;
}
.brand-mark {
  width:54px;
  aspect-ratio:1;
  color:var(--gold);
  flex-shrink:0;
}
.brand-logo-svg {
  width:100%;
  height:auto;
}
.brand-logo-orbit {
  transform-box:fill-box;
  transform-origin:center;
}
.brand-logo-orbit-outer { animation:orbit 18s linear infinite; }
.brand-logo-orbit-inner { animation:orbit-r 26s linear infinite reverse; }
.brand-logo-ring {
  fill:none;
  stroke:rgba(201,165,90,.24);
  stroke-width:1.4;
}
.brand-logo-ring-inner { stroke:rgba(201,165,90,.12); }
.brand-logo-orbit-dot { fill:currentColor; }
.brand-logo-orbit-dot.fade { opacity:.35; }
.brand-logo-path {
  fill:none;
  stroke:currentColor;
  stroke-width:5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.brand-logo-path.thin {
  stroke-width:2.5;
  stroke:var(--gold-pale);
}
.brand-logo-dot { fill:currentColor; }
.brand-copy {
  display:flex;
  flex-direction:column;
  gap:.15rem;
}
.brand-name {
  font-family:'JetBrains Mono',monospace;
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.brand-tag {
  font-size:.82rem;
  color:var(--fg-dim);
}
@keyframes orbit { to { transform:rotate(360deg); } }
@keyframes orbit-r { to { transform:rotate(360deg); } }

.site-nav {
  display:flex;
  align-items:center;
  gap:1.5rem;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.site-nav a {
  font-family:'JetBrains Mono',monospace;
  font-size:.68rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--fg-muted);
  transition:color .25s var(--ease);
}
.site-nav a:hover,
.site-nav a[aria-current="page"] { color:var(--gold); }

main {
  position:relative;
  padding:clamp(4rem,8vw,7rem) 0 clamp(4rem,7vw,6rem);
}
.page-hero {
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(260px,.9fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:end;
  min-height:clamp(24rem,44vw,36rem);
  padding-bottom:clamp(3rem,5vw,4rem);
  border-bottom:1px solid var(--border);
  position:relative;
}
.page-hero::after {
  content:'';
  position:absolute;
  right:0;
  bottom:-1px;
  width:min(42vw, 420px);
  height:1px;
  background:linear-gradient(90deg, transparent, var(--border-gold));
}
.eyebrow,
.kicker {
  display:inline-flex;
  align-items:center;
  gap:.8rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.68rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.eyebrow::before,
.kicker::before {
  content:'';
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--gold);
}
.page-title {
  margin:.9rem 0 1rem;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(3.2rem,7vw,6.5rem);
  line-height:.94;
  letter-spacing:-.03em;
  font-weight:300;
}
.page-title em { color:var(--gold); font-style:italic; }
/* ── Inner-page hero effects (watermark + orbit mark) ──────── */
.services-hero,
.about-hero {
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(200px,.8fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:center;
  min-height:clamp(24rem,44vw,36rem);
  padding-bottom:clamp(3rem,5vw,4rem);
  border-bottom:1px solid var(--border);
  position:relative;
  overflow:hidden;
}
.services-hero::after,
.about-hero::after {
  content:'';
  position:absolute;
  right:0;
  bottom:-1px;
  width:min(42vw, 420px);
  height:1px;
  background:linear-gradient(90deg, transparent, var(--border-gold));
}
.services-hero .hero-copy,
.about-hero .hero-copy {
  position:relative;
  z-index:2;
}
.services-hero .hero-wm,
.about-hero .hero-wm {
  position:absolute;
  inset:0;
  z-index:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  overflow:hidden;
  pointer-events:none;
}
.services-hero .hero-wm-text,
.about-hero .hero-wm-text {
  font-family:'JetBrains Mono',monospace;
  font-size:clamp(28vw, 42vw, 54vw);
  font-weight:500;
  color:rgba(201,165,90,.022);
  line-height:.9;
  letter-spacing:-.06em;
  user-select:none;
  transform:translateX(2%);
}
.services-hero .hero-right,
.about-hero .hero-right {
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
}
.services-hero .mark-wrap,
.about-hero .mark-wrap {
  position:relative;
  width:clamp(140px,24vw,320px);
  aspect-ratio:1;
}
.services-hero .mark-orbit,
.about-hero .mark-orbit {
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid var(--border-gold);
  animation:orbit 35s linear infinite;
}
.services-hero .mark-orbit::before,
.services-hero .mark-orbit::after,
.about-hero .mark-orbit::before,
.about-hero .mark-orbit::after {
  content:'';
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--gold);
}
.services-hero .mark-orbit::before,
.about-hero .mark-orbit::before {
  top:-3.5px;
  left:50%;
  transform:translateX(-50%);
}
.services-hero .mark-orbit::after,
.about-hero .mark-orbit::after {
  bottom:-3.5px;
  left:50%;
  transform:translateX(-50%);
  opacity:.35;
}
.services-hero .mark-orbit-inner,
.about-hero .mark-orbit-inner {
  position:absolute;
  inset:18%;
  border-radius:50%;
  border:1px solid rgba(201,165,90,.1);
  animation:orbit-r 50s linear infinite reverse;
}
.services-hero .mark-svg,
.about-hero .mark-svg {
  width:100%;
  height:100%;
  padding:20%;
}
.services-hero .mark-path,
.about-hero .mark-path {
  fill:none;
  stroke:var(--gold);
  stroke-width:2.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:none;
  stroke-dashoffset:0;
}
.services-hero .mark-path.thin,
.about-hero .mark-path.thin {
  stroke-width:1.4;
  stroke:var(--gold-pale);
}
.services-hero .mark-dot,
.about-hero .mark-dot {
  fill:var(--gold);
  opacity:1;
}
.page-lead {
  max-width:62ch;
  font-size:clamp(1.05rem,1.45vw,1.25rem);
  color:var(--fg-muted);
}
.hero-aside {
  padding:1.45rem 1.6rem;
  border:1px solid var(--border-gold);
  background:
    linear-gradient(180deg, rgba(201,165,90,.08), rgba(201,165,90,.02)),
    linear-gradient(135deg, rgba(255,255,255,.025), transparent 55%);
  align-self:end;
  box-shadow:0 24px 80px rgba(0,0,0,.22);
}
.page-about .page-title {
  margin:1rem 0 1.35rem;
  opacity:0;
  transform:translateY(16px);
  filter:blur(6px);
  animation:about-title-reveal 1.1s cubic-bezier(.22,.84,.2,1) .12s forwards;
}
.page-about .signal-band.section-block {
  border-top:none;
}
@keyframes about-title-reveal {
  to {
    opacity:1;
    transform:translateY(0);
    filter:blur(0);
  }
}
@media (prefers-reduced-motion:reduce) {
  .page-about .page-title {
    animation:none;
    opacity:1;
    transform:none;
    filter:none;
  }
}
@media (max-width:960px) {
  .services-hero,
  .about-hero {
    grid-template-columns:1fr;
    min-height:auto;
  }
  .services-hero .hero-right,
  .about-hero .hero-right {
    justify-content:flex-start;
  }
  .services-hero .mark-wrap,
  .about-hero .mark-wrap {
    width:clamp(100px,30vw,180px);
  }
  .services-hero .hero-wm-text,
  .about-hero .hero-wm-text {
    font-size:38vw;
  }
}
.services-hero {
  grid-template-columns:58% 42%;
  gap:clamp(2rem,4vw,4.2rem);
  align-items:center;
  min-height:clamp(34rem,52vw,48rem);
  overflow:hidden;
}
.services-hero .page-title {
  max-width:15.2ch;
  font-size:clamp(3.1rem,4.7vw,5.55rem);
  line-height:.91;
}
.services-hero .page-lead {
  max-width:58ch;
}
.services-hero .hero-wm {
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  overflow:hidden;
  pointer-events:none;
}
.services-hero .hero-wm-text {
  font-family:'JetBrains Mono',monospace;
  font-size:54vw;
  font-weight:500;
  color:rgba(201,165,90,.022);
  line-height:.9;
  letter-spacing:-.06em;
  user-select:none;
  transform:translateX(0);
}
.services-hero .hero-right {
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  will-change:transform;
  transform:translateX(-12%);
}
.services-hero .mark-wrap {
  position:relative;
  width:clamp(180px,32vw,460px);
  aspect-ratio:1;
  transform:translateX(-2%);
}
.services-hero .mark-orbit {
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid var(--border-gold);
  animation:orbit 35s linear infinite;
}
.services-hero .mark-orbit::before,
.services-hero .mark-orbit::after {
  content:'';
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--gold);
}
.services-hero .mark-orbit::before {
  top:-3.5px;
  left:50%;
  transform:translateX(-50%);
}
.services-hero .mark-orbit::after {
  bottom:-3.5px;
  left:50%;
  transform:translateX(-50%);
  opacity:.35;
}
.services-hero .mark-orbit-inner {
  position:absolute;
  inset:18%;
  border-radius:50%;
  border:1px solid rgba(201,165,90,.1);
  animation:orbit-r 50s linear infinite reverse;
}
.services-hero .mark-svg {
  width:100%;
  height:100%;
  padding:20%;
}
.services-hero .mark-path {
  fill:none;
  stroke:var(--gold);
  stroke-width:2.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:300;
  stroke-dashoffset:300;
  animation:services-mark-draw 1.2s cubic-bezier(.16,1,.3,1) forwards;
}
.services-hero .mark-path:nth-of-type(1) { animation-delay:0ms; }
.services-hero .mark-path:nth-of-type(2) { animation-delay:300ms; }
.services-hero .mark-path:nth-of-type(3) { animation-delay:560ms; }
.services-hero .mark-path:nth-of-type(4) { animation-delay:160ms; }
.services-hero .mark-path:nth-of-type(5) { animation-delay:420ms; }
.services-hero .mark-path:nth-of-type(6) { animation-delay:600ms; }
.services-hero .mark-path.thin {
  stroke-width:1.4;
  stroke:var(--gold-pale);
}
.services-hero .mark-dot {
  fill:var(--gold);
  opacity:0;
  animation:services-mark-dot-in .4s ease forwards .9s;
}
@keyframes services-mark-draw {
  to { stroke-dashoffset:0; }
}
@keyframes services-mark-dot-in {
  to { opacity:1; }
}
.aside-label {
  font-family:'JetBrains Mono',monospace;
  font-size:.64rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--fg-dim);
}
.aside-copy {
  margin:.8rem 0 0;
  color:var(--fg-muted);
}

.signal-band {
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:1rem;
}
.signal-card {
  position:relative;
  overflow:hidden;
  padding:1.3rem 1.4rem;
  border:1px solid var(--border);
  background:
    linear-gradient(180deg, rgba(201,165,90,.08), rgba(201,165,90,.02)),
    rgba(10,10,18,.72);
}
.signal-card::before {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(201,165,90,.18), transparent 28%);
  opacity:.4;
  pointer-events:none;
}
.signal-value {
  position:relative;
  z-index:1;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(2.2rem,4vw,3.6rem);
  line-height:.9;
  font-weight:300;
  color:var(--fg);
}
.signal-label {
  position:relative;
  z-index:1;
  margin-top:.55rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.62rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--fg-dim);
}

.chapter-layout {
  display:grid;
  grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);
  gap:clamp(1.8rem,4vw,4rem);
  align-items:start;
}
.chapter-rail {
  position:sticky;
  top:108px;
  align-self:start;
}
.chapter-rail .section-title {
  max-width:11ch;
}
.chapter-note {
  max-width:32ch;
  color:var(--fg-dim);
}
.chapter-stack {
  display:grid;
  gap:1.35rem;
}
.chapter-grid {
  margin-top:0;
}
.chapter-panel {
  position:relative;
  overflow:hidden;
  padding:1.55rem;
  border:1px solid var(--border);
  background:
    linear-gradient(180deg, rgba(201,165,90,.04), transparent 46%),
    rgba(10,10,18,.76);
}
.chapter-panel::before {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(201,165,90,.14), transparent 22%);
  opacity:.28;
  pointer-events:none;
}
.chapter-panel > * {
  position:relative;
  z-index:1;
}
.chapter-panel h2,
.chapter-panel h3 {
  margin:0 0 .8rem;
}

/* Services: Industries & FAQ layout restoration */
.industries-layout,
.faq-layout {
  grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);
  gap:clamp(1.8rem,4vw,4rem);
}
.industries-meta {
  margin-top:1.1rem;
  display:flex;
  flex-wrap:wrap;
  gap:.45rem .6rem;
}
.industries-meta span {
  padding:.35rem .58rem;
  border:1px solid var(--border);
  background:rgba(10,10,18,.72);
  font-family:'JetBrains Mono',monospace;
  font-size:.58rem;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--fg-dim);
}
.industries-stack {
  display:grid;
  gap:1.2rem;
}
.industries-featured {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:1.05rem;
}
.industries-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:1.05rem;
}
.industry-card {
  position:relative;
  overflow:hidden;
  padding:1.28rem 1.3rem 1.25rem;
  border:1px solid var(--border);
  background:
    linear-gradient(180deg, rgba(201,165,90,.06), transparent 48%),
    rgba(10,10,18,.74);
}
.industry-card::before {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(92deg, rgba(201,165,90,.14), transparent 34%);
  opacity:.24;
  pointer-events:none;
}
.industry-card > * {
  position:relative;
  z-index:1;
}
.industry-card-featured {
  border-color:var(--border-gold);
  background:
    linear-gradient(180deg, rgba(201,165,90,.1), rgba(201,165,90,.03)),
    rgba(10,10,18,.78);
}
.industry-index {
  display:inline-flex;
  margin-bottom:.65rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.58rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.industry-card h3 {
  margin:0 0 .62rem;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(1.45rem,2.2vw,1.95rem);
  line-height:.96;
  font-weight:300;
}
.industry-card p {
  margin:0;
  color:var(--fg-muted);
}

.services-faq-section .chapter-rail .section-title {
  max-width:13ch;
}
.faq-stack {
  display:grid;
  gap:.72rem;
}
.faq-entry {
  border:1px solid var(--border);
  background:rgba(10,10,18,.72);
}
.faq-entry[open] {
  border-color:var(--border-gold);
  background:
    linear-gradient(180deg, rgba(201,165,90,.06), rgba(201,165,90,.015)),
    rgba(10,10,18,.76);
}
.faq-entry summary {
  list-style:none;
  cursor:pointer;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:.95rem;
  align-items:flex-start;
  padding:1rem 1.05rem;
}
.faq-entry summary::-webkit-details-marker {
  display:none;
}
.faq-entry summary::after {
  content:'+';
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.35rem;
  height:1.35rem;
  margin-top:.08rem;
  border:1px solid var(--border-gold);
  border-radius:50%;
  font-family:'JetBrains Mono',monospace;
  font-size:.9rem;
  line-height:1;
  color:var(--gold);
}
.faq-entry[open] summary::after {
  content:'-';
}
.faq-entry-index {
  margin-top:.12rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.58rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.faq-entry-question {
  display:block;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(1.34rem,2.1vw,1.75rem);
  line-height:.96;
  font-weight:300;
  color:var(--fg);
}
.faq-entry-answer {
  padding:0 1.05rem 1.05rem 2.93rem;
}
.faq-entry-answer p {
  margin:0;
  color:var(--fg-muted);
}

.founder-spotlight {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);
  gap:1.2rem;
}
.founder-copy {
  display:grid;
  gap:1rem;
}
.founder-quote {
  padding-left:1rem;
  border-left:1px solid var(--border-gold);
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(1.6rem,2.6vw,2.2rem);
  line-height:1.08;
  font-weight:300;
  color:var(--gold-pale);
}
.portrait-panel {
  padding:1rem;
}
.portrait-frame {
  aspect-ratio:4 / 4.7;
  overflow:hidden;
  background:#11151B;
}
.portrait-frame img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.portrait-meta {
  margin-top:.9rem;
  display:grid;
  gap:.55rem;
}
.portrait-label {
  font-family:'JetBrains Mono',monospace;
  font-size:.58rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.portrait-name {
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(1.9rem,3vw,2.7rem);
  line-height:.94;
  font-weight:300;
}
.portrait-copy {
  color:var(--fg-muted);
  max-width:34ch;
}
.portrait-facts {
  display:flex;
  flex-wrap:wrap;
  gap:.5rem .8rem;
}
.portrait-facts span {
  font-family:'JetBrains Mono',monospace;
  font-size:.56rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--fg-dim);
}
.portrait-social {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:center;
  width:24px;
  height:24px;
  margin-top:.05rem;
  color:var(--gold);
  transition:transform .3s var(--ease), color .3s var(--ease), opacity .3s var(--ease);
  opacity:.8;
}
.portrait-social svg {
  width:12px;
  height:12px;
}
.portrait-social:hover {
  transform:translateY(-1px);
  color:var(--gold-hi);
  opacity:1;
}

.service-strip {
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:1rem;
}
.service-strip-item {
  position:relative;
  padding:1rem 1.1rem;
  border:1px solid var(--border);
  background:rgba(10,10,18,.65);
}
.service-strip-item::before {
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:56px;
  height:1px;
  background:var(--gold);
}
.service-strip-item strong {
  display:block;
  font-family:'Cormorant',Georgia,serif;
  font-size:1.35rem;
  line-height:1;
  font-weight:300;
}
.service-strip-item span {
  display:block;
  margin-top:.45rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.58rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--fg-dim);
}

.service-chapters {
  display:grid;
  gap:1.5rem;
}
.service-chapter {
  display:grid;
  grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);
  gap:1.3rem;
  align-items:start;
}
.service-chapter.alt {
  grid-template-columns:minmax(0,1fr) minmax(180px,.42fr);
}
.service-chapter.alt .service-rail {
  order:2;
}
.service-chapter.alt .service-main {
  order:1;
}
.service-rail {
  position:sticky;
  top:112px;
  align-self:start;
}
.service-rail-num {
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(3.4rem,7vw,5.4rem);
  line-height:.82;
  color:rgba(201,165,90,.72);
}
.service-rail-label {
  margin-top:.45rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.58rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.service-rail-copy {
  margin-top:1rem;
  color:var(--fg-dim);
  max-width:22ch;
}
.service-main {
  position:relative;
  overflow:hidden;
  padding:1.9rem;
  border:1px solid var(--border);
  background:
    radial-gradient(circle at 84% 18%, rgba(201,165,90,.08), transparent 28%),
    rgba(10,10,18,.76);
}
.service-main::before {
  content:attr(data-ghost);
  position:absolute;
  right:.75rem;
  top:.25rem;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(6rem,12vw,10rem);
  line-height:.8;
  color:rgba(201,165,90,.08);
  pointer-events:none;
}
.service-main h2 {
  position:relative;
  margin:0 0 1rem;
  max-width:14ch;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(2.3rem,4vw,4.2rem);
  line-height:.9;
  font-weight:300;
}
.service-main h2 em { color:var(--gold); font-style:italic; }
.service-main > p {
  position:relative;
  max-width:60ch;
  color:var(--fg-muted);
  font-size:1.02rem;
}
.service-detail-grid {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);
  gap:1.25rem;
  margin-top:1.4rem;
}
.service-detail-box {
  padding-top:1rem;
  border-top:1px solid var(--border);
}
.service-detail-box h3 {
  margin:0 0 .7rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.62rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.service-detail-box p,
.service-detail-box li {
  color:var(--fg-muted);
}
.service-detail-box ul {
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.72rem;
}
.service-detail-box li {
  padding-left:1rem;
  position:relative;
}
.service-detail-box li::before {
  content:'';
  position:absolute;
  left:0;
  top:.72em;
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--gold);
}

.cta-slab {
  padding:1.8rem;
  border:1px solid var(--border-gold);
  background:
    linear-gradient(180deg, rgba(201,165,90,.1), rgba(201,165,90,.03)),
    rgba(10,10,18,.72);
}
.cta-slab-grid {
  display:grid;
  grid-template-columns:minmax(0,1.2fr) auto;
  gap:1.4rem;
  align-items:end;
}
.cta-slab h2 {
  margin:0 0 .7rem;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(2.1rem,4vw,3.4rem);
  line-height:.92;
  font-weight:300;
}
.cta-slab p {
  margin:0;
  max-width:54ch;
  color:var(--fg-muted);
}

.content-grid,
.section-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:clamp(1.5rem,3vw,2rem);
  margin-top:clamp(2rem,4vw,3rem);
}
.card,
.panel {
  padding:1.5rem;
  border:1px solid var(--border);
  background:rgba(10,10,18,.72);
}
.card h2,
.card h3,
.panel h2,
.panel h3 {
  margin:0 0 .8rem;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(1.6rem,2.8vw,2.2rem);
  line-height:1;
  font-weight:300;
}
.card p,
.panel p,
.section-copy { color:var(--fg-muted); }
.stat {
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(2.6rem,6vw,4.5rem);
  line-height:1;
  color:var(--gold);
}
.stat-label {
  margin-top:.5rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.62rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--fg-dim);
}

.section-block {
  padding-top:clamp(3rem,5vw,4rem);
  margin-top:clamp(3rem,5vw,4rem);
  border-top:1px solid var(--border);
}
.hero-fit-band.section-block {
  border-top:none;
}
.section-title {
  margin:.8rem 0 1rem;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(2.4rem,5vw,4.2rem);
  line-height:.96;
  font-weight:300;
}
.section-title em { color:var(--gold); font-style:italic; }

.intake-layout {
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:clamp(1.6rem,3vw,2.75rem);
  align-items:start;
}
.intake-copy {
  display:grid;
  gap:1rem;
}
.intake-note {
  margin:0;
  padding-left:1rem;
  border-left:1px solid var(--border-gold);
  color:var(--gold-pale);
}
.intake-meta {
  display:grid;
  gap:.8rem;
  margin-top:.25rem;
}
.intake-meta-item {
  padding:1rem 1.1rem;
  border:1px solid var(--border);
  background:rgba(10,10,18,.56);
  color:var(--fg-muted);
}
.intake-form-shell {
  padding:1.65rem 1.75rem;
  border:1px solid var(--border-gold);
  background:
    radial-gradient(circle at 84% 16%, rgba(201,165,90,.08), transparent 28%),
    linear-gradient(180deg, rgba(201,165,90,.08), rgba(201,165,90,.03)),
    rgba(10,10,18,.74);
  box-shadow:0 24px 80px rgba(0,0,0,.2);
}
.c-captcha-wrap {
  display:flex;
  align-items:center;
  gap:1.2rem;
  padding:.9rem 0;
  border-bottom:1px solid var(--border);
  margin-bottom:.35rem;
}
.c-captcha-q {
  font-family:'JetBrains Mono',monospace;
  font-size:.68rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(237,234,228,.42);
  white-space:nowrap;
  flex-shrink:0;
}
.c-captcha-q em { font-style:normal; color:var(--gold); }
.c-captcha-input {
  background:transparent;
  border:none;
  outline:none;
  color:var(--fg);
  font-family:'DM Sans',sans-serif;
  font-size:.95rem;
  font-weight:300;
  width:5ch;
  min-width:5ch;
  padding:0;
}
.c-captcha-input::placeholder { color:rgba(237,234,228,.35); }
.c-group.c-captcha-group { border-bottom:none; }
.c-form {
  display:flex;
  flex-direction:column;
  gap:1.6rem;
}
.c-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}
.c-group {
  display:flex;
  flex-direction:column;
  gap:.35rem;
}
.c-group label {
  font-family:'JetBrains Mono',monospace;
  font-size:.6rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(237,234,228,.42);
  transition:color .25s;
}
.c-label-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}
.c-counter {
  font-family:'JetBrains Mono',monospace;
  font-size:.56rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--fg-dim);
}
.c-group:focus-within label { color:var(--gold); }
.c-group input,
.c-group select,
.c-group textarea {
  background:transparent;
  border:none;
  border-bottom:1px solid var(--border);
  color:var(--fg);
  font-family:'DM Sans',sans-serif;
  font-size:.95rem;
  font-weight:300;
  padding:.75rem 0;
  outline:none;
  resize:none;
  width:100%;
  transition:border-color .3s;
}
.c-group input::placeholder,
.c-group select:invalid,
.c-group textarea::placeholder { color:rgba(237,234,228,.35); }
.c-group input:focus,
.c-group select:focus,
.c-group textarea:focus { border-bottom-color:var(--gold); }
.c-group.err input,
.c-group.err select,
.c-group.err textarea { border-bottom-color:#C0392B; }
.c-group.ok input,
.c-group.ok select,
.c-group.ok textarea { border-bottom-color:rgba(201,165,90,.5); }
.c-group select {
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
}
.c-err {
  font-family:'JetBrains Mono',monospace;
  font-size:.58rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#C0392B;
  min-height:1em;
}
.c-group textarea { min-height:120px; }
.c-btn {
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  gap:.7rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--bg);
  background:var(--gold);
  padding:.95rem 2.1rem;
  transition:background .3s var(--ease), transform .3s var(--ease), opacity .3s var(--ease);
}
.c-btn svg { transition:transform .3s var(--ease); }
.c-btn:hover {
  background:var(--gold-hi);
  transform:translateY(-1px);
}
.c-btn:hover svg { transform:translateX(4px); }
.c-btn:disabled { opacity:.5; }
.c-success {
  padding:1.4rem 1.6rem;
  border:1px solid var(--border-gold);
  background:var(--gold-dim);
  display:none;
  font-family:'JetBrains Mono',monospace;
  font-size:.72rem;
  letter-spacing:.1em;
  color:var(--gold);
}

.service-list {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:1.5rem;
  margin-top:2rem;
}
.service-card {
  padding:1.6rem;
  border:1px solid var(--border);
  background:rgba(10,10,18,.74);
}
.service-num {
  font-family:'JetBrains Mono',monospace;
  font-size:.66rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.service-card h2 {
  margin:.9rem 0 .9rem;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(2rem,4vw,3rem);
  line-height:.94;
  font-weight:300;
}
.service-card h2 em { color:var(--gold); font-style:italic; }
.service-card ul {
  margin:1rem 0 0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:.75rem;
}
.service-card li {
  color:var(--fg-muted);
  padding-left:1rem;
  position:relative;
}
.service-card li::before {
  content:'';
  position:absolute;
  left:0;
  top:.72em;
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--gold);
}

.cta-row {
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
  margin-top:1.5rem;
}
.btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  min-height:48px;
  padding:.9rem 1.35rem;
  border:1px solid var(--border-gold);
  font-family:'JetBrains Mono',monospace;
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:background .25s var(--ease), color .25s var(--ease), transform .25s var(--ease);
}
.btn-primary { background:var(--gold); color:var(--bg); }
.btn-secondary { color:var(--gold); background:transparent; }
.btn:hover {
  transform:translateY(-2px);
  background:var(--gold-dim);
}
.btn-primary:hover { background:var(--gold-hi); }

.faq-list {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:1.25rem;
  margin-top:2rem;
}
.faq-item {
  padding:1.4rem;
  border:1px solid var(--border);
  background:rgba(10,10,18,.72);
}
.faq-item h3 {
  margin:0 0 .65rem;
  font-size:1.08rem;
  font-weight:500;
}

.policy-meta {
  margin-top:1.2rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.66rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--fg-dim);
}
.policy-nav {
  display:flex;
  flex-wrap:wrap;
  gap:.9rem 1.2rem;
  margin-top:1.5rem;
}
.policy-nav a {
  font-family:'JetBrains Mono',monospace;
  font-size:.68rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--gold);
}
.policy-prose {
  display:grid;
  gap:1.4rem;
  margin-top:2rem;
}
.policy-prose section {
  padding:1.35rem 1.5rem;
  border:1px solid var(--border);
  background:rgba(10,10,18,.72);
}
.policy-prose h2 {
  margin:0 0 .75rem;
  font-family:'Cormorant',Georgia,serif;
  font-size:clamp(1.7rem,3vw,2.2rem);
  line-height:1;
  font-weight:300;
}
.policy-prose p,
.policy-prose li { color:var(--fg-muted); }
.policy-prose ul {
  margin:.7rem 0 0;
  padding-left:1.2rem;
}

.site-footer {
  border-top:1px solid var(--border);
  padding:2.25rem 0 3rem;
}
.site-footer .site-shell {
  display:grid;
  grid-template-columns:1.2fr .9fr .9fr;
  gap:2rem;
  align-items:start;
}
.footer-copy {
  font-size:.82rem;
  color:var(--fg-dim);
  max-width:32ch;
}
.footer-nav,
.footer-legal {
  display:flex;
  flex-direction:column;
  gap:.55rem;
}
.footer-nav a,
.footer-legal a {
  font-family:'JetBrains Mono',monospace;
  font-size:.62rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--fg-dim);
}
.footer-nav a:hover,
.footer-legal a:hover { color:var(--gold); }

@media (max-width:960px) {
  .page-hero,
  .content-grid,
  .section-grid,
  .service-list,
  .faq-list,
  .site-footer .site-shell,
  .signal-band,
  .industries-layout,
  .faq-layout,
  .chapter-layout,
  .founder-spotlight,
  .industries-featured,
  .industries-grid,
  .service-strip,
  .service-chapter,
  .service-chapter.alt,
  .service-detail-grid,
  .cta-slab-grid {
    grid-template-columns:1fr;
  }
  .service-chapter.alt .service-rail,
  .service-chapter.alt .service-main {
    order:initial;
  }
  .intake-layout,
  .c-row {
    grid-template-columns:1fr;
  }
  .chapter-rail,
  .service-rail {
    position:static;
  }
  .faq-entry-answer {
    padding:0 1rem 1rem 1rem;
  }
  .site-header .site-shell {
    align-items:flex-start;
    flex-direction:column;
    padding:1rem 0;
  }
  .site-nav { justify-content:flex-start; }
  .services-hero .page-title {
    max-width:11.2ch;
    font-size:clamp(2.95rem,10.8vw,4.9rem);
  }
  .services-hero .hero-right {
    justify-content:flex-start;
    height:auto;
    min-height:14rem;
    margin-top:.6rem;
    transform:none;
  }
  .services-hero .mark-wrap {
    width:clamp(130px,40vw,240px);
  }
  .services-hero .hero-wm-text {
    font-size:14rem;
    transform:translateX(12%);
  }
  .intake-form-shell {
    padding:1.4rem 1.2rem;
  }
}
