body.shell3 {
    margin: 0;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    color: #0a1020;
    font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

body.home3 { background: #0a1020; }

.stage { flex: 1 1 auto; width: 100%; max-width: 46rem; margin: 0 auto; padding: 0 1.25rem 3rem; }
.stage.stage-wide { max-width: none; padding: 0; }
.stage .content { max-width: none; }

.hdr3 { background: #0a1020; color: #f1f5fb; border-bottom: 1px solid #1f2a3d; }
.hdr3 a, .hdr3 label { color: #f1f5fb; }
.hdr3 .wordmark3 { color: #f1f5fb; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; font-weight: 800; font-size: 1.3rem; letter-spacing: -0.02em; text-decoration: none; }
.menu3 { background: #0a1020; color: #f1f5fb; }
.menu3 a { color: #f1f5fb; }
.ftr3 { background: #0a1020; color: #9fb0c8; border-top: 1px solid #1f2a3d; }
.ftr3 a { color: #9fb0c8; }

.btn3 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #22d3ee;
    color: #04121c;
    border: 2px solid #0e7490;
    border-radius: 0.5rem;
    padding: 0.6rem 1.5rem;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none;
    cursor: pointer;
}
.hdr3 .btn3 { background: #22d3ee; color: #04121c; border-color: #22d3ee; }
.content .btn3 { background: #22d3ee; color: #04121c; }
.btn3:hover { background: #67e8f9; }
.btn3:focus-visible { outline: 3px solid #ffffff; box-shadow: 0 0 0 6px #0a1020; }
.btn3-big { font-size: 1.2rem; padding: 0.8rem 2rem; }
.btn3-small { padding: 0.2rem 1rem; font-size: 1rem; }

.content .eyebrow { margin: 0 0 1rem; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; font-size: 0.78rem; line-height: 1.4; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: #0b5e75; }
.content .eyebrow::before { content: "// "; }
.content .big { margin: 0; font-size: clamp(2rem, 8.4vw, 3.4rem); line-height: 1.08; font-weight: 800; letter-spacing: -0.025em; color: #0a1020; }
.content .short { margin: 1rem 0 0; max-width: 36rem; font-size: clamp(1.1rem, 3.8vw, 1.4rem); line-height: 1.45; color: #1f2a3d; }
.content .shortlist { list-style: none; margin: 1.25rem 0 0; padding: 0; display: grid; gap: 0.8rem; max-width: 36rem; }
.content .shortlist li { position: relative; padding-left: 1.4rem; font-size: clamp(1.1rem, 3.8vw, 1.35rem); line-height: 1.35; color: #1f2a3d; }
.content .shortlist li::before { content: ""; position: absolute; left: 0; top: 0.55em; width: 0.6rem; height: 0.6rem; background: #0b5e75; }
.content .shortlist strong { font-weight: 700; }
.content .row { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; margin: 1.5rem 0 0; }
.content .note { margin: 1.1rem 0 0; max-width: 36rem; font-size: 0.95rem; color: #3b4658; }
.content .meta { margin: 1rem 0 0; font-size: 0.9rem; color: #3b4658; }
.content .person-name { margin: 1.25rem 0 0.25rem; font-size: clamp(1.4rem, 5vw, 1.9rem); font-weight: 700; }
.content .quiet { font-weight: 700; text-decoration: none; border-bottom: 2px solid #0b5e75; padding-bottom: 0.1rem; color: #0a1020; }
.content .page-title { margin: 0 0 1.5rem; font-size: clamp(2rem, 7vw, 2.75rem); line-height: 1.1; font-weight: 800; letter-spacing: -0.02em; }
.content .page-h2 { margin: 2.25rem 0 0.5rem; font-size: 1.35rem; line-height: 1.25; font-weight: 700; }
.content figure { margin: 1.5rem 0 0; }
.content .diagram { margin-top: 1.25rem; }
.content .board-title { font-weight: 700; }
.content .figcap { margin: 0.7rem 0 0; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; font-size: 0.78rem; line-height: 1.4; color: #3b4658; }
.content .chip { display: inline-block; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; line-height: 1.3; padding: 0.15rem 0.5rem; border: 1px solid #22d3ee; border-radius: 0.25rem; color: #22d3ee; background: #0a1020; }

.content .screen { position: relative; overflow: hidden; min-height: 0; display: flex; flex-direction: column; justify-content: center; padding: 2.5rem 1.25rem; border-top: 1px solid #1f2a3d; }
.content .inner { position: relative; width: 100%; max-width: 56rem; margin: 0 auto; }
.content .inner-centered { display: flex; flex-direction: column; align-items: center; text-align: center; }
.content .inner-centered .short { margin-left: auto; margin-right: auto; }
.content .inner-centered .row { justify-content: center; }

.content .flow { fill: none; stroke: #22d3ee; stroke-width: 4; stroke-linecap: round; stroke-dasharray: 0.1 44; animation: flowmove 2.6s linear infinite; }
.content .flow-a { animation-delay: 0s; }
.content .flow-b { stroke: #34d399; animation-delay: -0.9s; }
.content .flow-c { animation-delay: -1.7s; }
.content .flow-rev { animation-direction: reverse; }
.content .pulse { animation: pulse 2.8s ease-in-out infinite; }
.content .blink { animation: pulse 1.8s ease-in-out infinite; }
@keyframes flowmove { to { stroke-dashoffset: -44.1; } }
@keyframes pulse { 50% { opacity: 0.3; } }

.content .s-top { background: #0a1020; background-image: linear-gradient(rgba(34, 211, 238, 0.07) 1px, transparent 1px), linear-gradient(90deg, rgba(34, 211, 238, 0.07) 1px, transparent 1px); background-size: 28px 28px; color: #f1f5fb; padding-top: 1.5rem; padding-bottom: 2.25rem; border-top: 0; }
.content .s-top .big { color: #f1f5fb; max-width: 24ch; font-size: clamp(1.55rem, 6.2vw, 2.8rem); line-height: 1.1; }
.content .s-top .short { color: #c3cfe0; margin-top: 0.9rem; font-size: clamp(1.05rem, 3.6vw, 1.3rem); }
.content .s-top .row { margin-top: 1.1rem; }
.content .s-top .circuit { position: absolute; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; }
.content .s-top .trace { fill: none; stroke: #1d3b57; stroke-width: 1.5; }
.content .s-top .node { fill: #22d3ee; }
.content .s-top .art-people { display: block; width: 100%; max-width: 38rem; height: auto; margin: 0.9rem auto 0; }
.content .s-top .person { fill: #5b7391; }
.content .s-top .person-hi { fill: #22d3ee; }
.content .s-top .glow { fill: none; stroke: #22d3ee; stroke-width: 1; }

.content .s-experience { background: #0f1a2e; color: #f1f5fb; }
.content .s-experience .eyebrow { color: #22d3ee; }
.content .s-experience .big { color: #f1f5fb; }
.content .s-experience .short { color: #c3cfe0; }
.content .s-experience .art-bridge { display: block; width: 100%; max-width: 30rem; height: auto; margin: 1.25rem 0 0; }
.content .s-experience .plate { fill: #16233a; stroke: #2a3d5c; stroke-width: 1.5; }
.content .s-experience .gridline { fill: none; stroke: #2a3d5c; stroke-width: 1; stroke-dasharray: 3 4; }
.content .s-experience .truss { fill: none; stroke: #22d3ee; stroke-width: 2; stroke-linejoin: round; }
.content .s-experience .deck { fill: none; stroke: #7aa2c8; stroke-width: 3; stroke-linecap: round; }
.content .s-experience .node { fill: #22d3ee; }
.content .s-experience .mark { fill: #34d399; }
.content .s-experience .flag-pole { fill: none; stroke: #c3cfe0; stroke-width: 2; stroke-linecap: round; }
.content .s-experience .flag { fill: #34d399; }

.content .s-people-first { background: #111826; color: #f1f5fb; }
.content .s-people-first .eyebrow { color: #34d399; }
.content .s-people-first .big { color: #f1f5fb; }
.content .s-people-first .shortlist li { color: #e1e9f5; }
.content .s-people-first .shortlist li::before { background: #34d399; }
.content .s-people-first .figcap { color: #9fb0c8; }
.content .s-people-first .art-orchestra { display: block; width: 100%; max-width: 30rem; height: auto; }
.content .s-people-first .link { fill: none; stroke: #2a4a6a; stroke-width: 1.5; }
.content .s-people-first .agent { fill: #0f2236; stroke: #22d3ee; stroke-width: 1.5; }
.content .s-people-first .glyph-line { fill: none; stroke: #22d3ee; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.content .s-people-first .hub { fill: #0f2236; stroke: #34d399; stroke-width: 2; stroke-linejoin: round; }
.content .s-people-first .hub-ring { fill: none; stroke: #34d399; stroke-width: 2; }
.content .s-people-first .hub-dot { fill: #34d399; }

.content .s-month { background: #0c1c24; color: #f1f5fb; }
.content .s-month .eyebrow { color: #22d3ee; }
.content .s-month .big { color: #f1f5fb; }
.content .s-month .short { color: #c3cfe0; }
.content .s-month .iconlist { max-width: none; grid-template-columns: 1fr; gap: 0.9rem; }
.content .s-month .iconlist li { display: flex; align-items: center; gap: 1rem; padding: 1rem; background: #0f2a35; color: #f1f5fb; border: 1px solid #1d4a5a; border-radius: 0.6rem; font-size: 1.15rem; }
.content .s-month .iconlist li::before { display: none; }
.content .s-month .pioneer-item { flex-direction: column; align-items: flex-start; }
.content .s-month .art-icon { flex: none; width: 3.5rem; height: 3.5rem; }
.content .s-month .art-pioneers { display: block; width: 100%; max-width: 15rem; height: auto; }
.content .s-month .fg { fill: #22d3ee; }
.content .s-month .fw { fill: #e6edf7; }
.content .s-month .fc { fill: #34d399; }
.content .s-month .fs { fill: #22d3ee; }
.content .s-month .fm { fill: #a7f3d0; }
.content .s-month .ln { fill: none; stroke: #e6edf7; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.content .s-month .ln-thin { stroke: #34d399; stroke-width: 2.5; }
.content .s-month .ln-dark { fill: none; stroke: #0c1c24; stroke-width: 3; stroke-linecap: round; }
.content .s-month .glow { fill: none; stroke: #1d4a5a; stroke-width: 1; }
.content .s-month .pioneer { fill: #22d3ee; }
.content .s-month .learner { fill: #5b7391; }
.content .s-month .ray { stroke: #22d3ee; stroke-width: 1.5; stroke-dasharray: 2 2; }

.content .s-team { background: #101a30; color: #f1f5fb; }
.content .s-team .eyebrow { color: #34d399; }
.content .s-team .big { color: #f1f5fb; }
.content .s-team .short { color: #c3cfe0; }
.content .s-team .note { color: #c3cfe0; }
.content .s-team .pending { color: #9fb0c8; border-bottom: 1px dashed #9fb0c8; }
.content .s-team .figcap { color: #9fb0c8; }
.content .s-team .network { margin-top: 1.5rem; }
.content .s-team .cards { list-style: none; margin: 0 0 0 0.5rem; padding: 0 0 0 1.5rem; border-left: 2px solid #1d6f86; display: grid; gap: 0.9rem; }
.content .s-team .card { position: relative; display: flex; align-items: center; gap: 0.9rem; background: #16223c; color: #f1f5fb; border: 1px solid #26354d; border-radius: 0.75rem; padding: 0.7rem 0.9rem; }
.content .s-team .card::before { content: ""; position: absolute; left: -1.5rem; top: 50%; width: 1.5rem; height: 2px; background: #1d6f86; }
.content .s-team .card .art-avatar { flex: none; display: block; width: 4.25rem; height: auto; }
.content .s-team .card .role { display: flex; flex-wrap: wrap; align-items: center; gap: 0.4rem 0.6rem; }
.content .s-team .card .pending { flex-basis: 100%; color: #9fb0c8; border-bottom: 1px dashed #9fb0c8; font-size: 0.82rem; }
.content .s-team .card .chip { background: #0a1020; }
.content .s-team .dot { display: inline-block; width: 0.55rem; height: 0.55rem; border-radius: 50%; background: #34d399; }
.content .s-team .head { fill: #16304a; stroke: #22d3ee; stroke-width: 2; stroke-linejoin: round; }
.content .s-team .shoulder { fill: #1d4466; }
.content .s-team .eye { fill: #22d3ee; }
.content .s-team .badge { fill: #0a1020; stroke: #34d399; stroke-width: 1.5; }
.content .s-team .ln-badge { fill: none; stroke: #34d399; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.content .s-team .fg { fill: #22d3ee; }
.content .s-team .board { margin-top: 1.5rem; background: #05080f; border: 1px solid #26354d; border-radius: 0.6rem; overflow: hidden; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; }
.content .s-team .board-bar { display: flex; align-items: center; gap: 0.7rem; padding: 0.5rem 0.8rem; background: #0f1626; color: #c3cfe0; border-bottom: 1px solid #26354d; font-size: 0.8rem; }
.content .s-team .board .msg { margin: 0; padding: 0.6rem 0.8rem; font-size: 0.85rem; line-height: 1.5; color: #d6e2f2; border-bottom: 1px solid #121c2e; }
.content .s-team .board .from { color: #22d3ee; font-weight: 700; }
.content .s-team .board .to { color: #34d399; font-weight: 700; }
.content .s-team .board .arrow { color: #9fb0c8; }
.content .s-team .board .said { display: block; color: #d6e2f2; }
.content .s-team .board .figcap { margin: 0; padding: 0.5rem 0.8rem; color: #9fb0c8; }

.content .s-areas { background: #e6eef8; color: #0b1b33; }
.content .s-areas .eyebrow { color: #0b5e75; }
.content .s-areas .big { color: #0b1b33; }
.content .s-areas .areas { list-style: none; margin: 1.25rem 0 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 0.8rem; }
.content .s-areas .areas li { display: flex; align-items: center; gap: 0.9rem; padding: 0.9rem 1rem; background: #ffffff; color: #0b1b33; border: 1px solid #bccbe0; border-radius: 0.6rem; font-size: clamp(1.05rem, 3.8vw, 1.25rem); font-weight: 700; }
.content .s-areas .glyph { flex: none; width: 2.6rem; height: 2.6rem; padding: 0.5rem; border-radius: 0.5rem; background: #0a1020; }
.content .s-areas .ln { fill: none; stroke: #22d3ee; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

.content .s-safety { background: #0b1a1f; color: #f1f5fb; }
.content .s-safety .eyebrow { color: #34d399; }
.content .s-safety .big { color: #f1f5fb; }
.content .s-safety .note { color: #c3cfe0; }
.content .s-safety .quiet { color: #f1f5fb; border-bottom: 2px solid #34d399; }
.content .s-safety .art-shield { display: block; width: 5.5rem; height: auto; margin: 1.1rem 0 0; }
.content .s-safety .shortlist { max-width: none; grid-template-columns: 1fr; gap: 0.8rem; }
.content .s-safety .shortlist li { padding: 0.9rem 1rem; background: #10262c; color: #e1e9f5; border: 1px solid #1f4a50; border-radius: 0.6rem; }
.content .s-safety .shortlist li::before { display: none; }
.content .s-safety .shortlist strong { display: block; color: #34d399; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; font-size: 0.85rem; letter-spacing: 0.08em; text-transform: uppercase; }
.content .s-safety .shield { fill: #34d399; }
.content .s-safety .shield-inner { fill: #0f3a3a; }
.content .s-safety .shackle { fill: none; stroke: #e6edf7; stroke-width: 7; stroke-linecap: round; }
.content .s-safety .lock { fill: #e6edf7; }
.content .s-safety .keyhole { fill: #0b1a1f; }
.content .s-safety .keyhole-stem { fill: none; stroke: #0b1a1f; stroke-width: 4; stroke-linecap: round; }

.content .s-not-for { background: #151a24; color: #f1f5fb; }
.content .s-not-for .eyebrow { color: #22d3ee; }
.content .s-not-for .big { color: #f1f5fb; }
.content .s-not-for .short { color: #c3cfe0; }
.content .s-not-for .art-door { display: block; width: 5rem; height: auto; margin: 1.1rem 0 0; }
.content .s-not-for .frame { fill: #26334b; }
.content .s-not-for .door { fill: #1b2538; }
.content .s-not-for .panel-line { fill: none; stroke: #3d5278; stroke-width: 2; }
.content .s-not-for .knob { fill: #22d3ee; }
.content .s-not-for .light { fill: none; stroke: #34d399; stroke-width: 4; stroke-linecap: round; }

.content .s-who { background: #edf1f6; color: #0b1b33; }
.content .s-who .eyebrow { color: #0b5e75; }
.content .s-who .big { color: #0b1b33; }
.content .s-who .short { color: #0b1b33; }
.content .s-who .person-name { color: #0b1b33; }
.content .s-who .note { color: #1f2a3d; }
.content .s-who .pending { color: #0b1b33; border-bottom: 1px dashed #0b1b33; }
.content .s-who .art-silhouettes { display: block; width: 100%; max-width: 22rem; height: auto; margin: 1.1rem 0 0; }
.content .s-who .sil { fill: none; stroke: #0b5e75; stroke-width: 2; stroke-dasharray: 5 4; }

.content .s-talk { background: #0a1428; color: #f1f5fb; }
.content .s-talk .eyebrow { color: #34d399; }
.content .s-talk .big { color: #f1f5fb; }
.content .s-talk .short { color: #d6e2f2; }
.content .s-talk .meta { color: #d6e2f2; }
.content .s-talk .meta a { color: #67e8f9; }
.content .s-talk .pending { color: #d6e2f2; border-bottom: 1px dashed #d6e2f2; }
.content .s-talk .art-envelope { display: block; width: 3.5rem; height: 3.5rem; margin: 1rem 0 0; }
.content .s-talk .ln { fill: none; stroke: #22d3ee; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }

@media (min-width: 48rem) {
    .content .screen { padding: 3.5rem 1.25rem; }
    .content .s-top { padding-top: 2rem; padding-bottom: 3rem; }
    .content .s-month .iconlist { grid-template-columns: repeat(3, 1fr); }
    .content .s-month .pioneer-item { grid-column: 1 / -1; flex-direction: row; align-items: center; }
    .content .s-month .art-pioneers { width: 15rem; flex: none; }
    .content .s-areas .areas { grid-template-columns: repeat(3, 1fr); }
    .content .s-safety .shortlist { grid-template-columns: repeat(3, 1fr); }
    .content .s-team .cards { margin: 0; padding: 0; border-left: 0; grid-template-columns: repeat(4, 1fr); gap: 2.5rem 1rem; }
    .content .s-team .card { flex-direction: column; text-align: center; }
    .content .s-team .card .role { justify-content: center; }
    .content .s-team .card:first-child { grid-column: 1 / -1; justify-self: center; width: 16rem; }
    .content .s-team .card::before { left: 50%; top: -1.25rem; width: 2px; height: 1.25rem; }
    .content .s-team .card:first-child::before { display: none; }
    .content .s-team .card::after { content: ""; position: absolute; left: -0.5rem; right: -0.5rem; top: -1.25rem; height: 2px; background: #1d6f86; }
    .content .s-team .card:nth-child(2)::after { left: 50%; }
    .content .s-team .card:nth-child(5)::after { right: 50%; }
    .content .s-team .card:first-child::after { left: 50%; right: auto; top: 100%; width: 2px; height: 1.25rem; }
}

@media (prefers-reduced-motion: reduce) {
    .content .flow { animation: none; stroke-dasharray: 0.1 14; }
    .content .pulse { animation: none; }
    .content .blink { animation: none; }
}
