
.content .timeline { margin: 1.1rem 0 0; width: 100%; }
.content .art-timeline { display: block; width: 100%; max-width: 26rem; height: auto; margin: 0 auto; }
.content .tl-label { fill: #c3cfe0; font-size: 11px; font-weight: 700; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.content .tl-human { fill: #16233a; stroke: #34d399; stroke-width: 1.5; }
.content .tl-shuttle { fill: #22d3ee; }
.content .tl-shuttle-2 { opacity: 0.85; }
.content .tl-shuttle-3 { opacity: 0.7; }
.content .tl-shuttle-4 { opacity: 0.85; }
.content .tl-shuttle-5 { opacity: 0.7; }
.content .tl-orch { fill: #0f2236; stroke: #22d3ee; stroke-width: 1.5; }
.content .tl-agents { fill: #0f2236; stroke: #22d3ee; stroke-width: 1.5; }
.content .tl-text { fill: #f1f5fb; font-size: 10.5px; font-weight: 600; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.content .tl-text-agents { fill: #c3cfe0; }
.content .tl-flow { stroke-width: 2; }
.content .s-timeline { background: #0a1428; color: #f1f5fb; }
.content .s-timeline .inner { max-width: 30rem; }
.content .s-timeline .eyebrow { color: #34d399; }
.content .s-timeline .art-timeline { max-width: 30rem; margin: 0 auto; }

.content .scene { --t0: -8.2s; display: block; width: 100%; max-width: 36rem; height: auto; }
.content .scene .jl-floor { fill: none; stroke: #1d4a6a; stroke-width: 1.5; }
.content .scene .jl-human-body { fill: #0f2236; stroke: #34d399; stroke-width: 1.6; }
.content .scene .jl-human-head { fill: #16233a; stroke: #34d399; stroke-width: 1.6; }
.content .scene .jl-eye-dot { fill: #34d399; }
.content .scene .jl-arm { fill: none; stroke: #34d399; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.content .scene .jl-hand { fill: #34d399; }
.content .scene .jl-arm-wind, .content .scene .jl-arm-throw { opacity: 0; }
.content .scene .jl-idea { opacity: 0; transform-box: fill-box; transform-origin: center; }
.content .scene .jl-human-alert, .content .scene .jl-emote { opacity: 0; transform-box: fill-box; transform-origin: center; }
.content .scene .jl-emote-line { fill: none; stroke: #fde047; stroke-width: 2; stroke-linecap: round; }
.content .scene .jl-bubble-dot { fill: none; stroke: #8aa0bd; stroke-width: 1.2; }
.content .scene .jl-cloud { fill: #0c1526; stroke: #8aa0bd; stroke-width: 1.2; }
.content .scene .jl-think-dot { fill: #c3cfe0; }
.content .scene .jl-tray { fill: #16233a; stroke: #22d3ee; stroke-width: 1.4; }
.content .scene .jl-tray-lip { fill: none; stroke: #22d3ee; stroke-width: 1.4; stroke-linejoin: round; }
.content .scene .jl-queue { fill: #9fb0c8; font-size: 9px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: 0.06em; }
.content .scene .jl-env-x, .content .scene .jl-env-y { transform-box: fill-box; transform-origin: center; }
.content .scene .jl-env { opacity: 0; transform-box: fill-box; transform-origin: center; }
.content .scene .jl-env-rect { fill: #f1f5fb; stroke: #22d3ee; stroke-width: 1; }
.content .scene .jl-env-flap { fill: none; stroke: #0e7490; stroke-width: 1.2; stroke-linejoin: round; }
.content .scene .jl-doc, .content .scene .jl-doc-tray { opacity: 0; transform-box: fill-box; transform-origin: center; }
.content .scene .jl-card-rect { fill: #f1f5fb; stroke: #22d3ee; stroke-width: 1; }
.content .scene .jl-card-lines { fill: none; stroke: #0a1428; stroke-width: 1.2; }
.content .scene .jl-head, .content .scene .jl-body { fill: #16233a; stroke: #22d3ee; stroke-width: 1.4; }
.content .scene .jl-eye { fill: #67e8f9; }
.content .scene .jl-line { fill: none; stroke: #22d3ee; stroke-width: 1.6; stroke-linecap: round; }
.content .scene .jl-tip { fill: #34d399; }
.content .scene .jl-squash, .content .scene .jl-bounce { transform-box: fill-box; transform-origin: 50% 100%; }
.content .scene .jl-alert { opacity: 0; transform-box: fill-box; transform-origin: 50% 100%; }
.content .scene .jl-alert-bar, .content .scene .jl-alert-dot { fill: #fbbf24; }
.content .scene .jl-emo { opacity: 0; transform-box: fill-box; transform-origin: center; }
.content .scene .jl-e-fill { fill: #fde047; }
.content .scene .jl-e-base { fill: #c3cfe0; }
.content .scene .jl-e-ring { fill: none; stroke: #22d3ee; stroke-width: 1.8; }
.content .scene .jl-e-ray { fill: none; stroke: #fde047; stroke-width: 1.3; stroke-linecap: round; }
.content .scene .jl-e-check { fill: none; stroke: #34d399; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.content .scene .jl-screen-frame { fill: #16233a; stroke: #22d3ee; stroke-width: 1.2; }
.content .scene .jl-screen { fill: #07101f; }
.content .scene .jl-blip { fill: #34d399; }
.content .scene .jl-plate { fill: #16233a; stroke: #22d3ee; stroke-width: 1.4; }
.content .scene .jl-table { fill: #16233a; stroke: #2a4a6a; stroke-width: 1; }
.content .scene .jl-board { fill: none; stroke: #8aa0bd; stroke-width: 1; }
.content .scene .jl-easel { fill: none; stroke: #8aa0bd; stroke-width: 1.4; stroke-linecap: round; }
.content .scene .jl-canvas { fill: #f1f5fb; stroke: #8aa0bd; stroke-width: 1; }
.content .scene .jl-paint { fill: none; stroke: #0e7490; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.content .scene .jl-paint-b { stroke: #059669; }
.content .scene .jl-barbell, .content .scene .jl-chess-pieces { transform-box: fill-box; transform-origin: center; }
.content .scene .jl-lift-arm-l { transform-box: view-box; transform-origin: 282px 178px; }
.content .scene .jl-lift-arm-r { transform-box: view-box; transform-origin: 298px 178px; }
.content .scene .jl-brush { transform-box: view-box; transform-origin: 437px 180px; }
.content .scene .jl-piece { fill: #67e8f9; }
@media (prefers-reduced-motion: no-preference) {
    .content .scene .jl-idle { animation: jlidle 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-run { animation: jlrun 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-run-carry { animation-name: jlruncarry; }
    .content .scene .jl-squash { animation: jlsquash 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-bounce { animation-name: jlbounce; animation-timing-function: ease-in-out; animation-iteration-count: infinite; animation-direction: alternate; }
    .content .scene .jl-think { animation: jlthink 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-arm-think { animation: jlthink 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-human-alert { animation: jlhumanalert 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-emote { animation: jlemote 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-arm-wind { animation: jlarmwind 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-arm-throw { animation: jlarmthrow 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-idea { animation: jlidea 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-env-x { animation: jlenvx 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-env-y { animation: jlenvy 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-env { animation: jlenv 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-alert { animation: jlalert 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-emo { animation: jlpop 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-emo-long { animation-name: jlpoplong; }
    .content .scene .jl-doc { animation: jldoc 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-doc-tray { animation: jldoctray 20s linear infinite; animation-delay: var(--t0); }
    .content .scene .jl-think-dot { animation: jldot 1.1s ease-in-out infinite; }
    .content .scene .jl-think-dot-1 { animation-delay: -0.35s; }
    .content .scene .jl-think-dot-2 { animation-delay: -0.7s; }
    .content .scene .jl-barbell { animation: jllift 0.55s ease-in-out infinite alternate; }
    .content .scene .jl-lift-arm { animation: jlliftarm 0.55s ease-in-out infinite alternate; }
    .content .scene .jl-brush { animation: jlbrush 0.3s ease-in-out infinite alternate; }
    .content .scene .jl-blip { animation: jlblip 0.25s steps(2) infinite; }
    .content .scene .jl-blip-2 { animation-delay: -0.12s; }
    .content .scene .jl-chess-pieces { animation: jlnod 0.35s ease-in-out infinite alternate; }
    .content .scene .jl-piece-2 { animation: jlnod 0.45s ease-in-out infinite alternate-reverse; }
}
@keyframes jlthink { 0%, 55% { opacity: 1; } 55.5%, 65% { opacity: 0; } 65.5%, 91% { opacity: 1; } 91.5%, 99% { opacity: 0; } 99.5%, 100% { opacity: 1; } }
@keyframes jlhumanalert { 0%, 91.4% { opacity: 0; transform: scale(0.2); } 92.4% { opacity: 1; transform: scale(1.7); } 93.6%, 94.8% { opacity: 1; transform: scale(1); } 95.5%, 100% { opacity: 0; transform: scale(1); } }
@keyframes jlemote { 0%, 94.8% { opacity: 0; transform: scale(0.5); } 95.8% { opacity: 1; transform: scale(1.15); } 97% { opacity: 1; transform: scale(0.95); } 98.2% { opacity: 1; transform: scale(1.1); } 99.3% { opacity: 1; transform: scale(1); } 99.8%, 100% { opacity: 0; transform: scale(1); } }
@keyframes jlidle { 0%, 65% { opacity: 1; } 66%, 98% { opacity: 0; } 99.5%, 100% { opacity: 1; } }
@keyframes jlrun { 0%, 66% { transform: translateX(0); animation-timing-function: cubic-bezier(0.2, 1.3, 0.4, 1); } 70%, 77% { transform: translateX(var(--a)); animation-timing-function: cubic-bezier(0.2, 1.3, 0.4, 1); } 79.5%, 96% { transform: translateX(var(--b)); animation-timing-function: cubic-bezier(0.2, 1.3, 0.4, 1); } 100% { transform: translateX(0); } }
@keyframes jlruncarry { 0%, 66% { transform: translateX(0); animation-timing-function: cubic-bezier(0.2, 1.3, 0.4, 1); } 70%, 77% { transform: translateX(var(--a)); animation-timing-function: cubic-bezier(0.2, 1.3, 0.4, 1); } 79.5%, 87.5% { transform: translateX(var(--b)); animation-timing-function: cubic-bezier(0.2, 1.3, 0.4, 1); } 90%, 92.5% { transform: translateX(var(--c)); } 100% { transform: translateX(0); } }
@keyframes jlsquash { 0%, 64.5% { transform: scale(1, 1); } 66% { transform: scale(1.25, 0.78); } 67.5% { transform: scale(0.8, 1.25); } 69.5% { transform: scale(1.25, 0.8); } 71%, 76% { transform: scale(1, 1); } 77.5% { transform: scale(1.2, 0.8); } 78.7% { transform: scale(0.82, 1.22); } 80% { transform: scale(1.2, 0.82); } 81.5%, 95.5% { transform: scale(1, 1); } 96.5% { transform: scale(1.2, 0.8); } 98.5% { transform: scale(0.82, 1.22); } 99.8%, 100% { transform: scale(1, 1); } }
@keyframes jlbounce { from { transform: translateY(0) scale(1, 1); } to { transform: translateY(-5px) scale(0.93, 1.1); } }
@keyframes jlarmwind { 0%, 58.5% { opacity: 0; } 59.5%, 61% { opacity: 1; } 61.5%, 100% { opacity: 0; } }
@keyframes jlarmthrow { 0%, 61% { opacity: 0; } 61.5%, 63.5% { opacity: 1; } 64.5%, 100% { opacity: 0; } }
@keyframes jlidea { 0%, 55% { opacity: 0; transform: scale(0.3); } 56.5% { opacity: 1; transform: scale(1.4); } 58% { opacity: 1; transform: scale(1); } 60% { opacity: 1; } 61%, 100% { opacity: 0; transform: scale(1); } }
@keyframes jlenvx { 0%, 61.2% { transform: translateX(-64px); } 65%, 100% { transform: translateX(0); } }
@keyframes jlenvy { 0%, 61.2% { transform: translateY(-75px); animation-timing-function: cubic-bezier(0.3, 0, 0.6, 1); } 63.2% { transform: translateY(-118px); animation-timing-function: cubic-bezier(0.5, 0, 0.9, 0.6); } 65%, 100% { transform: translateY(0); } }
@keyframes jlenv { 0%, 61% { opacity: 0; transform: rotate(0deg); } 61.3% { opacity: 1; transform: rotate(0deg); } 65% { opacity: 1; transform: rotate(540deg) scale(1); } 67.5% { opacity: 1; transform: rotate(540deg) scale(1); } 68.5%, 100% { opacity: 0; transform: rotate(540deg) scale(0.2); } }
@keyframes jlalert { 0%, 64.8% { opacity: 0; transform: scale(0.2); } 65.8% { opacity: 1; transform: scale(1.7); } 67.2%, 70% { opacity: 1; transform: scale(1); } 71.5%, 100% { opacity: 0; transform: scale(1); } }
@keyframes jlpop { 0% { opacity: 0; transform: translateY(5px) scale(0.3); } 1.4% { opacity: 1; transform: translateY(-3px) scale(1.4); } 2.4%, 3.2% { opacity: 1; transform: translateY(0) scale(1); } 3.7%, 100% { opacity: 0; transform: translateY(0) scale(1); } }
@keyframes jlpoplong { 0% { opacity: 0; transform: translateY(5px) scale(0.3); } 1.2% { opacity: 1; transform: translateY(-3px) scale(1.5); } 2%, 6.3% { opacity: 1; transform: translateY(0) scale(1); } 7%, 100% { opacity: 0; transform: translateY(0) scale(1); } }
@keyframes jldoc { 0%, 85% { opacity: 0; } 86%, 91% { opacity: 1; transform: scale(1); } 91.3%, 100% { opacity: 0; } }
@keyframes jldoctray { 0%, 90.9% { opacity: 0; transform: scale(0.5); } 92% { opacity: 1; transform: scale(1.25); } 93.5%, 98% { opacity: 1; transform: scale(1); } 99.5%, 100% { opacity: 0; transform: scale(1); } }
@keyframes jldot { 0%, 100% { opacity: 0.25; } 50% { opacity: 1; } }
@keyframes jllift { from { transform: translateY(22px); } to { transform: translateY(0); } }
@keyframes jlliftarm { from { transform: scale(0.35); } to { transform: scale(1); } }
@keyframes jlbrush { from { transform: rotate(-14deg); } to { transform: rotate(16deg); } }
@keyframes jlblip { 0% { opacity: 1; } 100% { opacity: 0.2; } }
@keyframes jlnod { from { transform: translateY(0); } to { transform: translateY(-3px); } }
.content .tl-link { fill: none; stroke: #34d399; stroke-width: 1.5; stroke-dasharray: 3 3; }
.content .tl-axis { fill: none; stroke: #5b7391; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.content .tl-axis-text { fill: #9fb0c8; font-size: 9px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.content .s-top { background-image: linear-gradient(rgba(34, 211, 238, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(34, 211, 238, 0.035) 1px, transparent 1px); }

.content .s-org { background: #101a30; color: #f1f5fb; }
.content .s-org .eyebrow { color: #34d399; }
.content .s-org .big { color: #f1f5fb; font-size: clamp(1.6rem, 6.4vw, 2.6rem); }
.content .s-org .short { color: #c3cfe0; }
.content .s-org .figcap { color: #9fb0c8; }
.content .art-org { display: block; width: 100%; max-width: 30rem; height: auto; }
.content .org-people { fill: #0f2236; stroke: #34d399; stroke-width: 1.5; }
.content .org-group { fill: #0c1526; stroke: #22d3ee; stroke-width: 1.5; }
.content .org-bar { fill: #0c1526; stroke: #22d3ee; stroke-width: 1.5; }
.content .org-text-bar { font-size: 11.5px; }
.content .org-cross { fill: none; stroke: #2a6a8f; stroke-width: 0.9; }
.content .org-text-box { font-size: 11px; fill: #c3cfe0; letter-spacing: 0.04em; }
.content .org-text-xs { font-size: 9.5px; font-weight: 600; }
.content .org-top { fill: #0f2236; stroke: #22d3ee; stroke-width: 2; }
.content .org-node { fill: #16233a; stroke: #2a4a6a; stroke-width: 1.5; }
.content .org-line { fill: none; stroke: #2a4a6a; stroke-width: 1.5; }
.content .org-line-dash { stroke: #34d399; stroke-dasharray: 3 3; }
.content .org-text { fill: #f1f5fb; font-size: 14px; font-weight: 700; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.content .org-text-dark { fill: #d6e2f2; font-size: 12px; }
.content .org-text-sm { font-size: 11px; font-weight: 600; }
.content .org-note { fill: #9fb0c8; font-size: 11px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }

.content .s-compare { background: #0f1a2e; color: #f1f5fb; }
.content .s-compare .eyebrow { color: #34d399; }
.content .s-compare .big { color: #f1f5fb; font-size: clamp(1.6rem, 6.4vw, 2.6rem); }
.content .compare-wrap { margin-top: 1.1rem; overflow-x: auto; }
.content .compare { width: 100%; table-layout: fixed; border-collapse: collapse; background: #111c30; border: 1px solid #2a3d5c; font-size: 0.8rem; line-height: 1.3; }
.content .compare th, .content .compare td { padding: 0.5rem 0.35rem; border-bottom: 1px solid #22314a; text-align: center; }
.content .compare thead th { background: #070d19; color: #f1f5fb; font-weight: 700; font-size: 0.72rem; line-height: 1.2; vertical-align: bottom; width: 18%; }
.content .compare thead th:first-child { width: 28%; }
.content .compare tbody th { background: #111c30; text-align: left; font-weight: 600; color: #e1e9f5; }
.content .compare td.no { background: #3a1c24; color: #f4b3bd; }
.content .compare td.yes { background: #123a2c; color: #7ff0c0; font-weight: 800; }
.content .compare thead .col-persona { background: #34d399; color: #04121c; }
.content .sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.content .s-schedule { background: #0a1428; color: #f1f5fb; }
.content .s-schedule .eyebrow { color: #34d399; }
.content .s-schedule .big { color: #f1f5fb; }
.content .s-schedule .short { color: #d6e2f2; }

body.dark3 { background: #0a1020; color: #d6e2f2; }
.dark3 .stage { padding-top: 2rem; padding-bottom: 3rem; }
.dark3 .content h1, .dark3 .content h2, .dark3 .content h3, .dark3 .content .page-title, .dark3 .content strong { color: #f1f5fb; }
.dark3 .content p, .dark3 .content li { color: #d6e2f2; }
.dark3 .content a { color: #67e8f9; }
.dark3 .content a.btn3, .dark3 .content a.btn3:hover { color: #04121c; text-decoration: none; }
.dark3 .content a.quiet { color: #f1f5fb; border-bottom-color: #34d399; }
.dark3 .content .eyebrow { color: #34d399; }
.dark3 .content .short { color: #c3cfe0; }
.dark3 .content .privacy-item { border-top-color: #22314a; }
.dark3 .content .privacy-plain { color: #f1f5fb; }
.dark3 .content h2 { font-size: 1.35rem; margin-top: 2rem; }
.dark3 .content .shortlist li { color: #d6e2f2; }
.dark3 .content .shortlist li::before { background: #34d399; }
.dark3 .content .note, .dark3 .content .meta, .dark3 .content .figcap { color: #9fb0c8; }
.dark3 .content .case { background: #111c30; border-color: #2a3d5c; }
.dark3 .content .case p { color: #d6e2f2; }
.dark3 .content .case .case-name { color: #f1f5fb; }
.dark3 .content .calm-box { fill: #111c30; stroke: #2a4a6a; }
.dark3 .content .calm-mid { fill: #0f2236; stroke: #22d3ee; }
.dark3 .content .calm-text { fill: #f1f5fb; }
.dark3 .content .calm-sub { fill: #9fb0c8; }
.dark3 .content .calm-arrow, .dark3 .content .calm-head { stroke: #22d3ee; }
.content .sched { max-width: 36rem; margin-top: 1.25rem; }
.content .sched-slots { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0 0 1rem; }
.content .sched-slot { padding: 0.55rem 0.9rem; background: #111c30; color: #f1f5fb; border: 1px solid #2a3d5c; border-radius: 0.5rem; font: inherit; font-size: 0.95rem; line-height: 1.3; cursor: pointer; }
.content .sched-slot[aria-pressed="true"] { background: #22d3ee; color: #04121c; border-color: #22d3ee; font-weight: 800; }
.content .sched-slot:focus-visible, .content .sched .btn3:focus-visible, .content .cal-day:focus-visible, .content .cal-nav:focus-visible, .content .link-button:focus-visible { outline: 3px solid #ffffff; outline-offset: 2px; }
.dark3 .stage.stage-wide { padding: 0; }
.content .s-studio { background: #0f1a2e; color: #f1f5fb; border-top: 0; }
.content .s-challenges { background: #111826; color: #f1f5fb; }
.content .s-judgement { background: #0f1a2e; color: #f1f5fb; }
.content .s-contribution { background: #111826; color: #f1f5fb; }
.content .s-studio .inner > p, .content .s-challenges .inner > p, .content .s-contribution .inner > p { max-width: 40rem; }
.content .s-deck { color: #f1f5fb; padding-top: 2rem; padding-bottom: 2rem; }
.content .s-deck-a { background: #0f1a2e; }
.content .s-deck-b { background: #111826; }
.dark3 .content .deck-title { margin: 0 0 1rem; max-width: 26ch; font-size: clamp(1.7rem, 6.4vw, 2.9rem); line-height: 1.12; font-weight: 800; letter-spacing: -0.02em; }
.dark3 .content .deck-heading { margin: 0 0 1rem; font-size: clamp(1.45rem, 5.2vw, 2.1rem); line-height: 1.18; font-weight: 800; letter-spacing: -0.015em; }
.dark3 .content .deck-list { margin: 0; max-width: 40rem; gap: 0.7rem; }
.dark3 .content .deck-list li { font-size: clamp(1rem, 3.5vw, 1.2rem); line-height: 1.4; }
.dark3 .content .deck-note { max-width: 40rem; margin: 1.25rem 0 0; font-size: clamp(1rem, 3.5vw, 1.15rem); line-height: 1.5; }
.content .s-deck .inner > p { max-width: 40rem; }
.dark3 .content .deck-label { margin: 1.5rem 0 0.6rem; font-size: 0.8rem; line-height: 1.4; letter-spacing: 0.12em; text-transform: uppercase; }
.dark3 .content .deck-label strong { color: #34d399; font-weight: 800; }
.content .checklist { list-style: none; margin: 0 0 2rem; padding: 0; max-width: 40rem; }
.dark3 .content .checklist li { display: flex; align-items: flex-start; gap: 0.85rem; padding: 0.85rem 1rem; background: #111c30; border: 1px solid #2a3d5c; border-radius: 0.6rem; font-size: clamp(1rem, 3.5vw, 1.15rem); line-height: 1.45; color: #f1f5fb; }
.content .check-box { flex: 0 0 auto; box-sizing: border-box; width: 1.35rem; height: 1.35rem; margin-top: 0.1rem; border: 2px solid #34d399; border-radius: 0.3rem; background: transparent; }
.content .check-text { min-width: 0; overflow-wrap: anywhere; }
.dark3 .content .nf-code { display: block; margin-bottom: 0.35rem; font-size: clamp(3.75rem, 20vw, 6.5rem); line-height: 1; font-weight: 800; letter-spacing: -0.03em; color: #34d399; }
.dark3 .content .nf-title { display: block; }
.content .back-link { padding: 1.5rem 1.25rem 2rem; border-top: 1px solid #1f2a3d; }
.content .back-link .row { margin: 0; }
.content .callouts { display: grid; grid-template-columns: 1fr; gap: 1rem; margin: 0; }
.content .callout { padding: 1rem 1.1rem; background: #111c30; border: 1px solid #2a3d5c; border-left: 4px solid #34d399; border-radius: 0.6rem; }
.dark3 .content .callout p { margin: 0; font-size: 1.05rem; line-height: 1.5; }
.dark3 .content .callout strong { font-weight: 800; }
@media (min-width: 40rem) {
    .content .callouts { grid-template-columns: repeat(2, 1fr); }
}
.content .studio-list { margin-bottom: 1.75rem; }
.content .twocards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; margin: 1.25rem 0 0; }
.content .listcard { min-width: 0; padding: 0.8rem 0.7rem 0.55rem 0.75rem; background: #111c30; border: 1px solid #2a3d5c; border-left: 3px solid #34d399; border-radius: 0.6rem; }
.content .listcard-same { border-left-color: #22d3ee; }
.dark3 .content .listcard-title { margin: 0 0 0.4rem; font-size: 0.68rem; line-height: 1.4; letter-spacing: 0.06em; text-transform: uppercase; overflow-wrap: anywhere; color: #34d399; }
.dark3 .content .listcard-same .listcard-title { color: #22d3ee; }
.content .listcard-items { list-style: none; margin: 0; padding: 0; }
.dark3 .content .listcard-items li { padding: 0.5rem 0; overflow-wrap: anywhere; hyphens: auto; border-top: 1px solid #22314a; font-size: 0.875rem; line-height: 1.35; color: #f1f5fb; }
.dark3 .content .listcard-items li:first-child { border-top: 0; }
@media (min-width: 40rem) {
    .content .twocards { gap: 2rem; }
    .content .listcard { padding: 1.1rem 1.25rem 0.9rem; border-left-width: 4px; }
    .dark3 .content .listcard-title { margin-bottom: 0.5rem; font-size: 0.8rem; letter-spacing: 0.12em; }
    .dark3 .content .listcard-items li { padding: 0.65rem 0; font-size: 1rem; line-height: 1.4; }
}
.shell3 label[role="button"]:focus-visible { outline: 3px solid #ffffff; outline-offset: 3px; }
.content .cal { max-width: 24rem; margin: 0 0 1.25rem; padding: 0.9rem; background: #0e182b; border: 1px solid #22314a; border-radius: 0.75rem; }
.content .cal-head { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; margin: 0 0 0.6rem; }
.content .cal-title { margin: 0; font-size: 1.1rem; line-height: 1.3; text-align: center; color: #f1f5fb; }
.content .cal-nav { width: 2.75rem; height: 2.75rem; background: #111c30; color: #f1f5fb; border: 1px solid #2a3d5c; border-radius: 0.5rem; font: inherit; font-size: 1.4rem; line-height: 1; cursor: pointer; }
.content .cal-nav[disabled] { opacity: 0.35; cursor: default; }
.content .cal-week, .content .cal-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 0.25rem; }
.content .cal-week span { text-align: center; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.04em; color: #9fb0c8; text-transform: uppercase; }
.content .cal-grid { margin: 0.25rem 0 0.6rem; }
.content .cal-day { position: relative; min-width: 0; height: 2.6rem; padding: 0; background: transparent; color: #5f7391; border: 1px solid transparent; border-radius: 0.5rem; font: inherit; font-size: 0.95rem; cursor: default; }
.content .cal-day.has-slots { background: #111c30; color: #f1f5fb; border-color: #2a3d5c; font-weight: 700; cursor: pointer; }
.content .cal-day.has-slots::after { content: ""; position: absolute; left: 50%; bottom: 0.25rem; width: 0.3rem; height: 0.3rem; margin-left: -0.15rem; border-radius: 50%; background: #34d399; }
.content .cal-day[aria-pressed="true"] { background: #22d3ee; color: #04121c; border-color: #22d3ee; }
.content .cal-day[aria-pressed="true"]::after { background: #04121c; }
.content .cal-key { display: flex; align-items: center; gap: 0.5rem; margin: 0; font-size: 0.85rem; }
.content .cal-key-dot { display: inline-block; width: 0.45rem; height: 0.45rem; border-radius: 50%; background: #34d399; }
.content .sched-times-title { margin: 0 0 0.6rem; font-size: 1.05rem; color: #f1f5fb; }
.content .sched-slot { display: flex; flex-direction: column; align-items: flex-start; gap: 0.1rem; min-height: 2.75rem; }
.content .slot-time { font-weight: 800; }
.content .slot-pacific { font-size: 0.8rem; color: #9fb0c8; }
.content .sched-slot:hover { border-color: #22d3ee; }
.content .link-button { padding: 0; background: none; border: 0; color: #67e8f9; font: inherit; text-decoration: underline; cursor: pointer; }
.content .supportform { margin-top: 1.25rem; }
.content #support-fields[hidden], .content .sched-form[hidden], .content .sched-done[hidden], .content .sched-error[hidden], .content .sched-times[hidden], .content #sched-pick[hidden], .content .sched-slots[hidden], .content #sched-fallback[hidden] { display: none; }
.content .sched .field { display: block; margin: 0 0 1rem; }
.content .sched .field span { display: block; margin-bottom: 0.3rem; font-weight: 700; color: #f1f5fb; }
.content .sched .field input[type="file"] { color: #c3cfe0; }
.content .attach-errors { margin: 0 0 1rem; padding-left: 1.2rem; color: #fca5a5; font-weight: 700; }
.content .attach-errors[hidden] { display: none; }
.content .attach-previews { display: flex; flex-wrap: wrap; gap: 0.75rem; margin: 0 0 1rem; }
.content .attach-item { display: flex; flex-direction: column; align-items: center; gap: 0.3rem; max-width: 7.5rem; padding: 0.5rem; background: #111c30; border: 1px solid #2a3d5c; border-radius: 0.5rem; }
.content .attach-item canvas { display: block; max-width: 100%; height: auto; border-radius: 0.25rem; background: #07101f; }
.content .attach-name { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 0.75rem; color: #c3cfe0; }
.content .attach-remove { padding: 0.15rem 0.6rem; background: transparent; color: #67e8f9; border: 1px solid #2a3d5c; border-radius: 0.3rem; font: inherit; font-size: 0.75rem; cursor: pointer; }
.content .sched .field input, .content .sched .field select, .content .sched .field textarea { display: block; width: 100%; box-sizing: border-box; padding: 0.6rem 0.7rem; background: #111c30; color: #f1f5fb; border: 1px solid #2a3d5c; border-radius: 0.4rem; font: inherit; }
.content .sched .field input:focus-visible, .content .sched .field select:focus-visible, .content .sched .field textarea:focus-visible { outline: 3px solid #22d3ee; outline-offset: 1px; }
.dark3 .content .sched-picked { margin: 0 0 1rem; font-weight: 700; color: #67e8f9; }
.dark3 .content .sched-error { margin: 0 0 1rem; color: #fca5a5; font-weight: 700; }
.content .sched-done { padding: 1rem 1.1rem; background: #111c30; border: 1px solid #2a3d5c; border-radius: 0.6rem; }
.content .letter p { max-width: 36rem; }
.content .privacy-group { margin-top: 2.5rem; font-size: 1.6rem; }
.content .privacy-plain { max-width: 36rem; font-size: 1.2rem; font-weight: 700; }
.content .privacy-item { max-width: 36rem; padding: 0.25rem 0 0.5rem; border-top: 1px solid #d5e0ee; }
.content .privacy-item h3 { margin: 1.1rem 0 0.4rem; font-size: 1.15rem; font-weight: 800; }
.content .privacy-item p { margin: 0 0 0.75rem; }
.content .calm { margin: 1.75rem 0; }
.content .art-calm { display: block; width: 100%; max-width: 30rem; height: auto; }
.content .calm-box { fill: #edf1f6; stroke: #bccbe0; stroke-width: 1.5; }
.content .calm-mid { fill: #0a1020; stroke: #0a1020; }
.content .calm-text { fill: #0a1020; font-size: 13px; font-weight: 700; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.content .calm-text-light { fill: #ffffff; }
.content .calm-sub { fill: #3b4658; font-size: 11px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.content .calm-arrow { fill: none; stroke: #0b5e75; stroke-width: 2; stroke-linecap: round; }
.content .calm-head { fill: none; stroke: #0b5e75; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

.content .cases { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 0.75rem; }
.content .case { padding: 1rem 1.25rem; background: #edf1f6; border: 1px solid #bccbe0; border-radius: 0.6rem; }
.content .case p { margin: 0 0 0.5rem; }
.content .case .row { margin: 0.5rem 0 0; }
.content .case-name { font-size: 1.25rem; font-weight: 800; }

@media (min-width: 48rem) {
    .content .compare { font-size: 0.95rem; }
    .content .cases { grid-template-columns: repeat(2, 1fr); }
}
.content .s-top { padding-bottom: 0.9rem; }
.content .s-top .band-scene { position: relative; order: 2; width: 100%; box-sizing: border-box; display: flex; justify-content: center; margin-top: 0.35rem; padding: 0; background: #07101f; border-bottom: 1px solid #1d6f86; overflow: hidden; }
