/* World environments are presentation only. Public content and runtime stay separate. */
body[data-world] {
  --ink: #f1f0f7;
  --muted: #b7b8cb;
  --line: #343547;
  --accent: #b8b0ff;
  --accent-2: #8fc2f8;
  --accent-soft: #202036;
  --bg-panel: #14141f;
  --bg-strong: #191925;
  --world-base: #09090f;
  --world-glow: #25204a;
  color: var(--ink);
  background: radial-gradient(ellipse at 85% 8%, var(--world-glow), transparent 38rem), var(--world-base);
}
/* One shared institutional shell, including the light document pages. */
body .site-header {
  max-width: none;
  padding-inline: max(24px, calc((100vw - 1192px) / 2));
  color: #f1f0f7;
  background: #0b0b13f5;
  border-bottom: 1px solid #31303f;
  backdrop-filter: none;
}
body .site-header .brand-mark { background: linear-gradient(145deg, #ffe1a2, #c39349); color: #16100a; border-radius: 12px; box-shadow: none; }
body .brand small { color: #bcb8ca; }
body .site-nav .nav-link, body .nav-group summary { color: #d4d0df; }
body .site-nav .nav-link:hover, body .site-nav .nav-link:focus-visible, body .nav-group[open] summary, body .nav-group summary:hover, body .nav-group summary:focus-visible { color: #fff; background: #252332; }
body .nav-menu { background: #15141f; border-color: #4b465b; }
body .nav-menu a { color: #e2dce9; font-size: .875rem; min-height: 44px; display: flex; align-items: center; }
body .nav-menu a:hover, body .nav-menu a:focus-visible { background: #302b40; color: #fff; }
body .nav-toggle { color: #f1f0f7; border-color: #595366; background: #1b1926; }
body .site-header .header-cta { color: #ece4f8; background: #252032; border: 1px solid #625372; }
body .site-footer { color: #f1f0f7; border-top-color: #48424e; }
body .site-footer p { color: #beb8cb; }
body .site-footer { background: #0c0b12; max-width: none; padding-inline: max(24px, calc((100vw - 1192px) / 2)); }
body :is(a, button, summary, input, select, textarea):focus-visible { outline: 3px solid #8973c6; outline-offset: 5px; }
body .skip-link { color: #151125; z-index: 50; }
body[data-world] main { overflow: clip; }
body[data-world] .hero { padding-block: 76px 64px; position: relative; }
body[data-world] .hero-grid { gap: 52px; align-items: center; grid-template-columns: minmax(0, 1.25fr) minmax(0, .9fr); }
body[data-world] .hero-copy h1 { font-size: clamp(2.6rem, 4.8vw, 4.7rem); line-height: 1.03; max-width: 15ch; font-weight: 650; letter-spacing: -.045em; text-wrap: balance; }
body[data-world] .hero-copy > p { font-size: 1.0625rem; line-height: 1.7; }
body[data-world] .eyebrow { font-size: .875rem; color: var(--accent); letter-spacing: .12em; }
body[data-world] .hero-aside { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.world-diagram { display: block; width: 100%; height: auto; max-height: 320px; object-fit: contain; pointer-events: none; }
body[data-world] .hero-panel { padding: 28px; border-radius: 8px; background: var(--bg-panel); border: 1px solid var(--line); box-shadow: none; }
body[data-world] .hero-panel::before, body[data-world] .hero-panel::after { content: none; }
body[data-world] .hero-statement { color: var(--ink) !important; font-size: clamp(1.35rem, 2.2vw, 1.8rem); line-height: 1.4; margin-block: 8px 20px; }
body[data-world] .hero-meta { border-top: 1px solid var(--line); padding-top: 16px; gap: 8px 18px; }
body[data-world] .hero-meta li { color: var(--muted); font-size: .875rem; }
body[data-world] .button.primary { color: #11131c; background: var(--accent); border: 1px solid var(--accent); }
body[data-world] .button.accent, body[data-world] .button.secondary { color: var(--ink); background: var(--bg-panel); border: 1px solid #777487; }
body[data-world] .site-header .header-cta { color: #ece4f8; background: #252032; border-color: #625372; }
body[data-world] .hero-actions { gap: 12px; margin-top: 28px; }
body[data-world] main p a:not(.button), body[data-world] main .text-link { color: var(--accent); text-decoration: underline; text-underline-offset: 4px; }
body[data-world] .section { padding-block: 52px; border-top: 1px solid var(--line); }
body[data-world] .section-head h2 { font-size: clamp(1.7rem, 3vw, 2.5rem); letter-spacing: -.035em; }
body[data-world] :is(.card, .framework-item, .system-node, .proof-panel, .proof-node) { background: var(--bg-panel); color: var(--ink); border: 1px solid var(--line); box-shadow: none; border-radius: 8px; }
body[data-world] :is(.card, .framework-item) { padding: 26px; }
body[data-world] .framework-step { background: var(--accent-soft); color: var(--accent); border-color: var(--line); }
body[data-world] .callout { border: 1px solid var(--line); background: linear-gradient(120deg, var(--bg-panel), var(--world-base)); border-radius: 8px; padding: 36px; box-shadow: none; }
body[data-world] .callout :is(h2, h3) { color: var(--ink); }
body[data-world] .callout p { color: var(--muted); }
body[data-world] .tiny { font-size: .875rem; }
body[data-world] .proof-step { color: #bdb4df; }
body[data-world] .proof-name { color: #f1f0f7; }
body[data-world] .proof-summary { color: #b7b8cb; }
body[data-world] .proof-node.active { background: #282238; border-color: #ab94d0; }
body[data-world] .proof-node.boundary { border-color: #c8a26a; }
body[data-world] .boundary-note { color: #e6c084; background: #302719; }
body[data-world] .system-core { background: #221b37; border: 1px solid #84729f; color: #f3eaff; }
body[data-world] .bullet-list li::marker { color: var(--accent); }
/* The consent UI is a neutral document surface in every environment. */
body .privacy-choices { --ink: #101827; --muted: #475569; --accent: #164fa5; color: #101827; background: #f8fafc; }
body .privacy-choices :is(label, p) { color: #334155; }
body .privacy-choices .button.primary { color: #fff; background: #172554; border-color: #172554; }
body .privacy-choices :is(.button.accent, .button.secondary) { color: #172554; background: #fff; border-color: #64748b; }
body[data-world="core"] .hero { background: linear-gradient(90deg, transparent 49.9%, #6d60b30d 50%, transparent 50.1%); }
body[data-world="core"] .system-diagram { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 28px; border: 1px solid #343047; border-radius: 50% 50% 12px 12px / 20% 20% 12px 12px; background: radial-gradient(ellipse at top, #31233f55, transparent 65%); }
body[data-world="core"] .system-core { position: static; grid-column: 1 / -1; justify-self: center; transform: none; }
@media (max-width: 1120px) {
  body .site-nav.open { background: #12101d; border: 1px solid #484255; }
  body[data-world] .hero-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, .85fr); gap: 28px; }
}
@media (max-width: 760px) {
  body .site-header { padding: 14px 20px; }
  body[data-world] .hero { padding-block: 44px 36px; }
  body[data-world] .hero-grid { grid-template-columns: 1fr; gap: 28px; }
  body[data-world] .hero-copy h1 { max-width: 18ch; font-size: clamp(2.4rem, 9.5vw, 3.8rem); }
  body[data-world] .world-diagram { max-height: 200px; }
  body[data-world] .section { padding-block: 36px; }
  body[data-world] .callout { padding: 24px; }
  body[data-world="core"] .system-diagram { grid-template-columns: 1fr; padding: 20px; border-radius: 12px; }
  body[data-world] .hero-actions .button { flex: 1 1 auto; }
}
/* 02 — Knowledge pathways and warm learning sheets within an indigo world. */
body[data-world="ai2"], .world-ai2, [data-world="portal"] #ai2 {
  --world-base: #101127; --world-glow: #2e2c61; --bg-panel: #1d1e3d;
  --line: #414164; --accent: #e6d5af; --accent-soft: #302e48; --muted: #c0bfd5;
}
body[data-world="ai2"] .hero-panel, body[data-world="ai2"] .framework-item {
  --ink: #292638; --muted: #565164; --accent: #554681; --line: #d8cfbd;
  background: #f4efdf; color: var(--ink); border-radius: 3px; border-color: #d8cfbd;
}
body[data-world="ai2"] .framework-grid { gap: 18px; }
body[data-world="ai2"] .framework-item { border-top: 5px solid #c2add8; background-image: repeating-linear-gradient(transparent 0 31px, #5a456907 31px 32px); }
body[data-world="ai2"] .framework-step { background: #e6dece; color: #534777; }
body[data-world="ai2"] .framework-item:last-child { border-top-color: #9a794a; }
body[data-world="ai2"] .hero-panel { border-left: 4px solid #b5a4ce; }
/* 03 — Topology, signal paths, and calibrated instrument surfaces. */
body[data-world="cyber"], .world-cyber, [data-world="portal"] #cyber {
  --world-base: #081119; --world-glow: #16343e; --bg-panel: #101f29;
  --line: #304852; --accent: #90e0c8; --accent-soft: #17372f; --muted: #b3c6ce;
}
body[data-world="cyber"] .hero { background-image: linear-gradient(#4b80900b 1px, transparent 1px), linear-gradient(90deg, #4b80900b 1px, transparent 1px); background-size: 48px 48px; }
body[data-world="cyber"] .hero-panel { border-radius: 0; border-left: 3px solid #86d8d8; }
body[data-world="cyber"] .framework-grid { gap: 1px; border: 1px solid #304852; background: #304852; }
body[data-world="cyber"] .framework-item { border: 0; border-radius: 0; }
body[data-world="cyber"] .framework-step { border-radius: 2px; border: 1px solid #477063; }
body[data-world="cyber"] .callout { border-radius: 0; border-left: 3px solid var(--accent); }
/* 04 — Broadcast framing and field geometry, never recruiting product UI. */
body[data-world="cuzzins"], .world-cuzzins, [data-world="portal"] #cuzzins {
  --world-base: #0a0e12; --world-glow: #3b3527; --bg-panel: #151b21;
  --line: #3e4241; --accent: #f2ca76; --muted: #bbc1c7;
}
body[data-world="cuzzins"] .athletics { background: radial-gradient(ellipse at 12% 4%, #71664c22, transparent 32rem), #090d12; --athletics-steel: #b8c0c8; }
body[data-world="cuzzins"] .athletics-masthead { position: relative; isolation: isolate; padding-block: 32px 64px; }
body[data-world="cuzzins"] .athletics-masthead > .world-diagram { position: absolute; left: -40px; bottom: -45px; width: 56%; aspect-ratio: 3 / 2; background: url('/assets/worlds/cuzzins.svg') center / contain no-repeat; opacity: .24; z-index: -1; max-height: 390px; }
body[data-world="cuzzins"] .athletics-masthead::before { content: ''; position: absolute; inset: 0; background: conic-gradient(from 155deg at 5% 0%, transparent, #e5d5a415 16deg, transparent 32deg), conic-gradient(from 175deg at 92% 0%, transparent, #adc9ec0c 15deg, transparent 35deg); pointer-events: none; z-index: -1; }
body[data-world="cuzzins"] .athletics-intro { padding-top: 60px; }
body[data-world="cuzzins"] .athletics-invitation { background: #0c1016d9; padding: 24px; border-left: 2px solid #c2a15a; }
body[data-world="cuzzins"] .athletics-edition { font-size: .8125rem; border-bottom: 2px solid #d4b05c; }
body[data-world="cuzzins"] .athletics-nav { background: #161b22; padding-inline: 20px; }
body[data-world="cuzzins"] .athletics-feature { background: linear-gradient(115deg, #1d242e, #0c1017); }
body[data-world="cuzzins"] :is(.athletics-next-feature, .athletics-perspective) { font-family: inherit; font-style: italic; }
body[data-world="cuzzins"] :is(.athletics-kicker, .athletics-feature-note, .athletics-coming-label) { font-size: .875rem; }
/* 05 — An evidence desk opening into a production stage. */
body[data-world="media"], .world-media, [data-world="portal"] #media {
  --world-base: #171514; --world-glow: #373032; --bg-panel: #23201f;
  --line: #514640; --accent: #e3c69b; --accent-soft: #342d27; --muted: #c5bbb0;
}
body[data-world="media"] .hero-copy h1 { font-weight: 550; letter-spacing: -.055em; }
body[data-world="media"] .hero { border-bottom: 4px double #8e7c63; }
body[data-world="media"] .hero-panel { border-radius: 0; border-block: 1px solid #a18c70; background: transparent; padding-inline: 0; }
body[data-world="media"] .framework-grid { gap: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); background: #efe7d7; padding: 12px; border-block: 4px double #bdad91; }
body[data-world="media"] .framework-item { --muted: #554d43; --ink: #282420; color: var(--ink); background: transparent; border: 0; border-right: 1px solid #c7bca7; border-radius: 0; }
body[data-world="media"] .framework-item:last-child { border-right: 0; }
body[data-world="media"] .framework-step { color: #63513b; background: transparent; padding: 0; }
body[data-world="media"] .framework-item h3 { font-size: 1.5rem; }
body[data-world="media"] main > .section:nth-of-type(3) { background: radial-gradient(ellipse at 70% 0, #5c3f5133, transparent 70%), #0b0b10; border-block: 18px solid #030306; padding-block: 60px; }
body[data-world="media"] main > .section:nth-of-type(3) strong { color: #ecd2ae; }
/* 06 — Three bounded tasks converge; a quiet clock gives time back. */
body[data-world="consulting"], .world-consulting, [data-world="portal"] #consulting {
  --world-base: #141b23; --world-glow: #30363a; --bg-panel: #1d2730;
  --line: #455059; --accent: #e4c89e; --accent-soft: #3a332b; --muted: #c1c8cf;
}
body[data-world="consulting"] .hero { padding-block: 100px 80px; }
body[data-world="consulting"] .hero-copy h1 { max-width: 12ch; font-weight: 500; }
body[data-world="consulting"] .hero-panel { border: 0; border-top: 1px solid #99866b; background: transparent; border-radius: 0; padding-inline: 0; }
body[data-world="consulting"] .section { padding-block: 66px; }
body[data-world="consulting"] .section > p { max-width: 82ch; }
body[data-world="consulting"] .callout { border-left: 3px solid #d3b588; background: #232b31; }
/* 07–09 — Honest developing worlds with their own environmental grammar. */
body[data-world="voice"], .world-voice, [data-world="portal"] #voice {
  --world-base: #080d20; --world-glow: #272a4d; --bg-panel: #111a30;
  --line: #39415c; --accent: #c3c5f4; --muted: #bfc3d8;
}
body[data-world="voice"] .hero { padding-block: 110px 72px; background: radial-gradient(ellipse at 65% 65%, #606d9e13, transparent 65%); }
body[data-world="voice"] .hero-copy h1 { font-weight: 450; letter-spacing: -.06em; }
body[data-world="voice"] .callout { border-radius: 32px; border-top-color: #8e96bf; background: linear-gradient(160deg, #20283e, #0c1225); }
body[data-world="jaxen"], .world-jaxen, [data-world="portal"] #jaxen-need {
  --world-base: #201814; --world-glow: #4a3227; --bg-panel: #2b211b;
  --line: #65503e; --accent: #edbd92; --muted: #d0bdae;
}
body[data-world="jaxen"] .hero { padding-block: 100px 64px; }
body[data-world="jaxen"] .hero-copy { border-left: 2px solid #aa7952; padding-left: 28px; }
body[data-world="jaxen"] .hero-copy h1 { font-weight: 550; }
body[data-world="jaxen"] .callout { border-radius: 4px 32px 32px 4px; border-left: 3px solid #e4b28a; background: linear-gradient(100deg, #35271e, #241d19); }
body[data-world="neighborhood"], .world-neighborhood, [data-world="portal"] #digital-neighborhood {
  --world-base: #151321; --world-glow: #363044; --bg-panel: #241f30;
  --line: #534859; --accent: #edd0a1; --muted: #cac0d2;
}
body[data-world="neighborhood"] .hero { padding-block: 92px 68px; background: linear-gradient(180deg, #8f665109, transparent); }
body[data-world="neighborhood"] .hero-copy h1 { font-weight: 550; }
body[data-world="neighborhood"] .callout { border-radius: 16px; border-top: 2px solid #c6a375; background: radial-gradient(ellipse at 10% 0, #cda36d1a, transparent 40%), radial-gradient(ellipse at 90% 0, #cda36d1a, transparent 40%), #211d2c; }
/* Portal cards preview exactly the same geometry as their destination. */
.home-universe .world { --world-base: #111019; --world-glow: #252039; --accent: #c7b9ef; background: radial-gradient(ellipse at 85% 10%, var(--world-glow), transparent 75%), var(--world-base); padding: 24px 24px 64px; border-color: #514956; min-height: 360px; transition: border-color .3s, background-color .3s; }
.home-universe .world::before, .home-universe .world::after { content: none; }
.home-universe .world > span { color: #d2c8dc; font-size: .875rem; }
.home-universe .world strong { margin-top: 12px; color: #f6f1e9; }
.home-universe .world p { color: #c5becd; font-size: 1rem; line-height: 1.55; }
.home-universe .world em { color: #e2d6be; font-size: .8125rem; }
.world-preview { display: block; width: 100%; height: 110px; object-fit: contain; margin-block: 8px 18px; pointer-events: none; }
.home-universe .world:hover, .home-universe .world:focus-visible, .home-universe .world:active { border-color: var(--accent); transform: none; }
.home-universe .world .world-preview { opacity: .75; transition: opacity .4s; }
.home-universe .world:hover .world-preview, .home-universe .world:focus-visible .world-preview, .home-universe .world:active .world-preview { opacity: 1; }
.home-universe .world-core { background: radial-gradient(ellipse at 80% 0, #34285a, transparent 75%), #0b0a13; }
.home-universe .world-ai2 { background: linear-gradient(120deg, #17182e, #32305b); }
.home-universe .world-cyber { background: linear-gradient(#0d222ce8, #0d1820f5), repeating-linear-gradient(90deg, #669995 0 1px, transparent 1px 24px); }
.home-universe .world-cuzzins { background: conic-gradient(from 170deg at 20% 0, #0b1018, #413b29 20deg, #0b1018 50deg); border-top: 3px solid #c4a161; }
.home-universe .world-media { background: #272321; border-block: 3px double #b7a17e; }
.home-universe .world-consulting { background: linear-gradient(125deg, #202b34, #303638); }
.home-universe .world-voice { background: radial-gradient(ellipse at 50% 15%, #32345c, #101528 70%); }
.home-universe .world-jaxen { background: linear-gradient(115deg, #38271d, #251d18); border-left: 3px solid #b98560; }
.home-universe .world-neighborhood { background: radial-gradient(ellipse at 25% 0, #63504940, transparent 60%), #231e31; }
body[data-world="portal"] { --world-base: #0d0c14; --world-glow: #292135; }
body[data-world="portal"] .card { background: radial-gradient(ellipse at 80% 0, var(--world-glow), transparent 70%), var(--world-base); }
body[data-world="portal"] .card-eyebrow { color: #cfbfdd; font-size: .875rem; }
body[data-world="portal"] .card .world-preview { height: 130px; }
.home-universe .orbit { animation: none; }
.home-universe .signal { animation: none; opacity: .55; }
.home-universe :is(.home-kicker, .section-index, .scroll-cue) { font-size: .8125rem; }
.home-universe :is(.section-index, .scroll-cue) { color: #afa7bc; }
/* A finite, slow arrival; no perpetual scanning or implied live microphone. */
@media (prefers-reduced-motion: no-preference) {
  body[data-world] .hero-aside .world-diagram { animation: world-arrive 2.4s ease-out both; }
  @keyframes world-arrive { from { opacity: .4; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
}
@media (max-width: 900px) {
  body[data-world="media"] .framework-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-world="media"] .framework-item { border-bottom: 1px solid #c7bca7; }
  .home-universe .world { min-height: 360px; }
}
@media (max-width: 760px) {
  body[data-world="consulting"] .hero, body[data-world="voice"] .hero, body[data-world="jaxen"] .hero, body[data-world="neighborhood"] .hero { padding-block: 44px 36px; }
  body[data-world="consulting"] .section { padding-block: 36px; }
  body[data-world="cuzzins"] .athletics-masthead > .world-diagram { width: 100%; left: 0; bottom: auto; top: 56px; opacity: .18; }
  body[data-world="cuzzins"] .athletics-intro { padding-top: 32px; }
  body[data-world="cuzzins"] .athletics-invitation { padding: 20px; }
  body[data-world="media"] .framework-grid { grid-template-columns: 1fr; }
  body[data-world="media"] .framework-item { border-right: 0; }
  body[data-world="jaxen"] .hero-copy { padding-left: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  body *, body *::before, body *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
