/* Science Fenns Fact of the Day card */
.kl #fact{padding:34px 0 8px}
.fod{position:relative;border-radius:30px;overflow:hidden;color:#fff;border:4px solid #141a3a;box-shadow:0 22px 60px rgba(11,36,64,.35);min-height:380px;background:#0b2440;isolation:isolate}
.fod .art{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;transform:scale(1.04);transition:transform 12s ease-out}
.fod:hover .art{transform:scale(1.1)}
.fod:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(10,16,44,.94) 0%,rgba(10,16,44,.82) 46%,rgba(10,16,44,.25) 100%)}
.fod .sp{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(2px 2px at 12% 22%,#fff 50%,transparent 52%),radial-gradient(1.5px 1.5px at 38% 68%,#ffe9a8 50%,transparent 52%),radial-gradient(2px 2px at 72% 18%,#fff 50%,transparent 52%),radial-gradient(1.5px 1.5px at 88% 60%,#ffe9a8 50%,transparent 52%),radial-gradient(1.5px 1.5px at 55% 40%,#fff 50%,transparent 52%);animation:fodtw 4s ease-in-out infinite alternate}
@keyframes fodtw{from{opacity:.35}to{opacity:1}}
.fod .in{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:22px;padding:38px 42px 34px;align-items:center}
.fod .badge{display:inline-flex;align-items:center;gap:10px;font:700 .74rem/1 Poppins,"Segoe UI",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#2a1a00;background:linear-gradient(180deg,#ffd45f,#f0b429);padding:9px 16px;border-radius:99px;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.fod .badge i{font-style:normal;opacity:.7;letter-spacing:.08em}
.fod h2{font-family:Lora,Georgia,serif;font-size:clamp(1.8rem,4.2vw,3.1rem);line-height:1.14;margin:18px 0 14px;max-width:22ch;text-shadow:0 3px 18px rgba(0,0,0,.5);font-weight:700}
.fod .why{max-height:0;overflow:hidden;opacity:0;transition:max-height .5s,opacity .5s;font:500 1.15rem/1.55 Lora,Georgia,serif;max-width:40rem;color:#fff2cf}
.fod.open .why{max-height:260px;opacity:1;margin:0 0 6px}
.fod .why b{color:#ffd45f;font-family:Poppins,"Segoe UI",sans-serif;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem}
.fod .row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.fod .fb{font:700 .95rem/1 Poppins,"Segoe UI",sans-serif;min-height:52px;padding:14px 22px;border-radius:99px;border:2px solid rgba(255,255,255,.7);background:rgba(255,255,255,.1);color:#fff;cursor:pointer;display:inline-flex;align-items:center;gap:9px;backdrop-filter:blur(4px)}
.fod .fb:hover{background:rgba(255,255,255,.2)}
.fod .fb.main{background:#f0b429;border-color:#f0b429;color:#2a1a00}
.fod .fb[aria-pressed=true]{background:#2a8a93;border-color:#2a8a93}
.fod .fb:focus-visible{outline:4px solid #ffd77a;outline-offset:2px}
.fod .side{position:relative;text-align:center;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:14px}
.fod .side img{width:150px;margin:0 auto;filter:drop-shadow(0 10px 20px rgba(0,0,0,.5));animation:fodfly 5s ease-in-out infinite alternate}
@keyframes fodfly{from{transform:translate(-8px,6px) rotate(-4deg)}to{transform:translate(10px,-10px) rotate(5deg)}}
.fod .streak{background:rgba(10,16,44,.7);border:2px solid rgba(240,180,41,.7);border-radius:20px;padding:12px 14px;font:500 .9rem/1.35 Poppins,"Segoe UI",sans-serif}
.fod .streak b{display:block;font-size:1.9rem;color:#ffd45f;font-family:Lora,Georgia,serif;line-height:1}
.fod .dots{display:flex;justify-content:center;gap:6px;margin-top:8px}.fod .dots span{width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,.25)}.fod .dots span.on{background:#ffd45f;box-shadow:0 0 10px #ffd45f}
.fod .zsay{font:500 .95rem/1.4 Lora,Georgia,serif;font-style:italic;color:#fff2cf}
.fodprev{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px;align-items:center}
.fodprev>span{font:700 .72rem/1 Poppins,"Segoe UI",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.fodprev button{font:500 .9rem/1.3 Lora,Georgia,serif;text-align:left;min-height:52px;padding:10px 16px;border-radius:16px;border:2px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;max-width:260px}
.fodprev button:hover{border-color:var(--accent)}
@media(max-width:760px){.fod .in{grid-template-columns:1fr;padding:28px 22px}.fod .side{flex-direction:row;align-items:center;gap:12px;order:-1}.fod .side img{width:76px;margin:0;flex:none}.fod .streak{flex:1}.fod .zsay{display:none}.fod:before{background:rgba(10,16,44,.82)}}
@media(prefers-reduced-motion:reduce){.fod *,.fod .art{animation:none!important;transition:none!important}}

/* Play Lab doors */
.kl #play{padding-top:44px}
.pg{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:980px){.pg{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pg{grid-template-columns:1fr}}
.pg a{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:230px;border-radius:24px;overflow:hidden;color:#fff;border:3px solid #141a3a;box-shadow:0 12px 30px rgba(11,36,64,.22);isolation:isolate;transition:transform .25s,box-shadow .25s}
.pg a:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(11,36,64,.34)}
.pg a:focus-visible{outline:4px solid #f0b429;outline-offset:3px}
.pg a i{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;transition:transform .6s}
.pg a:hover i{transform:scale(1.08)}
.pg a:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(10,16,44,.92) 8%,rgba(10,16,44,.15) 70%)}
.pg a small{display:block;font:700 .66rem/1 Poppins,"Segoe UI",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#ffd45f;padding:0 18px;margin-bottom:6px}
.pg a b{display:block;font:700 1.35rem/1.15 Lora,Georgia,serif;padding:0 18px;margin-bottom:6px}
.pg a span{display:block;font:500 .95rem/1.4 Poppins,"Segoe UI",sans-serif;padding:0 18px 18px;color:#e9f2f6}
.pg a em{position:absolute;top:14px;right:14px;font-style:normal;font:700 .72rem/1 Poppins,"Segoe UI",sans-serif;background:#f0b429;color:#2a1a00;padding:7px 11px;border-radius:99px;display:none}
.pg a.got em{display:block}

/* Your desk */
.kl #desk{padding:26px 0 0}
.desk{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.3fr) minmax(0,1fr);gap:22px;align-items:center;background:var(--card);border:3px solid #141a3a;border-radius:26px;padding:20px 26px;box-shadow:0 14px 40px rgba(11,36,64,.18)}
.desk .dk-l{display:flex;gap:14px;align-items:center}.desk .dk-l img{width:58px;height:58px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #f0b429;flex:none}
.desk .dk-h{font:700 1.3rem/1.2 Lora,Georgia,serif;margin:0 0 4px}.desk .dk-s{margin:0;color:var(--mute);font-size:.95rem;line-height:1.4}
.desk .dk-st{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;text-align:center}
.desk .dk-st div{background:var(--bg2);border-radius:16px;padding:10px 4px}.desk .dk-st b{display:block;font:700 1.45rem/1.1 Lora,Georgia,serif;color:var(--accent)}.desk .dk-st span{font:600 .72rem/1.2 Poppins,"Segoe UI",sans-serif;color:var(--mute)}
.desk .dk-r{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.desk .dk-r .b{text-align:center}
.desk .dk-g{display:flex;gap:8px;align-items:center;justify-content:center}.desk .dk-g span{font:700 .72rem/1 Poppins,"Segoe UI",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.desk .dk-g button{font:700 .9rem/1 Poppins,"Segoe UI",sans-serif;min-height:44px;padding:10px 16px;border-radius:99px;border:2px solid #1f6f7a;background:transparent;color:inherit;cursor:pointer}
.desk .dk-g button[aria-pressed=true]{background:#1f6f7a;color:#fff}
.desk .dk-g button:focus-visible{outline:4px solid #f0b429;outline-offset:2px}
@media(max-width:980px){.desk{grid-template-columns:1fr}}
@media(max-width:480px){.desk .dk-st{grid-template-columns:repeat(2,1fr)}}
/* grade fit tag */
.pg a.fit:before{content:"Great for you";position:absolute;top:14px;left:14px;font:700 .68rem/1 Poppins,"Segoe UI",sans-serif;background:#2a8a93;color:#fff;padding:7px 11px;border-radius:99px;z-index:2}
.pg a em.jb{display:block}.pg a em.jb:empty{display:none}
.pg.jg a{min-height:200px}
/* today: riddle fills its side */
.kl .st2 .fc{justify-content:center;align-self:stretch}.kl .st2 .zface{width:72px;height:72px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #f0b429}
.kl .st2{grid-template-rows:1fr}
/* classroom strip */
.kl .band.cls{background:linear-gradient(180deg,#141a3a,#0d1128);color:#e9e4d6;margin-top:30px;border-top:4px solid #c8923a}
.kl .band.cls h2,.kl .band.cls p{color:#e9e4d6}.kl .band.cls .eyebrow{color:#ffd45f}
.kl .band.cls a{color:#ffd45f}
.kl .khero{min-height:min(62vh,500px)}
.bz-foot{margin-top:0}
.desk .dk-st span{display:block;min-height:2.4em}

/* round 2 polish */
.pg.cut a:nth-child(n+9){display:none}.pg.jg.cut a:nth-child(n+5){display:none}
.pg.cut.open a{display:flex}
@media(max-width:980px){.pg.cut a:nth-child(n+7){display:none}.pg.jg.cut a:nth-child(n+5){display:none}.pg.cut.open a{display:flex}}
@media(max-width:560px){.pg.cut a:nth-child(n+5){display:none}.pg.jg.cut a:nth-child(n+4){display:none}.pg.cut.open a{display:flex}}
.seeall{margin:26px 0 0;text-align:center}
.seeall button{font:700 1rem/1 Poppins,"Segoe UI",sans-serif;min-height:52px;padding:15px 30px;border-radius:99px;border:3px solid #141a3a;background:#fff8e6;color:#141a3a;cursor:pointer;box-shadow:0 6px 16px rgba(11,36,64,.16);transition:transform .2s}
.seeall button:hover{transform:translateY(-2px);background:#ffe9a8}.seeall button:focus-visible{outline:4px solid #f0b429;outline-offset:3px}
.kl .khero .eyebrow{display:inline-block;background:rgba(8,20,36,.66);padding:8px 16px;border-radius:99px;letter-spacing:.14em}
@media(max-width:560px){.kl .khero .bz-fly{top:5%!important;right:5%!important;width:62px}.kl .khero .eyebrow{font-size:.78rem;padding:7px 12px}}
.fod .side img{width:170px}
.fod .zsay{background:rgba(10,16,44,.7);border:2px solid rgba(240,180,41,.7);border-radius:20px;padding:14px 16px;font-style:normal;color:#fff2cf}
.fod .zsay b{display:block;font:700 .68rem/1 Poppins,"Segoe UI",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#ffd45f;margin-bottom:6px}
.fod .zsay span{display:block;font:700 1.15rem/1.25 Lora,Georgia,serif;color:#fff;margin-bottom:6px}
@media(max-width:760px){.fod .zsay{display:block;flex:1;padding:10px 12px}.fod .zsay span{font-size:1rem;margin-bottom:2px}}
.kl .wf.vert{grid-template-columns:minmax(200px,260px) 1fr}
