:root {
  --paper: #ece9e2;
  --cream: #f4f1ea;
  --white: #fbfaf7;
  --ink: #171715;
  --muted: #6b6964;
  --line: rgba(23, 23, 21, .18);
  --gold: #807c75;
  --gold-pale: #c1bbb0;
  --display: "EB Garamond", Georgia, serif;
  --body: "Manrope", Arial, sans-serif;
  --ease: cubic-bezier(.22, 1, .36, 1);
}

* { box-sizing: border-box; }
html { background: var(--paper); }
body { min-height: 100svh; margin: 0; overflow: auto; background: var(--paper); color: var(--ink); font-family: var(--body); }
a { color: inherit; }
button, input, textarea { color: inherit; font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
.modal-open { overflow: hidden; }
.skip-link { position: fixed; left: 1rem; top: -4rem; z-index: 100; padding: .7rem 1rem; background: var(--ink); color: var(--white); }
.skip-link:focus { top: 1rem; }
.eyebrow { margin: 0; color: var(--gold); font-size: .5rem; font-weight: 600; letter-spacing: .17em; text-transform: uppercase; }

.site-header {
  min-height: 8.5rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 3rem;
  padding: 1.55rem 4.5vw 1.4rem; border-bottom: 1px solid var(--line); background: var(--paper);
}
.masthead-brand { justify-self: end; display: grid; justify-items: end; gap: .28rem; color: var(--ink); text-align: right; text-decoration: none; }
.masthead-brand h1 { margin: 0; font: 500 clamp(1.75rem, 2.4vw, 2.75rem)/.95 var(--display); letter-spacing: .075em; text-transform: uppercase; }
.masthead-brand > .masthead-slogan { display: grid; gap: .08rem; max-width: 48rem; color: var(--muted); font: 400 clamp(.72rem, .9vw, .92rem)/1.35 var(--display); }
.masthead-slogan strong { color: var(--ink); font-weight: 600; }
.masthead-slogan > span { font-weight: 400; }
.institution-map { min-height: calc(100svh - 8.5rem); display: grid; grid-template-columns: 1fr; grid-template-rows: minmax(34rem, 47svh) auto; }
.house-intro {
  position: relative; min-width: 0; display: flex; flex-direction: column;
  padding: .65rem 4.5vw 1.25rem; border-top: 1px solid var(--line); overflow: hidden;
  background: var(--cream);
}
.house-manifesto {
  position: relative; z-index: 3; display: grid; grid-template-columns: 1fr; justify-items: center; gap: clamp(.55rem, 1.15vh, .9rem);
  width: min(88rem, 100%); margin: 0 auto; padding: clamp(1rem, 1.5vh, 1.35rem) clamp(1rem, 3vw, 3rem);
  border-bottom: 1px solid var(--line);
  background: radial-gradient(circle at 50% 33%, rgba(128,124,117,.09), transparent 34%);
  color: var(--ink); text-decoration: none;
}
.house-manifesto > .manifesto-label { justify-self: center; color: var(--gold); font-size: .44rem; font-weight: 600; letter-spacing: .16em; text-align: center; text-transform: uppercase; }
.manifesto-bowl { display: grid; place-items: center; margin: 0; }
.manifesto-bowl svg { width: clamp(6.5rem, 8vw, 8.5rem); height: auto; overflow: visible; }
.bowl-rim, .bowl-body, .bowl-inner { fill: none; stroke: rgba(23,23,21,.38); vector-effect: non-scaling-stroke; }
.bowl-inner { stroke: var(--line); }
.bowl-gold-seam, .bowl-gold-branch { fill: none; stroke: #9a7834; stroke-width: 1.6; vector-effect: non-scaling-stroke; }
.manifesto-titles {
  width: min(64rem, 100%); margin: 0;
  display: grid; grid-template-columns: 1fr 1fr; align-items: baseline; gap: clamp(2rem, 7vw, 7rem);
  font: 400 clamp(1.45rem, 1.8vw, 2.15rem)/1 var(--display); letter-spacing: -.025em; text-align: center;
  transition: color .25s, transform .3s var(--ease);
}
.manifesto-titles span { display: block; }
.house-manifesto .manifesto-title-en { margin-top: 0; color: var(--muted); font-size: 1em; font-style: italic; letter-spacing: -.01em; }
.manifesto-decks { width: min(64rem, 100%); display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 7vw, 7rem); }
.manifesto-decks p { max-width: 31rem; margin: 0 auto; color: var(--muted); font: italic 400 .82rem/1.4 var(--display); text-align: center; }
.manifesto-decks p + p { color: rgba(107,105,100,.78); }
.house-manifesto em { justify-self: center; margin-top: .25rem; color: var(--gold); font-size: .45rem; font-style: normal; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; }
.house-manifesto:hover .manifesto-titles, .house-manifesto:focus-visible .manifesto-titles { color: var(--gold); transform: translateX(.22rem); }
.house-manifesto:focus-visible { outline: 1px solid var(--gold); outline-offset: .35rem; }
.house-dispatch { margin-top: clamp(.65rem, 1.2vh, 1rem); border-top: 1px solid var(--line); }
.dispatch-emblem .bowl-gold-seam { fill: rgba(154,120,52,.08); }
.copyright-line {
  align-self: flex-end; max-width: 68rem; margin: auto 0 0; color: rgba(107,105,100,.82);
  font-size: .42rem; font-weight: 500; letter-spacing: .09em; line-height: 1.55; text-align: right; text-transform: uppercase;
}
.home-authorship {
  min-height: 0; display: grid; grid-template-columns: 1fr 1fr;
  border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--paper);
}
.home-authorship-titleblock {
  display: flex; flex-direction: column; justify-content: center; min-width: 0;
  padding: clamp(1.8rem, 2.7vw, 2.7rem) 4.5vw; border-right: 1px solid var(--line);
}
.home-authorship-titleblock h2 {
  max-width: 42rem; margin: .75rem 0 0;
  font: 400 clamp(1.65rem, 2.25vw, 2.65rem)/1 var(--display); letter-spacing: -.025em;
}
.home-authorship-titleblock h2 span, .home-authorship-titleblock h2 em { display: inline; }
.home-authorship-titleblock h2 em { color: #9a7834; font-weight: 400; }
.home-authorship-deck {
  max-width: 34rem; margin: 0; color: var(--muted);
  font: italic 400 clamp(.92rem, 1.15vw, 1.08rem)/1.35 var(--display);
}
.home-authorship-thesis {
  display: flex; flex-direction: column; justify-content: center; gap: .9rem;
  min-width: 0; padding: clamp(1.8rem, 2.7vw, 2.7rem) 4.5vw;
}
.home-authorship-thesis > span {
  color: var(--gold); font-size: .52rem; font-weight: 600; letter-spacing: .17em; text-transform: uppercase;
}
.home-authorship-thesis blockquote {
  margin: 0; font: 400 clamp(1.65rem, 2.45vw, 2.75rem)/.95 var(--display); letter-spacing: -.035em;
}
.home-authorship-thesis > p {
  max-width: 32rem; margin: 0; color: var(--muted); font: italic 400 clamp(1rem, 1.25vw, 1.35rem)/1.25 var(--display);
}
.home-authorship-thesis nav { display: flex; flex-wrap: wrap; gap: .8rem 1.75rem; }
.home-authorship-thesis a {
  padding-bottom: .38rem; border-bottom: 1px solid var(--gold); color: var(--ink);
  font-size: .5rem; font-weight: 600; letter-spacing: .15em; text-decoration: none; text-transform: uppercase;
}
.home-authorship-thesis a:hover, .home-authorship-thesis a:focus-visible { color: #9a7834; }
.home-ccc {
  min-height: 0; display: grid; grid-template-columns: 1fr 1fr;
  border-bottom: 1px solid var(--line); background: var(--cream);
}
.home-ccc-titleblock {
  display: flex; flex-direction: column; justify-content: center; min-width: 0;
  padding: clamp(1.8rem, 2.7vw, 2.7rem) 4.5vw; border-right: 1px solid var(--line);
}
.home-ccc-titleblock h2 {
  max-width: 42rem; margin: .75rem 0 0;
  font: 400 clamp(1.65rem, 2.25vw, 2.65rem)/.92 var(--display); letter-spacing: -.025em;
}
.home-ccc-titleblock h2 em { color: #9a7834; font-weight: 400; }
.home-ccc-titleblock > p:last-child {
  max-width: 34rem; margin: 0; color: var(--muted);
  font: italic 400 clamp(.92rem, 1.15vw, 1.08rem)/1.35 var(--display);
}
.home-ccc-position {
  display: flex; flex-direction: column; justify-content: center; gap: .9rem;
  min-width: 0; padding: clamp(1.8rem, 2.7vw, 2.7rem) 4.5vw;
}
.home-ccc-position > span {
  color: var(--gold); font-size: .52rem; font-weight: 600; letter-spacing: .17em; text-transform: uppercase;
}
.home-ccc-position blockquote {
  margin: 0; font: 400 clamp(1.65rem, 2.45vw, 2.75rem)/.95 var(--display); letter-spacing: -.035em;
}
.home-ccc-position > p {
  max-width: 34rem; margin: 0; color: var(--muted); font: italic 400 clamp(1rem, 1.25vw, 1.35rem)/1.25 var(--display);
}
.home-ccc-benchmark {
  display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .18rem 1.5rem; width: min(100%, 35rem);
  padding: .85rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
  color: var(--ink); text-decoration: none;
}
.home-ccc-benchmark span {
  grid-column: 1; color: var(--gold); font-size: .44rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase;
}
.home-ccc-benchmark strong { grid-column: 1; font: 400 clamp(.88rem, 1.05vw, 1.08rem)/1.2 var(--display); }
.home-ccc-benchmark em {
  grid-column: 2; grid-row: 1 / 3; align-self: center; color: var(--muted);
  font-size: .43rem; font-style: normal; font-weight: 600; letter-spacing: .13em; text-transform: uppercase;
}
.home-ccc-benchmark:hover strong, .home-ccc-benchmark:focus-visible strong { color: #9a7834; }
.home-ccc-position nav { display: flex; flex-wrap: wrap; gap: .8rem 1.75rem; }
.home-ccc-position nav a {
  padding-bottom: .38rem; border-bottom: 1px solid var(--gold); color: var(--ink);
  font-size: .5rem; font-weight: 600; letter-spacing: .15em; text-decoration: none; text-transform: uppercase;
}
.home-ccc-position nav a:hover, .home-ccc-position nav a:focus-visible { color: #9a7834; }
.home-frontier-case {
  display: grid; grid-template-columns: minmax(11rem,.2fr) minmax(0,.8fr);
  border-bottom: 1px solid var(--line); background: var(--cream); color: var(--ink);
}
.home-frontier-index {
  display: flex; flex-direction: column; justify-content: center; gap: .75rem;
  min-height: 0; padding: 1.65rem 3vw; border-right: 1px solid var(--line);
}
.home-frontier-index > span { color: var(--gold); font-size: .46rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.home-frontier-index > strong { font: 400 clamp(1.15rem,1.45vw,1.45rem)/1 var(--display); color: var(--ink); }
.home-frontier-copy {
  display: grid; grid-template-columns: minmax(0,1fr) auto;
  grid-template-areas: "eyebrow nav" "title nav";
  align-items: center; gap: .45rem 3rem; padding: 1.65rem 5vw;
}
.home-frontier-copy .eyebrow { grid-area: eyebrow; margin: 0; color: var(--gold); }
.home-frontier-copy h2 { grid-area: title; margin: 0; font: 400 clamp(1.35rem,1.75vw,1.85rem)/1 var(--display); letter-spacing: -.025em; }
.home-frontier-copy h2 em { color: #9a7834; font-weight: 400; }
.home-frontier-copy nav { grid-area: nav; display: flex; align-items: center; }
.home-frontier-copy nav a { padding-bottom: .38rem; border-bottom: 1px solid var(--gold); color: var(--ink); font-size: .48rem; font-weight: 600; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }
.atlas-stage {
  position: relative; width: 100%; height: 100%; display: grid; grid-template-rows: minmax(0, 1fr);
  align-self: stretch; justify-self: stretch; margin: 0; padding: .75rem 0 .55rem;
}
.atlas-actions { align-self: end; display: flex; flex-wrap: wrap; justify-content: flex-start; gap: .7rem 1.4rem; min-width: 0; }
.atlas-actions a,
.atlas-actions button {
  position: relative; margin: 0; padding: .65rem 0 0; border: 0; border-top: 1px solid var(--line); background: transparent; color: var(--ink);
  font-size: .48rem; font-weight: 600; letter-spacing: .13em; line-height: 1.2;
  text-decoration: none; text-transform: uppercase;
}
.atlas-actions a span, .atlas-actions button span { margin-right: .45rem; color: var(--gold); font-size: .36rem; letter-spacing: .08em; }
.atlas-actions a:hover,
.atlas-actions a:focus-visible,
.atlas-actions button:hover,
.atlas-actions button:focus-visible { color: var(--gold); }
.chamber-grid {
  min-width: 0; width: min(58rem, 88vw); height: 100%; aspect-ratio: auto;
  align-self: stretch; justify-self: center; margin: 0;
}
.constellation { position: relative; overflow: hidden; background: var(--paper); isolation: isolate; }
.constellation::before, .constellation::after {
  content: ""; position: absolute; z-index: -1; left: 50%; top: 50%; border: 1px solid rgba(23,23,21,.08); border-radius: 50%; transform: translate(-50%,-50%);
}
.constellation::before { width: 72%; aspect-ratio: 1; }
.constellation::after { width: 42%; aspect-ratio: 1; }
.constellation-lines { position: absolute; inset: 4% 3%; width: 94%; height: 92%; overflow: visible; }
.constellation-lines path { fill: none; vector-effect: non-scaling-stroke; }
.constellation-lines .route { stroke: rgba(23,23,21,.25); stroke-width: 1; transition: stroke .35s, stroke-width .35s; }
.constellation-lines .cross-route { stroke: rgba(23,23,21,.1); stroke-width: 1; stroke-dasharray: 2 8; }
.constellation-lines .manifest-route { stroke: var(--gold); stroke-width: 1.15; stroke-dasharray: 1 7; opacity: .82; }
.constellation-lines circle { fill: var(--paper); stroke: rgba(23,23,21,.35); vector-effect: non-scaling-stroke; }
.constellation:has(.card-press:hover) .route-press,
.constellation:has(.card-licensing:hover) .route-licensing,
.constellation:has(.card-chic:hover) .route-chic,
.constellation:has(.card-academy:hover) .route-academy,
.constellation:has(.card-broadcast:hover) .route-broadcast,
.constellation:has(.card-research:hover) .route-research { stroke: var(--ink); stroke-width: 2; }
.constellation-core {
  position: absolute; left: 50%; top: 50%; width: clamp(6rem, 7.5vw, 8.2rem); aspect-ratio: 1;
  display: grid; place-items: center; border: 1px solid var(--ink); border-radius: 50%; background: var(--paper); transform: translate(-50%,-50%);
}
.constellation-core::before { content: ""; position: absolute; inset: .55rem; border: 1px solid var(--line); border-radius: 50%; }
.constellation-core span { position: relative; z-index: 2; padding: .22rem .48rem; background: var(--paper); font: 500 1rem var(--display); letter-spacing: .18em; }
.constellation-core i { position: absolute; z-index: 1; width: 1px; height: 74%; background: var(--line); transform: rotate(38deg); }
.constellation-core small { position: absolute; width: 15rem; bottom: -2rem; text-align: center; font-size: .38rem; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.chamber-node {
  position: absolute; width: clamp(6.2rem, 9vw, 9.5rem); aspect-ratio: 1.3; display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 1rem; border: 0; background: transparent; color: var(--ink); text-align: center; transform: translate(-50%,-50%);
}
.chamber-node::before {
  content: ""; position: absolute; inset: 0; z-index: -1; border: 1px solid rgba(23,23,21,.32); border-radius: 50%;
  background: rgba(236,233,226,.9); transition: background .35s, transform .45s var(--ease), border-color .35s;
}
.chamber-node::after { content: ""; position: absolute; inset: .55rem; z-index: -1; border: 1px solid rgba(23,23,21,.1); border-radius: 50%; transition: inset .45s var(--ease); }
.chamber-node:hover, .chamber-node:focus-visible { color: var(--white); outline: 0; z-index: 4; }
.chamber-node:hover::before, .chamber-node:focus-visible::before { background: var(--ink); border-color: var(--ink); transform: scale(1.08); }
.chamber-node:hover::after, .chamber-node:focus-visible::after { inset: -.45rem; border-color: rgba(23,23,21,.28); }
.card-number, .card-kicker, .chamber-node small, .chamber-node i { font-size: .4rem; font-style: normal; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.card-number { position: absolute; top: 1rem; color: var(--muted); }
.card-kicker { display: none; }
.chamber-node strong { font: 400 clamp(1.35rem, 1.85vw, 2.35rem)/.9 var(--display); letter-spacing: -.035em; }
.chamber-node small { max-width: 15ch; margin-top: .55rem; color: var(--muted); line-height: 1.45; }
.chamber-node i { position: absolute; bottom: .85rem; opacity: 0; transform: translateY(.4rem); transition: opacity .3s, transform .3s; }
.chamber-node:hover small, .chamber-node:focus-visible small, .chamber-node:hover .card-number, .chamber-node:focus-visible .card-number { color: rgba(255,255,255,.62); }
.chamber-node:hover i, .chamber-node:focus-visible i { opacity: 1; transform: none; }
.card-press { left: 17%; top: 17%; }
.card-licensing { left: 79%; top: 16%; }
.card-chic { left: 12%; top: 51%; }
.card-academy { left: 83%; top: 48%; width: clamp(7.2rem, 10vw, 10.5rem); }
.card-broadcast { left: 27%; top: 82%; }
.card-research { left: 78%; top: 82%; }
.constellation-caption { position: absolute; left: 50%; bottom: 1rem; margin: 0; transform: translateX(-50%); color: var(--muted); font: italic 400 .85rem var(--display); white-space: nowrap; }

.chamber-dialog {
  width: 100vw; max-width: none; height: 100svh; max-height: none; margin: 0; padding: 0; border: 0;
  background: var(--paper); color: var(--ink);
}
.chamber-dialog::backdrop { background: rgba(21,19,15,.56); backdrop-filter: blur(8px); }
.chamber-dialog[open] { animation: chamber-in .5s var(--ease) both; }
@keyframes chamber-in { from { opacity: 0; transform: translateY(1.5rem); } }
.chamber-close, .action-close {
  position: fixed; top: 1.75rem; right: 2rem; z-index: 20; padding: 0 0 .25rem; border: 0; border-bottom: 1px solid currentColor;
  background: transparent; font-size: .5rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
}
.chamber-shell { min-height: 100%; display: grid; grid-template-columns: 38% 62%; }
.chamber-identity {
  position: sticky; top: 0; height: 100svh; display: flex; flex-direction: column;
  padding: 5.5rem 4.5vw 2.5rem; border-right: 1px solid var(--line); background: var(--cream); overflow: hidden;
}
.dialog-number { margin: 0; color: var(--gold); font-size: .52rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.chamber-identity h2 { position: relative; z-index: 2; margin: 1rem 0 .6rem; font: 400 clamp(3.8rem, 6vw, 7rem)/.86 var(--display); letter-spacing: -.045em; }
.dialog-tagline { position: relative; z-index: 2; margin: 0; color: var(--muted); font-size: .5rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; }
.dialog-mark { width: min(22rem, 70%); aspect-ratio: 1; margin: auto; border: 1px solid rgba(95,91,84,.48); border-radius: 50%; box-shadow: inset 0 0 0 2.8rem transparent, inset 0 0 0 calc(2.8rem + 1px) rgba(95,91,84,.25); }
.dialog-mark::after { content: "HRP"; display: grid; place-items: center; width: 100%; height: 100%; color: var(--gold); font: 500 1rem var(--display); letter-spacing: .16em; }
.chamber-identity > span { padding-top: 1rem; border-top: 1px solid var(--line); font-size: .45rem; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.chamber-content { min-width: 0; height: 100svh; overflow-y: auto; scroll-behavior: smooth; background: var(--paper); }
.detail-section { padding: clamp(4.5rem, 8vh, 7rem) clamp(3rem, 7vw, 8rem); border-bottom: 1px solid var(--line); }
.detail-section:last-child { border-bottom: 0; }
.detail-lead { min-height: 72svh; display: flex; flex-direction: column; justify-content: center; }
.detail-section h3 { margin: .8rem 0 0; font: 400 clamp(3.3rem, 5.5vw, 6.5rem)/.9 var(--display); letter-spacing: -.04em; }
.detail-section h4 { max-width: 34rem; margin: 1rem 0 0; font: 400 clamp(2rem, 3.3vw, 3.6rem)/1.02 var(--display); letter-spacing: -.025em; }
.detail-section > p:not(.eyebrow) { max-width: 38rem; margin: 2rem 0 0; color: var(--muted); font: 400 1.05rem/1.75 var(--display); }
.detail-section small { display: block; max-width: 40rem; margin-top: 2rem; color: var(--muted); font-size: .55rem; line-height: 1.6; }
.line-action { margin-top: 2rem; padding: 0 0 .35rem; border: 0; border-bottom: 1px solid var(--gold); background: transparent; font-size: .52rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.registry-heading { margin-top: 2.7rem; }

.facts { margin: 2.5rem 0 0; border-top: 1px solid var(--line); }
.facts div { display: grid; grid-template-columns: 10rem 1fr; gap: 2rem; padding: 1rem 0; border-bottom: 1px solid var(--line); }
.facts dt { color: var(--muted); font-size: .5rem; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.facts dd { margin: 0; font: 400 1.15rem var(--display); }
.registry { list-style: none; margin: 2rem 0 0; padding: 0; border-top: 1px solid var(--ink); }
.registry li { display: grid; grid-template-columns: 5rem 1fr auto; gap: 1.2rem; align-items: center; padding: 1.25rem 0; border-bottom: 1px solid var(--line); }
.registry span, .registry em { font-size: .48rem; font-style: normal; letter-spacing: .12em; text-transform: uppercase; }
.registry b { font: 400 1.25rem var(--display); }
.registry em { color: var(--muted); }
.protocol { list-style: none; margin: 2rem 0 0; padding: 0; border-top: 1px solid var(--ink); }
.protocol li { display: grid; grid-template-columns: 3rem 1fr; gap: 1rem; padding: 1.1rem 0; border-bottom: 1px solid var(--line); }
.protocol li > span { color: var(--gold); font-size: .5rem; }
.protocol b { font: 400 1.25rem var(--display); }
.protocol p { margin: .25rem 0 0; color: var(--muted); font-size: .62rem; }
.price-menu { margin-top: 2rem; border-top: 1px solid var(--ink); }
.price-menu article { display: grid; grid-template-columns: 2.5rem 1fr auto; gap: .8rem 1.2rem; padding: 1.2rem 0; border-bottom: 1px solid var(--line); }
.price-menu span { color: var(--gold); font-size: .48rem; }
.price-menu h4 { margin: 0; font-size: 1.3rem; }
.price-menu strong { font-size: .65rem; letter-spacing: .08em; }
.price-menu p { grid-column: 2 / -1; margin: -.25rem 0 0; color: var(--muted); font-size: .62rem; }
.fine-print { margin-top: 2rem; border-bottom: 1px solid var(--line); }
.fine-print summary { padding: 1rem 0; cursor: pointer; font-size: .5rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.fine-print > p { max-width: 34rem; color: var(--muted); font: 400 1rem/1.7 var(--display); }
.vitality { background: var(--cream); }
.price-title { display: flex; justify-content: space-between; gap: 2rem; align-items: end; margin-top: 1rem; }
.price-title h4 { margin: 0; }
.price-title strong { color: var(--gold); font-size: .8rem; letter-spacing: .1em; }
.compact-scope { display: grid; grid-template-columns: 1fr 1fr; gap: 0; list-style: none; margin: 2rem 0 0; padding: 0; border-top: 1px solid var(--ink); }
.compact-scope li { padding: 1rem 0; border-bottom: 1px solid var(--line); font: 400 1rem var(--display); }
.compact-scope li:nth-child(odd) { padding-right: 1rem; }
.feature-release {
  display: grid; gap: .65rem; margin-top: 2.5rem; padding: 1.5rem; border: 1px solid var(--gold);
  color: inherit; text-decoration: none;
}
.opportunity-stack { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin-top: 2.5rem; }
.opportunity-stack .feature-release { min-height: 13rem; margin-top: 0; align-content: space-between; }
.opportunity-rip { background: var(--ink); color: var(--white); }
.opportunity-dcasis { border-color: rgba(154, 123, 54, .46); background: linear-gradient(135deg, var(--cream), rgba(154, 123, 54, .08)); }
.opportunity-eldercare { border-color: rgba(154, 123, 54, .55); box-shadow: inset 3px 0 0 var(--gold); background: var(--cream); }
.academy-bilingual { margin-top: 1rem; border-color: rgba(154, 123, 54, .46); background: linear-gradient(135deg, var(--cream), rgba(154, 123, 54, .08)); }
.academy-manifesto { margin-top: 2.5rem; border-color: var(--gold); box-shadow: inset 3px 0 0 var(--gold); }
.academy-manifesto + .feature-release { margin-top: 1rem; }
.academy-provocation { margin-top: 1rem; border-color: var(--ink); background: var(--ink); color: var(--white); }
.academy-provocation + .feature-release { margin-top: 1rem; }
.feature-release span, .feature-release em { color: var(--gold); font-size: .5rem; font-style: normal; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.feature-release b { max-width: 20ch; font: 400 2rem/1.03 var(--display); }
.crystal-release {
  min-height: 16rem; align-content: space-between; overflow: hidden; position: relative;
  background: var(--cream);
}
.crystal-release::after {
  content: "12:56"; position: absolute; right: -1.2rem; bottom: -2.4rem;
  color: rgba(23,23,21,.06); font: 400 8rem/.8 var(--display); letter-spacing: -.06em;
}
.crystal-release > * { position: relative; z-index: 1; }
.record-list { margin-top: 2rem; border-top: 1px solid var(--ink); }
.record-list a, .record-list button { width: 100%; display: grid; grid-template-columns: 7rem 1fr auto; gap: 1rem; align-items: center; padding: 1.3rem 0; border: 0; border-bottom: 1px solid var(--line); background: transparent; color: inherit; text-align: left; text-decoration: none; }
.record-list span, .record-list em { font-size: .48rem; font-style: normal; letter-spacing: .11em; text-transform: uppercase; }
.record-list b { font: 400 1.15rem var(--display); }
.listen { display: flex; align-items: center; gap: 1rem; margin-top: 2.5rem; padding: 0; border: 0; background: transparent; font-size: .52rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.listen span { width: 2.8rem; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid var(--ink); border-radius: 50%; }
.listen span::after { content: ""; margin-left: .18rem; border-top: .35rem solid transparent; border-bottom: .35rem solid transparent; border-left: .55rem solid currentColor; }
.broadcast-premiere { background: linear-gradient(135deg, var(--cream), rgba(154, 123, 54, .09)); }
.broadcast-premiere h4 { max-width: 18ch; }
.broadcast-premiere > p em { color: var(--ink); }
.broadcast-audio { display: block; width: min(100%, 40rem); margin-top: 2.25rem; accent-color: var(--gold); }
.broadcast-premiere .line-action { display: inline-block; color: inherit; text-decoration: none; }
.sound { display: flex; align-items: center; gap: .45rem; height: 4rem; margin-top: 1.5rem; }
.sound i { flex: 1; height: 1px; background: var(--ink); animation: sound 1s ease-in-out infinite alternate; animation-play-state: paused; }
.sound.playing i { animation-play-state: running; }
.sound i:nth-child(2n) { animation-delay: -.3s; }
.sound i:nth-child(3n) { animation-delay: -.65s; }
@keyframes sound { to { height: 80%; } }

.action-dialog { width: min(42rem, calc(100% - 2rem)); max-height: calc(100svh - 2rem); padding: 0; border: 0; background: var(--white); color: var(--ink); box-shadow: 0 3rem 9rem rgba(0,0,0,.3); }
.action-dialog::backdrop { background: rgba(21,19,15,.72); backdrop-filter: blur(10px); }
.action-dialog[open] { animation: chamber-in .35s var(--ease) both; }
.action-close { position: absolute; }
.action-content { padding: clamp(4rem, 8vw, 6.5rem); }
.action-content h2 { max-width: 12ch; margin: 1rem 0 2rem; font: 400 clamp(2.6rem, 5vw, 4.2rem)/.96 var(--display); }
.action-content > p { color: var(--muted); font: 400 1rem/1.7 var(--display); }
.contact-direct { display: flex; align-items: baseline; justify-content: space-between; gap: 1.5rem; margin-top: 1.75rem; padding: 1rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.contact-direct span { color: var(--muted); font: 400 .75rem var(--display); }
.contact-direct a { color: var(--ink); font-size: .5rem; font-weight: 600; letter-spacing: .13em; text-align: right; text-decoration: none; text-transform: uppercase; }
.contact-direct a:hover, .contact-direct a:focus-visible { color: var(--gold); }
.action-form { display: grid; gap: 1.1rem; margin-top: 2.5rem; }
.action-form label { display: grid; gap: .4rem; color: var(--muted); font-size: .5rem; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.action-form input, .action-form textarea { width: 100%; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; padding: .65rem 0; outline: 0; font: 400 1rem var(--display); }
.action-form textarea { min-height: 5.5rem; resize: vertical; }
.action-form button { justify-self: start; margin-top: 1rem; padding: 0 0 .35rem; border: 0; border-bottom: 1px solid var(--gold); background: transparent; font-size: .52rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.action-note { margin-top: 1.5rem !important; font: 400 .55rem/1.6 var(--body) !important; }

@media (max-width: 900px) {
  body { overflow: auto; }
  .site-header { height: auto; min-height: 8.5rem; grid-template-columns: 1fr; align-items: end; gap: 1.2rem; padding-block: 1.25rem; }
  .atlas-actions { grid-row: 2; flex-wrap: wrap; gap: .75rem 1.2rem; }
  .masthead-brand h1 { font-size: clamp(1.35rem, 3.6vw, 2rem); }
  .masthead-brand > .masthead-slogan { max-width: 34rem; font-size: .68rem; }
  .institution-map { height: auto; min-height: calc(100svh - 8.5rem); grid-template-columns: 1fr; grid-template-rows: auto auto; }
  .house-intro { min-height: 42svh; padding: .8rem 1.25rem 2rem; border-right: 0; border-bottom: 1px solid var(--line); }
  .house-manifesto { width: min(44rem, 100%); }
  .home-authorship { min-height: 0; grid-template-columns: 1fr; }
  .home-authorship-titleblock { padding: 2.75rem 7vw 2.25rem; border-right: 0; border-bottom: 1px solid var(--line); }
  .home-authorship-titleblock h2 { font-size: clamp(1.2rem, 3.2vw, 1.65rem); }
  .home-authorship-thesis { padding: 2.25rem 7vw 2.75rem; }
  .home-ccc { grid-template-columns: 1fr; }
  .home-ccc-titleblock { padding: 2.75rem 7vw 2.25rem; border-right: 0; border-bottom: 1px solid var(--line); }
  .home-ccc-titleblock h2 { font-size: clamp(1.2rem, 3.2vw, 1.65rem); }
  .home-ccc-position { padding: 2.25rem 7vw 2.75rem; }
  .home-frontier-case { grid-template-columns: 1fr; }
  .home-frontier-index { min-height: 0; flex-direction: row; justify-content: space-between; align-items: baseline; padding: 1.1rem 7vw; border-right: 0; border-bottom: 1px solid var(--line); }
  .home-frontier-index > strong { font-size: 1.15rem; }
  .home-frontier-copy { grid-template-columns: 1fr; grid-template-areas: "eyebrow" "title" "nav"; gap: .65rem; padding: 1.75rem 7vw 2rem; }
  .manifesto-bowl svg { width: min(13rem, 52%); }
  .manifesto-titles { font-size: clamp(1.2rem, 2.8vw, 1.65rem); }
  .atlas-stage { width: 100%; height: auto; min-height: 75svh; margin: 0; padding: 1rem 0; }
  .chamber-grid { width: 100%; height: auto; min-height: 70svh; aspect-ratio: auto; align-self: stretch; justify-self: stretch; margin: 0; }
  .constellation-core { width: 6.5rem; }
  .constellation-core small, .constellation-caption { display: none; }
  .chamber-node { width: clamp(7.2rem, 20vw, 9rem); padding: .5rem; }
  .chamber-node strong { font-size: clamp(1.45rem, 4.8vw, 2rem); }
  .card-kicker, .chamber-node small { display: none; }
  .card-number { top: .7rem; }
  .chamber-node i { bottom: .6rem; }
  .card-academy { width: clamp(8rem, 22vw, 10rem); }
  .chamber-shell { display: block; }
  .chamber-identity { position: relative; height: 43svh; min-height: 24rem; padding: 5rem 1.25rem 1.5rem; border-right: 0; border-bottom: 1px solid var(--line); }
  .chamber-identity h2 { font-size: clamp(4rem, 16vw, 6rem); }
  .dialog-mark { position: absolute; width: 12rem; right: -2rem; bottom: -2rem; opacity: .45; }
  .chamber-content { height: auto; overflow: visible; }
  .detail-section { padding: 5rem 1.25rem; }
  .detail-lead { min-height: 60svh; }
  .detail-section h3 { font-size: clamp(3.4rem, 14vw, 5.5rem); }
  .registry li { grid-template-columns: 4rem 1fr; }
  .registry em { grid-column: 2; }
  .opportunity-stack { grid-template-columns: 1fr; }
  .record-list a, .record-list button { grid-template-columns: 1fr auto; }
  .record-list b { grid-column: 1 / -1; grid-row: 2; }
}

@media (max-width: 520px) {
  .site-header { min-height: 8.5rem; gap: 1rem; padding: 1.2rem 1rem; }
  .atlas-actions { gap: .6rem 1rem; }
  .atlas-actions a, .atlas-actions button { font-size: .4rem; }
  .masthead-brand { gap: .2rem; }
  .masthead-brand h1 { max-width: 14rem; font-size: clamp(1rem, 4.5vw, 1.3rem); }
  .masthead-brand > .masthead-slogan { max-width: 15rem; font-size: .58rem; line-height: 1.25; }
  .institution-map { min-height: calc(100svh - 8.5rem); }
  .house-intro { min-height: 39svh; padding-top: .8rem; }
  .house-manifesto { grid-template-columns: 1fr; gap: .75rem; padding-block: 1.35rem; }
  .home-authorship-titleblock { padding: 2.25rem 1.25rem 1.8rem; }
  .home-authorship-titleblock h2 { margin-block: .8rem 1rem; font-size: clamp(1rem, 4vw, 1.2rem); }
  .home-authorship-thesis { gap: 1.15rem; padding: 1.9rem 1.25rem 2.4rem; }
  .home-authorship-thesis blockquote { font-size: clamp(1.85rem, 8.5vw, 2.65rem); }
  .home-ccc-titleblock { padding: 2.25rem 1.25rem 1.8rem; }
  .home-ccc-titleblock h2 { margin-block: .8rem 1rem; font-size: clamp(1rem, 4vw, 1.2rem); }
  .home-ccc-position { gap: 1.15rem; padding: 1.9rem 1.25rem 2.4rem; }
  .home-ccc-position blockquote { font-size: clamp(1.85rem, 8.5vw, 2.65rem); }
  .home-ccc-benchmark { grid-template-columns: 1fr; gap: .22rem; }
  .home-ccc-benchmark em { grid-column: 1; grid-row: auto; margin-top: .35rem; }
  .home-frontier-index { min-height: 0; padding: .9rem 1.25rem; }
  .home-frontier-index > strong { font-size: 1rem; }
  .home-frontier-copy { padding: 1.5rem 1.25rem 1.75rem; }
  .home-frontier-copy h2 { font-size: clamp(1.35rem, 6vw, 1.75rem); }
  .manifesto-bowl svg { width: min(10.5rem, 48%); }
  .manifesto-titles, .manifesto-decks { grid-template-columns: 1fr; gap: .55rem; }
  .manifesto-titles { font-size: clamp(1.1rem, 5vw, 1.35rem); }
  .manifesto-decks { gap: .25rem; }
  .manifesto-decks p { font-size: .76rem; }
  .copyright-line { max-width: 100%; font-size: .38rem; }
  .chamber-grid { min-height: 76svh; }
  .constellation-core { width: 5.4rem; }
  .constellation-core span { font-size: .75rem; }
  .chamber-node { width: clamp(6.3rem, 28vw, 7.3rem); }
  .chamber-node strong { font-size: clamp(1.25rem, 6vw, 1.7rem); }
  .card-academy { width: clamp(7rem, 31vw, 8.2rem); }
  .card-number, .chamber-node i { font-size: .34rem; }
  .facts div { grid-template-columns: 1fr; gap: .45rem; }
  .price-menu article { grid-template-columns: 2rem 1fr; }
  .price-menu strong, .price-menu p { grid-column: 2; }
  .compact-scope { grid-template-columns: 1fr; }
  .price-title { display: block; }
  .price-title strong { display: block; margin-top: 1rem; }
  .action-content { padding: 4.5rem 1.5rem 2rem; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
