/* Midnight edition — no light surfaces. */
:root{--paper:#0b1d30;--ink:#d9e9f1}
#about,#resources{background:#0b1d30;color:#d9e9f1;--muted:#a0b7c8;--white:#d9e9f1;--line:#ffffff20;--cyan:#00d4ff}
#about .eyebrow,#resources .eyebrow{color:#00d4ff}#about .section-top p,#resources .section-top p{color:#a0b7c8}
.pillars{border-top-color:#ffffff25}.pillar+.pillar{border-left-color:#ffffff20}.pillar:hover{border-color:#ffffff20}.pillar .num{color:#69aec8}.pillar p{color:#a0b7c8}.pillar:after{color:#00d4ff80}
#resources{background:radial-gradient(ellipse at 10% 25%,#123b5260,transparent 60%),#08182b}#resources .mathphys-feature{background:linear-gradient(130deg,#123a51,#0a1b2f);border:1px solid #00d4ff30}.resource-search{background:#102a43;border-color:#ffffff25}.resource-search input{color:#d9e9f1}.resource-search input::placeholder{color:#92aabd}.resource-search span{color:#00d4ff}#resource-count{color:#a0b7c8}.resource-filters .filter{color:#8eabbf}.resource-filters .filter.active{color:#00d4ff;border-bottom-color:#00d4ff}.resource-filters .filter:hover{color:#cce7f4}.resource-grid{border-color:#ffffff25}.resource-card,.resource-card:nth-child(3n+2),.resource-card:nth-child(3n+3){border-color:#ffffff20}.resource-card:hover{background:#14334a80;border-color:#00d4ff50}.resource-card .tag{color:#00d4ff}.resource-file{color:#8faabd}.resource-card p{color:#a0b7c8}.resource-actions{border-color:#ffffff20}.resource-actions button{color:#c0d9e8}.resource-actions button:last-child{color:#00d4ff}#resources .note{color:#8ca8bd}.launch-check{background:#102a43;border-color:#00d4ff30}.launch-check p{color:#a0b7c8}.check-row{color:#bed1df;border-color:#ffffff20}.check-row:has(input:checked) span{color:#66a8ba}.check-progress,.reset-check{color:#00d4ff}.join{background:radial-gradient(ellipse at 90% 80%,#00d4ff1a,transparent 65%),#102a43;color:#d9e9f1;border-top:1px solid #00d4ff30}.join p{color:#a0b7c8}.join .eyebrow{color:#00d4ff}.join .eyebrow:before{background:#00d4ff}.join .button{background:#00d4ff;color:#071426;border-color:#00d4ff}.join .button:hover{background:#78e8ff}
.brand strong{font-weight:500;letter-spacing:-1.3px;font-size:30px;color:#d4e9f3}.brand strong:after{content:'.';color:#00d4ff}.brand small{color:#7f9bb0}.symbol{width:32px;height:32px;color:#00d4ff}.symbol svg{width:32px;height:32px}.symbol svg .orbit-mark{transform-origin:16px 16px;animation:brand-orbit 24s linear infinite}.footer-wordmark{color:#15374d}
.hero-image{animation:hero-drift 22s ease-in-out infinite alternate;transform-origin:72% 50%;will-change:transform}.hero:before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 72% 55%,#00d4ff12,transparent 46%);animation:ambient-pulse 8s ease-in-out infinite;pointer-events:none}.hero .eyebrow:before{animation:signal-pulse 3s ease-in-out infinite}.hero h1,.hero .actions,.hero p{animation:intro-rise .85s cubic-bezier(.2,.7,.2,1) both}.hero p{animation-delay:.12s}.hero .actions{animation-delay:.24s}
.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.motion-ready .reveal.is-visible{opacity:1;transform:none}.project-art svg{animation:instrument-drift 9s ease-in-out infinite alternate}.project:nth-child(2) .project-art svg{animation-delay:-3s}.project:nth-child(3) .project-art svg{animation-delay:-6s}.mathphys-mark{position:relative;overflow:hidden}.mathphys-mark:after{content:'';position:absolute;width:160px;height:160px;border:1px solid #00d4ff40;border-top-color:#00d4ff;border-radius:50%;transform:rotateX(65deg);animation:study-orbit 16s linear infinite;pointer-events:none}.button .arrow{transition:transform .25s}.button:hover .arrow{transform:translate(3px,-3px)}
.motion-toggle{position:fixed;right:18px;bottom:16px;z-index:20;background:#0b1d30ed;border:1px solid #00d4ff40;color:#8fcede;padding:9px 12px;font:9px 'IBM Plex Mono';cursor:pointer;border-radius:3px;backdrop-filter:blur(10px)}.motion-toggle:hover{border-color:#00d4ff}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .reveal{opacity:1;transform:none;transition:none}
@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.035) translate3d(-.5%,.3%,0)}}@keyframes ambient-pulse{0%,100%{opacity:.3}50%{opacity:1}}@keyframes signal-pulse{50%{box-shadow:0 0 14px #00d4ff80;opacity:.5}}@keyframes intro-rise{from{opacity:0;transform:translateY(17px)}to{opacity:1;transform:none}}@keyframes brand-orbit{to{transform:rotate(360deg)}}@keyframes instrument-drift{from{transform:translateY(-3px)}to{transform:translateY(6px)}}@keyframes study-orbit{to{transform:rotate(360deg) rotateX(65deg)}}
@media(max-width:740px){.resource-card:nth-child(2n){border-left-color:#ffffff20}}@media(max-width:620px){.pillar,.pillar:first-child,.pillar+.pillar{border-bottom-color:#ffffff20}.resource-card:nth-child(2n){border-left:0}.motion-toggle{font-size:8px;right:12px;bottom:12px}.hero-image{animation-duration:28s}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.motion-toggle{display:none}}
