.page-hero { min-height: 660px; padding: calc(var(--header-h) + clamp(70px, 9vw, 125px)) 0 clamp(75px, 9vw, 120px); }
.page-hero--compact { min-height: 570px; }
.narrow-shell { width: min(calc(100% - 48px), 850px); margin-inline: auto; }
.page-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(350px, .9fr); gap: clamp(45px, 8vw, 110px); align-items: center; }
.hero-system, .process-radar, .team-constellation { position: relative; display: grid; aspect-ratio: 1; max-width: 480px; place-items: center; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; background: radial-gradient(circle, rgba(182,109,36,.16), transparent 55%); }
.hero-system::before, .process-radar::before, .team-constellation::before { content: ""; position: absolute; inset: 20%; border: 1px dashed rgba(255,255,255,.2); border-radius: 50%; }
.hero-system__core, .process-radar strong, .team-constellation strong { z-index: 2; display: grid; width: 135px; aspect-ratio: 1; place-items: center; border: 1px solid rgba(211,154,87,.5); border-radius: 50%; padding: 15px; color: white; background: #14241a; text-align: center; }
.hero-system > span, .process-radar > span, .team-constellation > span { position: absolute; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; padding: .5rem .75rem; color: #bec6bf; background: #122117; font-size: .72rem; }
.hero-system > span:nth-of-type(1), .process-radar > span:nth-of-type(1), .team-constellation > span:nth-of-type(1) { top: 9%; left: 38%; }
.hero-system > span:nth-of-type(2), .process-radar > span:nth-of-type(2), .team-constellation > span:nth-of-type(2) { top: 44%; right: 1%; }
.hero-system > span:nth-of-type(3), .process-radar > span:nth-of-type(3), .team-constellation > span:nth-of-type(3) { bottom: 8%; left: 40%; }
.hero-system > span:nth-of-type(4), .process-radar > span:nth-of-type(4), .team-constellation > span:nth-of-type(4) { top: 44%; left: 1%; }
.process-radar > span:nth-of-type(5) { top: 25%; left: 6%; }
.split-feature, .quality-gate, .story-grid, .handoff-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(45px, 9vw, 130px); align-items: start; }
.split-feature h2, .split-feature h3 { color: var(--cream); }
.decision-stack { display: grid; }
.decision-stack article { border-top: 1px solid var(--line-light); padding: 1.5rem 0; }
.decision-stack small { color: var(--bronze-light); }
.quality-gate__visual { display: grid; gap: .6rem; }
.quality-gate__visual span, .quality-gate__visual strong { border: 1px solid var(--line-dark); border-radius: 13px; padding: 1rem; text-align: center; }
.quality-gate__visual strong { color: white; background: var(--olive); }
.quality-gate__visual i { color: var(--bronze); font-style: normal; text-align: center; transform: rotate(90deg); }
.closing-cta { padding: 70px 0; color: var(--cream); background: var(--olive-dark); border-top: 1px solid var(--line-light); }
.closing-cta .shell { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.closing-cta h2 { max-width: 780px; margin: 0; font-size: clamp(2rem, 4vw, 4rem); }
.process-detail-list { list-style: none; margin: 0; padding: 0; }
.process-detail { display: grid; grid-template-columns: 80px minmax(250px, .9fr) minmax(260px, .6fr); gap: 36px; border-top: 1px solid var(--line-dark); padding: clamp(32px, 5vw, 62px) 0; }
.process-detail__number { color: var(--bronze); font-family: "K2D"; font-size: 2rem; }
.process-detail small { color: var(--bronze); font-size: .7rem; text-transform: uppercase; letter-spacing: .12em; }
.process-detail h3 { margin: .65rem 0; font-size: clamp(1.65rem, 3vw, 2.8rem); }
.process-detail ul { margin: 0; padding: 0; list-style: none; }
.process-detail ul li { border-bottom: 1px solid var(--line-dark); padding: .7rem 0; color: var(--muted-dark); }
.communication-loop { display: grid; gap: .6rem; }
.communication-loop div { border: 1px solid var(--line-light); border-radius: var(--radius-sm); padding: 1.3rem; }
.communication-loop strong, .communication-loop span { display: block; }
.communication-loop strong { color: white; }
.communication-loop span { color: var(--muted-light); font-size: .82rem; }
.communication-loop i { color: var(--bronze-light); text-align: center; transform: rotate(90deg); }
.handoff-cards { display: grid; gap: .8rem; }
.handoff-cards article, .value-grid article { border: 1px solid var(--line-dark); border-radius: var(--radius-sm); padding: 25px; background: rgba(255,255,255,.25); }
.large-copy { color: var(--ink); font-family: "K2D"; font-size: clamp(1.35rem, 2.2vw, 2rem); line-height: 1.35; }
.team-grid--dark .team-card { border-color: var(--line-light); background: rgba(255,255,255,.035); }
.team-grid--dark .team-card h3 { color: var(--cream); }
.team-grid--dark .tag-list span { color: var(--muted-light); border-color: var(--line-light); }
.value-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.principle-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.principle-card { min-height: 260px; border: 1px solid var(--line-dark); border-right: 0; padding: clamp(23px, 3vw, 36px); }
.principle-card:last-child { border-right: 1px solid var(--line-dark); }
.principle-card > span { color: var(--bronze); font-size: .72rem; }
.principle-card h3 { margin-top: 4rem; }
.team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.team-card { overflow: hidden; border: 1px solid var(--line-dark); border-radius: var(--radius); padding: 12px 12px 24px; background: rgba(255,255,255,.24); }
.team-card__image { aspect-ratio: 1 / .96; overflow: hidden; border-radius: 17px; background: linear-gradient(145deg, #213124, #c1a777); }
.team-card__image img { width: 100%; height: 100%; object-fit: contain; object-position: bottom; }
.team-card > small { display: block; margin: 1.3rem 12px .55rem; color: var(--bronze); font-size: .64rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.team-card > h3, .team-card > p { margin-left: 12px; margin-right: 12px; }
.team-card > p { font-size: .85rem; }
.contact-signal { border: 1px solid var(--line-light); border-radius: var(--radius); padding: clamp(25px, 5vw, 50px); background: rgba(255,255,255,.04); }
.contact-signal > span { color: var(--bronze-light); font-size: .68rem; letter-spacing: .13em; }
.contact-signal > strong { display: block; margin: 1rem 0 2rem; color: white; font-family: "K2D"; font-size: 2rem; }
.contact-signal > div { border-top: 1px solid var(--line-light); padding: .8rem 0; color: #b2bbb3; }
.contact-signal i { display: inline-block; width: 7px; height: 7px; margin-right: .7rem; border-radius: 50%; background: #78ad68; box-shadow: 0 0 0 4px rgba(120,173,104,.12); }
.contact-option-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.contact-option-grid article { border: 1px solid var(--line-dark); border-radius: var(--radius); padding: clamp(25px, 4vw, 42px); }
.contact-option-grid small { color: var(--bronze); text-transform: uppercase; letter-spacing: .12em; }
.contact-option-grid h2 { margin-top: 2rem; font-size: 1.8rem; }
.contact-option-grid a { color: var(--bronze); font-weight: 800; }
.contact-option-grid .copy-email { color: var(--bronze); font-weight: 800; }
.privacy-content { max-width: 850px; }
.privacy-content h2 { margin-top: 3rem; font-size: 2rem; }
.privacy-review { border: 1px solid #d5ad70; border-radius: var(--radius-sm); padding: 20px; background: #fff2db; }
.error-page { min-height: 100vh; display: grid; align-items: center; padding: calc(var(--header-h) + 80px) 0 90px; color: var(--cream); }
.error-page__inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr .8fr; gap: clamp(40px, 8vw, 100px); align-items: center; }
.error-page h1 { font-size: clamp(2.7rem, 5vw, 5rem); }
.error-page p { color: var(--muted-light); }
.error-code { display: block; color: var(--bronze-light); font-family: "K2D"; font-size: clamp(5rem, 14vw, 10rem); line-height: .8; opacity: .4; }
.error-terminal { display: grid; gap: 1rem; border: 1px solid var(--line-light); border-radius: var(--radius); padding: clamp(24px, 4vw, 42px); background: rgba(255,255,255,.04); }
.error-terminal span { color: var(--bronze-light); }
.error-terminal code { color: #9fb18f; line-height: 1.8; }

@media (max-width: 940px) {
  .page-hero__grid, .split-feature, .quality-gate, .story-grid, .handoff-grid, .error-page__inner { grid-template-columns: 1fr; }
  .hero-system, .process-radar, .team-constellation { width: min(100%, 470px); margin-inline: auto; }
  .process-detail { grid-template-columns: 60px 1fr; }
  .process-detail > ul { grid-column: 2; }
}
@media (max-width: 720px) {
  .closing-cta .shell { align-items: flex-start; flex-direction: column; }
  .value-grid, .contact-option-grid { grid-template-columns: 1fr; }
  .principle-grid, .team-grid { grid-template-columns: repeat(2, 1fr); }
  .process-detail { grid-template-columns: 1fr; gap: 15px; }
  .process-detail > ul { grid-column: auto; }
}
@media (max-width: 520px) {
  .principle-grid, .team-grid { grid-template-columns: 1fr; }
  .principle-card, .principle-card:last-child { border-right: 1px solid var(--line-dark); }
  .narrow-shell { width: min(calc(100% - 32px), 850px); }
}
