:root {
  --black: #010304;
  --ink: #05090c;
  --graphite: #0b1116;
  --charcoal: #111a21;
  --slate: #1b2832;
  --steel: #8fb8cf;
  --steel-dim: #496b7d;
  --white: #f5f7f6;
  --soft: #dbe4e7;
  --muted: #97a7af;
  --line: rgba(245, 247, 246, .15);
  --blue-line: rgba(143, 184, 207, .5);
  --shadow: 0 36px 140px rgba(0, 0, 0, .62);
  color-scheme: dark;
}

/* Prototype 17 end-of-file cascade lock. */
.chapter-style .style-index {
  gap: clamp(14px, 1.7vw, 24px) clamp(20px, 2.8vw, 44px) !important;
}

.chapter-style .style-index > h2 {
  font-size: clamp(32px, 3.15vw, 48px) !important;
  max-width: 11.4em !important;
}

.chapter-style .style-curator {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(170px, 1.08fr) !important;
  grid-template-areas:
    "label pairing"
    "title pairing"
    "note pairing"
    "count pairing" !important;
  gap: 8px 16px !important;
  padding: clamp(18px, 1.8vw, 24px) !important;
  border-color: rgba(143, 184, 207, .28) !important;
  background:
    linear-gradient(135deg, rgba(143, 184, 207, .11), rgba(245, 247, 246, .035) 48%, rgba(4, 8, 11, .5)),
    rgba(4, 8, 11, .7) !important;
}

.chapter-style .style-curator span { grid-area: label; }
.chapter-style .style-curator b {
  grid-area: title;
  font-size: clamp(18px, 1.7vw, 25px) !important;
  line-height: 1.02 !important;
}
.chapter-style .style-curator p {
  grid-area: note;
  line-height: 1.42 !important;
}
.chapter-style .style-curator em {
  grid-area: count;
  width: fit-content !important;
  margin-top: 8px !important;
  padding: 7px 10px !important;
  border: 1px solid rgba(143, 184, 207, .28) !important;
  background: rgba(143, 184, 207, .09) !important;
  color: rgba(245, 247, 246, .78) !important;
}

.chapter-style .style-pairing {
  grid-area: pairing;
  display: grid !important;
  grid-template-columns: 1.18fr .82fr !important;
  gap: 9px !important;
  min-height: 128px !important;
  margin: 0 !important;
}

.chapter-style .style-pairing i {
  min-height: 128px !important;
  opacity: .92 !important;
  filter: saturate(.98) contrast(1.05) brightness(.88) !important;
}

.chapter-style .style-pairing i:first-child {
  min-height: 144px !important;
}

.chapter-style .style-pairing i.is-companion {
  opacity: .58 !important;
  filter: saturate(.76) contrast(1.02) brightness(.72) !important;
}

.chapter-style .style-pairing i.is-companion::after {
  content: "Add second direction";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 10px;
  padding: 7px 8px;
  background: rgba(3, 6, 8, .72);
  color: rgba(245, 247, 246, .84);
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.chapter-style .style-ledger button {
  color: rgba(245, 247, 246, .84) !important;
  opacity: .74 !important;
  filter: saturate(.88) contrast(1.03) brightness(.82) !important;
}

.chapter-style .style-ledger button:hover {
  opacity: .92 !important;
  filter: saturate(.98) contrast(1.07) brightness(.9) !important;
}

.chapter-style .style-ledger button.is-selected {
  opacity: 1 !important;
  filter: saturate(1.08) contrast(1.1) brightness(1) !important;
  box-shadow:
    inset 0 0 0 1px rgba(245, 247, 246, .86),
    inset 0 -42px 54px rgba(1, 3, 4, .34),
    0 18px 48px rgba(0, 0, 0, .34) !important;
}

.chapter-style .style-ledger button.is-muted {
  opacity: .54 !important;
  filter: saturate(.7) contrast(1) brightness(.76) !important;
}

.chapter-scope .room-chain button {
  opacity: .86 !important;
  filter: saturate(.9) contrast(1.08) brightness(.86) !important;
}

.chapter-scope .room-chain button::before {
  background: linear-gradient(180deg, rgba(1, 3, 4, .08), rgba(1, 3, 4, .44)) !important;
}

.chapter-scope .room-chain button.is-selected {
  opacity: 1 !important;
  filter: saturate(1.04) contrast(1.13) brightness(1) !important;
}

.chapter-evidence .evidence-panel h2 {
  font-size: clamp(30px, 3.15vw, 48px) !important;
  max-width: 10.5em !important;
}

.chapter-evidence .evidence-panel h3 {
  margin: 18px 0 10px !important;
}

.chapter-evidence .timing-row + h3 {
  margin-top: 20px !important;
  padding-top: 14px !important;
}

.chapter-readiness .readiness-panel h2,
.chapter-investment .investment-read h2 {
  font-size: clamp(31px, 3.25vw, 50px) !important;
  max-width: 10.8em !important;
}

.chapter-handoff .generated-cover {
  width: min(720px, 48vw) !important;
  box-shadow:
    0 38px 110px rgba(0, 0, 0, .46),
    22px 0 54px rgba(143, 184, 207, .08) !important;
}

.chapter-handoff .handoff-fields {
  width: min(42vw, 600px) !important;
  padding-left: clamp(28px, 3.2vw, 54px) !important;
}

.chapter-handoff .handoff-fields h2 {
  font-size: clamp(31px, 3.2vw, 48px) !important;
  max-width: 11.8em !important;
}

.chapter-handoff .contact-grid {
  gap: 10px !important;
  padding: 16px !important;
  border-color: rgba(143, 184, 207, .24) !important;
  background:
    linear-gradient(135deg, rgba(143, 184, 207, .075), rgba(245, 247, 246, .028)),
    rgba(245, 247, 246, .035) !important;
}

.chapter-handoff input,
.chapter-handoff textarea,
.chapter-handoff select {
  min-height: 42px !important;
  background: rgba(245, 247, 246, .065) !important;
  border-color: rgba(245, 247, 246, .16) !important;
}

@media (max-width: 1350px) {
  .chapter-style .style-curator {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "label"
      "title"
      "note"
      "pairing"
      "count" !important;
  }

  .chapter-style .style-pairing,
  .chapter-style .style-pairing i,
  .chapter-style .style-pairing i:first-child {
    min-height: 82px !important;
  }
}

@media (max-width: 820px) {
  .chapter-style .style-index > h2,
  .chapter-handoff .handoff-fields h2,
  .chapter-readiness .readiness-panel h2,
  .chapter-investment .investment-read h2,
  .chapter-evidence .evidence-panel h2 {
    font-size: clamp(25px, 7vw, 34px) !important;
  }

  .chapter-style .style-pairing {
    display: none !important;
  }

  .chapter-handoff .generated-cover {
    width: min(270px, 62vw) !important;
  }
}

* { box-sizing: border-box; }

html,
body {
  margin: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: var(--black);
  color: var(--white);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

button,
input,
textarea,
select { font: inherit; }

button {
  color: inherit;
  cursor: pointer;
}

img {
  display: block;
  max-width: 100%;
}

.session {
  position: relative;
  width: 100vw;
  height: 100dvh;
  min-height: 690px;
  overflow: hidden;
  isolation: isolate;
  background:
    linear-gradient(120deg, #010304 0%, #071116 47%, #020405 100%);
}

.session::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 12%, rgba(143, 184, 207, .12), transparent 28%),
    linear-gradient(90deg, rgba(245, 247, 246, .025) 1px, transparent 1px),
    linear-gradient(0deg, rgba(245, 247, 246, .018) 1px, transparent 1px);
  background-size: auto, 96px 96px, 96px 96px;
  opacity: .72;
}

.brand-lockup {
  position: fixed;
  left: 34px;
  top: 28px;
  z-index: 20;
  display: grid;
  gap: 2px;
  pointer-events: none;
  text-transform: uppercase;
}

.brand-lockup span {
  font-size: 13px;
  font-weight: 820;
  letter-spacing: 0;
}

.brand-lockup b {
  color: rgba(245, 247, 246, .56);
  font-size: 10px;
  font-weight: 560;
  letter-spacing: 0;
}

.stage {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
}

.chapter-track {
  height: 100%;
  display: flex;
  transition: transform .68s cubic-bezier(.2, .85, .18, 1);
  will-change: transform;
}

.chapter {
  position: relative;
  flex: 0 0 100%;
  width: 100%;
  height: 100%;
  min-width: 0;
  overflow: hidden;
  opacity: .12;
  transform: translateX(var(--chapter-drift, 0)) scale(.986);
  transition: opacity .38s ease, transform .68s cubic-bezier(.2, .85, .18, 1);
}

.chapter.is-active {
  opacity: 1;
  transform: translateX(0) scale(1);
}

.chapter img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.06) saturate(.72) contrast(1.13) brightness(.68);
}

.chapter::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .78), transparent 44%, rgba(1, 3, 4, .78)),
    linear-gradient(180deg, rgba(1, 3, 4, .64), transparent 36%, rgba(1, 3, 4, .86));
}

.opening-resolve,
.lens-field,
.site-plane,
.scope-canvas,
.aperture-stage,
.readiness-plan,
.depth-lab,
.evidence-table,
.cover-generator {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: var(--graphite);
}

.opening-script {
  position: relative;
  z-index: 4;
  width: min(920px, 80vw);
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 90px 0 110px 8vw;
  opacity: 0;
  transform: translateY(12px);
  animation: scriptResolve .7s ease 2.18s both;
  pointer-events: none;
}

.session.intro-ready .opening-script {
  pointer-events: auto;
}

.mark-sequence {
  position: absolute;
  inset: 0;
  z-index: 12;
  display: grid;
  place-items: center;
  background: #000;
  pointer-events: none;
  animation: markOut .95s ease 2.05s both;
}

.mark-sequence span {
  display: grid;
  place-items: center;
  width: 78px;
  aspect-ratio: 1;
  border: 1px solid rgba(245, 247, 246, .26);
  color: var(--white);
  font-size: 16px;
  font-weight: 640;
  animation: markIn 1.7s ease both;
}

.resolve-line {
  position: absolute;
  left: 8vw;
  right: 8vw;
  bottom: 22vh;
  z-index: 3;
  height: 1px;
  background: linear-gradient(90deg, rgba(143, 184, 207, .82), rgba(245, 247, 246, .12));
  transform-origin: left center;
  animation: lineResolve 1s ease 2.2s both;
}

.overline {
  margin: 0 0 18px;
  color: var(--steel);
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 820;
  letter-spacing: 0;
}

h1,
h2 {
  margin: 0;
  max-width: 920px;
  color: var(--white);
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
  font-weight: 620;
  letter-spacing: 0;
  line-height: .98;
}

h1 {
  font-size: clamp(56px, 7vw, 106px);
  max-width: 1000px;
}

h2 {
  font-size: clamp(38px, 4.8vw, 76px);
}

.opening-script > p:not(.overline),
.chapter-copy > p:not(.overline):not(.guidance),
.scope-type > p:not(.overline):not(.guidance),
.style-index > p:not(.overline):not(.guidance),
.investment-read > p:not(.overline):not(.guidance),
.evidence-panel > p:not(.overline):not(.guidance) {
  max-width: 660px;
  margin: 22px 0 0;
  color: rgba(245, 247, 246, .72);
  font-size: 18px;
  line-height: 1.5;
}

.process-reveal {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 7px;
  max-width: 430px;
  margin-top: 34px;
  padding-left: 22px;
  color: rgba(245, 247, 246, .7);
}

.process-reveal::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 4px;
  bottom: 4px;
  width: 1px;
  background: linear-gradient(var(--steel), rgba(245, 247, 246, .08));
}

.process-reveal span {
  position: relative;
  font-size: 12px;
  line-height: 1.22;
}

.process-reveal span::before {
  content: "";
  position: absolute;
  left: -21px;
  top: 4px;
  width: 8px;
  height: 8px;
  background: var(--steel);
}

.launch-action,
.next-control,
.back-control {
  min-height: 54px;
  border: 1px solid rgba(245, 247, 246, .2);
  border-radius: 0;
  background: rgba(245, 247, 246, .94);
  color: #020406;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 820;
  letter-spacing: 0;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease, opacity .18s ease;
}

.launch-action {
  position: relative;
  z-index: 26;
  align-self: flex-start;
  margin-top: 32px;
  padding: 0 28px;
}

.back-control {
  background: rgba(245, 247, 246, .04);
  color: rgba(245, 247, 246, .82);
}

.launch-action:hover,
.next-control:hover,
.back-control:hover {
  transform: translateY(-1px);
  border-color: rgba(143, 184, 207, .72);
}

.back-control:disabled {
  opacity: .24;
  cursor: default;
}

.nav-band {
  position: fixed;
  left: 34px;
  right: 34px;
  bottom: 28px;
  z-index: 24;
  display: grid;
  grid-template-columns: 112px 1fr 190px;
  gap: 18px;
  align-items: center;
}

.session[data-stage="0"] .nav-band {
  opacity: 0;
  pointer-events: none;
}

.chapter-count {
  display: grid;
  grid-template-columns: 40px 1fr 40px;
  gap: 12px;
  align-items: center;
  color: rgba(245, 247, 246, .7);
  font-size: 12px;
}

.chapter-count i {
  display: block;
  height: 1px;
  background: rgba(245, 247, 246, .13);
  transform-origin: left center;
}

.chapter-count i::before {
  content: "";
  display: block;
  width: calc(var(--progress, .1) * 100%);
  height: 100%;
  background: var(--steel);
  transition: width .45s ease;
}

.chapter-count em {
  justify-self: end;
  color: rgba(245, 247, 246, .44);
  font-style: normal;
}

.chapter-copy,
.scope-type,
.style-index,
.readiness-panel,
.investment-read,
.evidence-panel {
  position: relative;
  z-index: 4;
  min-width: 0;
}

.lens-copy {
  width: min(620px, 42vw);
  margin: 0 8vw 0 auto;
  padding-top: 24vh;
}

.lens-field::after,
.site-plane::after,
.scope-canvas::after,
.aperture-stage::after,
.readiness-plan::after,
.depth-lab::after,
.evidence-table::after,
.cover-generator::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .86), transparent 48%, rgba(1, 3, 4, .88)),
    linear-gradient(180deg, rgba(1, 3, 4, .62), transparent 48%, rgba(1, 3, 4, .9));
  pointer-events: none;
}

.lens-plates {
  position: absolute;
  left: 8vw;
  top: 24vh;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(5, 72px);
  gap: 12px;
}

.lens-plates i {
  height: 340px;
  border: 1px solid rgba(245, 247, 246, .18);
  background: rgba(245, 247, 246, .05);
  transform: translateY(34px);
  transition: transform .34s ease, background .34s ease, border-color .34s ease;
}

.session[data-role-set="true"] .lens-plates i {
  transform: translateY(0);
  border-color: rgba(143, 184, 207, .55);
  background: rgba(143, 184, 207, .13);
}

.decision-control button {
  position: relative;
  min-height: 48px;
  appearance: none;
  border: 1px solid rgba(245, 247, 246, .14);
  border-radius: 0;
  background: rgba(5, 9, 12, .62);
  color: rgba(245, 247, 246, .8);
  overflow: hidden;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
}

.decision-control button::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 2px;
  background: var(--steel);
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform .18s ease;
}

.decision-control button:hover {
  border-color: rgba(143, 184, 207, .54);
  background: rgba(143, 184, 207, .11);
}

.decision-control button.is-selected {
  color: #fff;
  border-color: var(--blue-line);
  background: rgba(143, 184, 207, .16);
  transform: translateY(-1px);
}

.decision-control button.is-selected::before {
  transform: scaleY(1);
}

.lens-selector {
  display: grid;
  gap: 9px;
  margin-top: 30px;
}

.lens-selector button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 18px;
  font-size: 18px;
}

.site-plane img { object-position: 56% 50%; }

.site-lines {
  position: absolute;
  inset: 9vh 5vw auto auto;
  z-index: 3;
  width: min(58vw, 820px);
  height: 60vh;
  fill: none;
  stroke: rgba(143, 184, 207, .54);
  stroke-width: 2;
  filter: drop-shadow(0 20px 45px rgba(0, 0, 0, .34));
}

.site-lines path {
  stroke-dasharray: 1400;
  stroke-dashoffset: 420;
  transition: stroke-dashoffset .5s ease;
}

.session[data-site-set="true"] .site-lines path {
  stroke-dashoffset: 0;
}

.site-readout {
  position: absolute;
  left: 8vw;
  bottom: 19vh;
  z-index: 4;
  display: grid;
  gap: 7px;
  padding-left: 18px;
  border-left: 1px solid var(--blue-line);
}

.site-readout span {
  color: rgba(245, 247, 246, .68);
  font-size: 13px;
}

.site-readout b {
  font-size: 30px;
  font-weight: 560;
}

.site-console {
  position: relative;
  z-index: 4;
  width: min(560px, 40vw);
  margin-left: 8vw;
  padding-top: 19vh;
}

.address-grid,
.statement-inputs,
.contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 26px;
}

.address-grid label:first-child,
.contact-grid .full {
  grid-column: 1 / -1;
}

label {
  display: grid;
  gap: 8px;
  color: rgba(245, 247, 246, .68);
  font-size: 12px;
}

input,
textarea,
select {
  width: 100%;
  min-height: 46px;
  border: 1px solid rgba(245, 247, 246, .15);
  border-radius: 0;
  background: rgba(5, 9, 12, .62);
  color: var(--white);
  padding: 12px 13px;
  outline: 0;
  transition: border-color .18s ease, background .18s ease;
}

textarea {
  resize: none;
  line-height: 1.4;
}

select { appearance: none; }

input:focus,
textarea:focus,
select:focus {
  border-color: rgba(143, 184, 207, .72);
  background: rgba(245, 247, 246, .08);
}

.is-invalid {
  border-color: rgba(219, 228, 231, .85);
  box-shadow: inset 0 0 0 1px rgba(219, 228, 231, .45);
}

.occupancy-switch,
.type-rail,
.timing-row {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 18px;
}

.occupancy-switch button,
.type-rail button,
.timing-row button {
  padding: 0 16px;
}

.scope-canvas {
  display: grid;
  place-items: center;
}

.scope-image-strip {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  opacity: .72;
}

.scope-image-strip img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.08) saturate(.62) brightness(.56);
}

.room-chain {
  position: relative;
  z-index: 5;
  display: flex;
  flex-wrap: nowrap;
  width: min(980px, 76vw);
  min-height: 220px;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.room-chain button {
  width: 100px;
  height: 120px;
  padding: 12px 8px;
  text-align: center;
  border-right: 0;
  transform: translateY(var(--rise, 22px));
}

.room-chain button.is-selected {
  --rise: 0;
  width: 132px;
  z-index: 2;
}

.scope-type {
  position: absolute;
  z-index: 6;
  left: 8vw;
  top: 13vh;
  width: min(640px, 44vw);
}

.style-index {
  position: absolute;
  z-index: 6;
  left: 8vw;
  top: 13vh;
  width: min(660px, 46vw);
}

.aperture-stage img {
  object-position: 66% 50%;
  transition: opacity .25s ease, filter .3s ease, transform .6s ease;
}

.material-aperture {
  position: absolute;
  right: 7vw;
  top: 17vh;
  z-index: 4;
  display: grid;
  grid-template-columns: repeat(3, 9vw);
  gap: 14px;
}

.material-aperture i {
  height: 54vh;
  border: 1px solid rgba(245, 247, 246, .16);
  background: linear-gradient(180deg, rgba(245, 247, 246, .1), rgba(143, 184, 207, .05));
  transform: scaleY(.72);
  transform-origin: bottom;
  transition: transform .34s ease, background .34s ease;
}

.session[data-style-set="true"] .material-aperture i {
  transform: scaleY(1);
  background: linear-gradient(180deg, rgba(143, 184, 207, .18), rgba(245, 247, 246, .04));
}

.style-ledger {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 24px;
}

.style-ledger button {
  min-height: 42px;
  padding: 9px 10px;
  font-size: 12px;
  text-align: left;
}

.readiness-plan img,
.depth-lab img,
.evidence-table img {
  object-position: center;
}

.plan-opacity {
  position: absolute;
  inset: 15vh 9vw 18vh 8vw;
  z-index: 4;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}

.plan-opacity span {
  border: 1px solid rgba(245, 247, 246, .13);
  background: rgba(245, 247, 246, .04);
  opacity: .24;
  transform: translateY(26px);
  transition: opacity .3s ease, transform .3s ease, border-color .3s ease;
}

.session[data-readiness-level="1"] .plan-opacity span:nth-child(-n+1),
.session[data-readiness-level="2"] .plan-opacity span:nth-child(-n+2),
.session[data-readiness-level="3"] .plan-opacity span:nth-child(-n+3),
.session[data-readiness-level="4"] .plan-opacity span:nth-child(-n+4),
.session[data-readiness-level="5"] .plan-opacity span:nth-child(-n+5) {
  opacity: 1;
  transform: translateY(0);
  border-color: var(--blue-line);
}

.readiness-plan blockquote {
  position: absolute;
  left: 8vw;
  bottom: 16vh;
  z-index: 5;
  width: min(620px, 48vw);
  margin: 0;
  color: rgba(245, 247, 246, .82);
  font-size: 26px;
  line-height: 1.18;
}

.readiness-panel {
  position: relative;
  z-index: 6;
  width: min(780px, 52vw);
  margin: 0 6vw 0 auto;
  padding-top: 11vh;
}

.readiness-scale {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin-top: 22px;
}

.readiness-scale button {
  min-height: 96px;
  padding: 13px 10px;
  text-align: left;
}

.statement-inputs {
  margin-top: 18px;
}

.depth-stack {
  position: absolute;
  left: 10vw;
  top: 16vh;
  z-index: 4;
  width: min(780px, 56vw);
  height: 58vh;
  perspective: 1000px;
}

.depth-stack i {
  position: absolute;
  inset: 0;
  border: 1px solid rgba(245, 247, 246, .14);
  background: rgba(245, 247, 246, .035);
  transform: translateZ(0) translate(0, 0) scale(.58);
  transition: transform .34s ease, border-color .34s ease, background .34s ease;
}

.depth-stack i:nth-child(2) { inset: 6% 6%; }
.depth-stack i:nth-child(3) { inset: 12% 12%; }
.depth-stack i:nth-child(4) { inset: 18% 18%; }
.depth-stack i:nth-child(5) { inset: 24% 24%; }
.depth-stack i:nth-child(6) { inset: 30% 30%; }

.session[data-depth-level="1"] .depth-stack i:nth-child(-n+1),
.session[data-depth-level="2"] .depth-stack i:nth-child(-n+2),
.session[data-depth-level="3"] .depth-stack i:nth-child(-n+3),
.session[data-depth-level="4"] .depth-stack i:nth-child(-n+4),
.session[data-depth-level="5"] .depth-stack i:nth-child(-n+5),
.session[data-depth-level="6"] .depth-stack i:nth-child(-n+6) {
  transform: translateZ(80px) translate(18px, -14px) scale(1);
  border-color: rgba(143, 184, 207, .52);
  background: rgba(143, 184, 207, .07);
}

.investment-read {
  width: min(560px, 40vw);
  margin: 0 8vw 0 auto;
  padding-top: 18vh;
}

.investment-dial {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 28px;
}

.investment-dial button {
  min-height: 74px;
  padding: 0 18px;
  font-size: 17px;
  text-align: left;
}

.evidence-pieces {
  position: absolute;
  left: 8vw;
  right: 8vw;
  bottom: 16vh;
  z-index: 5;
  display: flex;
  justify-content: center;
  gap: 14px;
}

.evidence-pieces span {
  min-width: 130px;
  padding: 18px;
  border: 1px solid rgba(245, 247, 246, .16);
  background: rgba(5, 9, 12, .66);
  color: rgba(245, 247, 246, .72);
  text-transform: uppercase;
  font-size: 11px;
  text-align: center;
  transform: translateY(24px);
  opacity: .26;
  transition: opacity .3s ease, transform .3s ease, border-color .3s ease;
}

.session[data-evidence-level="1"] .evidence-pieces span:nth-child(-n+1),
.session[data-evidence-level="2"] .evidence-pieces span:nth-child(-n+2),
.session[data-evidence-level="3"] .evidence-pieces span:nth-child(-n+3),
.session[data-evidence-level="4"] .evidence-pieces span:nth-child(-n+4),
.session[data-evidence-level="5"] .evidence-pieces span:nth-child(-n+4),
.session[data-evidence-level="6"] .evidence-pieces span:nth-child(-n+4),
.session[data-evidence-level="7"] .evidence-pieces span:nth-child(-n+4),
.session[data-evidence-level="8"] .evidence-pieces span:nth-child(-n+4) {
  opacity: 1;
  transform: translateY(0);
  border-color: var(--blue-line);
}

.evidence-panel {
  width: min(840px, 62vw);
  margin-left: 8vw;
  padding-top: 12vh;
  z-index: 6;
}

.source-tray {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 18px;
}

.source-tray button {
  min-height: 46px;
  padding: 9px 11px;
  text-align: left;
}

.inspiration-field {
  max-width: 580px;
  margin-top: 16px;
}

.cover-generator {
  display: grid;
  place-items: center start;
  padding-left: 7vw;
}

.cover-generator::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(110deg, rgba(1, 3, 4, .96), rgba(7, 17, 22, .72), rgba(1, 3, 4, .94)),
    url("guided-discovery-20-4-assets/perf/emerald-coast-hero-kitchen-v3-1440.webp") center / cover;
  filter: grayscale(.08) saturate(.68) brightness(.58);
}

.generated-cover {
  position: relative;
  z-index: 4;
  width: min(760px, 53vw);
  min-height: 70vh;
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  border: 1px solid rgba(245, 247, 246, .22);
  background:
    linear-gradient(135deg, rgba(13, 21, 26, .96), rgba(21, 31, 38, .9));
  box-shadow: var(--shadow);
  padding: 34px;
}

.cover-head span {
  display: block;
  color: var(--steel);
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 800;
}

.cover-head h2 {
  margin-top: 12px;
  font-size: clamp(34px, 4vw, 58px);
}

.cover-statement {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid rgba(245, 247, 246, .14);
  color: rgba(245, 247, 246, .8);
  font-size: 18px;
  line-height: 1.42;
}

.cover-lines {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px 22px;
  margin-top: 24px;
}

.cover-lines span {
  min-height: 52px;
  border-bottom: 1px solid rgba(245, 247, 246, .12);
  padding: 10px 0;
  color: rgba(245, 247, 246, .82);
  font-size: 13px;
  line-height: 1.28;
}

.cover-lines b {
  display: block;
  margin-bottom: 5px;
  color: rgba(143, 184, 207, .92);
  text-transform: uppercase;
  font-size: 10px;
}

.cover-next {
  padding-top: 18px;
  color: rgba(245, 247, 246, .7);
  font-size: 13px;
}

.handoff-fields {
  position: absolute;
  z-index: 6;
  right: 0;
  top: 0;
  width: min(48vw, 720px);
  height: 100%;
  padding: 10vh 6vw 110px 4vw;
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(143, 184, 207, .46) transparent;
  background: linear-gradient(90deg, rgba(5, 9, 12, .22), rgba(5, 9, 12, .96) 28%);
}

.contact-grid {
  margin-top: 24px;
}

.completion,
.guidance {
  min-height: 21px;
  margin: 14px 0 0;
  color: #dbe4e7;
  font-size: 13px;
  line-height: 1.35;
}

.completion.is-success {
  color: var(--white);
}

@keyframes markIn {
  0% { opacity: 0; transform: scale(.8); }
  45% { opacity: 1; transform: scale(1); }
  100% { opacity: 1; transform: scale(.96); }
}

@keyframes markOut {
  to { opacity: 0; visibility: hidden; }
}

@keyframes lineResolve {
  from { transform: scaleX(0); opacity: 0; }
  to { transform: scaleX(1); opacity: 1; }
}

@keyframes scriptResolve {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes attention {
  0%, 100% { transform: translateX(0); }
  32% { transform: translateX(-6px); }
  62% { transform: translateX(5px); }
}

.needs-attention {
  animation: attention .24s ease;
}

@media (max-width: 1180px) {
  .lens-copy,
  .site-console,
  .scope-type,
  .style-index,
  .investment-read {
    width: min(700px, 54vw);
  }

  .readiness-panel,
  .evidence-panel {
    width: min(820px, 72vw);
  }

  .style-ledger,
  .source-tray {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Prototype 14 final mobile closeout: Evidence and Handoff must remain usable above fixed controls. */
@media (max-width: 820px) {
  .chapter-evidence {
    grid-template-rows: 24vh 1fr;
  }

  .chapter-evidence .evidence-panel {
    padding: 16px 18px 102px;
  }

  .chapter-evidence .evidence-panel h2 {
    font-size: clamp(25px, 7vw, 32px);
    line-height: 1.02;
  }

  .chapter-evidence .evidence-panel h3 {
    margin: 14px 0 9px;
    font-size: 13px;
  }

  .chapter-evidence .timing-row,
  .chapter-evidence .source-tray {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    overflow: visible;
    margin-top: 0;
    padding: 0;
  }

  .chapter-evidence .timing-row button,
  .chapter-evidence .source-tray button {
    width: auto;
    min-height: 38px;
    padding: 7px 9px;
    font-size: 13px;
    line-height: 1.12;
  }

  .chapter-evidence .timing-row button:last-child {
    grid-column: 1 / -1;
  }

  .chapter-evidence .timing-row + h3 {
    margin-top: 14px;
    padding-top: 12px;
  }

  .chapter-evidence .inspiration-field {
    margin-top: 10px;
  }

  .chapter-evidence input {
    min-height: 40px;
  }

  .chapter-handoff {
    grid-template-rows: 25vh 1fr;
  }

  .chapter-handoff .cover-generator {
    padding: 58px 18px 0;
  }

  .chapter-handoff .generated-cover {
    width: min(270px, 62vw);
    min-height: 0;
    max-height: 20vh;
    padding: 12px 14px;
    overflow: hidden;
  }

  .chapter-handoff .cover-head span {
    font-size: 9px;
  }

  .chapter-handoff .cover-head h2 {
    margin-top: 8px;
    font-size: clamp(21px, 7vw, 30px);
    line-height: 1;
  }

  .chapter-handoff .cover-statement,
  .chapter-handoff .packet-path,
  .chapter-handoff .cover-lines,
  .chapter-handoff .cover-next {
    display: none;
  }

  .chapter-handoff .handoff-fields {
    height: 75vh;
    padding: 18px 18px 112px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .chapter-handoff .handoff-fields h2 {
    font-size: clamp(27px, 7.6vw, 36px);
    line-height: 1.04;
  }

  .chapter-handoff .handoff-note {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.35;
  }

  .chapter-handoff .contact-grid {
    margin-top: 14px;
    padding: 12px;
    gap: 8px;
  }

  .chapter-handoff .contact-grid label {
    gap: 5px;
    font-size: 12px;
  }

  .chapter-handoff input,
  .chapter-handoff textarea,
  .chapter-handoff select {
    min-height: 38px;
    padding: 8px 12px;
  }

  .chapter-handoff textarea {
    min-height: 66px;
  }
}

@media (max-width: 430px) {
  .chapter-evidence {
    grid-template-rows: 20vh 1fr;
  }

  .chapter-evidence .evidence-panel {
    padding-top: 14px;
  }

  .chapter-evidence .evidence-panel h2 {
    font-size: 28px;
  }

  .chapter-evidence .evidence-panel h3 {
    margin-top: 11px;
  }

  .chapter-evidence .timing-row button,
  .chapter-evidence .source-tray button {
    min-height: 35px;
    font-size: 12px;
  }

  .chapter-handoff {
    grid-template-rows: 16vh 1fr;
  }

  .chapter-handoff .cover-generator {
    padding-top: 48px;
  }

  .chapter-handoff .generated-cover {
    width: min(230px, 58vw);
    max-height: 12vh;
    padding: 9px 11px;
  }

  .chapter-handoff .cover-head h2 {
    font-size: 22px;
  }

  .chapter-handoff .handoff-fields {
    height: 84vh;
    padding-top: 14px;
  }

  .chapter-handoff .handoff-fields h2 {
    font-size: 28px;
  }

  .chapter-handoff .handoff-note {
    font-size: 12px;
  }

  .chapter-handoff .contact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 8px;
    padding: 10px;
  }

  .chapter-handoff .contact-grid .full {
    grid-column: 1 / -1;
  }

  .chapter-handoff .contact-grid label {
    font-size: 11px;
  }

  .chapter-handoff input,
  .chapter-handoff textarea,
  .chapter-handoff select {
    min-height: 34px;
    padding: 7px 10px;
    font-size: 12px;
  }

  .chapter-handoff textarea {
    min-height: 50px;
  }
}

@media (min-width: 760px) and (max-height: 850px) {
  .opening-script {
    justify-content: flex-start;
    padding-top: 120px;
    padding-bottom: 160px;
  }

  .chapter-opening h1 {
    max-width: 900px;
    font-size: clamp(48px, 6vw, 82px);
  }

  .process-reveal {
    margin-top: 24px;
  }

  .launch-action {
    margin-top: 24px;
  }
}

@media (max-width: 820px) {
  .session {
    min-height: 620px;
  }

  .brand-lockup {
    left: 18px;
    top: 16px;
  }

  .chapter {
    display: grid;
    grid-template-rows: 37vh 1fr;
  }

  .opening-resolve,
  .lens-field,
  .site-plane,
  .scope-canvas,
  .aperture-stage,
  .readiness-plan,
  .depth-lab,
  .evidence-table,
  .cover-generator {
    position: relative;
    inset: auto;
    min-width: 0;
    height: 100%;
  }

  .opening-script,
  .lens-copy,
  .site-console,
  .scope-type,
  .style-index,
  .readiness-panel,
  .investment-read,
  .evidence-panel,
  .handoff-fields {
    position: relative;
    inset: auto;
    width: 100vw;
    max-width: none;
    min-width: 0;
    height: auto;
    margin: 0;
    padding: 22px 18px 88px;
    background: linear-gradient(180deg, rgba(5, 9, 12, .96), rgba(5, 9, 12, 1));
    overflow: hidden;
  }

  .chapter-opening .opening-script {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    min-height: 65vh;
  }

  h1 { font-size: 42px; }
  h2 { font-size: 32px; max-width: 100%; }

  .opening-script > p:not(.overline),
  .chapter-copy > p:not(.overline):not(.guidance),
  .scope-type > p:not(.overline):not(.guidance),
  .style-index > p:not(.overline):not(.guidance),
  .investment-read > p:not(.overline):not(.guidance),
  .evidence-panel > p:not(.overline):not(.guidance) {
    margin-top: 13px;
    font-size: 14px;
    line-height: 1.42;
  }

  .process-reveal {
    max-height: 132px;
    gap: 4px;
    margin-top: 16px;
  }

  .process-reveal span {
    font-size: 11px;
  }

  .launch-action {
    margin-top: 16px;
  }

  .lens-plates,
  .site-readout,
  .site-lines,
  .material-aperture,
  .plan-opacity,
  .depth-stack,
  .evidence-pieces,
  .resolve-line {
    display: none;
  }

  .lens-selector,
  .occupancy-switch,
  .type-rail,
  .room-chain,
  .style-ledger,
  .readiness-scale,
  .investment-dial,
  .timing-row,
  .source-tray {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 9px;
    max-width: 100%;
    margin-top: 18px;
    padding-bottom: 4px;
    scrollbar-width: none;
  }

  .lens-selector::-webkit-scrollbar,
  .occupancy-switch::-webkit-scrollbar,
  .type-rail::-webkit-scrollbar,
  .room-chain::-webkit-scrollbar,
  .style-ledger::-webkit-scrollbar,
  .readiness-scale::-webkit-scrollbar,
  .investment-dial::-webkit-scrollbar,
  .timing-row::-webkit-scrollbar,
  .source-tray::-webkit-scrollbar {
    display: none;
  }

  .decision-control button,
  .room-chain button,
  .style-ledger button,
  .source-tray button,
  .readiness-scale button,
  .investment-dial button {
    flex: 0 0 auto;
    width: min(250px, 76vw);
    min-height: 54px;
    white-space: normal;
  }

  .room-chain {
    position: relative;
    z-index: 7;
    width: 100vw;
    min-height: auto;
    justify-content: flex-start;
    padding: 0 18px;
  }

  .scope-canvas {
    place-items: end start;
    padding-bottom: 18px;
  }

  .scope-image-strip {
    opacity: .82;
  }

  .address-grid,
  .statement-inputs,
  .contact-grid {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 16px;
  }

  input,
  textarea,
  select {
    min-height: 46px;
  }

  textarea {
    min-height: 78px;
  }

  .readiness-plan blockquote {
    left: 18px;
    right: 18px;
    bottom: 18px;
    width: auto;
    font-size: 19px;
  }

  .cover-generator {
    display: block;
    padding: 54px 14px 0;
  }

  .generated-cover {
    width: 100%;
    min-height: 32vh;
    max-height: 36vh;
    padding: 18px;
    overflow: hidden;
  }

  .cover-head h2 {
    font-size: 28px;
  }

  .cover-statement {
    margin-top: 10px;
    padding-top: 10px;
    font-size: 13px;
  }

  .cover-lines {
    grid-template-columns: 1fr;
    max-height: 125px;
    overflow: auto;
    margin-top: 10px;
  }

  .cover-lines span {
    min-height: 38px;
    padding: 8px 0;
    font-size: 12px;
  }

  .cover-next {
    display: none;
  }

  .handoff-fields {
    overflow: auto;
    padding-bottom: 96px;
  }

  .nav-band {
    left: 14px;
    right: 14px;
    bottom: 14px;
    grid-template-columns: 84px 1fr 142px;
    gap: 10px;
  }

  .back-control,
  .next-control {
    min-height: 50px;
    font-size: 11px;
  }

  .chapter-count {
    grid-template-columns: 24px 1fr 24px;
    gap: 7px;
  }
}

@media (max-width: 430px) {
  .session {
    min-height: 600px;
  }

  .chapter {
    grid-template-rows: 34vh 1fr;
  }

  .chapter-opening .opening-script {
    min-height: 68vh;
  }

  h1 { font-size: 38px; }
  h2 { font-size: 30px; }

  .overline {
    margin-bottom: 10px;
  }

  .opening-script,
  .lens-copy,
  .site-console,
  .scope-type,
  .style-index,
  .readiness-panel,
  .investment-read,
  .evidence-panel,
  .handoff-fields {
    padding-top: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .001ms;
    animation-iteration-count: 1;
    scroll-behavior: auto;
    transition-duration: .001ms;
  }
}

/* Prototype 14 mobile closeout: keep dense handoff decisions usable above the fixed controls. */
@media (max-width: 820px) {
  .chapter-evidence {
    grid-template-rows: 24vh 1fr;
  }

  .chapter-evidence .evidence-panel {
    padding: 16px 18px 102px;
  }

  .chapter-evidence .evidence-panel h2 {
    font-size: clamp(25px, 7vw, 32px);
    line-height: 1.02;
  }

  .chapter-evidence .evidence-panel h3 {
    margin: 14px 0 9px;
    font-size: 13px;
  }

  .chapter-evidence .timing-row,
  .chapter-evidence .source-tray {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    overflow: visible;
    margin-top: 0;
    padding: 0;
  }

  .chapter-evidence .timing-row button,
  .chapter-evidence .source-tray button {
    width: auto;
    min-height: 38px;
    padding: 7px 9px;
    font-size: 13px;
    line-height: 1.12;
  }

  .chapter-evidence .timing-row button:last-child {
    grid-column: 1 / -1;
  }

  .chapter-evidence .timing-row + h3 {
    margin-top: 14px;
    padding-top: 12px;
  }

  .chapter-evidence .inspiration-field {
    margin-top: 10px;
  }

  .chapter-evidence input {
    min-height: 40px;
  }

  .chapter-handoff {
    grid-template-rows: 25vh 1fr;
  }

  .chapter-handoff .cover-generator {
    padding: 58px 18px 0;
  }

  .chapter-handoff .generated-cover {
    width: min(270px, 62vw);
    min-height: 0;
    max-height: 20vh;
    padding: 12px 14px;
    overflow: hidden;
  }

  .chapter-handoff .cover-head span {
    font-size: 9px;
  }

  .chapter-handoff .cover-head h2 {
    margin-top: 8px;
    font-size: clamp(21px, 7vw, 30px);
    line-height: 1;
  }

  .chapter-handoff .cover-statement,
  .chapter-handoff .packet-path,
  .chapter-handoff .cover-lines,
  .chapter-handoff .cover-next {
    display: none;
  }

  .chapter-handoff .handoff-fields {
    height: 75vh;
    padding: 18px 18px 112px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .chapter-handoff .handoff-fields h2 {
    font-size: clamp(27px, 7.6vw, 36px);
    line-height: 1.04;
  }

  .chapter-handoff .handoff-note {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.35;
  }

  .chapter-handoff .contact-grid {
    margin-top: 14px;
    padding: 12px;
    gap: 8px;
  }

  .chapter-handoff .contact-grid label {
    gap: 5px;
    font-size: 12px;
  }

  .chapter-handoff input,
  .chapter-handoff textarea,
  .chapter-handoff select {
    min-height: 38px;
    padding: 8px 12px;
  }

  .chapter-handoff textarea {
    min-height: 66px;
  }
}

@media (max-width: 430px) {
  .chapter-evidence {
    grid-template-rows: 20vh 1fr;
  }

  .chapter-evidence .evidence-panel {
    padding-top: 14px;
  }

  .chapter-evidence .evidence-panel h2 {
    font-size: 28px;
  }

  .chapter-evidence .evidence-panel h3 {
    margin-top: 11px;
  }

  .chapter-evidence .timing-row button,
  .chapter-evidence .source-tray button {
    min-height: 35px;
    font-size: 12px;
  }

  .chapter-handoff {
    grid-template-rows: 22vh 1fr;
  }

  .chapter-handoff .generated-cover {
    max-height: 17vh;
  }
}

/* Prototype 17 cascade lock: final curated surface after all inherited prototype layers. */
.chapter-style .style-index {
  gap: clamp(14px, 1.7vw, 24px) clamp(20px, 2.8vw, 44px) !important;
}

.chapter-style .style-index > h2 {
  font-size: clamp(32px, 3.15vw, 48px) !important;
  max-width: 11.4em !important;
}

.chapter-style .style-curator {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(170px, 1.08fr) !important;
  grid-template-areas:
    "label pairing"
    "title pairing"
    "note pairing"
    "count pairing" !important;
  gap: 8px 16px !important;
  padding: clamp(18px, 1.8vw, 24px) !important;
  border-color: rgba(143, 184, 207, .28) !important;
  background:
    linear-gradient(135deg, rgba(143, 184, 207, .11), rgba(245, 247, 246, .035) 48%, rgba(4, 8, 11, .5)),
    rgba(4, 8, 11, .7) !important;
}

.chapter-style .style-curator span { grid-area: label; }
.chapter-style .style-curator b {
  grid-area: title;
  font-size: clamp(18px, 1.7vw, 25px) !important;
  line-height: 1.02 !important;
}
.chapter-style .style-curator p {
  grid-area: note;
  margin-top: 3px !important;
  padding-right: 4px !important;
  line-height: 1.42 !important;
}
.chapter-style .style-curator em {
  grid-area: count;
  width: fit-content !important;
  margin-top: 8px !important;
  padding: 7px 10px !important;
  border: 1px solid rgba(143, 184, 207, .28) !important;
  background: rgba(143, 184, 207, .09) !important;
  color: rgba(245, 247, 246, .78) !important;
}

.chapter-style .style-pairing {
  grid-area: pairing;
  display: grid !important;
  grid-template-columns: 1.18fr .82fr !important;
  gap: 9px !important;
  min-height: 128px !important;
  margin: 0 !important;
}

.chapter-style .style-pairing i {
  min-height: 128px !important;
  opacity: .92 !important;
  filter: saturate(.98) contrast(1.05) brightness(.88) !important;
}

.chapter-style .style-pairing i:first-child {
  min-height: 144px !important;
}

.chapter-style .style-pairing i.is-companion {
  opacity: .58 !important;
  filter: saturate(.76) contrast(1.02) brightness(.72) !important;
}

.chapter-style .style-pairing i.is-companion::after {
  content: "Add second direction";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 10px;
  padding: 7px 8px;
  background: rgba(3, 6, 8, .72);
  color: rgba(245, 247, 246, .84);
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.chapter-style .style-ledger button {
  color: rgba(245, 247, 246, .84) !important;
  opacity: .74 !important;
  filter: saturate(.88) contrast(1.03) brightness(.82) !important;
}

.chapter-style .style-ledger button:hover {
  opacity: .92 !important;
  filter: saturate(.98) contrast(1.07) brightness(.9) !important;
}

.chapter-style .style-ledger button.is-selected {
  opacity: 1 !important;
  filter: saturate(1.08) contrast(1.1) brightness(1) !important;
  box-shadow:
    inset 0 0 0 1px rgba(245, 247, 246, .86),
    inset 0 -42px 54px rgba(1, 3, 4, .34),
    0 18px 48px rgba(0, 0, 0, .34) !important;
}

.chapter-style .style-ledger button.is-muted {
  opacity: .54 !important;
  filter: saturate(.7) contrast(1) brightness(.76) !important;
}

.chapter-scope .room-chain button {
  opacity: .86 !important;
  filter: saturate(.9) contrast(1.08) brightness(.86) !important;
}

.chapter-scope .room-chain button::before {
  background: linear-gradient(180deg, rgba(1, 3, 4, .08), rgba(1, 3, 4, .44)) !important;
}

.chapter-scope .room-chain button.is-selected {
  opacity: 1 !important;
  filter: saturate(1.04) contrast(1.13) brightness(1) !important;
}

.chapter-evidence .evidence-panel {
  align-self: center !important;
}

.chapter-evidence .evidence-panel h2 {
  font-size: clamp(30px, 3.15vw, 48px) !important;
  max-width: 10.5em !important;
}

.chapter-evidence .evidence-panel h3 {
  margin: 18px 0 10px !important;
}

.chapter-evidence .timing-row + h3 {
  margin-top: 20px !important;
  padding-top: 14px !important;
}

.chapter-readiness .readiness-panel h2,
.chapter-investment .investment-read h2 {
  font-size: clamp(31px, 3.25vw, 50px) !important;
  max-width: 10.8em !important;
}

.chapter-handoff .generated-cover {
  width: min(720px, 48vw) !important;
  box-shadow:
    0 38px 110px rgba(0, 0, 0, .46),
    22px 0 54px rgba(143, 184, 207, .08) !important;
}

.chapter-handoff .generated-cover::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -36px;
  width: 72px;
  height: 1px;
  background: linear-gradient(90deg, rgba(73, 107, 125, .62), rgba(73, 107, 125, 0));
}

.chapter-handoff .handoff-fields {
  width: min(42vw, 600px) !important;
  padding-left: clamp(28px, 3.2vw, 54px) !important;
}

.chapter-handoff .handoff-fields h2 {
  font-size: clamp(31px, 3.2vw, 48px) !important;
  max-width: 11.8em !important;
}

.chapter-handoff .contact-grid {
  gap: 10px !important;
  padding: 16px !important;
  border-color: rgba(143, 184, 207, .24) !important;
  background:
    linear-gradient(135deg, rgba(143, 184, 207, .075), rgba(245, 247, 246, .028)),
    rgba(245, 247, 246, .035) !important;
}

.chapter-handoff input,
.chapter-handoff textarea,
.chapter-handoff select {
  min-height: 42px !important;
  background: rgba(245, 247, 246, .065) !important;
  border-color: rgba(245, 247, 246, .16) !important;
}

@media (max-width: 1350px) {
  .chapter-style .style-curator {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "label"
      "title"
      "note"
      "pairing"
      "count" !important;
  }

  .chapter-style .style-pairing,
  .chapter-style .style-pairing i,
  .chapter-style .style-pairing i:first-child {
    min-height: 82px !important;
  }
}

@media (max-width: 1024px) {
  .chapter-handoff .generated-cover::after {
    content: none !important;
  }
}

@media (max-width: 820px) {
  .chapter-style .style-index > h2,
  .chapter-handoff .handoff-fields h2,
  .chapter-readiness .readiness-panel h2,
  .chapter-investment .investment-read h2,
  .chapter-evidence .evidence-panel h2 {
    font-size: clamp(25px, 7vw, 34px) !important;
  }

  .chapter-style .style-pairing {
    display: none !important;
  }

  .chapter-handoff .generated-cover {
    width: min(270px, 62vw) !important;
  }
}

/* Prototype 17 final curation layer: restrained polish over the approved P16 architecture. */
:root {
  --p17-edge: rgba(245, 247, 246, .16);
  --p17-edge-strong: rgba(143, 184, 207, .58);
  --p17-panel: rgba(6, 10, 13, .72);
  --p17-panel-soft: rgba(245, 247, 246, .055);
}

/* Pass 1: Style Studio curation. */
.chapter-style .style-index {
  align-content: center;
  gap: clamp(14px, 1.7vw, 24px) clamp(20px, 2.8vw, 44px);
}

.chapter-style .style-index > h2 {
  font-size: clamp(32px, 3.15vw, 48px);
  max-width: 11.4em;
}

.chapter-style .style-index > p:not(.guidance) {
  max-width: 36rem;
  line-height: 1.42;
}

.chapter-style .style-curator {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(170px, 1.08fr);
  grid-template-areas:
    "label pairing"
    "title pairing"
    "note pairing"
    "count pairing";
  gap: 8px 16px;
  padding: clamp(18px, 1.8vw, 24px);
  border-color: rgba(143, 184, 207, .28);
  background:
    linear-gradient(135deg, rgba(143, 184, 207, .11), rgba(245, 247, 246, .035) 48%, rgba(4, 8, 11, .5)),
    rgba(4, 8, 11, .7);
  box-shadow:
    inset 0 0 0 1px rgba(245, 247, 246, .045),
    0 22px 64px rgba(0, 0, 0, .28);
}

.chapter-style .style-curator::before {
  content: "";
  position: absolute;
  inset: 10px;
  pointer-events: none;
  border: 1px solid rgba(245, 247, 246, .07);
}

.chapter-style .style-curator span {
  grid-area: label;
}

.chapter-style .style-curator b {
  grid-area: title;
  font-size: clamp(18px, 1.7vw, 25px);
  line-height: 1.02;
}

.chapter-style .style-curator p {
  grid-area: note;
  max-width: 27rem;
  margin-top: 3px;
  padding-right: 4px;
  line-height: 1.42;
}

.chapter-style .style-curator em {
  grid-area: count;
  display: inline-flex;
  width: fit-content;
  margin-top: 8px;
  padding: 7px 10px;
  border: 1px solid rgba(143, 184, 207, .28);
  background: rgba(143, 184, 207, .09);
  color: rgba(245, 247, 246, .78);
  font-style: normal;
}

.chapter-style .style-pairing {
  grid-area: pairing;
  display: grid;
  grid-template-columns: 1.18fr .82fr;
  gap: 9px;
  min-height: 128px;
  margin: 0;
}

.chapter-style .style-pairing i {
  min-height: 128px;
  border-color: rgba(245, 247, 246, .18);
  background:
    linear-gradient(180deg, rgba(1, 3, 4, .02), rgba(1, 3, 4, .34)),
    var(--pair-image, url("guided-discovery-20-4-assets/style-transitional-kitchen-3.jpg")) center / cover;
  filter: saturate(.98) contrast(1.05) brightness(.88);
  opacity: .92;
}

.chapter-style .style-pairing i:first-child {
  min-height: 144px;
}

.chapter-style .style-pairing i.is-companion {
  opacity: .58;
  filter: saturate(.76) contrast(1.02) brightness(.72);
}

.chapter-style .style-pairing i.is-companion::after {
  content: "Add second direction";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 10px;
  padding: 7px 8px;
  background: rgba(3, 6, 8, .7);
  color: rgba(245, 247, 246, .82);
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.chapter-style .style-pairing i.is-empty {
  opacity: .34;
}

.chapter-style .style-ledger {
  gap: clamp(8px, .8vw, 12px);
}

.chapter-style .style-ledger button {
  border-color: rgba(245, 247, 246, .13);
  color: rgba(245, 247, 246, .84);
  filter: saturate(.88) contrast(1.03) brightness(.82);
  opacity: .74;
}

.chapter-style .style-ledger button::before {
  background: linear-gradient(180deg, rgba(2, 5, 7, .08), rgba(2, 5, 7, .58));
}

.chapter-style .style-ledger button:hover {
  opacity: .92;
  filter: saturate(.98) contrast(1.07) brightness(.9);
}

.chapter-style .style-ledger button.is-selected {
  z-index: 4;
  opacity: 1;
  filter: saturate(1.08) contrast(1.1) brightness(1);
  box-shadow:
    inset 0 0 0 1px rgba(245, 247, 246, .86),
    inset 0 -42px 54px rgba(1, 3, 4, .34),
    0 18px 48px rgba(0, 0, 0, .34);
}

.chapter-style .style-ledger button.is-muted {
  opacity: .54;
  filter: saturate(.7) contrast(1) brightness(.76);
}

.chapter-style .style-ledger button.is-muted:hover {
  opacity: .78;
}

.chapter-style .guidance {
  padding-top: 8px;
  line-height: 1.4;
}

/* Pass 2: Final Handoff integration. */
.chapter-handoff .cover-generator {
  padding-right: 44vw;
}

.chapter-handoff .generated-cover {
  width: min(720px, 48vw);
  box-shadow:
    0 38px 110px rgba(0, 0, 0, .46),
    22px 0 54px rgba(143, 184, 207, .08);
}

.chapter-handoff .generated-cover::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -36px;
  width: 72px;
  height: 1px;
  background: linear-gradient(90deg, rgba(73, 107, 125, .62), rgba(73, 107, 125, 0));
}

.chapter-handoff .handoff-fields {
  width: min(42vw, 600px);
  padding-left: clamp(28px, 3.2vw, 54px);
}

.chapter-handoff .handoff-fields h2 {
  font-size: clamp(31px, 3.2vw, 48px);
  max-width: 11.8em;
}

.chapter-handoff .handoff-note {
  max-width: 35rem;
}

.chapter-handoff .handoff-bridge {
  margin-top: 20px;
  margin-bottom: 12px;
}

.chapter-handoff .contact-grid {
  position: relative;
  gap: 10px;
  padding: 16px;
  border-color: rgba(143, 184, 207, .24);
  background:
    linear-gradient(135deg, rgba(143, 184, 207, .075), rgba(245, 247, 246, .028)),
    rgba(245, 247, 246, .035);
}

.chapter-handoff .contact-grid::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: -18px;
  height: 1px;
  background: linear-gradient(90deg, rgba(143, 184, 207, .54), rgba(143, 184, 207, 0));
}

.chapter-handoff input,
.chapter-handoff textarea,
.chapter-handoff select {
  min-height: 42px;
  background: rgba(245, 247, 246, .065);
  border-color: rgba(245, 247, 246, .16);
}

.chapter-handoff .completion {
  margin-top: 22px;
}

.session[data-handoff-ready="true"] .chapter-handoff .completion {
  border-color: rgba(143, 184, 207, .48);
  background: rgba(143, 184, 207, .09);
}

/* Pass 3: Spaces exposure, Evidence restraint, and selective typography. */
.chapter-scope .room-chain button {
  opacity: .86;
  filter: saturate(.9) contrast(1.08) brightness(.86);
}

.chapter-scope .room-chain button::before {
  background: linear-gradient(180deg, rgba(1, 3, 4, .08), rgba(1, 3, 4, .44));
}

.chapter-scope .room-chain button:hover {
  opacity: .96;
  filter: saturate(.98) contrast(1.1) brightness(.92);
}

.chapter-scope .room-chain button.is-selected {
  opacity: 1;
  filter: saturate(1.04) contrast(1.13) brightness(1);
}

.chapter-evidence .evidence-panel {
  max-height: calc(100dvh - var(--p16-brand-safe-top, 90px) - var(--p16-footer-safe, 118px));
  align-self: center;
}

.chapter-evidence .evidence-panel h2 {
  font-size: clamp(30px, 3.15vw, 48px);
  max-width: 10.5em;
}

.chapter-evidence .evidence-panel h3 {
  margin: 18px 0 10px;
}

.chapter-evidence .timing-row + h3 {
  margin-top: 20px;
  padding-top: 14px;
}

.chapter-evidence .timing-row button,
.chapter-evidence .source-tray button {
  min-height: 48px;
}

.chapter-readiness .readiness-panel h2,
.chapter-investment .investment-read h2 {
  font-size: clamp(31px, 3.25vw, 50px);
  max-width: 10.8em;
}

@media (max-width: 1350px) {
  .chapter-style .style-index > h2,
  .chapter-handoff .handoff-fields h2,
  .chapter-readiness .readiness-panel h2,
  .chapter-investment .investment-read h2,
  .chapter-evidence .evidence-panel h2 {
    font-size: clamp(29px, 3.25vw, 43px);
  }

  .chapter-style .style-curator {
    grid-template-columns: 1fr;
    grid-template-areas:
      "label"
      "title"
      "note"
      "pairing"
      "count";
  }

  .chapter-style .style-pairing {
    min-height: 82px;
  }

  .chapter-style .style-pairing i,
  .chapter-style .style-pairing i:first-child {
    min-height: 82px;
  }
}

@media (max-width: 1024px) {
  .chapter-style .style-index {
    gap: 12px;
  }

  .chapter-style .style-curator {
    padding: 16px;
  }

  .chapter-style .style-pairing {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 74px;
  }

  .chapter-style .style-pairing i,
  .chapter-style .style-pairing i:first-child {
    min-height: 74px;
  }

  .chapter-handoff .cover-generator {
    padding-right: 18px;
  }

  .chapter-handoff .generated-cover::after {
    content: none;
  }
}

@media (max-width: 820px) {
  .chapter-style .style-index > h2,
  .chapter-handoff .handoff-fields h2,
  .chapter-readiness .readiness-panel h2,
  .chapter-investment .investment-read h2,
  .chapter-evidence .evidence-panel h2 {
    font-size: clamp(25px, 7vw, 34px);
  }

  .chapter-style .style-pairing {
    display: none;
  }

  .chapter-style .style-curator em {
    margin-top: 5px;
  }

  .chapter-evidence .evidence-panel {
    max-height: none;
  }
}

/* Prototype 16 live-intake reconciliation: deterministic safe zones and Scope overlay repair. */
:root {
  --p16-brand-safe-top: clamp(84px, 8.5vh, 116px);
  --p16-footer-safe: clamp(92px, 12vh, 136px);
  --p16-side-safe: clamp(30px, 5vw, 86px);
  --p16-panel-gap: clamp(20px, 3.4vw, 58px);
}

.brand-lockup {
  z-index: 80;
  max-width: min(34vw, 310px);
}

.brand-lockup span,
.brand-lockup b,
.overline {
  white-space: nowrap;
}

.chapter:not(.chapter-opening) .overline {
  letter-spacing: .18em;
  max-width: 100%;
  overflow-wrap: normal;
}

@media (min-width: 1025px) {
  .chapter-lens .lens-copy,
  .chapter-site .site-console,
  .chapter-style .style-index,
  .chapter-readiness .readiness-panel,
  .chapter-investment .investment-read,
  .chapter-evidence .evidence-panel,
  .chapter-handoff .handoff-fields {
    padding-top: max(var(--p16-brand-safe-top), 10vh) !important;
    padding-bottom: var(--p16-footer-safe) !important;
  }

  .chapter-site .site-console,
  .chapter-evidence .evidence-panel,
  .chapter-handoff .handoff-fields {
    margin-left: max(0px, calc(250px - var(--p16-side-safe)));
  }

  .chapter-scope {
    display: grid !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(350px, 500px) !important;
    gap: var(--p16-panel-gap) !important;
    align-items: stretch !important;
    width: 100% !important;
    height: 100dvh !important;
    padding: var(--p16-brand-safe-top) var(--p16-side-safe) var(--p16-footer-safe) !important;
    overflow: hidden !important;
  }

  .chapter-scope .scope-canvas,
  .chapter-scope .scope-type {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: none;
  }

  .chapter-scope .scope-canvas {
    grid-column: 1;
    display: grid !important;
    align-content: end !important;
    isolation: isolate;
    overflow: hidden !important;
    border: 1px solid rgba(245, 247, 246, .12);
    background: rgba(3, 6, 8, .54);
    box-shadow: 0 34px 90px rgba(0, 0, 0, .34);
  }

  .chapter-scope .scope-image-strip {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    opacity: .9;
    pointer-events: none;
  }

  .chapter-scope .scope-image-strip img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    filter: saturate(.86) contrast(1.12) brightness(.62);
  }

  .chapter-scope .scope-image-strip img:not(:first-child) {
    display: none;
  }

  .chapter-scope .room-chain {
    position: relative !important;
    inset: auto !important;
    z-index: 3 !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(84px, 1fr) !important;
    gap: clamp(8px, 1vw, 13px) !important;
    width: 100% !important;
    max-width: none !important;
    max-height: 100% !important;
    min-height: 0 !important;
    padding: clamp(14px, 1.6vw, 22px) !important;
    overflow: auto !important;
    overscroll-behavior: contain;
    background: linear-gradient(180deg, rgba(1, 3, 4, 0), rgba(1, 3, 4, .72) 34%, rgba(1, 3, 4, .86));
  }

  .chapter-scope .room-chain button,
  .chapter-scope .room-chain button.is-selected {
    width: auto !important;
    min-width: 0 !important;
    min-height: clamp(86px, 12vh, 132px) !important;
    height: auto !important;
    max-height: none !important;
    padding: clamp(12px, 1.25vw, 17px) !important;
    font-size: clamp(12px, .95vw, 15px) !important;
    line-height: 1.08 !important;
    white-space: normal !important;
  }

  .chapter-scope .scope-type {
    grid-column: 2;
    align-self: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    max-height: calc(100dvh - var(--p16-brand-safe-top) - var(--p16-footer-safe)) !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .chapter-scope .scope-type h2 {
    max-width: 10.6em;
    font-size: clamp(34px, 3.35vw, 52px) !important;
  }

  .chapter-scope .scope-type > p:not(.overline):not(.guidance) {
    max-width: 34rem;
  }

  .chapter-scope .type-rail {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    margin-top: clamp(18px, 2.4vh, 28px) !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  .chapter-scope .type-rail button {
    width: auto !important;
    min-height: 58px !important;
    padding: 13px 14px !important;
    white-space: normal !important;
  }

  .chapter-site .address-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .chapter-site .address-grid label:first-child {
    grid-column: 1 / -1;
  }
}

@media (min-width: 1025px) and (max-width: 1350px), (min-width: 1025px) and (max-height: 850px) {
  :root {
    --p16-brand-safe-top: clamp(74px, 7.8vh, 98px);
    --p16-footer-safe: clamp(82px, 11vh, 118px);
    --p16-side-safe: clamp(24px, 3.8vw, 58px);
    --p16-panel-gap: clamp(18px, 2.5vw, 36px);
  }

  .chapter-scope {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 430px) !important;
  }

  .chapter-scope .room-chain {
    grid-auto-rows: minmax(72px, 1fr) !important;
    gap: 8px !important;
    padding: 12px !important;
  }

  .chapter-scope .room-chain button,
  .chapter-scope .room-chain button.is-selected {
    min-height: clamp(74px, 11vh, 112px) !important;
    padding: 11px !important;
    font-size: clamp(11px, .92vw, 14px) !important;
  }

  .chapter-scope .scope-type h2 {
    font-size: clamp(30px, 3vw, 43px) !important;
  }

  .chapter-scope .scope-type > p:not(.overline):not(.guidance) {
    font-size: clamp(15px, 1.25vw, 18px) !important;
  }

  .chapter-scope .type-rail button {
    min-height: 52px !important;
    padding: 11px 12px !important;
    font-size: 13px !important;
  }
}

@media (max-width: 1024px) {
  :root {
    --p16-brand-safe-top: 76px;
    --p16-footer-safe: 96px;
  }

  .brand-lockup {
    max-width: calc(100vw - 132px);
  }

  .brand-lockup span,
  .brand-lockup b {
    white-space: normal;
  }

  .chapter:not(.chapter-opening) .overline {
    white-space: normal;
    letter-spacing: .14em;
  }

  .chapter-scope {
    display: grid !important;
    grid-template-rows: minmax(240px, 39vh) minmax(0, 1fr) !important;
    width: 100% !important;
    height: 100dvh !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .chapter-scope .scope-canvas,
  .chapter-scope .scope-type {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .chapter-scope .scope-canvas {
    grid-row: 1;
    overflow: hidden !important;
  }

  .chapter-scope .scope-image-strip {
    position: absolute !important;
    inset: 0 !important;
    height: auto !important;
    pointer-events: none;
  }

  .chapter-scope .scope-image-strip img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    filter: saturate(.86) contrast(1.1) brightness(.58);
  }

  .chapter-scope .scope-image-strip img:not(:first-child) {
    display: none;
  }

  .chapter-scope .room-chain {
    position: absolute !important;
    left: 16px !important;
    right: 16px !important;
    bottom: 14px !important;
    top: auto !important;
    z-index: 4 !important;
    display: flex !important;
    width: auto !important;
    max-width: none !important;
    gap: 9px !important;
    padding: 0 2px 4px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .chapter-scope .room-chain::-webkit-scrollbar {
    display: none;
  }

  .chapter-scope .room-chain button,
  .chapter-scope .room-chain button.is-selected {
    flex: 0 0 min(180px, 42vw) !important;
    width: min(180px, 42vw) !important;
    min-height: 74px !important;
    height: auto !important;
    padding: 12px !important;
    white-space: normal !important;
  }

  .chapter-scope .scope-type {
    grid-row: 2;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: 20px 18px var(--p16-footer-safe) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  .chapter-scope .scope-type h2 {
    font-size: clamp(28px, 6.7vw, 42px) !important;
    max-width: 10.6em;
  }

  .chapter-scope .type-rail {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
    margin-top: 16px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .chapter-scope .type-rail button {
    min-height: 52px !important;
    padding: 12px !important;
    white-space: normal !important;
  }

  .chapter-site .address-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 430px) {
  :root {
    --p16-footer-safe: 92px;
  }

  .chapter-scope {
    grid-template-rows: minmax(210px, 34vh) minmax(0, 1fr) !important;
  }

  .chapter-scope .room-chain {
    left: 14px !important;
    right: 14px !important;
    bottom: 12px !important;
    gap: 8px !important;
  }

  .chapter-scope .room-chain button,
  .chapter-scope .room-chain button.is-selected {
    flex-basis: min(160px, 58vw) !important;
    width: min(160px, 58vw) !important;
    min-height: 66px !important;
    font-size: 12px !important;
  }

  .chapter-scope .scope-type {
    padding: 16px 16px var(--p16-footer-safe) !important;
  }

  .chapter-scope .scope-type h2 {
    font-size: clamp(25px, 7.2vw, 31px) !important;
  }

  .chapter-scope .scope-type > p:not(.overline):not(.guidance) {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  .chapter-scope .type-rail {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }

  .chapter-scope .type-rail button {
    min-height: 46px !important;
    padding: 10px !important;
    font-size: 12px !important;
  }
}

@media (min-width: 1025px) and (max-width: 1350px) and (max-height: 850px) {
  .chapter-scope {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: minmax(250px, 43vh) minmax(0, 1fr) !important;
    gap: 0 !important;
    width: 100% !important;
    height: 100dvh !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .chapter-scope .scope-canvas,
  .chapter-scope .scope-type {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    margin: 0 !important;
  }

  .chapter-scope .scope-canvas {
    grid-column: 1 !important;
    grid-row: 1 !important;
    overflow: hidden !important;
    border: 0 !important;
  }

  .chapter-scope .room-chain {
    position: absolute !important;
    left: clamp(22px, 3vw, 38px) !important;
    right: clamp(22px, 3vw, 38px) !important;
    bottom: clamp(16px, 2.1vh, 24px) !important;
    top: auto !important;
    display: flex !important;
    grid-template-columns: none !important;
    grid-auto-rows: auto !important;
    gap: 10px !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 2px 5px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none;
  }

  .chapter-scope .room-chain::-webkit-scrollbar {
    display: none;
  }

  .chapter-scope .room-chain button,
  .chapter-scope .room-chain button.is-selected {
    flex: 0 0 clamp(150px, 17vw, 210px) !important;
    width: clamp(150px, 17vw, 210px) !important;
    min-height: 78px !important;
    max-height: none !important;
    padding: 12px 13px !important;
    font-size: 13px !important;
  }

  .chapter-scope .scope-type {
    grid-column: 1 !important;
    grid-row: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: clamp(18px, 2.4vh, 25px) clamp(28px, 5vw, 72px) var(--p16-footer-safe) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  .chapter-scope .scope-type h2 {
    max-width: 18em !important;
    font-size: clamp(30px, 3.6vw, 44px) !important;
  }

  .chapter-scope .scope-type > p:not(.overline):not(.guidance) {
    max-width: 56rem !important;
  }

  .chapter-scope .type-rail {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    margin-top: 16px !important;
  }

  .chapter-scope .type-rail button {
    min-height: 52px !important;
    padding: 11px 12px !important;
  }
}

@media (min-width: 1025px) and (max-width: 1180px) {
  .chapter-scope .type-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 821px) {
  .chapter-handoff .generated-cover {
    display: grid !important;
    grid-template-rows: auto auto auto auto minmax(170px, 1fr) auto !important;
    overflow: hidden !important;
  }

  .chapter-handoff .review-cue {
    position: relative !important;
    inset: auto !important;
    margin-top: 10px !important;
  }

  .chapter-handoff .cover-lines {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-content: start !important;
    gap: 0 22px !important;
    min-height: 0 !important;
    margin-top: 10px !important;
    padding-top: 8px !important;
    overflow: auto !important;
    border-top: 1px solid rgba(5, 9, 12, .12);
    scrollbar-width: thin;
    scrollbar-color: rgba(73, 107, 125, .45) transparent;
  }

  .chapter-handoff .cover-lines span {
    display: block !important;
    min-height: 0 !important;
    padding: 6px 0 7px !important;
    border-bottom: 1px solid rgba(5, 9, 12, .09);
    color: rgba(5, 9, 12, .82) !important;
    font-size: clamp(9px, .72vw, 11px) !important;
    line-height: 1.22 !important;
  }

  .chapter-handoff .cover-lines b {
    display: block !important;
    margin-bottom: 3px !important;
    color: rgba(5, 9, 12, .56) !important;
    font-size: 8px !important;
    letter-spacing: .1em !important;
    text-transform: uppercase;
  }

  .chapter-handoff .cover-next {
    position: relative !important;
    margin-top: 8px !important;
    padding-top: 9px !important;
  }
}

.chapter-handoff .cover-generator {
  padding-right: 46vw;
}

.chapter-handoff .generated-cover {
  transform-origin: 48% 58%;
}

.chapter-handoff .generated-cover::after {
  content: "";
  position: absolute;
  inset: 18px;
  pointer-events: none;
  border: 1px solid rgba(73, 107, 125, .18);
  opacity: .64;
}

.review-cue {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  padding: 10px 0 12px;
  border-bottom: 1px solid rgba(5, 9, 12, .12);
  color: rgba(5, 9, 12, .7);
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0;
}

.review-cue i {
  display: grid;
  place-items: center;
  width: 30px;
  aspect-ratio: 1;
  border: 1px solid rgba(73, 107, 125, .34);
  border-radius: 50%;
  color: rgba(5, 9, 12, .72);
  font-style: normal;
  font-size: 9px;
}

.session[data-handoff-ready="true"] .review-cue {
  color: rgba(5, 9, 12, .88);
}

.session[data-handoff-ready="true"] .review-cue i {
  border-color: rgba(73, 107, 125, .58);
  background: rgba(73, 107, 125, .07);
}

.chapter-handoff .handoff-fields {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-left: 1px solid rgba(143, 184, 207, .2);
}

.handoff-bridge {
  display: grid;
  grid-template-columns: auto minmax(70px, 1fr) auto;
  align-items: center;
  gap: 10px;
  max-width: 492px;
  margin-top: 20px;
  color: rgba(245, 247, 246, .58);
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 780;
}

.handoff-bridge i {
  height: 1px;
  background: linear-gradient(90deg, rgba(143, 184, 207, .64), rgba(245, 247, 246, .16));
}

.chapter-handoff .contact-grid {
  position: relative;
  margin-top: 18px;
  border-color: rgba(143, 184, 207, .18);
  box-shadow:
    inset 1px 0 0 rgba(143, 184, 207, .16),
    0 26px 90px rgba(0, 0, 0, .2);
}

.chapter-handoff .contact-grid::before {
  content: "Client details";
  position: absolute;
  left: 14px;
  top: -9px;
  padding: 0 8px;
  background: #080d11;
  color: rgba(143, 184, 207, .84);
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 820;
}

.chapter-handoff .completion {
  min-height: 26px;
  margin-top: 12px;
  color: rgba(245, 247, 246, .68);
}

.chapter-handoff .completion.is-success {
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(245, 247, 246, .92);
}

.chapter-handoff .completion.is-success::before {
  content: "";
  width: 32px;
  height: 1px;
  background: rgba(143, 184, 207, .84);
}

.chapter-handoff.is-active .cover-head {
  animation: p15RevealTitle .42s var(--p14-ease) both;
}

.chapter-handoff.is-active .cover-statement {
  animation: p15RevealUp .42s var(--p14-ease) .08s both;
}

.chapter-handoff.is-active .packet-path {
  animation: p15RevealUp .42s var(--p14-ease) .16s both;
}

.chapter-handoff.is-active .review-cue {
  animation: p15RevealUp .42s var(--p14-ease) .24s both;
}

.chapter-handoff.is-active .cover-lines span {
  animation: p15RowIn .38s var(--p14-ease) both;
  animation-delay: calc(.3s + (var(--row-index, 0) * 22ms));
}

.chapter-handoff.is-active .handoff-fields {
  animation: p15HandoffPanel .5s var(--p14-ease) .22s both;
}

.chapter-handoff.is-active .contact-grid label {
  animation: p15RowIn .32s var(--p14-ease) both;
}

.chapter-handoff.is-active .contact-grid label:nth-child(1),
.chapter-handoff.is-active .contact-grid label:nth-child(2) { animation-delay: .34s; }
.chapter-handoff.is-active .contact-grid label:nth-child(3),
.chapter-handoff.is-active .contact-grid label:nth-child(4) { animation-delay: .38s; }
.chapter-handoff.is-active .contact-grid label:nth-child(5),
.chapter-handoff.is-active .contact-grid label:nth-child(6) { animation-delay: .42s; }
.chapter-handoff.is-active .contact-grid label:nth-child(7),
.chapter-handoff.is-active .contact-grid label:nth-child(8) { animation-delay: .46s; }
.chapter-handoff.is-active .contact-grid label:nth-child(9) { animation-delay: .5s; }

.session[data-handoff-ready="true"] .chapter-handoff .generated-cover {
  box-shadow:
    0 54px 150px rgba(0, 0, 0, .58),
    0 0 0 1px rgba(143, 184, 207, .26),
    inset 0 1px 0 rgba(255, 255, 255, .92);
}

.session[data-handoff-ready="true"] .next-control {
  border-color: rgba(245, 247, 246, .92);
}

@keyframes p15RevealTitle {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes p15RevealUp {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes p15RowIn {
  from { opacity: 0; transform: translateY(7px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes p15HandoffPanel {
  from { opacity: 0; transform: translateX(12px); }
  to { opacity: 1; transform: translateX(0); }
}

@media (max-width: 820px) {
  .chapter-handoff .cover-generator {
    padding-right: 18px;
  }

  .chapter-handoff .generated-cover::after,
  .chapter-handoff .review-cue,
  .chapter-handoff .handoff-bridge {
    display: none;
  }

  .chapter-handoff .handoff-fields {
    justify-content: flex-start;
    border-left: 0;
  }

  .chapter-handoff .contact-grid::before {
    left: 10px;
    background: #090e12;
  }
}

@media (prefers-reduced-motion: reduce) {
  .chapter-handoff.is-active .cover-head,
  .chapter-handoff.is-active .cover-statement,
  .chapter-handoff.is-active .packet-path,
  .chapter-handoff.is-active .review-cue,
  .chapter-handoff.is-active .cover-lines span,
  .chapter-handoff.is-active .handoff-fields,
  .chapter-handoff.is-active .contact-grid label {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* Prototype 9 execution layer: cleaner states, image-led choices, quieter motion. */
.session {
  background:
    radial-gradient(circle at 22% 0%, rgba(143, 184, 207, .11), transparent 26%),
    linear-gradient(135deg, #010304 0%, #060b0f 48%, #020405 100%);
}

.session::before {
  opacity: .42;
  background:
    radial-gradient(circle at 14% 11%, rgba(143, 184, 207, .08), transparent 26%),
    linear-gradient(90deg, rgba(245, 247, 246, .018) 1px, transparent 1px),
    linear-gradient(0deg, rgba(245, 247, 246, .014) 1px, transparent 1px);
  background-size: auto, 120px 120px, 120px 120px;
}

.chapter {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateX(var(--chapter-drift, 0)) scale(.992);
  transition:
    opacity .42s ease,
    visibility 0s linear .42s,
    transform .72s cubic-bezier(.18, .86, .22, 1);
}

.chapter.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0s;
}

.chapter img {
  filter: grayscale(.02) saturate(.9) contrast(1.04) brightness(.82);
  transform: scale(1.012);
  transition: opacity .28s ease, transform .72s cubic-bezier(.18, .86, .22, 1), filter .28s ease;
}

.chapter.is-active img {
  transform: scale(1);
}

.chapter::after {
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .72), rgba(1, 3, 4, .2) 48%, rgba(1, 3, 4, .6)),
    linear-gradient(180deg, rgba(1, 3, 4, .38), transparent 44%, rgba(1, 3, 4, .78));
}

.opening-script,
.chapter-copy,
.scope-type,
.style-index,
.readiness-panel,
.investment-read,
.evidence-panel,
.handoff-fields {
  text-shadow: 0 22px 64px rgba(0, 0, 0, .48);
}

h1,
h2 {
  font-weight: 660;
  line-height: 1.01;
}

h1 {
  max-width: 1040px;
  font-size: clamp(52px, 6.6vw, 96px);
}

h2 {
  font-size: clamp(36px, 4.4vw, 68px);
}

.opening-script > p:not(.overline),
.chapter-copy > p:not(.overline):not(.guidance),
.scope-type > p:not(.overline):not(.guidance),
.style-index > p:not(.overline):not(.guidance),
.investment-read > p:not(.overline):not(.guidance),
.evidence-panel > p:not(.overline):not(.guidance) {
  color: rgba(245, 247, 246, .8);
}

.overline {
  color: rgba(143, 184, 207, .92);
}

.launch-action,
.next-control,
.back-control {
  border-radius: 999px;
  box-shadow: 0 18px 44px rgba(0, 0, 0, .22);
}

.decision-control button {
  border-color: rgba(245, 247, 246, .16);
  background: rgba(4, 8, 11, .58);
  box-shadow: inset 0 1px 0 rgba(245, 247, 246, .035);
}

.decision-control button:hover {
  transform: translateY(-2px);
  background: rgba(143, 184, 207, .12);
}

.decision-control button.is-selected {
  box-shadow:
    inset 0 0 0 1px rgba(143, 184, 207, .38),
    0 18px 46px rgba(0, 0, 0, .26);
}

.decision-control button.just-selected {
  animation: p9SelectConfirm .32s ease both;
}

@keyframes p9SelectConfirm {
  0% { transform: translateY(-1px) scale(.995); }
  55% { transform: translateY(-3px) scale(1.01); }
  100% { transform: translateY(-1px) scale(1); }
}

.scope-canvas::before,
.aperture-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .78), rgba(1, 3, 4, .12) 46%, rgba(1, 3, 4, .82)),
    linear-gradient(0deg, rgba(1, 3, 4, .82), transparent 42%);
}

.scope-image-strip {
  opacity: 1;
}

.scope-image-strip img {
  opacity: .32;
  filter: saturate(.9) contrast(1.06) brightness(.74);
}

.scope-image-strip img:first-child {
  opacity: .92;
  width: 72%;
  left: auto;
  right: 0;
  object-position: 58% 50%;
  filter: saturate(.96) contrast(1.05) brightness(.86);
}

.room-chain {
  position: absolute;
  left: 7vw;
  right: auto;
  top: auto;
  bottom: 18vh;
  z-index: 8;
  width: min(760px, 52vw);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.room-chain button,
.style-ledger button {
  isolation: isolate;
  min-height: 122px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  padding: 16px;
  overflow: hidden;
  text-align: left;
  background: #070b0e;
}

.room-chain button::after,
.style-ledger button::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image: var(--choice-image);
  background-size: cover;
  background-position: center;
  opacity: .74;
  filter: saturate(.94) contrast(1.05) brightness(.8);
  transform: scale(1.04);
  transition: opacity .24s ease, transform .32s ease, filter .24s ease;
}

.room-chain button::before,
.style-ledger button::before {
  z-index: -1;
  width: auto;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(1, 3, 4, .06), rgba(1, 3, 4, .74)),
    linear-gradient(90deg, rgba(1, 3, 4, .38), transparent);
  transform: none;
}

.room-chain button:hover::after,
.style-ledger button:hover::after,
.room-chain button.is-selected::after,
.style-ledger button.is-selected::after {
  opacity: .94;
  filter: saturate(1) contrast(1.08) brightness(.9);
  transform: scale(1);
}

.room-chain button.is-selected,
.style-ledger button.is-selected {
  border-color: rgba(245, 247, 246, .62);
}

.room-chain button.is-selected::before,
.style-ledger button.is-selected::before {
  background:
    linear-gradient(180deg, rgba(1, 3, 4, .04), rgba(1, 3, 4, .62)),
    linear-gradient(90deg, rgba(143, 184, 207, .38), transparent 58%);
}

.scope-type {
  position: absolute;
  left: auto;
  right: 7vw;
  top: 15vh;
  z-index: 6;
  width: min(500px, 33vw);
  margin-left: auto;
  margin-right: 0;
  padding-top: 0;
}

.type-rail {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 26px;
}

.style-index {
  width: min(760px, 52vw);
  margin-left: 7vw;
  padding-top: 11vh;
}

.style-ledger {
  max-height: min(56vh, 520px);
  margin-top: 26px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  overflow: auto;
  padding-right: 6px;
}

.style-ledger button {
  min-height: 64px;
  font-size: 13px;
  line-height: 1.12;
}

.material-aperture {
  opacity: .44;
}

.site-console,
.readiness-panel,
.investment-read,
.evidence-panel,
.handoff-fields {
  background:
    linear-gradient(180deg, rgba(7, 11, 14, .72), rgba(7, 11, 14, .48));
  border: 1px solid rgba(245, 247, 246, .12);
  box-shadow: 0 28px 90px rgba(0, 0, 0, .28);
  backdrop-filter: blur(16px);
}

.site-console,
.readiness-panel,
.investment-read,
.evidence-panel {
  border-radius: 26px;
  padding: 34px;
}

.address-grid label,
.statement-inputs label,
.inspiration-field,
.contact-grid label {
  color: rgba(245, 247, 246, .74);
}

input,
textarea,
select {
  border-radius: 14px;
  background: rgba(245, 247, 246, .08);
  border: 1px solid rgba(245, 247, 246, .16);
}

input:focus,
textarea:focus,
select:focus,
button:focus-visible {
  outline: 2px solid rgba(143, 184, 207, .82);
  outline-offset: 3px;
}

.generated-cover {
  background:
    linear-gradient(155deg, rgba(245, 247, 246, .98), rgba(219, 228, 231, .9)),
    radial-gradient(circle at 86% 14%, rgba(143, 184, 207, .18), transparent 34%);
  box-shadow: 0 44px 130px rgba(0, 0, 0, .48);
}

.cover-lines span {
  border-bottom-color: rgba(5, 9, 12, .11);
}

@media (max-width: 1180px) {
  .room-chain,
  .style-index {
    width: min(820px, 62vw);
  }

  .room-chain {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    bottom: 16vh;
  }

  .scope-type {
    width: min(440px, 35vw);
    margin-right: 5vw;
  }

  .style-ledger {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .chapter {
    overflow: hidden;
  }

  .chapter::after {
    background:
      linear-gradient(180deg, rgba(1, 3, 4, .28), rgba(1, 3, 4, .74) 42%, rgba(1, 3, 4, .9));
  }

  .room-chain,
  .style-index,
  .scope-type {
    width: auto;
    margin: 0;
  }

  .scope-type,
  .style-index {
    padding-left: 18px;
    padding-right: 18px;
  }

  .room-chain {
    position: relative;
    left: auto;
    bottom: auto;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 0 18px 96px;
    overflow: auto;
  }

  .room-chain button,
  .style-ledger button {
    min-height: 104px;
  }

  .style-ledger {
    max-height: 40vh;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-console,
  .readiness-panel,
  .investment-read,
  .evidence-panel,
  .handoff-fields {
    border-radius: 0;
    border-left: 0;
    border-right: 0;
    background: linear-gradient(180deg, rgba(7, 11, 14, .62), rgba(7, 11, 14, .78));
    backdrop-filter: blur(10px);
  }

  .lens-selector,
  .occupancy-switch,
  .type-rail,
  .readiness-scale,
  .investment-dial,
  .timing-row,
  .source-tray {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    width: 100%;
    max-width: none;
    overflow: visible;
  }

  .lens-selector button,
  .occupancy-switch button,
  .type-rail button,
  .readiness-scale button,
  .investment-dial button,
  .timing-row button,
  .source-tray button {
    width: 100%;
    min-height: 50px;
  }
}

@media (max-width: 430px) {
  h1 { font-size: 36px; }
  h2 { font-size: 29px; }

  .room-chain,
  .style-ledger {
    grid-template-columns: 1fr;
  }

  .style-ledger {
    max-height: 34vh;
  }
}

@media (prefers-reduced-motion: reduce) {
  .decision-control button.just-selected {
    animation: none;
  }
}

/* Final hit-target normalization for the Prototype 9 editorial choice boards. */
.session .chapter.chapter-scope .scope-canvas .room-chain button:nth-child(n),
.session .chapter.chapter-style .style-index .style-ledger button:nth-child(n) {
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  width: auto;
  height: auto;
  transform: none;
}

.session .chapter.chapter-scope .scope-canvas .room-chain button:nth-child(n) {
  transform: none;
}

.session .chapter.chapter-scope .scope-canvas .room-chain button:hover,
.session .chapter.chapter-style .style-index .style-ledger button:hover,
.session .chapter.chapter-scope .scope-canvas .room-chain button.is-selected,
.session .chapter.chapter-style .style-index .style-ledger button.is-selected {
  transform: translateY(-2px);
}

.session .chapter.chapter-scope .scope-canvas .room-chain button.just-selected,
.session .chapter.chapter-style .style-index .style-ledger button.just-selected {
  transform: translateY(-2px);
}

/* Prototype 10 corrective layer: fewer artifacts, stronger photography, richer packet. */
.session {
  background: #020405;
}

.session::before,
.lens-plates,
.material-aperture,
.plan-opacity,
.depth-stack,
.evidence-pieces {
  display: none;
}

.brand-lockup {
  top: 30px;
}

.chapter-track {
  transition: transform .74s cubic-bezier(.18, .84, .2, 1);
}

.chapter {
  transition:
    opacity .44s ease,
    visibility 0s linear .44s,
    transform .74s cubic-bezier(.18, .84, .2, 1);
}

.chapter img {
  filter: saturate(.96) contrast(1.04) brightness(.92);
}

.chapter::after {
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .58), rgba(1, 3, 4, .1) 46%, rgba(1, 3, 4, .48)),
    linear-gradient(180deg, rgba(1, 3, 4, .28), transparent 44%, rgba(1, 3, 4, .74));
}

.lens-field::after,
.site-plane::after,
.scope-canvas::after,
.aperture-stage::after,
.readiness-plan::after,
.depth-lab::after,
.evidence-table::after,
.cover-generator::after {
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .68), rgba(1, 3, 4, .08) 50%, rgba(1, 3, 4, .62)),
    linear-gradient(180deg, rgba(1, 3, 4, .34), transparent 45%, rgba(1, 3, 4, .76));
}

h1,
h2 {
  letter-spacing: 0;
  font-weight: 680;
}

h1 {
  font-size: clamp(50px, 6.2vw, 92px);
}

h2 {
  font-size: clamp(34px, 4.2vw, 66px);
}

.opening-script > p:not(.overline),
.chapter-copy > p:not(.overline):not(.guidance),
.scope-type > p:not(.overline):not(.guidance),
.style-index > p:not(.overline):not(.guidance),
.investment-read > p:not(.overline):not(.guidance),
.evidence-panel > p:not(.overline):not(.guidance) {
  color: rgba(245, 247, 246, .84);
}

.guidance,
.completion {
  color: rgba(219, 228, 231, .88);
}

.site-console,
.readiness-panel,
.investment-read,
.evidence-panel,
.handoff-fields {
  background: rgba(5, 9, 12, .66);
  border-color: rgba(245, 247, 246, .13);
  box-shadow: 0 32px 96px rgba(0, 0, 0, .34);
}

.decision-control button {
  border-color: rgba(245, 247, 246, .18);
  background: rgba(5, 9, 12, .62);
  transition:
    transform .2s ease,
    border-color .2s ease,
    background .2s ease,
    box-shadow .2s ease,
    color .2s ease;
}

.decision-control button:hover {
  border-color: rgba(143, 184, 207, .72);
  background: rgba(143, 184, 207, .13);
  box-shadow: 0 20px 54px rgba(0, 0, 0, .24);
}

.decision-control button.is-selected {
  border-color: rgba(245, 247, 246, .76);
  background: rgba(143, 184, 207, .18);
  box-shadow:
    inset 0 0 0 1px rgba(143, 184, 207, .45),
    0 24px 64px rgba(0, 0, 0, .32);
}

.scope-image-strip img {
  opacity: .5;
  filter: saturate(.96) contrast(1.03) brightness(.82);
}

.scope-image-strip img:first-child {
  opacity: .98;
  filter: saturate(1) contrast(1.04) brightness(.94);
}

.room-chain {
  width: min(800px, 55vw);
  bottom: 15vh;
  gap: 14px;
}

.room-chain button {
  min-height: 146px;
  padding: 18px;
  font-size: 17px;
  border-color: rgba(245, 247, 246, .22);
}

.room-chain button::after {
  opacity: .86;
  filter: saturate(.98) contrast(1.04) brightness(.86);
}

.room-chain button:hover::after,
.room-chain button.is-selected::after {
  opacity: 1;
  filter: saturate(1.03) contrast(1.06) brightness(.96);
}

.scope-type {
  width: min(430px, 32vw);
  right: 5vw;
  top: 16vh;
}

.type-rail button {
  min-height: 58px;
}

.aperture-stage img {
  filter: saturate(1.02) contrast(1.03) brightness(.96);
  object-position: 55% 50%;
}

.style-index {
  left: 6vw;
  top: 9vh;
  width: min(1180px, 82vw);
  padding-top: 0;
}

.style-index > p:not(.overline):not(.guidance) {
  max-width: 620px;
}

.style-ledger {
  display: flex;
  grid-template-columns: none;
  gap: 18px;
  max-height: none;
  width: min(1180px, 82vw);
  margin-top: 30px;
  padding: 4px 6vw 20px 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
}

.style-ledger button {
  flex: 0 0 clamp(230px, 21vw, 330px);
  min-height: clamp(248px, 33vh, 360px);
  padding: 20px;
  align-items: flex-end;
  font-size: 18px;
  scroll-snap-align: start;
  border-color: rgba(245, 247, 246, .2);
}

.style-ledger button::after {
  opacity: .9;
  filter: saturate(1) contrast(1.04) brightness(.82);
}

.style-ledger button::before {
  background:
    linear-gradient(180deg, rgba(1, 3, 4, .02), rgba(1, 3, 4, .72)),
    linear-gradient(90deg, rgba(1, 3, 4, .28), transparent);
}

.style-ledger button:hover::after,
.style-ledger button.is-selected::after {
  opacity: 1;
  filter: saturate(1.04) contrast(1.06) brightness(.94);
}

.style-ledger button.is-selected::before {
  background:
    linear-gradient(180deg, rgba(1, 3, 4, 0), rgba(1, 3, 4, .6)),
    linear-gradient(90deg, rgba(143, 184, 207, .34), transparent 62%);
}

.style-ledger::-webkit-scrollbar {
  height: 7px;
}

.style-ledger::-webkit-scrollbar-track {
  background: rgba(245, 247, 246, .08);
}

.style-ledger::-webkit-scrollbar-thumb {
  background: rgba(143, 184, 207, .55);
}

.cover-generator {
  background:
    radial-gradient(circle at 72% 18%, rgba(143, 184, 207, .18), transparent 34%),
    linear-gradient(135deg, #05090c, #121a20 52%, #020405);
}

.cover-generator::after {
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .58), rgba(1, 3, 4, .08) 48%, rgba(1, 3, 4, .72)),
    linear-gradient(180deg, rgba(1, 3, 4, .18), transparent 40%, rgba(1, 3, 4, .68));
}

.generated-cover {
  background:
    linear-gradient(160deg, #f7f8f4 0%, #e8edf0 100%);
  color: #05090c;
  border: 1px solid rgba(245, 247, 246, .48);
  box-shadow:
    0 50px 140px rgba(0, 0, 0, .56),
    inset 0 1px 0 rgba(255, 255, 255, .9);
}

.cover-head span {
  color: rgba(5, 9, 12, .58);
}

.cover-head h2 {
  color: #05090c;
}

.cover-statement {
  color: rgba(5, 9, 12, .74);
  font-size: 17px;
  line-height: 1.5;
}

.cover-lines {
  gap: 0;
  border-top: 1px solid rgba(5, 9, 12, .12);
  border-bottom: 1px solid rgba(5, 9, 12, .12);
}

.cover-lines span {
  min-height: 46px;
  padding: 12px 0;
  color: rgba(5, 9, 12, .82);
}

.cover-lines b {
  color: rgba(5, 9, 12, .48);
}

.cover-next {
  color: rgba(5, 9, 12, .66);
}

.handoff-fields {
  background: rgba(5, 9, 12, .76);
}

@media (max-width: 1180px) {
  .room-chain {
    width: min(720px, 55vw);
    gap: 12px;
  }

  .room-chain button {
    min-height: 126px;
  }

  .style-index,
  .style-ledger {
    width: min(980px, 84vw);
  }

  .style-ledger button {
    flex-basis: clamp(220px, 28vw, 300px);
  }
}

@media (max-width: 820px) {
  .chapter img {
    filter: saturate(.98) contrast(1.02) brightness(.82);
  }

  .chapter::after {
    background:
      linear-gradient(180deg, rgba(1, 3, 4, .16), rgba(1, 3, 4, .72) 38%, rgba(1, 3, 4, .92));
  }

  .room-chain {
    width: 100%;
    gap: 12px;
  }

  .room-chain button {
    min-height: 132px;
  }

  .style-index {
    width: auto;
  }

  .style-ledger {
    display: flex;
    width: 100%;
    max-height: none;
    padding: 0 18px 106px 0;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .style-ledger button {
    flex: 0 0 74vw;
    min-height: 220px;
    font-size: 17px;
  }

  .generated-cover {
    box-shadow: 0 24px 80px rgba(0, 0, 0, .46);
  }
}

/* Prototype 10 handoff correction: clear two-column packet, no clipping. */
.chapter-handoff .cover-generator {
  place-items: center start;
  padding-left: 5vw;
  padding-right: 50vw;
}

.chapter-handoff .generated-cover {
  width: min(610px, 42vw);
  max-height: 82vh;
  min-height: auto;
  overflow: auto;
  padding: 30px 34px;
}

.chapter-handoff .cover-head h2 {
  font-size: clamp(30px, 3.2vw, 46px);
  line-height: 1.02;
}

.chapter-handoff .cover-statement {
  margin-top: 16px;
  padding-top: 16px;
  font-size: 14px;
  line-height: 1.42;
}

.chapter-handoff .cover-lines {
  margin-top: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.chapter-handoff .cover-lines span {
  min-height: 38px;
  padding: 9px 0;
  font-size: 12px;
  line-height: 1.24;
}

.chapter-handoff .cover-next {
  padding-top: 14px;
  font-size: 12px;
}

.chapter-handoff .handoff-fields {
  width: min(46vw, 650px);
  padding: 9vh 6vw 110px 4vw;
  background:
    linear-gradient(90deg, rgba(5, 9, 12, .08), rgba(5, 9, 12, .88) 18%, rgba(5, 9, 12, .98));
}

.chapter-handoff .handoff-fields h2 {
  font-size: clamp(38px, 4.6vw, 64px);
}

@media (max-width: 1180px) {
  .chapter-handoff .generated-cover {
    width: min(540px, 44vw);
    padding: 26px;
  }

  .chapter-handoff .handoff-fields {
    width: min(48vw, 600px);
  }
}

@media (max-width: 820px) {
  .chapter-handoff .cover-generator {
    padding: 0;
  }

  .chapter-handoff .generated-cover {
    width: calc(100% - 36px);
    max-height: 36vh;
    margin: 86px 18px 0;
  }

  .chapter-handoff .handoff-fields {
    width: 100%;
    padding: 22px 18px 110px;
    background: rgba(5, 9, 12, .9);
  }
}

/* Prototype 11 internal pre-QA layer: Style Studio hero, ceremonial packet, quieter client copy. */
.session[data-moving="true"] .next-control,
.session[data-moving="true"] .back-control {
  pointer-events: none;
  opacity: .72;
}

.chapter-style .aperture-stage::before {
  background:
    radial-gradient(circle at 76% 28%, rgba(143, 184, 207, .16), transparent 24%),
    linear-gradient(90deg, rgba(1, 3, 4, .76), rgba(1, 3, 4, .06) 52%, rgba(1, 3, 4, .36)),
    linear-gradient(0deg, rgba(1, 3, 4, .84), transparent 46%);
}

.chapter-style .aperture-stage::after {
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .58), rgba(1, 3, 4, .08) 50%, rgba(1, 3, 4, .42)),
    linear-gradient(180deg, rgba(1, 3, 4, .12), transparent 46%, rgba(1, 3, 4, .76));
}

.chapter-style .aperture-image {
  object-position: 61% 50%;
  filter: saturate(1.08) contrast(1.05) brightness(1);
}

.chapter-style .style-index {
  left: 5vw;
  top: 8vh;
  width: min(1240px, 88vw);
  display: grid;
  grid-template-columns: minmax(320px, 440px) 1fr;
  grid-template-areas:
    "copy ledger"
    "curator ledger"
    "feedback ledger";
  column-gap: clamp(26px, 4vw, 64px);
  align-items: end;
}

.chapter-style .style-index > .overline,
.chapter-style .style-index > h2,
.chapter-style .style-index > p:not(.guidance),
.chapter-style .style-curator,
.chapter-style .guidance {
  max-width: 440px;
}

.chapter-style .style-index > .overline,
.chapter-style .style-index > h2,
.chapter-style .style-index > p:not(.guidance) {
  grid-area: copy;
}

.chapter-style .style-index > .overline { align-self: start; }

.chapter-style .style-index > h2 {
  margin-top: 30px;
}

.chapter-style .style-index > p:not(.guidance) {
  margin-top: 260px;
}

.style-curator {
  grid-area: curator;
  align-self: start;
  margin-top: 28px;
  padding: 18px 18px 20px;
  border: 1px solid rgba(245, 247, 246, .16);
  background:
    linear-gradient(135deg, rgba(245, 247, 246, .1), rgba(143, 184, 207, .08)),
    rgba(5, 9, 12, .58);
  box-shadow: 0 26px 70px rgba(0, 0, 0, .26);
  backdrop-filter: blur(14px);
}

.style-curator span {
  display: block;
  color: rgba(143, 184, 207, .92);
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 820;
}

.style-curator b {
  display: block;
  margin-top: 10px;
  color: var(--white);
  font-size: clamp(22px, 2.1vw, 32px);
  font-weight: 640;
  line-height: 1.02;
}

.style-curator p {
  margin: 12px 0 0;
  color: rgba(245, 247, 246, .72);
  font-size: 14px;
  line-height: 1.42;
}

.style-curator[data-state="set"] {
  border-color: rgba(143, 184, 207, .48);
}

.chapter-style .style-ledger {
  grid-area: ledger;
  align-self: end;
  width: 100%;
  max-width: 820px;
  height: min(68vh, 640px);
  margin: 0;
  padding: 0 46px 16px 0;
  gap: 20px;
}

.chapter-style .style-ledger button {
  flex: 0 0 clamp(270px, 24vw, 390px);
  min-height: min(62vh, 560px);
  padding: 24px;
  border-color: rgba(245, 247, 246, .24);
  font-size: clamp(20px, 1.8vw, 28px);
  font-weight: 650;
  line-height: 1;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .34);
}

.chapter-style .style-ledger button::after {
  opacity: .96;
  filter: saturate(1.06) contrast(1.06) brightness(.9);
}

.chapter-style .style-ledger button::before {
  background:
    linear-gradient(180deg, transparent 20%, rgba(1, 3, 4, .78)),
    linear-gradient(90deg, rgba(1, 3, 4, .38), transparent 62%);
}

.chapter-style .style-ledger button.is-selected {
  flex-basis: clamp(330px, 29vw, 470px);
  border-color: rgba(245, 247, 246, .86);
  box-shadow:
    inset 0 0 0 1px rgba(143, 184, 207, .62),
    0 40px 110px rgba(0, 0, 0, .46);
}

.chapter-style .style-ledger button.is-selected::before {
  background:
    linear-gradient(180deg, transparent 20%, rgba(1, 3, 4, .66)),
    linear-gradient(90deg, rgba(143, 184, 207, .44), transparent 64%);
}

.chapter-style .style-ledger button[data-exclusive="true"] {
  flex-basis: clamp(300px, 25vw, 420px);
}

.chapter-style .guidance {
  grid-area: feedback;
}

.chapter-scope .scope-canvas::before {
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .68), rgba(1, 3, 4, .12) 48%, rgba(1, 3, 4, .62)),
    linear-gradient(0deg, rgba(1, 3, 4, .78), transparent 46%);
}

.chapter-scope .room-chain button {
  min-height: 158px;
  font-size: 18px;
}

.chapter-scope .room-chain button.is-selected {
  border-color: rgba(245, 247, 246, .86);
  box-shadow:
    inset 0 0 0 1px rgba(143, 184, 207, .58),
    0 34px 90px rgba(0, 0, 0, .42);
}

.chapter-handoff .cover-generator {
  padding-left: 4vw;
  padding-right: 47vw;
}

.chapter-handoff .cover-generator::before {
  filter: saturate(.98) contrast(1.04) brightness(.74);
}

.chapter-handoff .cover-generator::after {
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .54), rgba(1, 3, 4, .04) 48%, rgba(1, 3, 4, .66)),
    linear-gradient(180deg, rgba(1, 3, 4, .1), transparent 42%, rgba(1, 3, 4, .66));
}

.chapter-handoff .generated-cover {
  width: min(680px, 45vw);
  max-height: min(74vh, calc(100vh - 180px));
  padding: 28px 32px;
  background:
    linear-gradient(160deg, #f5f7f6 0%, #e6edf0 100%);
  border-color: rgba(245, 247, 246, .62);
}

.chapter-handoff .generated-cover::before {
  content: "";
  position: absolute;
  inset: 18px;
  pointer-events: none;
  border: 1px solid rgba(5, 9, 12, .12);
}

.chapter-handoff .cover-head h2 {
  font-size: clamp(30px, 3.1vw, 44px);
}

.chapter-handoff .cover-statement {
  margin-top: 12px;
  padding-top: 12px;
  font-size: 14px;
  line-height: 1.4;
}

.packet-path {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
  padding: 10px 0 12px;
  border-top: 1px solid rgba(5, 9, 12, .12);
  border-bottom: 1px solid rgba(5, 9, 12, .12);
}

.packet-path span {
  position: relative;
  color: rgba(5, 9, 12, .68);
  font-size: 10px;
  line-height: 1.16;
  text-transform: uppercase;
  font-weight: 760;
}

.packet-path span::before {
  content: "";
  display: block;
  width: 18px;
  height: 2px;
  margin-bottom: 8px;
  background: rgba(73, 107, 125, .72);
}

.chapter-handoff .cover-lines {
  margin-top: 14px;
  gap: 0 26px;
}

.chapter-handoff .cover-lines span {
  min-height: 34px;
  padding: 6px 0;
  font-size: 11px;
  line-height: 1.17;
}

.chapter-handoff .cover-lines b {
  margin-bottom: 3px;
  font-size: 9px;
}

.chapter-handoff .handoff-fields {
  width: min(45vw, 640px);
  padding-top: 8vh;
  background:
    linear-gradient(90deg, rgba(5, 9, 12, .06), rgba(5, 9, 12, .9) 16%, rgba(5, 9, 12, .98));
}

.handoff-note {
  max-width: 520px;
  margin: 14px 0 0;
  color: rgba(245, 247, 246, .7);
  font-size: 15px;
  line-height: 1.45;
}

.chapter-handoff .contact-grid {
  gap: 10px;
}

.chapter-handoff input,
.chapter-handoff textarea,
.chapter-handoff select {
  min-height: 44px;
  background: rgba(245, 247, 246, .075);
}

@media (max-width: 1280px) {
  .chapter-style .style-index {
    width: min(1120px, 90vw);
    grid-template-columns: minmax(300px, 380px) 1fr;
    column-gap: 34px;
  }

  .chapter-style .style-ledger button {
    flex-basis: clamp(250px, 28vw, 350px);
  }

  .chapter-style .style-ledger button.is-selected {
    flex-basis: clamp(300px, 32vw, 420px);
  }

  .chapter-handoff .generated-cover {
    width: min(610px, 45vw);
    padding: 30px;
  }
}

@media (max-width: 1024px) {
  .chapter-style .style-index {
    grid-template-columns: 1fr;
    grid-template-areas:
      "copy"
      "curator"
      "ledger"
      "feedback";
    top: 9vh;
    width: min(900px, 88vw);
  }

  .chapter-style .style-index > p:not(.guidance) {
    margin-top: 18px;
  }

  .style-curator {
    margin-top: 20px;
  }

  .chapter-style .style-ledger {
    width: 100%;
    height: min(42vh, 360px);
    margin-top: 20px;
  }

  .chapter-style .style-ledger button {
    min-height: min(40vh, 340px);
  }
}

@media (max-width: 820px) {
  .chapter-style .style-index {
    top: auto;
    width: 100vw;
    padding: 20px 18px 92px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    background: linear-gradient(180deg, rgba(5, 9, 12, .78), rgba(5, 9, 12, .98));
  }

  .chapter-style .style-index > .overline,
  .chapter-style .style-index > h2,
  .chapter-style .style-index > p:not(.guidance),
  .chapter-style .style-curator,
  .chapter-style .guidance {
    max-width: none;
  }

  .chapter-style .style-index > h2 {
    margin-top: 0;
  }

  .chapter-style .style-index > p:not(.guidance) {
    margin-top: 12px;
  }

  .style-curator {
    margin-top: 14px;
    padding: 14px;
  }

  .style-curator b {
    font-size: 21px;
  }

  .style-curator p {
    font-size: 13px;
  }

  .chapter-style .style-ledger {
    width: calc(100vw - 36px);
    height: auto;
    margin-top: 14px;
    padding: 0 12px 4px 0;
  }

  .chapter-style .style-ledger button,
  .chapter-style .style-ledger button.is-selected,
  .chapter-style .style-ledger button[data-exclusive="true"] {
    flex: 0 0 78vw;
    min-height: 210px;
    font-size: 19px;
  }

  .chapter-scope .room-chain button {
    min-height: 126px;
    font-size: 16px;
  }

  .packet-path {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 12px;
    padding: 10px 0;
  }

  .chapter-handoff .generated-cover {
    width: calc(100% - 32px);
    max-height: 38vh;
    margin: 80px 16px 0;
    padding: 18px;
  }

  .chapter-handoff .generated-cover::before {
    inset: 10px;
  }

  .chapter-handoff .cover-lines {
    grid-template-columns: 1fr;
    max-height: 108px;
  }

  .chapter-handoff .handoff-fields {
    width: 100%;
    padding: 18px 18px 106px;
  }

  .handoff-note {
    font-size: 13px;
  }
}

@media (max-width: 430px) {
  .chapter-style .style-ledger button,
  .chapter-style .style-ledger button.is-selected,
  .chapter-style .style-ledger button[data-exclusive="true"] {
    flex-basis: 80vw;
    min-height: 176px;
  }

  .packet-path {
    display: none;
  }

  .chapter-handoff .generated-cover {
    max-height: 34vh;
    margin-top: 72px;
  }

  .chapter-handoff .cover-statement {
    font-size: 12px;
  }
}

/* Prototype 11 grid correction: keep the Style Studio copy stacked, not layered. */
.chapter-style .style-index > .overline,
.chapter-style .style-index > h2,
.chapter-style .style-index > p:not(.guidance),
.chapter-style .style-curator,
.chapter-style .guidance {
  grid-area: auto;
  grid-column: 1;
}

.chapter-style .style-ledger {
  grid-area: auto;
  grid-column: 2;
  grid-row: 1 / span 5;
}

@media (max-width: 1024px) {
  .chapter-style .style-index > .overline,
  .chapter-style .style-index > h2,
  .chapter-style .style-index > p:not(.guidance),
  .chapter-style .style-curator,
  .chapter-style .guidance,
  .chapter-style .style-ledger {
    grid-column: 1;
    grid-row: auto;
  }
}

@media (max-width: 820px) {
  .chapter-scope {
    grid-template-rows: 38vh 1fr;
  }

  .chapter-scope .scope-canvas {
    position: relative;
    display: block;
    overflow: hidden;
    padding: 0;
  }

  .chapter-scope .scope-image-strip {
    position: absolute;
    inset: 0;
  }

  .chapter-scope .scope-image-strip img:first-child {
    width: 100%;
    right: auto;
  }

  .chapter-scope .room-chain {
    position: absolute;
    left: 18px;
    right: 18px;
    top: auto;
    bottom: 18px;
    z-index: 8;
    display: flex;
    flex-wrap: nowrap;
    width: auto;
    min-height: 0;
    gap: 10px;
    padding: 0 12px 4px 0;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
  }

  .chapter-scope .room-chain::-webkit-scrollbar {
    display: none;
  }

  .chapter-scope .room-chain button,
  .chapter-scope .room-chain button.is-selected {
    flex: 0 0 72vw;
    width: auto;
    min-height: 118px;
  }

  .chapter-scope .scope-type {
    position: relative;
    inset: auto;
    left: auto;
    right: auto;
    top: auto;
    width: 100vw;
    max-width: none;
    margin: 0;
    padding: 20px 18px 106px;
    background: linear-gradient(180deg, rgba(5, 9, 12, .86), rgba(5, 9, 12, .98));
  }

  .chapter-scope .type-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 430px) {
  .chapter-scope .room-chain button,
  .chapter-scope .room-chain button.is-selected {
    flex-basis: 76vw;
    min-height: 112px;
  }
}

/* Prototype 12 final polish layer: curated style pacing and finished handoff rhythm. */
.chapter-style .style-index {
  grid-template-columns: minmax(340px, 450px) minmax(0, 1fr);
  column-gap: clamp(34px, 5vw, 78px);
  align-items: center;
}

.chapter-style .style-index > h2 {
  max-width: 430px;
  text-wrap: balance;
}

.chapter-style .style-index > p:not(.guidance) {
  max-width: 390px;
  color: rgba(245, 247, 246, .78);
}

.style-curator {
  max-width: 400px;
  padding: 20px 20px 18px;
  background:
    linear-gradient(135deg, rgba(245, 247, 246, .115), rgba(143, 184, 207, .085)),
    rgba(4, 8, 11, .72);
}

.style-curator em {
  display: inline-flex;
  margin-top: 14px;
  padding-top: 12px;
  width: 100%;
  border-top: 1px solid rgba(245, 247, 246, .12);
  color: rgba(245, 247, 246, .58);
  font-style: normal;
  font-size: 11px;
  text-transform: uppercase;
  font-weight: 760;
}

.style-curator[data-state="set"] em {
  color: rgba(143, 184, 207, .9);
}

.chapter-style .style-ledger {
  max-width: 850px;
  height: min(70vh, 650px);
  gap: 22px;
  padding-right: 7vw;
  scroll-padding-left: 4px;
}

.chapter-style .style-ledger button {
  flex-basis: clamp(285px, 24vw, 400px);
  min-height: min(64vh, 580px);
  padding: 26px;
  color: rgba(245, 247, 246, .88);
  text-shadow: 0 8px 26px rgba(0, 0, 0, .65);
}

.chapter-style .style-ledger button::after {
  filter: saturate(1.08) contrast(1.08) brightness(.88);
  transform: scale(1.025);
}

.chapter-style .style-ledger button:hover::after,
.chapter-style .style-ledger button.is-selected::after {
  filter: saturate(1.12) contrast(1.08) brightness(.98);
}

.chapter-style .style-ledger button.is-selected {
  flex-basis: clamp(340px, 30vw, 480px);
  color: #fff;
  border-color: rgba(245, 247, 246, .92);
}

.chapter-style .style-ledger button.is-selected::after {
  transform: scale(1);
}

.chapter-style .style-ledger button.is-muted {
  opacity: .48;
  filter: grayscale(.25);
}

.chapter-style .style-ledger button.is-muted:hover {
  opacity: .72;
}

.chapter-style .style-ledger.is-at-limit::after {
  content: "Your style direction is taking shape.";
  position: sticky;
  right: 10px;
  align-self: flex-end;
  flex: 0 0 auto;
  min-width: 148px;
  margin-left: -148px;
  margin-bottom: 16px;
  padding: 11px 13px;
  border: 1px solid rgba(143, 184, 207, .42);
  background: rgba(5, 9, 12, .78);
  color: rgba(245, 247, 246, .72);
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 780;
  backdrop-filter: blur(12px);
}

.session[data-style-focus="modern"] .chapter-style .aperture-image,
.session[data-style-focus="contemporary"] .chapter-style .aperture-image {
  object-position: 58% 50%;
}

.session[data-style-focus="transitional"] .chapter-style .aperture-image,
.session[data-style-focus="traditional"] .chapter-style .aperture-image,
.session[data-style-focus="french-country"] .chapter-style .aperture-image {
  object-position: 52% 50%;
}

.session[data-style-focus="coastal"] .chapter-style .aperture-image,
.session[data-style-focus="tropical"] .chapter-style .aperture-image {
  object-position: 62% 50%;
}

.session[data-style-focus="not-sure-yet"] .chapter-style .aperture-image {
  object-position: 50% 48%;
  filter: saturate(.88) contrast(1.02) brightness(.94);
}

.chapter-handoff .generated-cover {
  box-shadow:
    0 54px 150px rgba(0, 0, 0, .58),
    inset 0 1px 0 rgba(255, 255, 255, .92);
}

.chapter-handoff .cover-head span {
  letter-spacing: 0;
  font-weight: 840;
}

.chapter-handoff .cover-lines span {
  color: rgba(5, 9, 12, .78);
}

.chapter-handoff .cover-next {
  color: rgba(5, 9, 12, .66);
  font-weight: 560;
}

.chapter-handoff .handoff-fields {
  border-left: 1px solid rgba(143, 184, 207, .18);
}

.chapter-handoff .handoff-fields h2 {
  max-width: 560px;
  font-size: clamp(38px, 4.2vw, 58px);
  text-wrap: balance;
}

.chapter-handoff .contact-grid {
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid rgba(245, 247, 246, .12);
}

.chapter-handoff .completion {
  padding: 11px 0 0;
}

.session[data-handoff-ready="true"] .chapter-handoff .generated-cover {
  border-color: rgba(143, 184, 207, .72);
}

.session[data-handoff-ready="true"] .chapter-handoff .cover-next {
  color: rgba(5, 9, 12, .82);
}

.decision-control button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid rgba(143, 184, 207, .9);
  outline-offset: 4px;
}

@media (max-width: 1280px) {
  .chapter-style .style-index {
    grid-template-columns: minmax(300px, 390px) minmax(0, 1fr);
  }

  .chapter-style .style-ledger button {
    flex-basis: clamp(260px, 27vw, 360px);
  }

  .chapter-style .style-ledger button.is-selected {
    flex-basis: clamp(310px, 32vw, 430px);
  }
}

@media (max-width: 1024px) {
  .chapter-style .style-index {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .style-curator {
    max-width: none;
  }

  .chapter-style .style-ledger {
    max-width: none;
    height: min(43vh, 370px);
  }
}

@media (max-width: 820px) {
  .chapter-style .style-index {
    display: flex;
    flex-direction: column;
    padding-bottom: 100px;
  }

  .chapter-style .style-index > .overline,
  .chapter-style .style-index > h2,
  .chapter-style .style-index > p:not(.guidance),
  .chapter-style .style-curator,
  .chapter-style .guidance,
  .chapter-style .style-ledger {
    grid-column: 1;
    grid-row: auto;
  }

  .chapter-style .style-curator {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 12px;
    margin-top: 12px;
    padding: 12px 14px;
  }

  .chapter-style .style-curator span {
    grid-column: 1;
  }

  .chapter-style .style-curator b {
    grid-column: 1;
    margin-top: 0;
    font-size: 17px;
  }

  .chapter-style .style-curator p {
    display: none;
  }

  .chapter-style .style-curator em {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    width: auto;
    margin: 0;
    padding: 0;
    border: 0;
    white-space: nowrap;
  }

  .chapter-style .style-ledger {
    height: auto;
    padding-right: 14px;
  }

  .chapter-style .style-ledger button,
  .chapter-style .style-ledger button.is-selected,
  .chapter-style .style-ledger button[data-exclusive="true"] {
    flex-basis: 76vw;
    min-height: 204px;
  }

  .chapter-style .style-ledger.is-at-limit::after {
    display: none;
  }

  .chapter-handoff .contact-grid {
    margin-top: 18px;
    padding-top: 16px;
  }
}

@media (max-width: 430px) {
  .chapter-style .style-ledger button,
  .chapter-style .style-ledger button.is-selected,
  .chapter-style .style-ledger button[data-exclusive="true"] {
    flex-basis: 78vw;
    min-height: 184px;
  }

  .style-curator em {
    font-size: 10px;
  }
}

.chapter.is-active img {
  transform: none;
}

:root {
  --p13-nav-safe: 136px;
  --p13-top-safe: clamp(74px, 8vh, 112px);
}

.site-lines,
.site-readout,
.readiness-plan blockquote {
  display: none !important;
}

.lens-field::after,
.site-plane::after,
.readiness-plan::after,
.depth-lab::after,
.evidence-table::after {
  background:
    linear-gradient(90deg, rgba(1, 3, 4, .64), rgba(1, 3, 4, .08) 52%, rgba(1, 3, 4, .58)),
    linear-gradient(180deg, rgba(1, 3, 4, .22), transparent 46%, rgba(1, 3, 4, .72));
}

.lens-copy,
.site-console,
.scope-type,
.readiness-panel,
.investment-read,
.evidence-panel,
.handoff-fields {
  max-height: calc(100dvh - var(--p13-top-safe) - var(--p13-nav-safe));
}

.chapter-style .style-index {
  display: grid;
  grid-template-columns: minmax(320px, 430px) minmax(0, 1fr);
  grid-template-rows: auto auto auto auto minmax(0, 1fr);
  column-gap: clamp(30px, 4vw, 60px);
  row-gap: 0;
  top: var(--p13-top-safe);
  bottom: var(--p13-nav-safe);
  height: calc(100dvh - var(--p13-top-safe) - var(--p13-nav-safe));
  max-height: none;
  align-items: stretch;
}

.chapter-style .style-index > .overline {
  grid-column: 1;
  grid-row: 1;
}

.chapter-style .style-index > h2 {
  grid-column: 1;
  grid-row: 2;
  margin-top: 16px;
}

.chapter-style .style-index > p:not(.guidance) {
  grid-column: 1;
  grid-row: 3;
  margin-top: 16px;
}

.chapter-style .style-curator {
  grid-column: 1;
  grid-row: 4;
  margin-top: 18px;
}

.chapter-style .guidance {
  grid-column: 1;
  grid-row: 5;
  align-self: end;
  margin-bottom: 0;
}

.chapter-style .style-ledger {
  grid-column: 2;
  grid-row: 1 / -1;
  height: 100%;
  max-height: 100%;
  min-height: 0;
  align-self: stretch;
  padding-bottom: 0;
}

.chapter-style .style-ledger button,
.chapter-style .style-ledger button.is-selected,
.chapter-style .style-ledger button[data-exclusive="true"] {
  height: 100%;
  min-height: 0;
  max-height: 100%;
}

.chapter-style .style-ledger.is-at-limit::after {
  margin-bottom: 8px;
}

.chapter-handoff .cover-generator {
  align-items: start;
  padding-top: var(--p13-top-safe);
  padding-bottom: var(--p13-nav-safe);
}

.chapter-handoff .generated-cover {
  max-height: calc(100dvh - var(--p13-top-safe) - var(--p13-nav-safe));
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
}

.chapter-handoff .cover-head h2 {
  font-size: clamp(34px, 3.55vw, 54px);
}

.chapter-handoff .cover-lines {
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(73, 107, 125, .45) transparent;
}

.chapter-handoff .cover-next {
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px solid rgba(5, 9, 12, .12);
}

.chapter-handoff .handoff-fields {
  padding-top: var(--p13-top-safe);
  padding-bottom: var(--p13-nav-safe);
  max-height: 100dvh;
}

.chapter-handoff .contact-grid {
  background:
    linear-gradient(180deg, rgba(245, 247, 246, .04), rgba(245, 247, 246, .02));
  border: 1px solid rgba(245, 247, 246, .11);
  padding: 14px;
  gap: 8px 10px;
}

.chapter-handoff .contact-grid label {
  gap: 6px;
}

.chapter-handoff input,
.chapter-handoff textarea,
.chapter-handoff select {
  min-height: 40px;
  padding-top: 9px;
  padding-bottom: 9px;
}

.chapter-handoff textarea {
  min-height: 76px;
}

@media (max-width: 1280px) {
  :root {
    --p13-nav-safe: 128px;
    --p13-top-safe: 76px;
  }

  .chapter-style .style-index {
    width: min(1060px, 88vw);
    column-gap: 28px;
  }

  .chapter-style .style-index > h2 {
    font-size: clamp(30px, 4vw, 52px);
  }

  .chapter-style .style-index > p:not(.guidance) {
    font-size: 15px;
  }
}

@media (max-width: 1024px) {
  :root {
    --p13-nav-safe: 124px;
    --p13-top-safe: 72px;
  }

  .chapter-style .style-index {
    display: flex;
    flex-direction: column;
    width: min(820px, 88vw);
    overflow: hidden;
  }

  .chapter-style .style-index > h2 {
    font-size: clamp(28px, 4.6vw, 42px);
  }

  .chapter-style .style-curator {
    flex: 0 0 auto;
  }

  .chapter-style .style-ledger {
    flex: 1 1 auto;
    min-height: 0;
    margin-top: 14px;
  }

  .chapter-style .guidance {
    align-self: stretch;
    margin-top: 10px;
  }
}

@media (max-width: 820px) {
  :root {
    --p13-nav-safe: 106px;
  }

  .lens-copy,
  .site-console,
  .scope-type,
  .readiness-panel,
  .investment-read,
  .evidence-panel,
  .handoff-fields {
    max-height: none;
  }

  .chapter-style .style-index {
    position: relative;
    inset: auto;
    width: 100vw;
    height: 100%;
    max-height: none;
    padding: 18px 18px var(--p13-nav-safe);
  }

  .chapter-style .style-index > h2 {
    font-size: clamp(28px, 8.2vw, 36px);
  }

  .chapter-style .style-index > p:not(.guidance) {
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.35;
  }

  .chapter-style .style-curator {
    margin-top: 12px;
  }

  .chapter-style .style-ledger {
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    max-height: none;
    margin-top: 14px;
  }

  .chapter-style .style-ledger button,
  .chapter-style .style-ledger button.is-selected,
  .chapter-style .style-ledger button[data-exclusive="true"] {
    height: auto;
    min-height: clamp(132px, 22vh, 178px);
    max-height: none;
  }

  .chapter-style .guidance {
    flex: 0 0 auto;
    margin-top: 10px;
  }

  .chapter-handoff .cover-generator {
    padding-bottom: 0;
    padding-top: 0;
  }

  .chapter-handoff .handoff-fields {
    padding-bottom: var(--p13-nav-safe);
  }

  .chapter-handoff .contact-grid {
    padding: 14px;
  }
}

@media (max-width: 430px) {
  :root {
    --p13-nav-safe: 96px;
  }

  .chapter-style .style-index {
    padding-top: 16px;
  }

  .chapter-style .style-curator {
    padding: 10px 12px;
  }

  .chapter-style .style-ledger button,
  .chapter-style .style-ledger button.is-selected,
  .chapter-style .style-ledger button[data-exclusive="true"] {
    min-height: clamp(120px, 20vh, 158px);
  }
}

@media (min-width: 1025px) {
  .chapter-style .style-index {
    grid-template-columns: minmax(330px, 430px) minmax(0, 1fr);
    grid-template-rows: auto auto auto minmax(0, 1fr);
    column-gap: clamp(28px, 3.5vw, 54px);
    row-gap: 0;
    width: min(1180px, 84vw);
  }

  .chapter-style .style-index > .overline {
    display: none;
  }

  .chapter-style .style-index > h2 {
    grid-row: 1;
    margin: 0;
    font-size: clamp(42px, 4.2vw, 60px);
    line-height: .98;
    max-width: 8.2em;
  }

  .chapter-style .style-index > p:not(.guidance) {
    grid-row: 2;
    margin-top: 14px;
    max-width: 25em;
  }

  .chapter-style .style-curator {
    grid-row: 3;
    margin-top: 18px;
    padding: 20px;
  }

  .chapter-style .guidance {
    grid-row: 4;
  }

  .chapter-style .style-ledger {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-rows: minmax(0, 1fr);
    gap: 12px;
    width: 100%;
    max-width: none;
    height: 100%;
    overflow: visible;
    padding: 0;
  }

  .chapter-style .style-ledger button,
  .chapter-style .style-ledger button.is-selected,
  .chapter-style .style-ledger button[data-exclusive="true"] {
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    flex-basis: auto;
    padding: 14px;
    font-size: clamp(12px, .95vw, 15px);
    line-height: 1.05;
  }

  .chapter-style .style-ledger button.is-selected {
    flex-basis: auto;
    box-shadow:
      inset 0 0 0 1px rgba(245, 247, 246, .88),
      0 18px 46px rgba(0, 0, 0, .32);
  }

  .chapter-style .style-ledger.is-at-limit::after {
    position: absolute;
    top: 12px;
    right: 12px;
    bottom: auto;
    z-index: 6;
    min-width: 0;
    margin: 0;
    pointer-events: none;
  }

  .chapter-style .guidance {
    padding-top: 18px;
  }
}

/* Prototype 14 final refinement: curation, ceremony, restrained motion. */
:root {
  --p14-ease: cubic-bezier(.2, .82, .18, 1);
  --p14-quick: cubic-bezier(.24, .72, .22, 1);
}

.chapter-track {
  transition-duration: .58s;
  transition-timing-function: var(--p14-ease);
}

.chapter.is-exiting {
  opacity: .36;
  transform: translateX(0) scale(.992);
}

.chapter.is-active img {
  inset: 1%;
  width: 98%;
  height: 98%;
  transform: scale(1.018) translate3d(var(--p14-drift-x, 0), var(--p14-drift-y, 0), 0);
  transition: transform .72s var(--p14-ease), filter .42s ease, opacity .28s ease;
}

.chapter-lens.is-active img,
.chapter-site.is-active img {
  --p14-drift-x: -.8%;
}

.chapter-scope.is-active img,
.chapter-style.is-active img,
.chapter-investment.is-active img {
  --p14-drift-x: .9%;
}

.chapter-evidence.is-active img,
.chapter-handoff.is-active img {
  --p14-drift-y: -.7%;
}

.chapter.is-active .chapter-copy,
.chapter.is-active .site-console,
.chapter.is-active .scope-type,
.chapter.is-active .style-index,
.chapter.is-active .readiness-panel,
.chapter.is-active .investment-read,
.chapter.is-active .evidence-panel,
.chapter.is-active .handoff-fields,
.chapter.is-active .generated-cover {
  animation: p14PanelIn .52s var(--p14-ease) both;
}

.chapter.is-active h1,
.chapter.is-active h2,
.chapter.is-active h3,
.chapter.is-active .overline,
.chapter.is-active .chapter-copy > p,
.chapter.is-active .site-console > .address-grid,
.chapter.is-active .scope-type > p:not(.overline):not(.guidance),
.chapter.is-active .style-index > p:not(.guidance),
.chapter.is-active .investment-read > p:not(.overline):not(.guidance),
.chapter.is-active .evidence-panel > h3,
.chapter.is-active .handoff-note {
  animation: p14TextIn .5s var(--p14-ease) both;
}

.chapter.is-active .decision-control,
.chapter.is-active .statement-inputs,
.chapter.is-active .inspiration-field,
.chapter.is-active .contact-grid {
  animation: p14ControlIn .5s var(--p14-ease) .08s both;
}

.chapter.is-active .guidance {
  animation: p14TextIn .42s var(--p14-ease) .14s both;
}

.decision-control button,
.room-chain button,
.style-ledger button {
  transition:
    transform .22s var(--p14-quick),
    border-color .22s ease,
    background-color .22s ease,
    opacity .22s ease,
    box-shadow .24s ease,
    filter .24s ease;
}

.decision-control button.is-selected,
.room-chain button.is-selected,
.style-ledger button.is-selected {
  transform: translateY(-3px);
}

.room-chain button.is-selected::after,
.style-ledger button.is-selected::after {
  transform: scale(1.015);
}

.next-control,
.back-control,
.chapter-count i::before {
  transition:
    transform .18s var(--p14-quick),
    opacity .18s ease,
    background-size .42s var(--p14-ease),
    color .18s ease,
    border-color .18s ease;
}

.next-control:hover {
  transform: translateX(3px);
}

.back-control:hover:not(:disabled) {
  transform: translateX(-3px);
}

.chapter-count b,
.chapter-count em {
  transition: opacity .22s ease, transform .22s var(--p14-quick);
}

.session[data-moving="true"] .chapter-count b {
  opacity: .55;
  transform: translateY(-2px);
}

.scope-type h2,
.evidence-panel h2,
.investment-read h2,
.chapter-handoff .handoff-fields h2 {
  font-size: clamp(32px, 3.55vw, 54px);
  line-height: 1.03;
  text-wrap: balance;
}

.scope-type h2 {
  max-width: 10.5em;
}

.investment-read h2,
.evidence-panel h2 {
  max-width: 11em;
}

.evidence-panel h3 {
  margin: 24px 0 12px;
  color: rgba(245, 247, 246, .84);
  font-size: clamp(15px, 1.1vw, 18px);
  font-weight: 720;
  line-height: 1.2;
}

.evidence-panel .timing-row + h3 {
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid rgba(245, 247, 246, .12);
}

.evidence-panel .timing-row,
.evidence-panel .source-tray {
  margin-top: 0;
}

.style-pairing {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 16px;
}

.style-pairing i {
  display: block;
  min-height: 76px;
  border: 1px solid rgba(245, 247, 246, .14);
  background:
    linear-gradient(180deg, rgba(1, 3, 4, .08), rgba(1, 3, 4, .44)),
    var(--pair-image, url("guided-discovery-20-4-assets/style-transitional-kitchen-3.jpg")) center / cover;
  opacity: .95;
  transform: translateY(0);
  transition: opacity .22s ease, transform .24s var(--p14-quick), border-color .22s ease;
}

.style-pairing i.is-empty {
  opacity: .24;
  filter: grayscale(.6);
}

.style-curator[data-state="set"] .style-pairing i:not(.is-empty) {
  border-color: rgba(143, 184, 207, .42);
  transform: translateY(-1px);
}

@media (min-width: 1025px) {
  .chapter-style .style-index {
    grid-template-columns: minmax(320px, 410px) minmax(0, 1fr);
    width: min(1190px, 84vw);
  }

  .chapter-style .style-index > h2 {
    font-size: clamp(38px, 3.7vw, 54px);
    max-width: 8.7em;
  }

  .chapter-style .style-curator {
    max-width: 410px;
    padding: 18px;
  }

  .chapter-style .style-ledger {
    grid-template-columns: 1.45fr 1.25fr repeat(2, minmax(0, 1fr));
    gap: 11px;
  }

  .chapter-style .style-ledger button {
    opacity: .62;
    filter: saturate(.84) contrast(1.02) brightness(.8);
  }

  .chapter-style .style-ledger button:hover,
  .chapter-style .style-ledger button.is-selected {
    opacity: 1;
    filter: saturate(1.04) contrast(1.08) brightness(.96);
  }

  .chapter-style .style-ledger button.is-selected {
    z-index: 3;
    font-size: clamp(14px, 1.08vw, 17px);
  }

  .chapter-style .style-ledger.is-at-limit::after {
    content: none;
  }
}

.chapter-handoff.is-active .generated-cover {
  animation: p14CoverIn .68s var(--p14-ease) both;
}

.chapter-handoff.is-active .cover-head,
.chapter-handoff.is-active .cover-statement,
.chapter-handoff.is-active .packet-path,
.chapter-handoff.is-active .cover-lines,
.chapter-handoff.is-active .cover-next {
  animation: p14TextIn .5s var(--p14-ease) both;
}

.chapter-handoff.is-active .cover-statement { animation-delay: .08s; }
.chapter-handoff.is-active .packet-path { animation-delay: .14s; }
.chapter-handoff.is-active .cover-lines { animation-delay: .2s; }
.chapter-handoff.is-active .cover-next { animation-delay: .28s; }

.chapter-handoff.is-active .handoff-fields {
  animation-delay: .18s;
}

.chapter-handoff.is-active .contact-grid {
  animation-delay: .28s;
}

.session[data-stage="8"] .next-control {
  animation: p14CtaIn .52s var(--p14-ease) .38s both;
}

.chapter-handoff .generated-cover {
  width: min(700px, 47vw);
}

.chapter-handoff .cover-head h2 {
  font-size: clamp(30px, 3vw, 48px);
}

.chapter-handoff .handoff-fields h2 {
  max-width: 520px;
}

.chapter-handoff .contact-grid {
  background:
    linear-gradient(180deg, rgba(245, 247, 246, .065), rgba(245, 247, 246, .025)),
    rgba(5, 9, 12, .22);
}

@keyframes p14PanelIn {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes p14TextIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes p14ControlIn {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes p14CoverIn {
  from { opacity: 0; transform: translateY(18px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes p14CtaIn {
  from { opacity: 0; transform: translateX(10px); }
  to { opacity: 1; transform: translateX(0); }
}

@media (max-width: 1280px) {
  .scope-type h2,
  .evidence-panel h2,
  .investment-read h2,
  .chapter-handoff .handoff-fields h2 {
    font-size: clamp(30px, 3.6vw, 48px);
  }

  .style-pairing i {
    min-height: 62px;
  }
}

@media (max-width: 820px) {
  .chapter.is-active img {
    transform: scale(1.01);
  }

  .scope-type h2,
  .evidence-panel h2,
  .investment-read h2,
  .chapter-handoff .handoff-fields h2 {
    font-size: clamp(27px, 7.6vw, 36px);
  }

  .style-pairing {
    display: none;
  }

  .evidence-panel h3 {
    margin-top: 18px;
    font-size: 14px;
  }

  .evidence-panel .timing-row + h3 {
    margin-top: 20px;
    padding-top: 14px;
  }

  .chapter-handoff .generated-cover {
    width: calc(100% - 32px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .chapter-track,
  .chapter,
  .chapter img,
  .decision-control button,
  .room-chain button,
  .style-ledger button,
  .next-control,
  .back-control,
  .chapter-count b,
  .chapter-count em,
  .style-pairing i {
    transition: none !important;
    animation: none !important;
  }

  .chapter.is-active img,
  .decision-control button.is-selected,
  .room-chain button.is-selected,
  .style-ledger button.is-selected,
  .next-control:hover,
  .back-control:hover:not(:disabled) {
    transform: none !important;
  }

  .chapter.is-active .chapter-copy,
  .chapter.is-active .site-console,
  .chapter.is-active .scope-type,
  .chapter.is-active .style-index,
  .chapter.is-active .readiness-panel,
  .chapter.is-active .investment-read,
  .chapter.is-active .evidence-panel,
  .chapter.is-active .handoff-fields,
  .chapter.is-active .generated-cover,
  .chapter.is-active h1,
  .chapter.is-active h2,
  .chapter.is-active h3,
  .chapter.is-active .overline,
  .chapter.is-active .decision-control,
  .chapter.is-active .statement-inputs,
  .chapter.is-active .inspiration-field,
  .chapter.is-active .contact-grid {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}

/* Prototype 14 final mobile closeout: Evidence and Handoff must remain usable above fixed controls. */
@media (max-width: 820px) {
  .chapter-evidence {
    grid-template-rows: 24vh 1fr;
  }

  .chapter-evidence .evidence-panel {
    padding: 16px 18px 102px;
  }

  .chapter-evidence .evidence-panel h2 {
    font-size: clamp(25px, 7vw, 32px);
    line-height: 1.02;
  }

  .chapter-evidence .evidence-panel h3 {
    margin: 14px 0 9px;
    font-size: 13px;
  }

  .chapter-evidence .timing-row,
  .chapter-evidence .source-tray {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    overflow: visible;
    margin-top: 0;
    padding: 0;
  }

  .chapter-evidence .timing-row button,
  .chapter-evidence .source-tray button {
    width: auto;
    min-height: 38px;
    padding: 7px 9px;
    font-size: 13px;
    line-height: 1.12;
  }

  .chapter-evidence .timing-row button:last-child {
    grid-column: 1 / -1;
  }

  .chapter-evidence .timing-row + h3 {
    margin-top: 14px;
    padding-top: 12px;
  }

  .chapter-evidence .inspiration-field {
    margin-top: 10px;
  }

  .chapter-evidence input {
    min-height: 40px;
  }

  .chapter-handoff {
    grid-template-rows: 25vh 1fr;
  }

  .chapter-handoff .cover-generator {
    padding: 58px 18px 0;
  }

  .chapter-handoff .generated-cover {
    width: min(270px, 62vw);
    min-height: 0;
    max-height: 20vh;
    padding: 12px 14px;
    overflow: hidden;
  }

  .chapter-handoff .cover-head span {
    font-size: 9px;
  }

  .chapter-handoff .cover-head h2 {
    margin-top: 8px;
    font-size: clamp(21px, 7vw, 30px);
    line-height: 1;
  }

  .chapter-handoff .cover-statement,
  .chapter-handoff .packet-path,
  .chapter-handoff .cover-lines,
  .chapter-handoff .cover-next {
    display: none;
  }

  .chapter-handoff .handoff-fields {
    height: 75vh;
    padding: 18px 18px 112px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .chapter-handoff .handoff-fields h2 {
    font-size: clamp(27px, 7.6vw, 36px);
    line-height: 1.04;
  }

  .chapter-handoff .handoff-note {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.35;
  }

  .chapter-handoff .contact-grid {
    margin-top: 14px;
    padding: 12px;
    gap: 8px;
  }

  .chapter-handoff .contact-grid label {
    gap: 5px;
    font-size: 12px;
  }

  .chapter-handoff input,
  .chapter-handoff textarea,
  .chapter-handoff select {
    min-height: 38px;
    padding: 8px 12px;
  }

  .chapter-handoff textarea {
    min-height: 66px;
  }
}

@media (max-width: 430px) {
  .chapter-evidence {
    grid-template-rows: 20vh 1fr;
  }

  .chapter-evidence .evidence-panel {
    padding-top: 14px;
  }

  .chapter-evidence .evidence-panel h2 {
    font-size: 28px;
  }

  .chapter-evidence .evidence-panel h3 {
    margin-top: 11px;
  }

  .chapter-evidence .timing-row button,
  .chapter-evidence .source-tray button {
    min-height: 35px;
    font-size: 12px;
  }

  .chapter-handoff {
    grid-template-rows: 22vh 1fr;
  }

  .chapter-handoff .generated-cover {
    max-height: 17vh;
  }
}

/* Prototype 17 final override - appended for cascade certainty. */
.chapter-style .style-index > h2{font-size:clamp(32px,3.15vw,48px)!important;max-width:11.4em!important}.chapter-style .style-curator{display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(170px,1.08fr)!important;grid-template-areas:"label pairing" "title pairing" "note pairing" "count pairing"!important;gap:8px 16px!important;padding:clamp(18px,1.8vw,24px)!important;border-color:rgba(143,184,207,.28)!important;background:linear-gradient(135deg,rgba(143,184,207,.11),rgba(245,247,246,.035) 48%,rgba(4,8,11,.5)),rgba(4,8,11,.7)!important}.chapter-style .style-curator span{grid-area:label}.chapter-style .style-curator b{grid-area:title;font-size:clamp(18px,1.7vw,25px)!important;line-height:1.02!important}.chapter-style .style-curator p{grid-area:note;line-height:1.42!important}.chapter-style .style-curator em{grid-area:count;width:fit-content!important;margin-top:8px!important;padding:7px 10px!important;border:1px solid rgba(143,184,207,.28)!important;background:rgba(143,184,207,.09)!important;color:rgba(245,247,246,.78)!important}.chapter-style .style-pairing{grid-area:pairing;display:grid!important;grid-template-columns:1.18fr .82fr!important;gap:9px!important;min-height:128px!important;margin:0!important}.chapter-style .style-pairing i{min-height:128px!important;opacity:.92!important;filter:saturate(.98) contrast(1.05) brightness(.88)!important}.chapter-style .style-pairing i:first-child{min-height:144px!important}.chapter-style .style-pairing i.is-companion{opacity:.58!important;filter:saturate(.76) contrast(1.02) brightness(.72)!important}.chapter-style .style-pairing i.is-companion::after{content:"Add second direction";position:absolute;left:10px;right:10px;bottom:10px;padding:7px 8px;background:rgba(3,6,8,.72);color:rgba(245,247,246,.84);font-size:10px;font-weight:760;letter-spacing:.08em;text-transform:uppercase}.chapter-style .style-ledger button{color:rgba(245,247,246,.84)!important;opacity:.74!important;filter:saturate(.88) contrast(1.03) brightness(.82)!important}.chapter-style .style-ledger button:hover{opacity:.92!important;filter:saturate(.98) contrast(1.07) brightness(.9)!important}.chapter-style .style-ledger button.is-selected{opacity:1!important;filter:saturate(1.08) contrast(1.1) brightness(1)!important;box-shadow:inset 0 0 0 1px rgba(245,247,246,.86),inset 0 -42px 54px rgba(1,3,4,.34),0 18px 48px rgba(0,0,0,.34)!important}.chapter-style .style-ledger button.is-muted{opacity:.54!important;filter:saturate(.7) contrast(1) brightness(.76)!important}.chapter-scope .room-chain button{opacity:.86!important;filter:saturate(.9) contrast(1.08) brightness(.86)!important}.chapter-scope .room-chain button::before{background:linear-gradient(180deg,rgba(1,3,4,.08),rgba(1,3,4,.44))!important}.chapter-scope .room-chain button.is-selected{opacity:1!important;filter:saturate(1.04) contrast(1.13) brightness(1)!important}.chapter-evidence .evidence-panel h2{font-size:clamp(30px,3.15vw,48px)!important;max-width:10.5em!important}.chapter-evidence .evidence-panel h3{margin:18px 0 10px!important}.chapter-evidence .timing-row + h3{margin-top:20px!important;padding-top:14px!important}.chapter-readiness .readiness-panel h2,.chapter-investment .investment-read h2{font-size:clamp(31px,3.25vw,50px)!important;max-width:10.8em!important}.chapter-handoff .generated-cover{width:min(720px,48vw)!important;box-shadow:0 38px 110px rgba(0,0,0,.46),22px 0 54px rgba(143,184,207,.08)!important}.chapter-handoff .handoff-fields{width:min(42vw,600px)!important;padding-left:clamp(28px,3.2vw,54px)!important}.chapter-handoff .handoff-fields h2{font-size:clamp(31px,3.2vw,48px)!important;max-width:11.8em!important}.chapter-handoff .contact-grid{gap:10px!important;padding:16px!important;border-color:rgba(143,184,207,.24)!important;background:linear-gradient(135deg,rgba(143,184,207,.075),rgba(245,247,246,.028)),rgba(245,247,246,.035)!important}.chapter-handoff input,.chapter-handoff textarea,.chapter-handoff select{min-height:42px!important;background:rgba(245,247,246,.065)!important;border-color:rgba(245,247,246,.16)!important}@media(max-width:1350px){.chapter-style .style-curator{grid-template-columns:1fr!important;grid-template-areas:"label" "title" "note" "pairing" "count"!important}.chapter-style .style-pairing,.chapter-style .style-pairing i,.chapter-style .style-pairing i:first-child{min-height:82px!important}}@media(max-width:820px){.chapter-style .style-index > h2,.chapter-handoff .handoff-fields h2,.chapter-readiness .readiness-panel h2,.chapter-investment .investment-read h2,.chapter-evidence .evidence-panel h2{font-size:clamp(25px,7vw,34px)!important}.chapter-style .style-pairing{display:none!important}.chapter-handoff .generated-cover{width:min(270px,62vw)!important}}

/* Prototype 17 room exposure final nudge. */
.chapter-scope .room-chain button{opacity:.94!important;filter:saturate(.96) contrast(1.1) brightness(.94)!important}.chapter-scope .room-chain button::before{background:linear-gradient(180deg,rgba(1,3,4,.03),rgba(1,3,4,.34))!important}.chapter-scope .room-chain button.is-selected{opacity:1!important;filter:saturate(1.05) contrast(1.12) brightness(1.02)!important}

/* Prototype 18 final handoff + submission-state layer. */
.submission-trap,[data-csrf-token],[data-idempotency-key]{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.chapter-handoff .cover-generator{padding-right:41vw!important}.chapter-handoff .generated-cover{width:min(760px,50vw)!important;transform-origin:center right}.chapter-handoff .generated-cover::after{content:"";position:absolute;top:50%;right:-44px;width:88px;height:1px;background:linear-gradient(90deg,rgba(143,184,207,.72),rgba(143,184,207,0))}.chapter-handoff .handoff-fields{width:min(40vw,580px)!important;padding-left:clamp(34px,3.5vw,62px)!important}.chapter-handoff .handoff-bridge{border-color:rgba(143,184,207,.34)!important}.chapter-handoff .contact-grid{border-color:rgba(143,184,207,.32)!important;background:linear-gradient(135deg,rgba(143,184,207,.11),rgba(245,247,246,.035)),rgba(5,9,12,.38)!important;box-shadow:inset 0 0 0 1px rgba(245,247,246,.035),0 18px 56px rgba(0,0,0,.22)}.chapter-handoff .completion{display:block;min-height:42px;margin-top:22px;padding:12px 14px;border:1px solid rgba(245,247,246,.16);background:rgba(245,247,246,.035);color:rgba(245,247,246,.86);line-height:1.35}.chapter-handoff .completion a{display:inline-flex;margin-left:10px;color:#f5f7f6;text-decoration:none;border-bottom:1px solid rgba(143,184,207,.75)}.session[data-submission-state="submitting"] .chapter-handoff .completion{border-color:rgba(143,184,207,.38);background:rgba(143,184,207,.08)}.session[data-submission-state="confirmed"] .chapter-handoff .completion{border-color:rgba(143,184,207,.56);background:rgba(143,184,207,.12)}.session[data-submission-state="partial-failure"] .chapter-handoff .completion,.session[data-submission-state="failed"] .chapter-handoff .completion{border-color:rgba(207,143,143,.42);background:rgba(207,143,143,.08)}.session[data-submission-state="submitting"] .next-control{opacity:.68;pointer-events:none}@media(max-width:1024px){.chapter-handoff .cover-generator{padding-right:18px!important}.chapter-handoff .generated-cover::after{content:none!important}.chapter-handoff .handoff-fields{width:100%!important;padding-left:18px!important}}

/* Prototype 20.4 visual-card repair: keep room/style imagery in the button
   background layer so it cannot disappear behind the control background. */
.opening-resolve,
.opening-resolve img {
  pointer-events: none !important;
}

.room-chain button[data-image],
.style-ledger button[data-image] {
  position: relative !important;
  z-index: 2 !important;
  --visual-card-fallback:
    linear-gradient(135deg, rgba(143, 184, 207, .28), rgba(245, 247, 246, .07) 48%, rgba(4, 8, 11, .72)),
    repeating-linear-gradient(135deg, rgba(245, 247, 246, .055) 0 1px, transparent 1px 12px);
  background-color: #070b0e !important;
  background-image:
    linear-gradient(180deg, rgba(1, 3, 4, .08), rgba(1, 3, 4, .56)),
    linear-gradient(90deg, rgba(1, 3, 4, .32), rgba(1, 3, 4, .04) 62%),
    var(--choice-image, var(--visual-card-fallback)) !important;
  background-size: auto, auto, cover !important;
  background-position: center, center, center !important;
  background-repeat: no-repeat !important;
  color: rgba(245, 247, 246, .92) !important;
  text-shadow: 0 2px 14px rgba(0, 0, 0, .72);
}

.style-ledger {
  position: relative !important;
  z-index: 12 !important;
  pointer-events: auto !important;
}

.style-ledger button {
  pointer-events: auto !important;
}

@media (max-width: 1024px) {
  .chapter-style .style-index {
    pointer-events: none !important;
  }

  .chapter-style .style-ledger,
  .chapter-style .style-ledger *,
  .chapter-style .style-curator,
  .chapter-style .style-curator * {
    pointer-events: auto !important;
  }

  .chapter-style .style-ledger {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .chapter-style .style-ledger button[data-image] {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 138px !important;
  }
}

@media (max-width: 520px) {
  .chapter-style .style-ledger {
    grid-template-columns: 1fr !important;
  }
}

.room-chain button[data-image]::after,
.style-ledger button[data-image]::after {
  display: none !important;
}

.room-chain button[data-image]::before,
.style-ledger button[data-image]::before {
  z-index: 1 !important;
  left: 0 !important;
  right: auto !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 3px !important;
  background: rgba(143, 184, 207, .88) !important;
  transform: scaleY(0);
  transform-origin: bottom;
  opacity: .9;
}

.room-chain button[data-image].is-selected::before,
.style-ledger button[data-image].is-selected::before {
  transform: scaleY(1);
}

.room-chain button[data-image][data-image-state="loaded"],
.style-ledger button[data-image][data-image-state="loaded"] {
  filter: saturate(1) contrast(1.05) brightness(.94) !important;
}

.room-chain button[data-image]:hover,
.style-ledger button[data-image]:hover,
.room-chain button[data-image].is-selected,
.style-ledger button[data-image].is-selected {
  background-image:
    linear-gradient(180deg, rgba(1, 3, 4, .03), rgba(1, 3, 4, .46)),
    linear-gradient(90deg, rgba(1, 3, 4, .24), rgba(1, 3, 4, .02) 62%),
    var(--choice-image, var(--visual-card-fallback)) !important;
  filter: saturate(1.04) contrast(1.08) brightness(1) !important;
}

.room-chain button[data-image][data-image-state="error"],
.style-ledger button[data-image][data-image-state="error"] {
  background-image:
    linear-gradient(180deg, rgba(1, 3, 4, .08), rgba(1, 3, 4, .54)),
    var(--visual-card-fallback) !important;
}

.chapter-style .style-pairing i {
  background:
    linear-gradient(180deg, rgba(1, 3, 4, .04), rgba(1, 3, 4, .26)),
    var(--pair-image, url("guided-discovery-20-4-assets/style-transitional-kitchen-3.jpg")) center / cover !important;
  opacity: .98 !important;
  filter: saturate(1.02) contrast(1.06) brightness(.94) !important;
}

.chapter-style .style-pairing i.is-companion {
  opacity: .74 !important;
  filter: saturate(.92) contrast(1.04) brightness(.86) !important;
}

@media (max-width: 820px) {
  .chapter-style .style-pairing {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    min-height: 86px !important;
    margin-top: 8px !important;
  }

  .chapter-style .style-pairing i,
  .chapter-style .style-pairing i:first-child {
    min-height: 86px !important;
  }
}

/* Prototype 19 Apps Script handoff hardening. */
.chapter-handoff .contact-grid{gap:12px!important;padding:14px!important}.chapter-handoff .contact-grid label{gap:6px!important}.chapter-handoff .contact-grid input,.chapter-handoff .contact-grid textarea{min-height:42px!important;padding:10px 12px!important}.chapter-handoff .contact-grid textarea{min-height:70px!important}.chapter-handoff .completion{margin-top:12px!important}.session[data-submission-state="failed"] .chapter-handoff .completion{border-color:rgba(207,143,143,.48)!important}.session[data-submission-state="confirmed"] .chapter-handoff .completion{border-color:rgba(143,184,207,.68)!important}@media(max-height:850px) and (min-width:1025px){.chapter-handoff .cover-generator{transform:scale(.9)!important;transform-origin:left center!important}.chapter-handoff .generated-cover{width:min(700px,48vw)!important}.chapter-handoff .handoff-fields{padding-top:42px!important;padding-bottom:86px!important}.chapter-handoff .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.chapter-handoff .contact-grid label:last-of-type{grid-column:1/-1!important}.chapter-handoff .contact-grid textarea{min-height:58px!important}.chapter-handoff .chapter-copy h2{font-size:clamp(38px,4.8vw,66px)!important}.chapter-handoff .chapter-copy p{font-size:15px!important}}@media(max-height:730px) and (min-width:1025px){.chapter-handoff .cover-generator{transform:scale(.82)!important}.chapter-handoff .contact-grid input{min-height:38px!important}.chapter-handoff .completion{font-size:13px!important;min-height:36px!important}.chapter-handoff .chapter-copy{gap:10px!important}}

/* Prototype 20.4 owner-polish layer: purposeful handoff status,
   native select closed-state contrast, and non-disabled style cards. */
.chapter-handoff .completion{min-height:0!important;padding:13px 15px!important;border-color:rgba(143,184,207,.34)!important;background:linear-gradient(135deg,rgba(143,184,207,.105),rgba(245,247,246,.035)),rgba(5,9,12,.52)!important;color:rgba(245,247,246,.82)!important;font-size:13px!important;line-height:1.42!important;box-shadow:inset 0 0 0 1px rgba(245,247,246,.035)}
.chapter-handoff .completion strong{display:block;margin-bottom:5px;color:#f5f7f6;font-size:10px;font-weight:820;letter-spacing:.16em;text-transform:uppercase}
.chapter-handoff .submission-status-copy,
.chapter-handoff .submission-status-next{display:block}
.chapter-handoff .submission-status-next{margin-top:7px;color:rgba(245,247,246,.7)}
.chapter-handoff .contact-grid select{appearance:auto!important;color:rgba(245,247,246,.94)!important;background-color:rgba(245,247,246,.075)!important;border-color:rgba(245,247,246,.2)!important}
.chapter-handoff .contact-grid select:invalid,.chapter-handoff .contact-grid select option[value=""]{color:rgba(245,247,246,.68)!important}
.chapter-handoff .contact-grid select option{color:#101418;background:#f5f7f6}
.chapter-style .style-ledger button[data-image]{opacity:.9!important;filter:saturate(.96) contrast(1.08) brightness(.9)!important}
.chapter-style .style-ledger button[data-image]:hover{opacity:.98!important;filter:saturate(1.02) contrast(1.1) brightness(.96)!important}
.chapter-style .style-ledger button[data-image].is-muted{opacity:.72!important;filter:saturate(.88) contrast(1.04) brightness(.84)!important}
.chapter-style .style-ledger button[data-image].is-selected{opacity:1!important;filter:saturate(1.06) contrast(1.11) brightness(1)!important}
@media(min-width:1025px) and (max-height:850px){.chapter-handoff .contact-grid{gap:9px!important;padding:13px!important}.chapter-handoff .contact-grid input,.chapter-handoff .contact-grid select{min-height:39px!important;padding-top:8px!important;padding-bottom:8px!important}.chapter-handoff .contact-grid textarea{min-height:54px!important}.chapter-handoff .completion{margin-top:10px!important;padding-top:10px!important;padding-bottom:10px!important}}
@media(max-width:820px){.chapter-handoff .completion{margin-top:12px!important}}
