.home-v2 {
  --v2-ink: #080e15;
  --v2-surface: #0d1822;
  --v2-raised: #12212c;
  --v2-line: #294452;
  --v2-text: #edf4f5;
  --v2-muted: #aabfc6;
  --v2-teal: #79d7d0;
  --v2-warm: #dba675;
  background:
    radial-gradient(circle at 82% 8%, #17313a66 0, transparent 26rem),
    linear-gradient(180deg, #080e15 0%, #0a121a 52%, #070d13 100%);
  color: var(--v2-text);
}

.home-v2::before {
  opacity: .12;
  background-size: 4rem 4rem;
}

.home-v2 h1,
.home-v2 h2,
.home-v2 h3 {
  letter-spacing: -.035em;
}

.home-v2 .story-header {
  background: #080e15e8;
}

.home-v2 .brand {
  color: var(--v2-text);
  font-size: .9rem;
  letter-spacing: .02em;
}

.home-v2 .brand span {
  margin-right: .25rem;
  color: var(--v2-teal);
  font-size: 1.1em;
}

.chapter-label {
  margin: 0 0 1rem;
  color: var(--v2-teal);
  font: 700 .68rem/1.3 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.quiet-intro {
  padding: clamp(4.5rem, 7vw, 6rem) 0 clamp(3.5rem, 6vw, 5rem);
}

.quiet-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(18rem, .72fr);
  align-items: center;
  gap: clamp(3rem, 10vw, 9rem);
}

.quiet-intro h1 {
  max-width: none;
  font-size: clamp(3rem, 5vw, 4.3rem);
  font-weight: 700;
}

.quiet-lede {
  max-width: 34rem;
  margin: 1.45rem 0 .85rem;
  color: #d6e3e6;
  font-size: clamp(1.15rem, 2vw, 1.4rem);
  line-height: 1.55;
}

.quiet-note {
  max-width: 35rem;
  color: var(--v2-muted);
  font-size: .95rem;
}

.text-link {
  display: inline-flex;
  gap: .55rem;
  margin-top: 1.5rem;
  color: var(--v2-teal);
  font-weight: 750;
  text-decoration-thickness: 1px;
}

.signal-field {
  position: relative;
  min-height: 20rem;
  overflow: hidden;
  border: 1px solid #79d7d032;
  border-radius: 50% 50% 45% 55% / 45% 48% 52% 55%;
  background:
    radial-gradient(circle at 68% 37%, #dba675 0 .35rem, transparent .42rem),
    radial-gradient(circle at 48% 52%, #79d7d0 0 .3rem, transparent .38rem),
    radial-gradient(circle at 28% 68%, #79d7d0 0 .24rem, transparent .32rem),
    radial-gradient(circle at center, #15303a 0, #0c1a23 58%, #091119 100%);
  box-shadow: inset 0 0 5rem #02070b88;
}

.signal-field::before,
.signal-field::after {
  content: "";
  position: absolute;
  border: 1px solid #79d7d03d;
  border-radius: 50%;
}

.signal-field::before { inset: 16%; }
.signal-field::after { inset: 31%; }
.signal-field i { position: absolute; height: 1px; background: linear-gradient(90deg, transparent, #79d7d07a, transparent); transform-origin: left; }
.signal-field i:nth-of-type(1) { width: 48%; left: 27%; top: 68%; transform: rotate(-23deg); }
.signal-field i:nth-of-type(2) { width: 32%; left: 48%; top: 52%; transform: rotate(-31deg); }
.signal-field i:nth-of-type(3) { width: 42%; left: 16%; top: 38%; transform: rotate(24deg); }
.signal-field b { position: absolute; width: .45rem; height: .45rem; border: 1px solid var(--v2-teal); border-radius: 50%; }
.signal-field b:nth-of-type(1) { left: 18%; top: 36%; }
.signal-field b:nth-of-type(2) { left: 74%; top: 31%; }
.signal-field b:nth-of-type(3) { left: 51%; top: 76%; }
.signal-caption { position: absolute; right: 1.5rem; bottom: 1.4rem; color: #a8c1c7; font: 600 .62rem/1.4 ui-monospace, monospace; letter-spacing: .08em; }

.story-section {
  padding: clamp(4.5rem, 7vw, 6rem) 0;
  border-top: 1px solid #79d7d01f;
  background: #08111a9e;
}

.story-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(18rem, .8fr);
  gap: 2rem 5rem;
  align-items: end;
  margin-bottom: 2.5rem;
}

.story-heading .chapter-label { grid-column: 1 / -1; margin-bottom: -.75rem; }
.story-heading h2 { max-width: 20ch; font-size: clamp(2.1rem, 3.4vw, 3rem); }
.story-heading > p:last-child { max-width: 38rem; margin: 0; color: var(--v2-muted); font-size: 1.05rem; }

.story-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.4rem;
}

.story-card {
  display: grid;
  overflow: hidden;
  border: 1px solid var(--v2-line);
  border-radius: 1rem;
  background: linear-gradient(145deg, #101d27, #0b151e);
  box-shadow: 0 1.2rem 3rem #0003;
}

.story-card-wide {
  grid-column: 1 / -1;
  grid-template-columns: minmax(17rem, .8fr) minmax(0, 1.2fr);
  min-height: 27rem;
}

.story-card-reverse .story-visual { order: 2; }
.story-card:not(.story-card-wide) { grid-template-rows: 13rem 1fr; }

.story-visual {
  position: relative;
  min-height: 18rem;
  overflow: hidden;
  isolation: isolate;
  background: #102531;
}

.story-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(145deg, transparent 20%, #050a1077 100%);
}

.story-visual span {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  z-index: 2;
  color: #d6ebed;
  font: 700 .62rem/1.2 ui-monospace, monospace;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.story-visual i { position: absolute; display: block; border: 1px solid #9ae2dd7d; }
.story-dive .story-visual { background: radial-gradient(circle at 64% 43%, #2c6770, #0a2836 54%, #07151f); }
.story-dive .story-visual i:nth-of-type(1) { width: 15rem; height: 15rem; top: calc(50% - 7.5rem); left: calc(50% - 7.5rem); border-radius: 50%; }
.story-dive .story-visual i:nth-of-type(2) { width: 11rem; height: 11rem; top: calc(50% - 5.5rem); left: calc(50% - 5.5rem); border-radius: 50%; }
.story-dive .story-visual i:nth-of-type(3) { width: 7rem; height: 1px; top: 50%; left: calc(50% - 3.5rem); transform: rotate(-34deg); box-shadow: 0 0 1.2rem #79d7d0; }
.story-fulfilment .story-visual { background: linear-gradient(155deg, #1c4a50, #0e2632); }
.story-fulfilment .story-visual i:nth-of-type(1) { width: 60%; height: 1.8rem; top: 22%; left: 12%; border-radius: .3rem; }
.story-fulfilment .story-visual i:nth-of-type(2) { width: 48%; height: 1.8rem; top: 44%; left: 31%; border-radius: .3rem; }
.story-fulfilment .story-visual i:nth-of-type(3) { width: 68%; height: 1.8rem; top: 66%; left: 18%; border-color: #dba6759c; border-radius: .3rem; }
.story-query .story-visual { background: linear-gradient(145deg, #173553, #101f37); }
.story-query .story-visual i:nth-of-type(1) { width: 74%; height: 4.6rem; top: 18%; left: 13%; border-radius: .6rem; }
.story-query .story-visual i:nth-of-type(2) { width: 54%; height: 1px; top: 47%; left: 23%; box-shadow: 0 1.15rem 0 #9ae2dd7d, 0 2.3rem 0 #dba67580; }
.story-query .story-visual i:nth-of-type(3) { width: .55rem; height: .55rem; top: 43%; left: 18%; border-radius: 50%; box-shadow: 0 1.15rem 0 #9ae2dd, 0 2.3rem 0 #dba675; }
.story-median .story-visual { background: radial-gradient(circle at 40% 45%, #334459, #162231 62%, #0b151e); }
.story-median .story-visual i:nth-of-type(1) { width: 27%; height: 44%; top: 19%; left: 14%; border-radius: .6rem; }
.story-median .story-visual i:nth-of-type(2) { width: 27%; height: 44%; top: 29%; left: 37%; border-radius: .6rem; border-color: #dba6759c; }
.story-median .story-visual i:nth-of-type(3) { width: 27%; height: 44%; top: 39%; left: 60%; border-radius: .6rem; }
.story-publish .story-visual { background: linear-gradient(145deg, #492f43, #202238); }
.story-publish .story-visual i:nth-of-type(1) { width: 8rem; height: 8rem; top: 18%; left: calc(50% - 4rem); transform: rotate(45deg); }
.story-publish .story-visual i:nth-of-type(2) { width: 56%; height: 1px; top: 50%; left: 22%; border-color: #dba6759c; }
.story-publish .story-visual i:nth-of-type(3) { width: 1px; height: 66%; top: 12%; left: 50%; border-color: #dba6759c; }
.story-journal .story-visual { background: linear-gradient(145deg, #4a3d31, #202631); }
.story-journal .story-visual i:nth-of-type(1) { width: 38%; height: 62%; top: 15%; left: 21%; border-radius: .25rem; }
.story-journal .story-visual i:nth-of-type(2) { width: 38%; height: 62%; top: 23%; left: 42%; border-radius: .25rem; border-color: #dba6759c; }
.story-journal .story-visual i:nth-of-type(3) { width: 24%; height: 1px; top: 43%; left: 49%; box-shadow: 0 1rem 0 #9ae2dd7d, 0 2rem 0 #9ae2dd7d; }
.story-journey .story-visual { background: linear-gradient(145deg, #324332, #19313a); }
.story-journey .story-visual i:nth-of-type(1) { width: 70%; height: 1px; top: 32%; left: 14%; transform: rotate(25deg); }
.story-journey .story-visual i:nth-of-type(2) { width: 70%; height: 1px; top: 66%; left: 14%; transform: rotate(-22deg); border-color: #dba6759c; }
.story-journey .story-visual i:nth-of-type(3) { width: 1.2rem; height: 1.2rem; top: calc(50% - .6rem); left: calc(50% - .6rem); border-radius: 50%; box-shadow: 0 0 1.5rem #79d7d0; }

.story-copy {
  display: flex;
  flex-direction: column;
  padding: clamp(1.5rem, 3vw, 2.5rem);
}

.story-status {
  align-self: flex-start;
  margin: 0 0 1.1rem;
  color: var(--v2-warm);
  font: 700 .63rem/1.2 ui-monospace, monospace;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.story-copy h3 {
  max-width: 22ch;
  margin-bottom: 1rem;
  font-size: clamp(1.55rem, 2.7vw, 2.3rem);
  line-height: 1.12;
}

.story-opening,
.story-turn {
  max-width: 58ch;
  color: var(--v2-muted);
}

.story-turn {
  margin: .5rem 0 1.5rem;
  padding-left: 1rem;
  border-left: 1px solid #dba6758f;
  font-size: .92rem;
}

.story-turn span {
  display: block;
  margin-bottom: .25rem;
  color: #ebc49f;
  font: 700 .65rem/1.3 ui-monospace, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.story-link {
  align-self: flex-start;
  margin-top: auto;
  color: var(--v2-teal);
  font-weight: 750;
}

.thread-section {
  padding: clamp(5rem, 9vw, 8rem) 0;
}

.thread-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: clamp(3rem, 8vw, 8rem);
  align-items: start;
}

.thread-grid h2 {
  max-width: 18ch;
  font-size: clamp(2rem, 3.5vw, 3.2rem);
}

.quiet-process {
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--v2-line);
  list-style: none;
}

.quiet-process li {
  display: grid;
  grid-template-columns: 2.5rem minmax(7rem, .6fr) 1fr;
  gap: 1rem;
  padding: 1rem .25rem;
  border-bottom: 1px solid var(--v2-line);
  align-items: baseline;
}

.quiet-process span { color: var(--v2-warm); font: 700 .65rem/1 ui-monospace, monospace; }
.quiet-process strong { font-family: ui-monospace, monospace; }
.quiet-process small { color: var(--v2-muted); font-size: .86rem; }

.boundary-note {
  padding: clamp(4rem, 7vw, 6rem) 0;
  border-block: 1px solid #79d7d022;
  background: #0c1821;
}

.boundary-note-grid {
  display: grid;
  grid-template-columns: .55fr 1.45fr;
  gap: 3rem;
}

.boundary-note h2 { max-width: 22ch; margin-bottom: 1rem; font-size: clamp(1.8rem, 3vw, 2.7rem); }
.boundary-note p:last-child { max-width: 59ch; color: var(--v2-muted); }

.colophon {
  padding: clamp(6rem, 11vw, 10rem) 0;
}

.colophon-grid {
  display: grid;
  grid-template-columns: minmax(15rem, .7fr) minmax(0, 1.3fr);
  gap: clamp(3rem, 9vw, 9rem);
  align-items: center;
}

.portrait-frame {
  position: relative;
  margin: 0;
  overflow: hidden;
  border: 1px solid #79d7d03f;
  border-radius: 48% 48% .9rem .9rem;
  background: #dfe3e4;
  box-shadow: 0 2rem 5rem #0006;
}

.portrait-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  box-shadow: inset 0 0 0 .45rem #0b151e30;
}

.portrait-frame img {
  display: block;
  width: 100%;
  height: auto;
}

.colophon-copy h2 {
  max-width: none;
  margin-bottom: .85rem;
  font-size: clamp(2.4rem, 5vw, 4.4rem);
}

.identity-line {
  margin-bottom: 1.8rem;
  color: var(--v2-warm);
  font: 700 .78rem/1.4 ui-monospace, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.identity-line span { margin: 0 .45rem; }
.colophon-copy > p:not(.chapter-label):not(.identity-line) { max-width: 55ch; color: var(--v2-muted); font-size: 1.05rem; }

.contact-link {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: .9rem;
  align-items: center;
  max-width: 31rem;
  margin-top: 2rem;
  padding: 1rem 1.15rem;
  border: 1px solid #79d7d05e;
  border-radius: .65rem;
  background: #10212a;
  color: var(--v2-text);
  text-decoration: none;
}

.contact-link span { color: var(--v2-teal); font-weight: 800; }
.contact-link b { color: var(--v2-warm); }
.contact-link:hover { border-color: var(--v2-teal); background: #132a34; }
.story-footer { background: #060b10; }

@media (max-width: 900px) {
  .quiet-intro-grid { grid-template-columns: 1fr .72fr; gap: 2.5rem; }
  .signal-field { min-height: 16rem; }
  .story-heading { grid-template-columns: 1fr; gap: 1rem; }
  .story-heading .chapter-label { grid-column: auto; margin-bottom: 0; }
  .story-card-wide { grid-template-columns: minmax(15rem, .7fr) minmax(0, 1.3fr); }
  .thread-grid { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
  .quiet-intro { padding-top: 4.5rem; }
  .quiet-intro-grid,
  .story-card-wide,
  .boundary-note-grid,
  .colophon-grid { grid-template-columns: 1fr; }
  .quiet-intro-grid { gap: 2.5rem; }
  .signal-field { min-height: 12rem; max-width: 28rem; }
  .story-grid { grid-template-columns: 1fr; }
  .story-card-wide { grid-column: auto; min-height: 0; }
  .story-card-reverse .story-visual { order: 0; }
  .story-card:not(.story-card-wide),
  .story-card-wide { grid-template-rows: 12rem 1fr; }
  .story-visual { min-height: 12rem; }
  .boundary-note-grid { gap: 1rem; }
  .portrait-frame { max-width: 28rem; }
}

@media (max-width: 440px) {
  .quiet-intro h1 { font-size: 2.7rem; }
  .signal-caption { right: 1rem; bottom: .8rem; max-width: 11rem; text-align: right; }
  .story-copy { padding: 1.35rem; }
  .story-copy h3 { font-size: 1.55rem; }
  .quiet-process li { grid-template-columns: 2rem 1fr; }
  .quiet-process small { grid-column: 2; }
  .contact-link { grid-template-columns: 1fr auto; overflow-wrap: anywhere; }
  .contact-link span { grid-column: 1 / -1; }
}
