:root{
  --navy:#041323;
  --deep:#06233b;
  --blue:#0b4d76;
  --teal:#0ba7b7;
  --aqua:#57ecf2;
  --cyan:#00E5FF;
  --white:#F8FCFF;
  --muted:#C5DAE5;
  --glass:rgba(231,251,255,.14);
  --glass-strong:rgba(229,252,255,.22);
  --orange:#C1440E;
  --gold:#FFCC57;
  --green:#A5D6A7;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:#06192b;color:var(--white)}
.mascot-page{
  min-height:100vh;overflow:hidden;position:relative;
  background:
    radial-gradient(60rem 34rem at 50% 10%,rgba(112,251,255,.34),transparent 62%),
    radial-gradient(45rem 34rem at 8% 30%,rgba(0,229,255,.18),transparent 66%),
    radial-gradient(46rem 34rem at 92% 56%,rgba(98,195,255,.18),transparent 68%),
    linear-gradient(180deg,#0a4c6d 0%,#08768d 18%,#0a5c7d 35%,#073957 62%,#051d32 100%);
}
.mascot-page:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.38;
  background:
    linear-gradient(115deg,transparent 0 26%,rgba(255,255,255,.07) 26.4% 26.8%,transparent 27.2% 73%,rgba(255,255,255,.055) 73.4% 73.8%,transparent 74.2%),
    radial-gradient(80% 48% at 50% -8%,rgba(255,255,255,.28),transparent 70%);
}
.mascot-main{position:relative;z-index:1}
.mascot-stage{position:relative;min-height:820px;padding:54px 0 48px;overflow:hidden}
.mascot-stage:before,.mascot-stage:after{content:"";position:absolute;top:0;width:3px;height:640px;background:linear-gradient(#fff,#a9fbff 16%,#00e5ff 50%,transparent 94%);filter:drop-shadow(0 0 16px rgba(0,229,255,.75));opacity:.78}
.mascot-stage:before{left:4.5vw}.mascot-stage:after{right:4.5vw}
.mascot-shell{width:min(1240px,calc(100% - 48px));margin:0 auto;position:relative;z-index:3}
.ceiling-rig{position:absolute;left:6vw;right:6vw;top:0;height:58px;border-top:2px solid rgba(255,255,255,.34);border-bottom:1px solid rgba(0,229,255,.24);background:linear-gradient(180deg,rgba(1,18,30,.75),rgba(3,34,49,.28));box-shadow:0 10px 30px rgba(1,17,28,.45)}
.ceiling-rig:before{content:"";position:absolute;left:7%;right:7%;top:18px;height:8px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.65) 0 58px,transparent 58px 106px);filter:blur(.25px);opacity:.62}
.spotlight{position:absolute;top:42px;height:650px;clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);filter:blur(16px);pointer-events:none;opacity:.36}
.spotlight.one{left:-1%;width:54%;background:linear-gradient(rgba(210,255,255,.64),rgba(67,245,255,.21),transparent 78%)}
.spotlight.two{right:-4%;width:46%;background:linear-gradient(rgba(255,255,255,.5),rgba(94,208,255,.16),transparent 80%)}
.mascot-header{text-align:center;max-width:890px;margin:18px auto 34px}
.mascot-kicker{display:inline-flex;padding:8px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.34);background:rgba(244,255,255,.13);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 0 24px rgba(0,229,255,.14);font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#eaffff}
.mascot-header h1{font-family:"Inter Tight";font-weight:900;font-size:clamp(42px,5.6vw,76px);line-height:.98;letter-spacing:-.045em;margin:15px 0 15px;text-shadow:0 12px 30px rgba(0,31,52,.34)}
.mascot-header p{font-size:16px;line-height:1.62;color:#e0f1f6;max-width:760px;margin:0 auto}
.stage-grid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.7fr);gap:22px;align-items:stretch}
.featured-zone{min-height:590px;position:relative;overflow:hidden;border-radius:34px;border:1px solid rgba(255,255,255,.34);background:
  radial-gradient(86% 58% at 50% 18%,rgba(255,255,255,.26),transparent 62%),
  linear-gradient(165deg,rgba(122,239,244,.30),rgba(20,105,135,.30) 45%,rgba(3,35,58,.60));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 -80px 90px rgba(2,21,38,.35),0 36px 70px -38px rgba(0,11,25,.92);backdrop-filter:blur(18px)}
.featured-zone:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.18),transparent 18% 75%,rgba(255,255,255,.07));pointer-events:none}
.featured-zone:after{content:"";position:absolute;left:10%;right:10%;bottom:34px;height:72px;border-radius:50%;background:radial-gradient(ellipse,rgba(117,250,255,.66),rgba(0,229,255,.17) 44%,transparent 72%);filter:blur(3px);box-shadow:0 0 38px rgba(0,229,255,.26)}
.featured-label{position:absolute;z-index:5;top:22px;left:22px;right:22px;display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#ecffff}
.featured-label .month{padding:7px 10px;border-radius:999px;background:rgba(4,39,61,.38);border:1px solid rgba(255,255,255,.25);color:#fff}
.sunny-stage{position:absolute;z-index:3;left:50%;bottom:56px;transform:translateX(-50%);height:76%;max-width:95%;object-fit:contain;filter:drop-shadow(0 26px 24px rgba(1,18,34,.42))}
.glass-plinth{position:absolute;left:16%;right:16%;bottom:46px;height:53px;border-radius:50%;background:linear-gradient(180deg,rgba(196,252,255,.40),rgba(6,73,100,.58));border:1px solid rgba(220,255,255,.52);box-shadow:inset 0 6px 18px rgba(255,255,255,.22),0 0 28px rgba(0,229,255,.34)}
.featured-caption{position:absolute;z-index:6;left:18px;right:18px;bottom:14px;padding:13px 15px;background:rgba(4,26,44,.62);border:1px solid rgba(255,255,255,.24);border-radius:18px;backdrop-filter:blur(14px);text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.22)}
.featured-caption strong{display:block;font-family:"Inter Tight";font-size:24px}.featured-caption span{display:block;color:#bff6cf;font-size:12px;font-weight:900;margin-top:3px}.featured-caption small{display:block;color:#e0edf2;font-size:12px;margin-top:5px;line-height:1.4}
.carousel-zone{min-width:0;border-radius:34px;background:
  radial-gradient(100% 72% at 50% 0%,rgba(167,251,255,.20),transparent 52%),
  linear-gradient(155deg,rgba(29,131,159,.30),rgba(5,43,69,.48) 60%,rgba(3,26,47,.62));
  border:1px solid rgba(255,255,255,.31);box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 34px 78px -42px rgba(0,0,0,.9);padding:24px 22px 22px;position:relative;overflow:hidden;backdrop-filter:blur(18px)}
.carousel-zone:before{content:"";position:absolute;left:3%;right:3%;top:94px;height:2px;background:linear-gradient(90deg,transparent,rgba(173,252,255,.78),transparent);box-shadow:0 0 18px rgba(0,229,255,.36)}
.carousel-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:18px;position:relative;z-index:2}.carousel-top h2{font-family:"Inter Tight";font-size:clamp(28px,3.5vw,48px);margin:0;letter-spacing:-.035em}.carousel-top p{margin:5px 0 0;color:#d2e9f0;font-size:14px;max-width:600px}.carousel-controls{display:flex;gap:8px}.car-btn{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.42);background:rgba(231,252,255,.13);color:white;cursor:pointer;font-size:20px;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 7px 18px rgba(0,20,33,.25);transition:.2s}.car-btn:hover,.car-btn:focus-visible{transform:translateY(-2px);border-color:#bffaff;box-shadow:0 0 22px rgba(0,229,255,.58),inset 0 1px 0 rgba(255,255,255,.36);outline:none}
.carousel-window{overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding:14px 5px 31px}.carousel-window::-webkit-scrollbar{display:none}.carousel-track{display:flex;gap:17px;width:max-content}
.mascot-card{width:176px;height:326px;scroll-snap-align:center;position:relative;border-radius:25px;background:
  linear-gradient(148deg,rgba(239,255,255,.34),rgba(166,243,248,.10) 35%,rgba(3,43,70,.32) 76%),
  rgba(13,97,125,.20);
  border:1px solid rgba(255,255,255,.40);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -38px 55px rgba(2,27,48,.24),0 24px 42px -22px rgba(0,15,30,.72);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:16px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.mascot-card:hover,.mascot-card:focus-within{transform:translateY(-7px);border-color:rgba(210,255,255,.88);box-shadow:0 0 26px rgba(0,229,255,.28),0 32px 50px -22px rgba(0,0,0,.78),inset 0 1px 0 rgba(255,255,255,.6)}
.mascot-card.current{width:210px;border-color:rgba(204,255,219,.88);background:linear-gradient(145deg,rgba(225,255,239,.40),rgba(121,231,207,.15) 38%,rgba(6,59,83,.40));box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 0 30px rgba(155,255,196,.24),0 28px 48px -22px rgba(0,0,0,.72)}
.card-light{position:absolute;top:-12px;left:18%;right:18%;height:213px;background:linear-gradient(rgba(255,255,255,.52),rgba(174,252,255,.16),transparent 76%);clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);opacity:.82;filter:blur(1px)}
.card-month{position:absolute;top:14px;left:14px;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#f5ffff;z-index:4;text-shadow:0 2px 8px rgba(0,25,40,.55)}.card-state{position:absolute;top:13px;right:12px;font-size:10px;font-weight:900;color:#d8ffe1;z-index:4}
.card-art{position:absolute;z-index:2;bottom:67px;left:50%;transform:translateX(-50%);height:207px;max-width:151px;object-fit:contain;filter:drop-shadow(0 16px 12px rgba(0,25,38,.38))}.current .card-art{height:228px}
.card-base{position:absolute;left:18px;right:18px;bottom:49px;height:32px;border-radius:50%;background:linear-gradient(180deg,rgba(190,253,255,.47),rgba(0,77,105,.65));border:1px solid rgba(214,255,255,.66);box-shadow:inset 0 3px 12px rgba(255,255,255,.22),0 0 20px rgba(0,229,255,.35)}
.card-copy{position:relative;z-index:5;text-align:center;width:100%}.card-copy strong{display:block;font-family:"Inter Tight";font-size:16px}.card-copy span{display:block;font-size:11px;color:#d4ebf1;margin-top:4px}.future .card-copy strong{color:#eff9fc}.future .card-copy span{color:#b5d1da}
.future:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,18,31,.03),rgba(2,21,39,.11));pointer-events:none}
.future .silhouette{position:absolute;z-index:2;bottom:72px;left:50%;transform:translateX(-50%);width:120px;height:190px;filter:drop-shadow(0 18px 14px rgba(0,16,30,.52));opacity:.86}.future .silhouette.real{object-fit:contain;filter:brightness(0) saturate(100%) opacity(.78) drop-shadow(0 0 10px rgba(141,246,255,.28));width:auto;height:210px}
.lock-dot{position:absolute;z-index:6;top:42px;left:50%;transform:translateX(-50%);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(229,253,255,.13);border:1px solid rgba(255,255,255,.35);font-size:11px;color:#e7fdff;box-shadow:0 0 14px rgba(0,229,255,.16)}
.shape{position:absolute;inset:0;margin:auto;background:#052237}.shape:before,.shape:after{content:"";position:absolute;background:#052237}
.bear-shape{width:88px;height:110px;border-radius:46% 46% 38% 38%;top:34px}.bear-shape:before{width:34px;height:34px;border-radius:50%;left:-10px;top:-12px;box-shadow:74px 0 0 #052237}.bear-shape:after{width:118px;height:92px;border-radius:45%;left:-15px;top:85px}
.owl-shape{width:96px;height:135px;border-radius:50% 50% 42% 42%;top:24px}.owl-shape:before{width:38px;height:44px;transform:rotate(-33deg);left:-20px;top:75px;border-radius:70% 15%;box-shadow:92px 42px 0 #052237}.owl-shape:after{width:30px;height:30px;transform:rotate(45deg);left:4px;top:-5px;box-shadow:48px -48px 0 #052237}
.penguin-shape{width:84px;height:142px;border-radius:48% 48% 42% 42%;top:25px}.penguin-shape:before{width:28px;height:90px;border-radius:80% 10%;left:-18px;top:50px;transform:rotate(18deg);box-shadow:92px 0 0 #052237}.penguin-shape:after{width:78px;height:46px;border-radius:50%;left:3px;top:-14px}
.fish-shape{width:104px;height:76px;border-radius:56% 45% 50% 55%;top:60px}.fish-shape:before{width:64px;height:82px;clip-path:polygon(0 50%,100% 0,100% 100%);left:-50px;top:-3px}.fish-shape:after{width:46px;height:44px;clip-path:polygon(50% 0,100% 100%,0 100%);left:40px;top:-34px}
.bat-shape{width:76px;height:116px;border-radius:48% 48% 40% 40%;top:40px}.bat-shape:before{width:78px;height:100px;left:-64px;top:28px;clip-path:polygon(100% 0,72% 31%,100% 45%,68% 58%,94% 100%,38% 78%,0 100%,24% 35%,0 8%,56% 30%);box-shadow:126px 0 0 #052237}.bat-shape:after{width:25px;height:36px;left:5px;top:-19px;clip-path:polygon(0 100%,20% 0,100% 100%);box-shadow:42px 0 0 #052237}
.cat-shape{width:86px;height:126px;border-radius:45% 45% 36% 36%;top:39px}.cat-shape:before{width:40px;height:45px;left:0;top:-25px;clip-path:polygon(0 100%,18% 0,100% 100%);box-shadow:47px 0 0 #052237}.cat-shape:after{width:22px;height:100px;border-radius:50%;right:-30px;top:62px;transform:rotate(-25deg)}
.mystery-shape{width:90px;height:150px;border-radius:48% 48% 36% 36%;top:26px}.mystery-shape:before{width:72px;height:72px;border-radius:50%;left:9px;top:-24px}.mystery-shape:after{content:"?";display:grid;place-items:center;color:#1f6383;background:transparent;font:900 64px "Inter Tight";left:18px;top:22px}
.carousel-foot{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:4px}.glass-note,.bandit-note{border-radius:20px;padding:18px;background:linear-gradient(145deg,rgba(235,255,255,.20),rgba(7,67,91,.18));border:1px solid rgba(255,255,255,.30);box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 12px 28px rgba(0,24,40,.16);backdrop-filter:blur(14px)}.glass-note strong,.bandit-note strong{font-family:"Inter Tight";font-size:16px}.glass-note p,.bandit-note p{font-size:12.5px;line-height:1.55;color:#d2e5eb;margin:5px 0 0}.bandit-note{position:relative;padding-right:88px;border-color:rgba(255,194,132,.42)}.bandit-mini{position:absolute;right:7px;bottom:0;height:100px;filter:drop-shadow(0 10px 10px rgba(0,16,28,.38))}
.squad-rule{position:relative;padding:40px 0 78px;background:linear-gradient(180deg,rgba(4,40,65,.08),rgba(3,24,42,.34))}.rule-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.rule-card{padding:21px;border-radius:22px;background:linear-gradient(145deg,rgba(228,254,255,.14),rgba(8,50,77,.23));border:1px solid rgba(255,255,255,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.23),0 18px 36px -24px rgba(0,0,0,.65)}.rule-card b{display:block;color:#f2feff;font-family:"Inter Tight";font-size:17px}.rule-card span{display:block;color:#c9e0e8;font-size:13px;line-height:1.55;margin-top:6px}.rule-icon{width:36px;height:36px;border-radius:13px;display:grid;place-items:center;color:#043041;background:linear-gradient(180deg,#c6ffff,#4cebf3);font-weight:900;margin-bottom:12px;box-shadow:0 0 20px rgba(0,229,255,.28)}
.mascot-footer{border-top:1px solid rgba(255,255,255,.12);background:rgba(3,20,34,.44);padding:27px 20px;text-align:center;color:#a8c4cf;font-size:12px}
@media(max-width:940px){.stage-grid{grid-template-columns:1fr}.featured-zone{min-height:510px}.carousel-foot{grid-template-columns:1fr}.spotlight.one{width:70%;left:-10%}.mascot-card{width:166px}.mascot-card.current{width:190px}.rule-panel{grid-template-columns:1fr}}
@media(max-width:620px){.mascot-stage{padding-top:40px}.mascot-shell{width:min(100% - 24px,1240px)}.mascot-header{text-align:left}.mascot-header h1{font-size:44px}.featured-zone{min-height:470px}.sunny-stage{height:69%;bottom:58px}.carousel-zone{padding:20px 14px}.carousel-top{align-items:center}.carousel-top p{display:none}.mascot-card{width:155px;height:292px}.mascot-card.current{width:174px}.card-art{height:180px}.current .card-art{height:198px}.future .silhouette{transform:translateX(-50%) scale(.9)}.rule-panel{gap:10px}}
@media(prefers-reduced-motion:reduce){.mascot-card,.car-btn{transition:none}}


/* =========================================================
   Mascots v0.3 — Teacher spotlight first, Year 1 lineup below
   ========================================================= */
.teacher-spotlight{position:relative;min-height:650px;padding:58px 0 34px;overflow:hidden}
.teacher-spotlight:before,.teacher-spotlight:after{content:"";position:absolute;top:0;width:3px;height:600px;background:linear-gradient(#fff,#cfffff 15%,#00e5ff 48%,transparent 95%);filter:drop-shadow(0 0 16px rgba(0,229,255,.72));opacity:.72}
.teacher-spotlight:before{left:4.5vw}.teacher-spotlight:after{right:4.5vw}
.teacher-beam{position:absolute;right:8%;top:35px;width:54%;height:650px;clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);background:linear-gradient(rgba(255,255,255,.54),rgba(96,243,255,.18),transparent 79%);filter:blur(17px);opacity:.42;pointer-events:none}
.teacher-shell{display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);align-items:center;gap:28px;min-height:550px}
.teacher-copy{position:relative;z-index:5;padding:32px 0 30px 28px;max-width:660px}
.teacher-eyebrow{margin:18px 0 3px;color:#c8fff0;text-transform:uppercase;letter-spacing:.14em;font-weight:900;font-size:12px}
.teacher-copy h1{font-family:"Inter Tight";font-weight:900;font-size:clamp(62px,8vw,112px);line-height:.88;letter-spacing:-.055em;margin:0 0 20px;text-shadow:0 18px 38px rgba(0,30,49,.34)}
.teacher-lede{font-size:18px;line-height:1.6;color:#e9f7fa;max-width:610px;margin:0 0 20px}
.trait-row{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 22px}.trait-row span{padding:8px 13px;border-radius:999px;background:rgba(234,255,248,.13);border:1px solid rgba(206,255,223,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.22);font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#e9fff0}
.teacher-detail-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:11px;max-width:610px}.teacher-detail{padding:14px 16px;border-radius:18px;background:linear-gradient(145deg,rgba(236,255,255,.17),rgba(6,63,87,.19));border:1px solid rgba(255,255,255,.25);box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}.teacher-detail small{display:block;color:#b7dce6;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:900;margin-bottom:5px}.teacher-detail strong{font-family:"Inter Tight";font-size:15px;color:#fff}
.signature-line{margin:16px 0 0;max-width:610px;padding:15px 18px;border-left:3px solid #A5D6A7;border-radius:0 16px 16px 0;background:linear-gradient(90deg,rgba(165,214,167,.14),rgba(255,255,255,.04));color:#fff;font-size:15px;line-height:1.5;font-weight:650}.signature-line span{display:block;color:#bff6cf;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:900;margin-bottom:3px}
.teacher-art-zone{position:relative;min-height:550px;align-self:stretch;display:flex;align-items:flex-end;justify-content:center}
.teacher-month-mark{position:absolute;right:1%;top:11%;font-family:"Inter Tight";font-size:clamp(120px,18vw,260px);line-height:.8;font-weight:900;color:rgba(232,255,255,.07);letter-spacing:-.09em;user-select:none}
.teacher-halo{position:absolute;left:12%;right:8%;top:8%;bottom:2%;background:radial-gradient(ellipse at 52% 40%,rgba(220,255,255,.38),rgba(92,245,255,.14) 35%,rgba(0,229,255,.04) 55%,transparent 72%);filter:blur(3px)}
.teacher-art{position:relative;z-index:3;height:520px;max-height:82vh;max-width:92%;object-fit:contain;filter:drop-shadow(0 34px 28px rgba(0,21,38,.42))}
.teacher-plinth{position:absolute;z-index:2;left:15%;right:12%;bottom:19px;height:70px;border-radius:50%;background:linear-gradient(180deg,rgba(210,255,255,.50),rgba(5,79,105,.70));border:1px solid rgba(224,255,255,.58);box-shadow:inset 0 8px 20px rgba(255,255,255,.20),0 0 36px rgba(0,229,255,.40),0 28px 34px rgba(0,18,32,.25)}
.lineup-section{position:relative;padding:30px 0 86px}.lineup-section:before{content:"";position:absolute;inset:0;background:radial-gradient(70% 40% at 50% 0%,rgba(105,244,255,.16),transparent 72%);pointer-events:none}.lineup-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:18px}.lineup-heading h2{font-family:"Inter Tight";font-size:clamp(38px,5vw,66px);line-height:.95;letter-spacing:-.045em;margin:13px 0 10px}.lineup-heading p{max-width:760px;margin:0;color:#d6edf3;font-size:15px;line-height:1.58}
.lineup-glass{padding:22px 18px 18px;border-radius:34px;background:radial-gradient(100% 72% at 50% 0%,rgba(169,251,255,.20),transparent 52%),linear-gradient(155deg,rgba(33,142,168,.29),rgba(6,56,82,.45) 60%,rgba(3,29,49,.58));border:1px solid rgba(255,255,255,.31);box-shadow:inset 0 1px 0 rgba(255,255,255,.39),0 34px 78px -42px rgba(0,0,0,.9);backdrop-filter:blur(18px)}
.lineup-glass.carousel-zone:before{top:0;left:5%;right:5%;background:linear-gradient(90deg,transparent,rgba(201,255,255,.66),transparent)}
.lineup-note{display:flex;gap:12px;align-items:baseline;margin:2px 8px 0;padding:14px 16px;border-top:1px solid rgba(255,255,255,.16);color:#cfe6ed;font-size:12.5px;line-height:1.5}.lineup-note strong{color:#fff;font-family:"Inter Tight";font-size:15px;white-space:nowrap}
/* This page intentionally gives the monthly teaching mascots their own spotlight; Bandit is not displayed here. */
.stage-grid,.carousel-foot,.squad-rule{display:none!important}
@media(max-width:940px){.teacher-shell{grid-template-columns:1fr;min-height:0}.teacher-copy{padding:30px 12px 0}.teacher-art-zone{min-height:500px}.teacher-art{height:470px}.teacher-beam{width:90%;right:-20%;top:290px}.lineup-heading{align-items:center}.teacher-detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.teacher-spotlight{padding-top:36px}.teacher-shell{width:min(100% - 24px,1240px)}.teacher-copy h1{font-size:68px}.teacher-lede{font-size:16px}.teacher-detail-grid{grid-template-columns:1fr}.teacher-art-zone{min-height:430px}.teacher-art{height:400px}.teacher-plinth{left:9%;right:9%}.lineup-section{padding-top:12px}.lineup-heading{display:block}.lineup-heading .carousel-controls{margin-top:16px}.lineup-note{display:block}.lineup-note strong{display:block;margin-bottom:4px}.mascot-card{width:155px;height:292px}.mascot-card.current{width:178px}.current .card-art{height:198px}}


/* =========================================================
   Mascots v0.4 — cleaner spotlight + Bandit regular lineup spot
   ========================================================= */
/* Keep the spotlight, remove the ceiling-rig/street-strip treatment. */
.teacher-spotlight .ceiling-rig{display:none!important}
.teacher-spotlight{padding-top:42px}
.teacher-beam{top:0;opacity:.46}

/* Let September and October settle onto their glass circles. */
.mascot-card.current .card-art{bottom:52px}
.mascot-card.future .silhouette.real{bottom:52px}

/* Bandit belongs in the room, but this page gives him no special spotlight. */
.mascot-card.bandit-card{
  width:176px;
  border-color:rgba(255,255,255,.34);
  background:linear-gradient(148deg,rgba(239,255,255,.26),rgba(166,243,248,.08) 35%,rgba(3,43,70,.32) 76%),rgba(13,97,125,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.44),inset 0 -38px 55px rgba(2,27,48,.24),0 24px 42px -22px rgba(0,15,30,.72)
}
.mascot-card.bandit-card .bandit-card-art{height:205px;bottom:52px;max-width:154px}
.mascot-card.bandit-card .bandit-light{opacity:.32}
.mascot-card.bandit-card .bandit-state{color:#d8e8ee}

/* 09 stays as the quiet September easter egg. */
.teacher-month-mark{color:rgba(232,255,255,.075)}

@media(max-width:620px){
  .teacher-spotlight{padding-top:28px}
  .mascot-card.current .card-art{bottom:48px}
  .mascot-card.future .silhouette.real{bottom:48px}
  .mascot-card.bandit-card .bandit-card-art{height:180px;bottom:48px}
}

/* Final review note: lower September teacher slightly into the plinth. */
.teacher-art{transform:translateY(14px)}


/* Mascots v0.5 — exact Year 1 website mascot silhouettes supplied Aug 18, 2026. */
.mascot-card.future .silhouette.real{
  height:210px;
  width:auto;
  max-width:158px;
  object-fit:contain;
  filter:drop-shadow(0 0 10px rgba(141,246,255,.28)) drop-shadow(0 18px 14px rgba(0,16,30,.52));
  opacity:.88;
}
@media(max-width:620px){
  .mascot-card.future .silhouette.real{height:188px;max-width:140px}
}

/* =========================================================
   Integrated v0.5 — Mascots final positioning + 3D teacher name
   ========================================================= */
/* Set Sunny and Bandit visually onto the glass plinth instead of floating above it. */
.mascot-card.current .card-art{bottom:38px}
.mascot-card.bandit-card .bandit-card-art{bottom:38px}

/* Give the featured Teacher of the Month name the dimensional marquee treatment
   used by Solver Squad Elite, while keeping this page's softer showroom character. */
.teacher-copy h1{
  color:#eefcff;
  letter-spacing:-.035em;
  text-shadow:
    0 2px 0 #91eaff,
    0 5px 0 #2d83b4,
    0 9px 0 #0a466d,
    0 13px 0 #062c49,
    0 18px 24px rgba(0,18,36,.52),
    0 0 26px rgba(0,229,255,.18);
}

@media(max-width:620px){
  .mascot-card.current .card-art{bottom:36px}
  .mascot-card.bandit-card .bandit-card-art{bottom:36px}
  .teacher-copy h1{
    text-shadow:
      0 2px 0 #91eaff,
      0 4px 0 #2d83b4,
      0 7px 0 #0a466d,
      0 10px 18px rgba(0,18,36,.48),
      0 0 20px rgba(0,229,255,.16);
  }
}

/* v0.6 · gentle hover-pad cue borrowed from Choose Your Door */
.mascot-card .card-base{box-shadow:0 0 28px rgba(68,194,255,.18),0 12px 24px rgba(0,0,0,.30)!important}
.mascot-card .card-art,.mascot-card .silhouette.real,.mascot-card .bandit-card-art{transition:transform .22s ease,filter .22s ease!important}
.mascot-card:hover .card-art,.mascot-card:focus-within .card-art,
.mascot-card:hover .bandit-card-art,.mascot-card:focus-within .bandit-card-art{transform:translateX(-50%) translateY(-8px) scale(1.025)!important;filter:drop-shadow(0 22px 18px rgba(0,12,24,.56)) drop-shadow(0 0 14px rgba(92,209,255,.15))!important}
.mascot-card.future:hover .silhouette.real,.mascot-card.future:focus-within .silhouette.real{transform:translateX(-50%) translateY(-6px) scale(1.02)!important;filter:brightness(0) saturate(100%) opacity(.80) drop-shadow(0 0 14px rgba(141,246,255,.34))!important}

/* v3.5 — each teaching month reveals its approved monthly accent on hover. */
.mascot-card{--month-glow:#00E5FF}
.mascot-card:nth-child(1){--month-glow:#A5D6A7} /* September */
.mascot-card:nth-child(2){--month-glow:#C1440E} /* October */
.mascot-card:nth-child(3){--month-glow:#5D4037} /* November */
.mascot-card:nth-child(4){--month-glow:#E6A700} /* December */
.mascot-card:nth-child(5){--month-glow:#9FD9F0} /* January */
.mascot-card:nth-child(6){--month-glow:#4DD0E1} /* February */
.mascot-card:nth-child(7){--month-glow:#8E24AA} /* March */
.mascot-card:nth-child(8){--month-glow:#B39DDB} /* April */
.mascot-card:nth-child(9){--month-glow:#D32F2F} /* May */
.mascot-card.bandit-card{--month-glow:#00E5FF}
.mascot-card:hover,.mascot-card:focus-within{border-color:color-mix(in srgb,var(--month-glow) 72%,white 28%)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--month-glow) 58%,transparent),0 0 30px color-mix(in srgb,var(--month-glow) 44%,transparent),0 32px 50px -22px rgba(0,0,0,.78),inset 0 1px 0 rgba(255,255,255,.55)!important}
.mascot-card:hover .card-light,.mascot-card:focus-within .card-light{background:linear-gradient(color-mix(in srgb,var(--month-glow) 70%,white 30%),color-mix(in srgb,var(--month-glow) 34%,transparent),transparent 78%)!important;opacity:.92!important}
.mascot-card:hover .card-art,.mascot-card:focus-within .card-art,.mascot-card:hover .bandit-card-art,.mascot-card:focus-within .bandit-card-art{filter:drop-shadow(0 22px 18px rgba(0,12,24,.56)) drop-shadow(0 0 18px color-mix(in srgb,var(--month-glow) 42%,transparent))!important}
.mascot-card.future:hover .silhouette.real,.mascot-card.future:focus-within .silhouette.real{filter:brightness(0) saturate(100%) opacity(.80) drop-shadow(0 0 17px color-mix(in srgb,var(--month-glow) 55%,transparent))!important}
