/* The radiant layer (2026-09-29). Loaded last; every rule is an enhancement over the atelier design. */
:root{--rad-gold:#e8c27a;--rad-gold-soft:#e8c27a33;--rad-deep:#0c1612;--rad-ease:cubic-bezier(.2,.75,.25,1);--rad-spring:cubic-bezier(.34,1.56,.64,1)}

/* ---------- Route transitions ---------- */
main#main{view-transition-name:codex-main}
::view-transition-old(root),::view-transition-new(root){animation:none}
::view-transition-old(codex-main){animation:rad-leave .2s ease both}
::view-transition-new(codex-main){animation:rad-arrive .46s var(--rad-ease) both}
:root[data-transition=soft]::view-transition-old(codex-main){animation:rad-fade-out .14s ease both}
:root[data-transition=soft]::view-transition-new(codex-main){animation:rad-fade-in .22s ease both}
@keyframes rad-leave{to{opacity:0;transform:translateY(-6px);filter:blur(2px)}}
@keyframes rad-arrive{from{opacity:0;transform:translateY(14px);filter:blur(4px)}}
@keyframes rad-fade-out{to{opacity:0}}
@keyframes rad-fade-in{from{opacity:0}}

/* ---------- A warmer pointer light, tinted by school ---------- */
.motion-surface:after{background:radial-gradient(340px circle at var(--pointer-x,50%) var(--pointer-y,30%),color-mix(in srgb,var(--school,#efcd88) 24%,transparent),transparent 70%)}

/* ---------- Hero ---------- */
.hero-art{transform:perspective(1400px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s var(--rad-ease),box-shadow .5s;transform-style:preserve-3d}
.hero-art img{animation:rad-drift 22s ease-in-out infinite alternate;transform-origin:62% 40%}
.hero-art{overflow:visible}
.hero-art>img{display:block}
@keyframes rad-drift{from{scale:1;translate:0 0}to{scale:1.045;translate:-1% -.6%}}
.hero-art:has(img){isolation:isolate}
.hero h1 em{background:linear-gradient(100deg,#c79a4e 0%,#f6dca0 30%,#c79a4e 55%,#f3d593 80%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:rad-sheen 7s ease-in-out infinite}
@keyframes rad-sheen{0%,100%{background-position:0 0}50%{background-position:100% 0}}
.bell-now{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin:22px 0 26px;padding:10px 16px 10px 14px;width:max-content;max-width:100%;border:1px solid var(--edge,#b59b6059);border-radius:999px;background:linear-gradient(90deg,#e8c27a14,#e8c27a05);color:var(--ink);font-size:.86rem;line-height:1.35}
.bell-now i{width:9px;height:9px;border-radius:50%;background:var(--rad-gold);box-shadow:0 0 0 0 #e8c27a88;animation:rad-pulse 2.6s ease-out infinite;flex:none}
.bell-now[data-phase=night] i{background:#9fb4e6;box-shadow:0 0 0 0 #9fb4e688}
.bell-now[data-phase=dusk] i{background:#e79a6b;box-shadow:0 0 0 0 #e79a6b88}
.bell-now small{color:var(--muted);font-size:.74rem;letter-spacing:.04em}
@keyframes rad-pulse{0%{box-shadow:0 0 0 0 #e8c27a88}70%{box-shadow:0 0 0 10px #e8c27a00}100%{box-shadow:0 0 0 0 #e8c27a00}}

/* ---------- Stats ---------- */
.stat-strip strong{font-variant-numeric:tabular-nums}

/* ---------- School tiles ---------- */
.school-tile{overflow:hidden}
.school-tile .tile-faces{display:flex;margin-top:14px;padding-left:6px;grid-column:1/-1}
.school-tile .tile-faces,.school-tile .tile-count{grid-column:1/-1;position:relative;z-index:3}
.school-tile .tile-faces img{width:34px;height:34px;border-radius:50%;object-fit:cover;object-position:50% 18%;margin-left:-8px;border:2px solid color-mix(in srgb,var(--school) 70%,#0c1612);background:#0c1612;transition:transform .35s var(--rad-spring),margin .35s var(--rad-ease)}
.school-tile:hover .tile-faces img{margin-left:-2px}
.school-tile:hover .tile-faces img:nth-child(2){transform:translateY(-3px)}
.school-tile:hover .tile-faces img:nth-child(3){transform:translateY(-5px)}
.school-tile .tile-count{display:block;margin-top:8px;font-size:.72rem;letter-spacing:.06em;color:color-mix(in srgb,var(--school) 65%,var(--muted));text-transform:uppercase}
.school-tile:after{background:radial-gradient(260px circle at var(--pointer-x,50%) var(--pointer-y,30%),color-mix(in srgb,var(--school) 30%,transparent),transparent 72%)}
.school-tile{transition:transform .4s var(--rad-ease),box-shadow .4s,border-color .4s}
.school-tile:hover{transform:translateY(-4px);box-shadow:0 18px 40px #0007,0 0 0 1px color-mix(in srgb,var(--school) 55%,transparent),0 0 38px color-mix(in srgb,var(--school) 18%,transparent)}

/* ---------- Faces of the mountain ---------- */
.rad-faces{margin-top:64px}
.faces-marquee{overflow:hidden;margin:0 calc(var(--rad-bleed,0px) * -1);padding:10px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.faces-track{display:flex;width:max-content;animation:rad-marquee 110s linear infinite}
.faces-marquee[data-direction=right] .faces-track{animation-direction:reverse;animation-duration:130s}
.faces-marquee:hover .faces-track,.faces-marquee:focus-within .faces-track{animation-play-state:paused}
.faces-half{display:flex;gap:14px;padding-right:14px}
@keyframes rad-marquee{to{transform:translateX(-50%)}}
.face{position:relative;display:block;flex:0 0 176px;height:232px;border-radius:14px;overflow:hidden;border:1px solid color-mix(in srgb,var(--school) 45%,transparent);background:var(--rad-deep);box-shadow:0 12px 30px #0006;transform:perspective(700px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .45s var(--rad-ease),box-shadow .45s,border-color .45s}
.face img{width:100%;height:100%;object-fit:cover;object-position:50% 14%;transition:transform .8s var(--rad-ease),filter .6s;filter:saturate(.92)}
.face:hover,.face:focus-visible{border-color:var(--school);box-shadow:0 18px 44px #000a,0 0 30px color-mix(in srgb,var(--school) 30%,transparent)}
.face:hover img,.face:focus-visible img{transform:scale(1.08);filter:saturate(1.08)}
.face-caption{position:absolute;inset:auto 0 0;padding:34px 12px 11px;background:linear-gradient(180deg,transparent,#08110ddd 55%);display:flex;flex-direction:column;gap:2px}
.face-caption b{font-family:var(--serif);font-weight:400;font-size:1.02rem;color:#f5e8c8;line-height:1.15}
.face-caption small{font-size:.68rem;letter-spacing:.05em;color:color-mix(in srgb,var(--school) 60%,#e9dcc0);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.face:before{content:'';position:absolute;inset:0 0 auto;height:3px;background:var(--school);opacity:.85;z-index:1}
.rad-faces-hint{margin:6px 0 0;font-size:.78rem;color:var(--muted);text-align:right}

/* ---------- The quiz teaser ---------- */
.rad-quiz-teaser{position:relative;display:grid;grid-template-columns:minmax(200px,260px) 1fr;align-items:center;gap:40px;margin-top:56px;padding:34px 42px;border:1px solid var(--edge,#b59b6059);border-radius:18px;background:radial-gradient(120% 140% at 0% 50%,#e8c27a1f,transparent 55%),linear-gradient(135deg,#1d3128,#132019);color:var(--ink);text-decoration:none;overflow:hidden;box-shadow:0 24px 60px #0006;transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s var(--rad-ease),border-color .4s}
.rad-quiz-teaser:hover{border-color:var(--edge-strong,#c4a569)}
.rad-orbit{position:relative;display:block;width:220px;height:220px;margin:auto}
.rad-orbit b{position:absolute;inset:50% auto auto 50%;translate:-50% -50%;width:74px;height:74px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,#e6c47d,#b88b41);color:#1b140a;font-size:2.1rem;box-shadow:0 0 0 6px #e8c27a22,0 0 40px #e8c27a55;animation:rad-breathe 5s ease-in-out infinite}
.rad-orbit i{position:absolute;left:50%;top:50%;width:34px;height:34px;margin:-17px 0 0 -17px;display:grid;place-items:center;border-radius:50%;font-style:normal;font-family:var(--serif);font-size:.9rem;color:var(--school);background:#0e1914;border:1px solid color-mix(in srgb,var(--school) 70%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--school) 35%,transparent);transform:rotate(calc(var(--i) * 36deg)) translateY(-94px) rotate(calc(var(--i) * -36deg));animation:rad-orbit 40s linear infinite}
@keyframes rad-orbit{from{transform:rotate(calc(var(--i) * 36deg)) translateY(-94px) rotate(calc(var(--i) * -36deg))}to{transform:rotate(calc(var(--i) * 36deg + 360deg)) translateY(-94px) rotate(calc(var(--i) * -36deg - 360deg))}}
@keyframes rad-breathe{0%,100%{box-shadow:0 0 0 6px #e8c27a22,0 0 34px #e8c27a44}50%{box-shadow:0 0 0 12px #e8c27a14,0 0 58px #e8c27a77}}
.rad-quiz-copy{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.rad-quiz-copy strong{font-family:var(--serif);font-weight:400;font-size:clamp(1.8rem,3.2vw,2.7rem);line-height:1.08;color:#f6e7c5}
.rad-quiz-copy>span:not(.eyebrow):not(.button){max-width:52ch;color:var(--muted);line-height:1.6}
.rad-quiz-copy .button{margin-top:6px}

/* ---------- Today on the mountain ---------- */
.rad-today{margin-top:56px}
.rad-today-note{font-size:.8rem;color:var(--muted);letter-spacing:.04em}
.rad-today-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.rad-today-card{display:flex;flex-direction:column;border:1px solid var(--edge,#b59b6059);border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#1f3329,#15231c);color:var(--ink);text-decoration:none;box-shadow:0 16px 40px #0005;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(0);transition:transform .5s var(--rad-ease),box-shadow .5s,border-color .4s}
.rad-today-card:hover,.rad-today-card:focus-visible{border-color:color-mix(in srgb,var(--school) 70%,#d9b777);box-shadow:0 26px 60px #000a,0 0 34px color-mix(in srgb,var(--school) 22%,transparent)}
.rad-today-art{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#0d1712}
.rad-today-art img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform 1s var(--rad-ease)}
.rad-today-card:hover .rad-today-art img{transform:scale(1.07)}
.rad-today-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#15231cee)}
.rad-today-art.is-emblem{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#e8c27a2e,transparent 60%),repeating-linear-gradient(45deg,#ffffff05 0 10px,transparent 10px 20px),#132019}
.rad-today-art.is-emblem b{font-family:var(--serif);font-weight:400;font-size:5rem;line-height:1;color:var(--rad-gold);text-shadow:0 0 40px #e8c27a66;z-index:1}
.rad-today-body{display:flex;flex-direction:column;gap:6px;padding:4px 18px 20px;margin-top:-18px;position:relative;z-index:1}
.rad-today-body strong{font-family:var(--serif);font-weight:400;font-size:1.25rem;line-height:1.2;color:#f6e7c5}
.rad-today-body small{font-size:.74rem;letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb,var(--school) 65%,var(--muted))}
.rad-today-summary{font-size:.86rem;line-height:1.55;color:var(--muted)}

/* ---------- People cards: the whole portrait, lit by the school ---------- */
.rad-portrait-card{--school:#d9b777}
.rad-portrait-card>a{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .5s var(--rad-ease);transform-style:preserve-3d}
.rad-portrait-card .card-image,.rad-scene-card .card-image{transition:transform .9s var(--rad-ease),filter .6s}
main .collection-grid:not(.list-view) .card.rad-portrait-card .card-image,main .grid.people .card.rad-portrait-card .card-image{width:100%;height:auto;max-height:none;aspect-ratio:1/1.05;object-fit:cover;object-position:50% 12%}
main .collection-grid.list-view .card.rad-portrait-card .card-image{object-fit:cover;object-position:50% 12%}
main .collection-grid:not(.list-view) .card.rad-scene-card .card-image{width:100%;height:auto;max-height:none;aspect-ratio:4/3;object-fit:cover;object-position:50% 60%}
.rad-scene-card{overflow:hidden}.rad-scene-card:hover .card-image{transform:scale(1.05)}
.rad-portrait-card{overflow:hidden;border-top:3px solid color-mix(in srgb,var(--school) 80%,transparent)}
.rad-portrait-card:hover .card-image{transform:scale(1.05);filter:saturate(1.1)}
.rad-portrait-card .eyebrow{color:color-mix(in srgb,var(--school) 70%,var(--rad-gold))}
.rad-portrait-card:hover{box-shadow:0 22px 50px #0009,0 0 30px color-mix(in srgb,var(--school) 20%,transparent)}

/* ---------- Entries: a cinematic header lit by the entry's own picture ---------- */
.rad-entry{position:relative;isolation:isolate;--entry-accent:#d9b777}
.rad-backdrop{position:absolute;z-index:-1;left:50%;top:-40px;width:100vw;translate:-50% 0;height:560px;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent);mask-image:linear-gradient(180deg,#000 30%,transparent)}
.rad-backdrop-art{position:absolute;inset:-40px;background-size:cover;background-position:50% 25%;filter:blur(34px) saturate(1.3) brightness(.62);opacity:.9;animation:rad-backdrop-in 1.2s var(--rad-ease) both}
.rad-backdrop:after{content:'';position:absolute;inset:0;background:radial-gradient(90% 120% at 70% 0%,color-mix(in srgb,var(--entry-accent) 22%,transparent),transparent 60%)}
@keyframes rad-backdrop-in{from{opacity:0;scale:1.08}}
.rad-backdrop.is-mosaic{height:440px}
.rad-mosaic{position:absolute;inset:0;display:grid;grid-template-columns:repeat(8,1fr);opacity:.42;filter:blur(3px) saturate(.9) brightness(.6)}
.rad-mosaic span{background-size:cover;background-position:50% 18%}
.rad-watermark{position:absolute;right:6vw;top:40px;font-family:var(--serif);font-weight:400;font-size:clamp(8rem,18vw,16rem);line-height:1;color:color-mix(in srgb,var(--entry-accent) 55%,transparent);opacity:.35;text-shadow:0 0 80px color-mix(in srgb,var(--entry-accent) 50%,transparent)}
.rad-entry .detail-title .eyebrow{color:color-mix(in srgb,var(--entry-accent) 75%,var(--rad-gold))}
.rad-entry .detail-title h1{text-shadow:0 4px 30px #0009}
.rad-entry .detail-aside.rad-framed{border-color:color-mix(in srgb,var(--entry-accent) 50%,transparent);box-shadow:0 30px 70px #0008,0 0 50px color-mix(in srgb,var(--entry-accent) 14%,transparent)}
.rad-entry .detail-aside .detail-art{max-height:none;width:100%;object-fit:cover;object-position:50% 18%;aspect-ratio:4/5}
.rad-entry .detail-art[data-lightbox]{cursor:zoom-in;transition:transform .5s var(--rad-ease),filter .4s}
.rad-entry .detail-art[data-lightbox]:hover{transform:scale(1.015);filter:brightness(1.06)}
.rad-entry .reading-surface{border-top:2px solid color-mix(in srgb,var(--entry-accent) 45%,transparent)}
.rad-gate{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border:1px solid var(--edge,#b59b6059);border-radius:999px;background:#0e1914aa;color:var(--ink);font-size:.8rem;line-height:1.1}
.rad-gate i{width:30px;height:30px;border-radius:50%;background:conic-gradient(var(--rad-gold) calc(var(--p) * 1%),#ffffff14 0);-webkit-mask:radial-gradient(circle,transparent 9px,#000 10px);mask:radial-gradient(circle,transparent 9px,#000 10px);animation:rad-gate-in 1.2s var(--rad-ease) both}
.rad-gate span{display:flex;flex-direction:column;gap:2px}
.rad-gate b{font-weight:600;color:#f5e6c3}
.rad-gate small{font-size:.68rem;color:var(--muted);letter-spacing:.04em}
@keyframes rad-gate-in{from{rotate:-120deg;opacity:0}}
.rad-crest{display:flex;align-items:center;flex-wrap:wrap;gap:14px 18px;margin:6px 0 20px}
.rad-crest-seal{display:grid;place-items:center;width:64px;height:64px;border-radius:16px;font-family:var(--serif);font-size:1.9rem;color:#10180f;background:linear-gradient(145deg,color-mix(in srgb,var(--school) 90%,#fff),color-mix(in srgb,var(--school) 70%,#000));box-shadow:0 0 0 5px color-mix(in srgb,var(--school) 18%,transparent),0 12px 34px #0008}
.rad-crest-text{display:flex;flex-direction:column;gap:3px}
.rad-crest-text b{font-size:1rem;color:#f5e6c3;font-weight:600;letter-spacing:.02em}
.rad-crest-text small{font-size:.76rem;color:var(--muted)}
.rad-crest-faces{display:flex;padding-left:8px}
.rad-crest-faces a{margin-left:-10px;transition:transform .35s var(--rad-spring),margin .35s}
.rad-crest-faces img{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:2px solid color-mix(in srgb,var(--school) 70%,#0c1612);display:block}
.rad-crest-faces:hover a{margin-left:-2px}
.rad-crest-faces a:hover{transform:translateY(-6px) scale(1.12);z-index:1}

/* ---------- The lightbox ---------- */
.rad-lightbox{border:0;padding:0;background:transparent;max-width:min(92vw,900px);max-height:92vh;overflow:visible}
.rad-lightbox::backdrop{background:#050a08e6;backdrop-filter:blur(6px)}
.rad-lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:12px}
.rad-lightbox img{max-width:min(92vw,900px);max-height:80vh;object-fit:contain;border-radius:10px;border:1px solid #d9b77755;box-shadow:0 40px 100px #000c;animation:rad-zoom-in .45s var(--rad-ease) both}
.rad-lightbox figcaption{color:#f2e3c3;font-family:var(--serif);font-size:1.3rem}
.rad-lightbox [data-close]{position:fixed;top:18px;right:18px}
@keyframes rad-zoom-in{from{opacity:0;scale:.92}}

/* ---------- Which school would claim you? ---------- */
.rad-quiz{max-width:880px;margin:0 auto;padding:10px 0 60px}
.rad-quiz-head{text-align:center;margin:30px auto 34px;max-width:680px}
.rad-quiz-head h1{font-size:clamp(2.2rem,5vw,3.6rem);margin:10px 0 12px}
.rad-quiz-head p{color:var(--muted);line-height:1.6}
.rad-quiz-card,.rad-quiz-result{position:relative;padding:34px clamp(20px,4vw,48px) 30px;border:1px solid var(--edge,#b59b6059);border-radius:20px;background:radial-gradient(120% 90% at 50% 0%,#e8c27a14,transparent 60%),linear-gradient(180deg,#1d3128,#131f19);box-shadow:0 30px 80px #0008;animation:rad-card-in .5s var(--rad-ease) both}
@keyframes rad-card-in{from{opacity:0;transform:translateY(16px) scale(.985)}}
.rad-quiz-progress{display:flex;gap:6px;list-style:none;margin:0 0 22px;padding:0}
.rad-quiz-progress li{flex:1;height:4px;border-radius:4px;background:#ffffff14;overflow:hidden;position:relative}
.rad-quiz-progress li.done{background:var(--rad-gold)}
.rad-quiz-progress li.current:after{content:'';position:absolute;inset:0;background:var(--rad-gold);animation:rad-fill .6s var(--rad-ease) both;transform-origin:left}
@keyframes rad-fill{from{transform:scaleX(0)}to{transform:scaleX(.5)}}
.rad-quiz-q{font-size:clamp(1.5rem,3vw,2.15rem);margin:10px 0 24px;line-height:1.2;outline:0}
.rad-quiz-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rad-quiz-option{display:flex;align-items:flex-start;gap:14px;padding:18px 18px 18px 16px;border:1px solid var(--edge,#b59b6059);border-radius:14px;background:#0f1a15;color:var(--ink);font:inherit;font-size:1rem;line-height:1.5;text-align:left;cursor:pointer;animation:rad-card-in .5s var(--rad-ease) both;animation-delay:calc(var(--k) * 70ms + 80ms);transition:transform .3s var(--rad-ease),border-color .3s,background .3s,box-shadow .3s}
.rad-quiz-option:hover,.rad-quiz-option:focus-visible{border-color:var(--edge-strong,#c4a569);background:#15241d;transform:translateY(-3px);box-shadow:0 14px 34px #0007}
.rad-quiz-option.chosen{border-color:var(--rad-gold);background:#24362a;box-shadow:0 0 0 2px #e8c27a55,0 0 30px #e8c27a33;transform:scale(.98)}
.rad-quiz-key{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;border:1px solid #d9b77766;color:var(--rad-gold);font-weight:600;font-size:.85rem}
.rad-quiz-foot{display:flex;justify-content:space-between;align-items:center;margin-top:20px;color:var(--muted);font-size:.8rem}
.rad-quiz-result{text-align:center;overflow:hidden;border-color:color-mix(in srgb,var(--school) 60%,transparent);background:radial-gradient(90% 70% at 50% 0%,color-mix(in srgb,var(--school) 26%,transparent),transparent 65%),linear-gradient(180deg,#1b2d24,#111c17)}
.rad-quiz-result h2{font-size:clamp(1.7rem,3.6vw,2.6rem);margin:8px 0 14px;outline:0}
.rad-quiz-result>p{max-width:62ch;margin:0 auto 16px;color:var(--muted);line-height:1.65}
.rad-quiz-result .eyebrow{color:color-mix(in srgb,var(--school) 80%,#fff)}
.rad-quiz-seal{position:relative;display:grid;place-items:center;width:104px;height:104px;margin:6px auto 18px;border-radius:28px;font-family:var(--serif);font-size:3rem;color:#0f170f;background:linear-gradient(145deg,color-mix(in srgb,var(--school) 90%,#fff),color-mix(in srgb,var(--school) 65%,#000));box-shadow:0 0 0 8px color-mix(in srgb,var(--school) 16%,transparent),0 0 70px color-mix(in srgb,var(--school) 55%,transparent);animation:rad-seal-in .9s var(--rad-spring) both}
@keyframes rad-seal-in{from{opacity:0;transform:scale(.3) rotate(-25deg)}}
.rad-burst{position:absolute;left:50%;top:92px;width:0;height:0;pointer-events:none}
.rad-burst i{position:absolute;left:-1px;top:-190px;width:2px;height:190px;transform-origin:50% 190px;transform:rotate(calc(var(--k) * 30deg));background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--school) 70%,transparent));opacity:0;animation:rad-ray 1.4s var(--rad-ease) both;animation-delay:calc(var(--k) * 40ms)}
@keyframes rad-ray{0%{opacity:0;scale:1 .2}40%{opacity:.9}100%{opacity:.18;scale:1 1}}
.rad-quiz-faces{display:flex;justify-content:center;margin:6px 0 18px}
.rad-quiz-faces a{margin-left:-12px;animation:rad-card-in .6s var(--rad-ease) both;transition:transform .35s var(--rad-spring)}
.rad-quiz-faces a:first-child{margin-left:0}
.rad-quiz-faces a:hover{transform:translateY(-6px) scale(1.1);z-index:1}
.rad-quiz-faces img{width:58px;height:58px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:3px solid color-mix(in srgb,var(--school) 75%,#0c1612);display:block}
.rad-quiz-result .actions{justify-content:center;flex-wrap:wrap}

/* ---------- Posted danger ---------- */
.rad-danger{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:1px;margin:0 0 24px;border:1px solid var(--edge,#b59b6059);border-radius:14px;overflow:hidden;background:var(--edge,#b59b6059);--danger:#8fc48a}
.rad-danger[data-level="1"],.rad-danger[data-level="2"]{--danger:#e8c27a}.rad-danger[data-level="3"],.rad-danger[data-level="4"]{--danger:#e8925a}.rad-danger[data-level="5"]{--danger:#e0604f}
.rad-danger>div{display:flex;flex-direction:column;gap:6px;padding:16px 20px;background:#0f1a15}
.rad-danger b{font-family:var(--serif);font-weight:400;font-size:1.5rem;color:#f5e6c3;line-height:1.1}
.rad-danger small{color:var(--muted);font-size:.85rem;line-height:1.5}
.rad-pips{display:inline-flex;gap:6px;align-items:center;--danger:#8fc48a}
.rad-danger .rad-pips{--danger:inherit}
.rad-pips i{width:12px;height:12px;border-radius:50%;background:#ffffff17;border:1px solid #ffffff22;animation:rad-pip .5s var(--rad-spring) both}
.rad-pips i:nth-child(2){animation-delay:.06s}.rad-pips i:nth-child(3){animation-delay:.12s}.rad-pips i:nth-child(4){animation-delay:.18s}.rad-pips i:nth-child(5){animation-delay:.24s}
.rad-pips i.on{background:var(--danger);border-color:var(--danger);box-shadow:0 0 12px color-mix(in srgb,var(--danger) 60%,transparent)}
.rad-pips i.maybe{background:color-mix(in srgb,var(--danger) 30%,transparent);border-color:color-mix(in srgb,var(--danger) 60%,transparent)}
.rad-pips.small{gap:4px;margin:2px 0 4px}.rad-pips.small i{width:8px;height:8px}
.rad-pips.small[data-level="1"],.rad-pips.small[data-level="2"]{--danger:#e8c27a}.rad-pips.small[data-level="3"],.rad-pips.small[data-level="4"]{--danger:#e8925a}.rad-pips.small[data-level="5"]{--danger:#e0604f}
@keyframes rad-pip{from{opacity:0;scale:.3}}
@media (max-width:640px){.rad-danger{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.rad-pips i{animation:none}}
:root[data-motion=off] .rad-pips i{animation:none}

/* ---------- Small screens ---------- */
@media (max-width:1100px){.rad-today-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
 .rad-quiz-teaser{grid-template-columns:1fr;padding:28px 22px;gap:18px;text-align:left}
 .rad-orbit{width:170px;height:170px}
 .rad-orbit i{width:28px;height:28px;margin:-14px 0 0 -14px;font-size:.78rem;transform:rotate(calc(var(--i) * 36deg)) translateY(-72px) rotate(calc(var(--i) * -36deg));animation-name:rad-orbit-small}
 .rad-orbit b{width:58px;height:58px;font-size:1.6rem}
 .face{flex-basis:138px;height:184px}
 .rad-quiz-options{grid-template-columns:1fr}
 .rad-backdrop{height:420px}
 .bell-now{border-radius:14px}
 .school-tile .tile-count{display:none}
 .school-tile .tile-faces{margin-top:10px}
 .school-tile .tile-faces img{width:28px;height:28px}
}
@keyframes rad-orbit-small{from{transform:rotate(calc(var(--i) * 36deg)) translateY(-72px) rotate(calc(var(--i) * -36deg))}to{transform:rotate(calc(var(--i) * 36deg + 360deg)) translateY(-72px) rotate(calc(var(--i) * -36deg - 360deg))}}
@media (max-width:560px){.rad-today-grid{grid-template-columns:1fr}.rad-today-art{aspect-ratio:16/9}.rad-mosaic{grid-template-columns:repeat(4,1fr)}}

/* ---------- Motion preferences: still, and still beautiful ---------- */
@media (prefers-reduced-motion:reduce){
 .hero-art img,.hero h1 em,.bell-now i,.faces-track,.rad-orbit i,.rad-orbit b,.rad-backdrop-art,.rad-gate i,.rad-quiz-card,.rad-quiz-result,.rad-quiz-option,.rad-quiz-seal,.rad-burst i,.rad-quiz-faces a,.rad-lightbox img{animation:none!important}
 .faces-marquee{overflow-x:auto}.faces-echo{display:none}
 .rad-burst i{opacity:.18}
 ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}
:root[data-motion=off] .hero-art img,:root[data-motion=off] .hero h1 em,:root[data-motion=off] .bell-now i,:root[data-motion=off] .faces-track,:root[data-motion=off] .rad-orbit i,:root[data-motion=off] .rad-orbit b,:root[data-motion=off] .rad-backdrop-art,:root[data-motion=off] .rad-gate i,:root[data-motion=off] .rad-quiz-card,:root[data-motion=off] .rad-quiz-result,:root[data-motion=off] .rad-quiz-option,:root[data-motion=off] .rad-quiz-seal,:root[data-motion=off] .rad-burst i,:root[data-motion=off] .rad-quiz-faces a,:root[data-motion=off] .rad-lightbox img{animation:none!important}
:root[data-motion=off] .faces-marquee{overflow-x:auto}:root[data-motion=off] .faces-echo{display:none}
:root[data-motion=off] .rad-burst i{opacity:.18}
@media print{.rad-backdrop,.rad-faces,.rad-today,.rad-quiz-teaser,.bell-now{display:none!important}}
