/* SAT-referenced landing geometry. Scoped to non-SAT curriculum hubs only. */
.ml-curriculum-landing{--ml-landing-border:#2f7f78;--ml-landing-radius:16px;--ml-landing-gap:16px;--ml-landing-pad:24px}
.ml-curriculum-landing .ml-landing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:22px;align-items:center;padding:30px;margin:12px 0 22px;border-radius:22px;border:1px solid var(--ml-landing-border);background:radial-gradient(120% 140% at 100% 0%,rgba(231,255,114,.10),transparent 55%),linear-gradient(135deg,#0c2a2a 0%,#0f2233 55%,#14203a 100%);min-width:0}
.ml-curriculum-landing .ml-landing-copy,.ml-curriculum-landing .ml-landing-art{min-width:0}
.ml-curriculum-landing .ml-landing-hero h1{font-family:"Space Grotesk","DM Sans",sans-serif;font-weight:700;color:var(--ink);letter-spacing:-.01em;font-size:clamp(34px,5vw,56px);line-height:1.02;margin:12px 0 10px;overflow-wrap:anywhere}
.ml-curriculum-landing .ml-landing-hero p{color:#c6e3df;line-height:1.55;margin:0 0 16px;max-width:64ch}
.ml-curriculum-landing .ml-landing-hero .ml-landing-note{color:#8fc9c2;font-size:13px;margin:12px 0 0}
.ml-curriculum-landing .ml-landing-pill{display:inline-flex;align-items:center;gap:7px;font:700 12px "DM Sans",sans-serif;letter-spacing:.08em;text-transform:uppercase;border-radius:99px;padding:6px 12px;background:rgba(231,255,114,.14);color:var(--lime);max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
.ml-curriculum-landing .ml-landing-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ml-curriculum-landing .ml-landing-btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;font:700 15px "DM Sans",sans-serif;line-height:1.4;border-radius:10px;padding:11px 16px;text-decoration:none;background:var(--lime);color:#0b1425!important;border:1px solid transparent;max-width:100%;min-height:44px;white-space:normal;text-align:left;overflow-wrap:anywhere;box-sizing:border-box;cursor:pointer}
.ml-curriculum-landing .ml-landing-btn.alt{background:transparent;color:var(--ink)!important;border-color:var(--ml-landing-border)}
.ml-curriculum-landing .ml-landing-btn:focus-visible,.ml-curriculum-landing .ml-landing-card:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.ml-curriculum-landing .ml-landing-art{width:100%;max-width:300px;justify-self:center}
.ml-curriculum-landing .ml-landing-art svg{display:block;width:100%;height:auto;max-height:240px;overflow:visible}
.ml-curriculum-landing .ml-landing-section-title{font-family:"Space Grotesk","DM Sans",sans-serif;font-size:1.45rem;line-height:1.3;letter-spacing:-.01em;color:var(--ink);margin:28px 0 16px;overflow-wrap:anywhere}
.ml-curriculum-landing .ml-landing-group{padding:0;background:transparent;border:0;border-radius:0;margin:26px 0}
.ml-curriculum-landing .ml-landing-group>h2{font-family:"Space Grotesk","DM Sans",sans-serif;font-size:1.45rem;line-height:1.3;margin:0 0 16px;overflow-wrap:anywhere}
.ml-curriculum-landing .topics,.ml-curriculum-landing .ml-landing-group>.idea-list,.ml-curriculum-landing .sat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ml-landing-gap);align-items:stretch;width:100%;min-width:0}
.ml-curriculum-landing .ml-landing-card,.ml-curriculum-landing .ml-browser-group .ml-landing-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:220px;width:auto;margin:0;padding:var(--ml-landing-pad);box-sizing:border-box;border:1px solid var(--ml-landing-border);border-radius:var(--ml-landing-radius);background:linear-gradient(160deg,rgba(76,229,208,.07),rgba(22,35,58,1) 60%);color:var(--ink);text-decoration:none;gap:0}
.ml-curriculum-landing .ml-landing-card h3,.ml-curriculum-landing .ml-landing-card>b{font-family:"Space Grotesk","DM Sans",sans-serif;color:var(--ink);font-size:1.45rem;line-height:1.3;margin:10px 0 10px;overflow-wrap:anywhere;white-space:normal}
.ml-curriculum-landing .ml-landing-card p,.ml-curriculum-landing .ml-landing-card .topic-meta{color:var(--muted);line-height:1.55;margin:0 0 16px;overflow-wrap:anywhere}
.ml-curriculum-landing .ml-landing-card .num,.ml-curriculum-landing .ml-landing-card .ml-landing-kicker{font:700 11px "DM Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--green);display:block;overflow-wrap:anywhere}
.ml-curriculum-landing .ml-landing-card .ml-landing-btn,.ml-curriculum-landing .ml-landing-card .ml-landing-card-action{margin-top:auto}
.ml-curriculum-landing .ml-landing-card-action{color:var(--green);font:700 15px "DM Sans",sans-serif;line-height:1.4;padding-top:12px}
.ml-curriculum-landing .ml-landing-card .calc-progress{margin:10px 0;max-width:100%}
.ml-curriculum-landing .ml-landing-level-grid .ml-landing-card{min-height:264px}
.ml-curriculum-landing .ml-landing-level-grid .ml-landing-card .psat-gauge{width:160px;max-width:100%;height:auto;align-self:center;margin:0 0 12px}
.ml-curriculum-landing .ml-landing-exam-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.ml-curriculum-landing .sat-card .sat-row{margin-top:auto;flex-wrap:wrap}
.ml-curriculum-landing .topic-search{display:block;max-width:100%;margin:26px 0}
@media(max-width:900px){.ml-curriculum-landing .ml-landing-hero{grid-template-columns:minmax(0,1fr) 220px}.ml-curriculum-landing .ml-landing-art{max-width:220px}}
@media(max-width:760px){.ml-curriculum-landing .ml-landing-hero{grid-template-columns:1fr;padding:20px}.ml-curriculum-landing .ml-landing-art{max-width:240px}.ml-curriculum-landing .topics,.ml-curriculum-landing .ml-landing-group>.idea-list,.ml-curriculum-landing .sat-grid{grid-template-columns:1fr}.ml-curriculum-landing .ml-landing-card,.ml-curriculum-landing .ml-browser-group .ml-landing-card{padding:20px;min-height:0}.ml-curriculum-landing .ml-landing-actions{align-items:stretch}.ml-curriculum-landing .ml-landing-actions>.ml-landing-btn{flex:1 1 180px}}
@media(prefers-reduced-motion:reduce){.ml-curriculum-landing .ml-landing-art *,.ml-curriculum-landing .ml-landing-card .psat-gauge *{animation:none!important}.ml-curriculum-landing .ml-landing-art animate,.ml-curriculum-landing .ml-landing-art animateTransform,.ml-curriculum-landing .ml-landing-art animateMotion{display:none}}
