:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Garet,Jost,Century Gothic,Avenir Next,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}body{-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}@font-face{font-family:Telegraf;src:url(/fonts/Telegraf-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Telegraf;src:url(/fonts/Telegraf-Semibold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Garet;src:url(/fonts/Garet-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Garet;src:url(/fonts/Garet-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--navy:#0a3b5e;--purple:#ae67b7;--purple-soft:#bb85ce;--blue:#4682b4;--blue-accent:#6ea0cf;--neutral:#e4e2dd;--off-white:#fefefe;--navy-deep:#072c46;--navy-deepest:#051f33;--navy-lift:#0e4670;--text:var(--off-white);--text-muted:color-mix(in srgb, var(--off-white) 68%, transparent);--text-faint:color-mix(in srgb, var(--off-white) 46%, transparent);--rule:color-mix(in srgb, var(--off-white) 14%, transparent);--rule-strong:color-mix(in srgb, var(--off-white) 28%, transparent);--danger:#e2879a;--success:#7fc6a4;--display:"Telegraf", "Archivo", "Helvetica Neue", Arial, sans-serif;--body:"Garet", "Jost", "Century Gothic", "Avenir Next", sans-serif;--gutter:clamp(1.25rem, 4vw, 3.5rem);--measure:1240px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-ink:cubic-bezier(.65, 0, .35, 1)}body{background:var(--navy);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.65}::selection{background:var(--purple);color:var(--off-white)}:focus-visible{outline:2px solid var(--blue-accent);outline-offset:3px}.lattice{z-index:0;pointer-events:none;justify-content:center;display:flex;position:fixed;inset:0}.lattice:before{content:"";width:min(100% - (var(--gutter) * 2), var(--measure));background-image:repeating-linear-gradient(to right, var(--rule) 0 1px, transparent 1px calc(100% / 6));opacity:.5}.page{z-index:1;position:relative}.container{width:min(100% - (var(--gutter) * 2), var(--measure));margin-inline:auto}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;font-weight:700}.micro{font-family:var(--body);letter-spacing:.2em;text-transform:uppercase;font-size:.7rem;font-weight:500;line-height:1.5}.section-mark{color:var(--text-faint);align-items:center;gap:.9rem;margin-bottom:clamp(2rem,5vw,3.5rem);display:flex}.section-mark:after{content:"";background:var(--rule-strong);flex:1;height:1px}.section-mark .num{color:var(--purple-soft)}.section{padding-block:clamp(5rem,11vw,9.5rem);position:relative}.section h2{max-width:18ch;margin:0;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.04}.section h2 em{color:var(--purple-soft);font-style:normal}.btn{font-family:var(--body);letter-spacing:.18em;text-transform:uppercase;isolation:isolate;transition:color .4s var(--ease-ink), border-color .4s var(--ease-ink);border:1px solid #0000;border-radius:999px;align-items:center;gap:.6rem;padding:.95rem 1.6rem;font-size:.72rem;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;background:var(--purple);transform-origin:0;transition:transform .45s var(--ease-ink);position:absolute;inset:0;transform:scaleX(0)}.btn:hover:before,.btn:focus-visible:before{transform:scaleX(1)}.btn-solid{background:var(--off-white);color:var(--navy);border-color:var(--off-white)}.btn-solid:hover,.btn-solid:focus-visible{color:var(--off-white);border-color:var(--purple)}.btn-ghost{color:var(--text);border-color:var(--blue-accent);background:0 0}.btn-ghost:hover,.btn-ghost:focus-visible{color:var(--off-white);border-color:var(--purple)}.btn-on-light{background:var(--navy);color:var(--off-white);border-color:var(--navy)}.btn-on-light:hover,.btn-on-light:focus-visible{color:var(--off-white);border-color:var(--purple)}.nav{z-index:50;background:color-mix(in srgb, var(--navy) 95%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);border-bottom:1px solid var(--rule);position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:2rem;height:76px;display:flex}.nav-brand{align-items:center;gap:.7rem;display:flex}.nav-brand img{width:auto;height:36px}.nav-wordmark{font-family:var(--display);letter-spacing:-.01em;font-size:1.5rem;font-weight:700;line-height:1}.letter-m{color:var(--off-white)}.letter-a{color:var(--purple)}.letter-d{color:var(--blue-accent)}.letter-s{color:var(--purple-soft)}.nav-links{gap:clamp(1.25rem,3vw,2.75rem);margin:0;padding:0;list-style:none;display:flex}.nav-links a{font-family:var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);transition:color .3s var(--ease-out);padding-block:.4rem;font-size:.7rem;font-weight:500;position:relative}.nav-links a:after{content:"";background:var(--purple);transform-origin:100%;width:100%;height:2px;transition:transform .4s var(--ease-ink);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a:focus-visible{color:var(--off-white)}.nav-links a:hover:after,.nav-links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.nav-cta{padding:.72rem 1.3rem}@media (width<=880px){.nav-links{display:none}}.hero{border-bottom:1px solid var(--rule);padding-top:clamp(3.5rem,8vw,6rem);padding-bottom:clamp(16rem,33vw,25rem);position:relative;overflow:hidden}.hero-watermark{opacity:.055;pointer-events:none;width:min(60vw,420px);animation:drift 26s var(--ease-out) infinite alternate;margin-inline:auto;position:absolute;top:clamp(.5rem,3vw,2rem);left:0;right:0}@keyframes drift{0%{transform:translate(0,0)rotate(0)}to{transform:translate(-2.5%,3%)rotate(4deg)}}.hero-circle{border:1px solid var(--blue);opacity:.35;pointer-events:none;animation:drift 34s var(--ease-out) infinite alternate;border-radius:50%;position:absolute}.hero-circle-a{aspect-ratio:1;width:clamp(200px,32vw,400px);margin-inline:auto;top:clamp(1rem,4vw,3rem);left:0;right:0}.hero-circle-b{aspect-ratio:1;border-color:var(--purple);opacity:.3;width:clamp(110px,16vw,210px);animation-duration:28s;animation-direction:alternate-reverse;top:50%;right:13%}.hero-inner{z-index:2;text-align:center;position:relative}.hero-eyebrow{font-family:var(--body);letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);justify-content:center;align-items:center;gap:.85rem;font-size:.68rem;font-weight:500;display:flex}.hero-eyebrow:before,.hero-eyebrow:after{content:"";background:var(--purple);flex:none;width:clamp(1.25rem,4vw,3rem);height:2px}.hero-title{letter-spacing:-.01em;max-width:22ch;margin:clamp(1rem,2.2vw,1.4rem) auto 0;font-size:clamp(1.35rem,2.7vw,2.05rem);font-weight:600;line-height:1.2}.hero-entries{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong);grid-template-columns:repeat(2,minmax(0,1fr));max-width:38rem;margin:clamp(1.75rem,4vw,2.75rem) auto 0;display:grid}.hero-entry{text-align:center;flex-direction:column;gap:.3rem;padding:clamp(.9rem,2vw,1.25rem) .75rem;display:flex;position:relative;overflow:hidden}.hero-entry+.hero-entry{border-left:1px solid var(--rule)}.hero-entry:before{content:"";background:var(--navy-lift);transform-origin:0;transition:transform .45s var(--ease-ink);position:absolute;inset:0;transform:scaleX(0)}.hero-entry:hover:before,.hero-entry:focus-visible:before{transform:scaleX(1)}.hero-entry>*{position:relative}.hero-entry-label{font-family:var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--off-white);font-size:.72rem;font-weight:500}.hero-entry-note{color:var(--text-faint);transition:color .3s var(--ease-out);font-size:.82rem;line-height:1.4}.hero-entry:hover .hero-entry-note,.hero-entry:focus-visible .hero-entry-note{color:var(--text-muted)}.hero-newsletter{max-width:30rem;margin:clamp(1.5rem,3.5vw,2.25rem) auto 0}.hero-newsletter .newsletter label{text-align:center}.hero-newsletter .newsletter-row{justify-content:center}.hero-newsletter .newsletter-done{text-align:center;max-width:none}@media (width<=620px){.hero-entries{grid-template-columns:1fr}.hero-entry{text-align:left;flex-direction:row;justify-content:space-between;align-items:baseline;gap:1rem}.hero-entry+.hero-entry{border-left:0;border-top:1px solid var(--rule)}}.rise{opacity:0;animation:rise .95s var(--ease-out) forwards}.rise-1{animation-delay:50ms}.rise-2{animation-delay:.18s}.rise-3{animation-delay:.31s}.rise-4{animation-delay:.44s}@keyframes rise{0%{opacity:0;transform:translateY(1.75rem)}to{opacity:1;transform:translate(0,0)}}.curve{z-index:1;pointer-events:none;margin:0;position:absolute;bottom:0;left:0;right:0}.curve svg{width:100%;height:auto;display:block}.curve-area{fill:var(--purple);opacity:0;animation:area-in 1.4s var(--ease-out) 1.1s forwards}@keyframes area-in{to{opacity:.16}}.curve-path{fill:none;stroke:var(--purple);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:draw 2.2s var(--ease-out) .35s forwards;vector-effect:non-scaling-stroke}@keyframes draw{to{stroke-dashoffset:0}}.curve-axis,.curve-tick{stroke:var(--rule-strong);stroke-width:1px;vector-effect:non-scaling-stroke}.curve-tick,.curve-label{opacity:0;animation:tick-in .6s var(--ease-out) forwards}.curve-label{font-family:var(--body);letter-spacing:.08em;fill:var(--text-faint);text-anchor:middle;font-size:12px;font-weight:500}.curve-label.is-mean{fill:var(--purple-soft)}.tick-1{animation-delay:1.25s}.tick-2{animation-delay:1.45s}.tick-3{animation-delay:1.65s}.tick-4{animation-delay:1.85s}.tick-5{animation-delay:2.05s}@keyframes tick-in{to{opacity:1}}.about{background:var(--navy-deep);border-bottom:1px solid var(--rule)}.about-body{gap:1.1rem;max-width:62ch;display:grid}.about-body p{color:var(--text-muted);margin:0;font-size:clamp(1rem,1.4vw,1.12rem)}.about-body p:first-child{color:var(--text)}.calendar{background:var(--neutral);color:var(--navy)}.calendar .section-mark{color:color-mix(in srgb, var(--navy) 75%, transparent)}.calendar .section-mark:after{background:color-mix(in srgb, var(--navy) 24%, transparent)}.calendar .section-mark .num{color:var(--navy)}.calendar-head{border-bottom:1px solid color-mix(in srgb, var(--navy) 28%, transparent);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:clamp(2rem,4vw,3rem);padding-bottom:1.25rem;display:flex}.calendar-note{color:color-mix(in srgb, var(--navy) 78%, transparent)}.calendar-list{margin:0;padding:0;list-style:none}.event-row{border-bottom:1px solid color-mix(in srgb, var(--navy) 18%, transparent);grid-template-columns:clamp(4.5rem,9vw,7rem) minmax(0,1fr);align-items:baseline;gap:clamp(1rem,3vw,2.5rem);padding-block:clamp(1.25rem,2.5vw,1.9rem);display:grid}.event-date{font-family:var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--navy);white-space:nowrap;font-size:.78rem;font-weight:500}.event-body h3{margin:0;font-size:clamp(1.05rem,2vw,1.5rem);line-height:1.2}.event-body p{color:color-mix(in srgb, var(--navy) 78%, transparent);max-width:54ch;margin:.45rem 0 0;font-size:.95rem}.event-body .event-where{letter-spacing:.08em;color:color-mix(in srgb, var(--navy) 82%, transparent);font-size:.78rem;font-weight:500}.calendar .state{color:color-mix(in srgb, var(--navy) 78%, transparent)}@media (width<=620px){.event-row{grid-template-columns:1fr;gap:.35rem}}.join{background:var(--navy-deep);padding-block:clamp(5rem,12vw,9rem);position:relative;overflow:hidden}.join:after{content:"∫";font-family:var(--display);color:var(--purple);opacity:.09;pointer-events:none;font-size:clamp(16rem,38vw,30rem);line-height:.7;position:absolute;top:50%;right:clamp(-1rem,3vw,3rem);transform:translateY(-50%)}.cta-band{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:clamp(2rem,5vw,4rem);display:flex;position:relative}.join .micro{color:var(--text-faint)}.join h2{max-width:14ch;margin:.75rem 0 0;font-size:clamp(2.1rem,5.6vw,4.25rem);line-height:1}.join h2 em{color:var(--purple-soft);font-style:normal}.join p{color:var(--text-muted);max-width:40ch;margin-top:1.25rem}.footer{background:var(--navy-deepest);color:var(--text-faint);border-top:1px solid var(--rule);padding-block:2.5rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.footer-brand{align-items:center;gap:.7rem;display:flex}.footer-brand img{opacity:.85;width:auto;height:28px}.footer-links{gap:clamp(1rem,3vw,2.5rem);margin:0;padding:0;list-style:none;display:flex}.footer-links a{transition:color .3s var(--ease-out)}.footer-links a:hover,.footer-links a:focus-visible{color:var(--purple-soft)}.nav-toggle{border:1px solid var(--rule-strong);color:var(--text);font-family:var(--body);letter-spacing:.16em;text-transform:uppercase;transition:border-color .3s var(--ease-out), color .3s var(--ease-out);background:0 0;border-radius:2px;padding:.55rem 1rem;font-size:.7rem;display:none}.nav-toggle:hover,.nav-toggle:focus-visible{border-color:var(--purple);color:var(--purple-soft)}.nav-menu{background:var(--navy-deepest);border-bottom:1px solid var(--rule);display:block}.nav-menu[hidden]{display:none}.nav-menu ul{margin:0;padding-block:1rem 1.5rem;list-style:none}.nav-menu li+li{border-top:1px solid var(--rule)}.nav-menu a{transition:color .3s var(--ease-out);padding:.9rem 0;font-size:1.05rem;display:block}.nav-menu a:hover,.nav-menu a:focus-visible{color:var(--purple-soft)}@media (width<=880px){.nav-cta{display:none}.nav-toggle{display:inline-block}}.page-head{padding-top:clamp(6.5rem,12vw,9rem);padding-bottom:0}.page-eyebrow{color:var(--text-faint);align-items:center;gap:.8rem;display:flex}.page-eyebrow:before{content:"";background:var(--purple);flex:none;width:clamp(1.5rem,4vw,2.5rem);height:2px}.page-eyebrow .num{color:var(--purple-soft)}.page-head h1{font-family:var(--display);letter-spacing:-.02em;max-width:20ch;margin:clamp(.9rem,2vw,1.25rem) 0 0;font-size:clamp(1.95rem,4.4vw,3.1rem);font-weight:700;line-height:1.06}.page-lead{color:var(--text-muted);max-width:58ch;margin:1rem 0 0;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.6}.page-head-actions{margin-top:2rem}.page-toolbar{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem 2rem;margin-top:clamp(2rem,4vw,3rem);padding-top:1.15rem;display:flex}.page-toolbar .micro{color:var(--text-faint);margin:0}.toolbar-search{flex:18rem;gap:.45rem;max-width:26rem;display:grid}.toolbar-levels{flex-wrap:wrap;gap:.4rem;display:flex}.chip-toggle{font-family:var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--rule-strong);cursor:pointer;transition:color .3s var(--ease-out), border-color .3s var(--ease-out), background-color .3s var(--ease-out);background:0 0;border-radius:999px;padding:.5rem .95rem;font-size:.7rem;font-weight:500}.chip-toggle:hover{color:var(--text);border-color:var(--blue-accent)}.chip-toggle[aria-pressed=true]{color:var(--off-white);background:var(--navy-lift);border-color:var(--purple)}.toolbar-switch{color:var(--text-faint);cursor:pointer;align-items:center;gap:.55rem;display:inline-flex}.toolbar-switch input{accent-color:var(--purple);width:1rem;height:1rem}.result-bar{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem 1.5rem;margin-bottom:clamp(1rem,2vw,1.5rem);display:flex}.result-count,.result-note{color:var(--text-faint);margin:0}.link-button{font-family:var(--body);color:var(--purple-soft);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.page-body{padding-top:clamp(2.5rem,5vw,3.5rem)}.route-fallback{min-height:60vh;padding-top:clamp(8rem,16vw,12rem)}.state{color:var(--text-muted);padding-block:2rem;font-size:.95rem}.state-error{color:var(--purple-soft)}.state-done{color:var(--text)}.state a{color:var(--purple-soft);text-underline-offset:3px;text-decoration:underline}.post-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr));gap:clamp(.9rem,2vw,1.4rem);display:grid}.post-card{background:var(--navy-deep);border:1px solid var(--rule);transition:border-color .4s var(--ease-out);border-radius:4px;position:relative;overflow:hidden}.post-card-lead{grid-column:1/-1}.post-card:before{content:"";background:var(--navy-lift);transform-origin:0;transition:transform .55s var(--ease-ink);z-index:0;position:absolute;inset:0;transform:scaleX(0)}.post-card:hover:before,.post-card:focus-within:before{transform:scaleX(1)}.post-card:hover,.post-card:focus-within{border-color:var(--purple)}.post-card-link{z-index:1;flex-direction:column;gap:.75rem;height:100%;padding:clamp(1.35rem,2.5vw,2rem);display:flex;position:relative}.post-card-meta{color:var(--text-faint);flex-wrap:wrap;gap:.55rem;margin:0;display:flex}.post-card h2{font-family:var(--display);max-width:none;transition:color .4s var(--ease-out);margin:0;font-size:clamp(1.2rem,2vw,1.45rem);font-weight:600;line-height:1.2}.post-card-lead h2{max-width:24ch;font-size:clamp(1.6rem,3.4vw,2.3rem)}.post-card:hover h2{color:var(--purple-soft)}.post-card-excerpt{color:var(--text-muted);max-width:62ch;margin:0}.post-card-lead .post-card-excerpt{font-size:clamp(1rem,1.4vw,1.1rem)}.post-card-more{color:var(--purple-soft);align-items:center;gap:.5rem;margin-top:auto;padding-top:.5rem;display:inline-flex}.post-card-more .arrow{transition:transform .4s var(--ease-out);display:inline-block}.post-card:hover .post-card-more .arrow{transform:translate(4px)}@media (width>=900px){.post-card-lead .post-card-link{grid-template:"meta meta""title excerpt""title more"1fr/1.1fr 1fr;column-gap:clamp(2rem,5vw,4rem);padding:clamp(1.75rem,3vw,2.5rem);display:grid}.post-card-lead .post-card-meta{grid-area:meta}.post-card-lead h2{grid-area:title}.post-card-lead .post-card-excerpt{grid-area:excerpt}.post-card-lead .post-card-more{grid-area:more;align-self:start;margin-top:0;padding-top:.4rem}}.post{padding-top:clamp(6rem,11vw,8.5rem)}.post-inner{max-width:70ch}.post-back{color:var(--text-faint);transition:color .3s var(--ease-out);display:inline-block}.post-back:hover,.post-back:focus-visible{color:var(--purple-soft)}.post-head{border-bottom:1px solid var(--rule);padding-bottom:clamp(1.75rem,3vw,2.5rem)}.post-meta{color:var(--text-faint);flex-wrap:wrap;gap:.55rem;margin:clamp(1.25rem,3vw,2rem) 0 0;display:flex}.post-head h1{font-family:var(--display);letter-spacing:-.02em;margin:.85rem 0 0;font-size:clamp(2rem,4.6vw,3.1rem);font-weight:700;line-height:1.08}.post-standfirst{color:var(--text-muted);max-width:54ch;margin:1.1rem 0 0;font-size:clamp(1.05rem,1.6vw,1.2rem);line-height:1.55}.prose{color:color-mix(in srgb, var(--off-white) 86%, transparent);padding-top:clamp(2rem,4vw,2.75rem);font-size:clamp(1.02rem,1.3vw,1.1rem);line-height:1.8}.prose>*+*{margin-top:1.4rem}.prose h2{font-family:var(--display);color:var(--text);margin-top:3rem;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:600;line-height:1.2}.prose h3{font-family:var(--display);color:var(--text);margin-top:2.25rem;font-size:1.15rem;font-weight:600}.prose strong{color:var(--text)}.prose a{color:var(--purple-soft);text-underline-offset:3px;text-decoration:underline}.prose ul,.prose ol{padding-left:1.25rem}.prose li+li{margin-top:.5rem}.prose blockquote{border-left:2px solid var(--purple);color:var(--text);margin:2rem 0;padding-left:1.5rem}.prose code{background:var(--navy-lift);border-radius:2px;padding:.15em .4em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9em}.prose pre{background:var(--navy-deepest);border:1px solid var(--rule);border-radius:3px;padding:1.25rem;overflow-x:auto}.prose pre code{background:0 0;padding:0}.post-nav{border-top:1px solid var(--rule);grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:clamp(3rem,6vw,4.5rem);padding-top:clamp(1.5rem,3vw,2rem);display:grid}.post-nav-link{background:var(--navy-deep);border:1px solid var(--rule);transition:border-color .3s var(--ease-out), background-color .3s var(--ease-out);border-radius:4px;gap:.4rem;padding:1.1rem 1.25rem;display:grid}.post-nav-link:hover,.post-nav-link:focus-visible{border-color:var(--purple);background:var(--navy-lift)}.post-nav-link .micro{color:var(--text-faint)}.post-nav-title{font-family:var(--display);font-size:1.02rem;font-weight:600;line-height:1.3}.post-nav-older{text-align:right;grid-column:2;justify-items:end}@media (width<=620px){.post-nav{grid-template-columns:1fr}.post-nav-older{text-align:left;grid-column:auto;justify-items:start}}.course-list{gap:clamp(.75rem,1.5vw,1.1rem);display:grid}.course-card{background:var(--navy-deep);border:1px solid var(--rule);transition:border-color .3s var(--ease-out);border-radius:4px;padding:clamp(1.25rem,2.4vw,1.75rem)}.course-card:hover,.course-card:focus-within{border-color:var(--rule-strong)}.course-card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem 1.5rem;display:flex}.course-id{flex:auto;min-width:0}.course-code{font-family:var(--display);letter-spacing:.06em;color:var(--purple-soft);margin:0;font-size:.95rem;font-weight:600}.course-card h2{font-family:var(--display);max-width:none;margin:.35rem 0 0;font-size:clamp(1.1rem,2.2vw,1.4rem);font-weight:600;line-height:1.25}.course-level{border:1px solid var(--rule);color:var(--text-faint);white-space:nowrap;border-radius:999px;margin:0;padding:.35rem .75rem}.course-none{color:var(--text-faint);margin:1.1rem 0 0}.syllabus-files{grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),16rem));justify-content:start;gap:.6rem;margin:1.1rem 0 0;padding:0;list-style:none;display:grid}.syllabus-link{border:1px solid var(--rule-strong);height:100%;color:var(--text);transition:border-color .3s var(--ease-out), color .3s var(--ease-out), background-color .3s var(--ease-out);border-radius:3px;gap:.25rem;padding:.7rem .95rem;display:grid}.syllabus-term{font-size:.95rem;font-weight:500}.syllabus-file{color:var(--text-faint);text-transform:none;letter-spacing:.04em;overflow-wrap:anywhere}.syllabus-link:hover,.syllabus-link:focus-visible{border-color:var(--purple);background:var(--navy-lift)}.field{background:var(--navy-deepest);border:1px solid var(--rule-strong);width:100%;color:var(--text);font-family:var(--body);transition:border-color .3s var(--ease-out);border-radius:2px;padding:.75rem .9rem;font-size:1rem}.field::placeholder{color:var(--text-faint)}.field:hover{border-color:var(--blue-accent)}textarea.field{resize:vertical;line-height:1.6}.form-container{max-width:52ch}.form{gap:1.5rem;display:grid}.form-field{gap:.5rem;display:grid}.form-field label{color:var(--text);font-size:.95rem}.field-optional{color:var(--text-faint)}.form .btn{justify-self:start}.form .btn[disabled]{opacity:.55;cursor:not-allowed}.choice-group{border:0;gap:.6rem;margin:0;padding:0;display:grid}.choice-group legend{color:var(--text);margin-bottom:.5rem;padding:0;font-size:.95rem}.choice-options{gap:.5rem;display:grid}.choice{align-items:center;gap:.6rem;display:flex}.choice input{accent-color:var(--purple-soft);width:1rem;height:1rem;margin:0}.choice label{color:var(--text-muted)}.scale{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.scale-end,.question-help{color:var(--text-faint);font-size:.85rem}.honeypot{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.newsletter{gap:.6rem;min-width:min(100%,22rem);display:grid;position:relative}.newsletter label{color:var(--text-faint)}.newsletter-row{flex-wrap:wrap;gap:.6rem;display:flex}.newsletter-row .field{flex:12rem}.newsletter-row .btn{flex:none}.newsletter-done{color:var(--text);max-width:28ch}.join-aside{z-index:1;border-top:1px solid var(--rule);color:var(--text-faint);flex-wrap:wrap;gap:.6rem;margin-top:clamp(2.5rem,6vw,4rem);padding-top:1.5rem;display:flex;position:relative}.join-aside a{color:var(--purple-soft);transition:opacity .3s var(--ease-out)}.join-aside a:hover,.join-aside a:focus-visible{opacity:.75}@media (prefers-reduced-motion:reduce){.rise{opacity:1}.curve-path{stroke-dashoffset:0}.curve-area{opacity:.16}.curve-tick,.curve-label{opacity:1}.hero-watermark,.hero-circle{animation:none}.post-card:before,.post-card-more .arrow{transition:none}}
