:root{--font-display:"Outfit", "Arial Black", sans-serif;--font-body:"DM Sans", Arial, sans-serif;--color-bg:#be1e2d;--color-bg-deep:#240000;--color-surface:#141920;--color-surface-raised:#1a2130;--color-text:#f4f6f8;--color-muted:#ced5dc;--color-border:#2a4060;--color-accent:#4a9ee8;--color-accent-hover:#7ec8f0;--color-error:#ffd1d1;--page-gutter:clamp(1.5rem, 3vw, 3rem);--content-max-width:80rem;--section-space:clamp(2rem, 3vw, 3rem);--radius-control:.5rem;--nav-height:4.25rem;--silk:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 1rem)}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);margin:0;font-size:1rem;line-height:1.6;overflow-x:hidden}button,input,select,textarea{font:inherit}a{color:inherit}::selection{background:var(--color-accent);color:#081522}:focus-visible{outline:3px solid var(--color-accent-hover);outline-offset:3px}.site-header{z-index:50;min-height:var(--nav-height);padding:0 max(var(--page-gutter), calc((100vw - var(--content-max-width)) / 2));-webkit-backdrop-filter:blur(18px);background:#be1e2df0;border-bottom:1px solid #ffffff2e;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.brand{font-family:var(--font-display);letter-spacing:-.025em;flex:none;align-items:center;gap:.6rem;font-size:1.35rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{border-radius:var(--radius-control);background:var(--color-accent);place-items:center;width:2rem;height:2rem;display:grid}.brand-mark svg{fill:none;stroke:#fff;stroke-linecap:round;stroke-width:2.3px;width:1.25rem;height:1.25rem}.primary-nav{align-items:center;gap:.15rem;margin-left:auto;display:flex}.primary-nav a{color:var(--color-text);letter-spacing:.01em;transition:background .3s var(--silk);border-radius:.4rem;padding:.4rem .85rem;font-size:.875rem;font-weight:400;text-decoration:none}.primary-nav a:hover{background:#ffffff1a}.header-cta,.hero-action,.submit-button{border:1px solid var(--color-accent);border-radius:var(--radius-control);background:var(--color-accent);color:#081522;transition:background .4s var(--silk), transform .4s var(--silk);font-weight:600;text-decoration:none}.header-cta{flex:none;padding:.5rem 1.2rem;font-size:.875rem}.header-cta:hover,.hero-action:hover,.submit-button:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-1px)}.hero-section,.intro-section,.courses-section,.application-section,.site-footer{padding-right:max(var(--page-gutter), calc((100vw - var(--content-max-width)) / 2));padding-left:max(var(--page-gutter), calc((100vw - var(--content-max-width)) / 2))}.hero-section{flex-direction:column;justify-content:center;align-items:flex-start;padding-top:clamp(2.5rem,4vw,3.5rem);padding-bottom:clamp(2.5rem,4vw,3.5rem);display:flex}.section-kicker{color:var(--color-accent-hover);letter-spacing:.14em;text-transform:uppercase;margin-bottom:1.25rem;font-size:.7rem;font-weight:600}.hero-section h1,.intro-section h2,.section-heading h2,.application-heading h2{font-family:var(--font-display);letter-spacing:-.04em;text-transform:uppercase;margin:0;font-weight:800;line-height:.96}.hero-section h1{overflow-wrap:break-word;font-size:clamp(3rem,6vw,5.5rem)}.hero-copy{color:var(--color-text);white-space:pre-line;margin:clamp(1.5rem,3vw,2rem) 0 0;font-size:clamp(1rem,1.5vw,1.2rem);font-weight:300;line-height:1.75}.hero-action{align-items:center;gap:2.5rem;margin-top:clamp(1.5rem,3vw,2rem);padding:.85rem 1.55rem;display:inline-flex}.hero-action span{font-size:1.35rem;line-height:1}.intro-section{padding-top:var(--section-space);padding-bottom:var(--section-space);background:var(--color-bg-deep)}.intro-content{width:100%}.intro-section h2,.section-heading h2,.application-heading h2{overflow-wrap:break-word;font-size:clamp(2.25rem,3.5vw,4rem)}.intro-section p{color:var(--color-muted);white-space:pre-line;margin:1.5rem 0 0;font-size:clamp(1.05rem,1.6vw,1.25rem);font-weight:300;line-height:1.7}.courses-section{padding-top:var(--section-space);padding-bottom:var(--section-space)}.section-heading{margin-bottom:clamp(1.5rem,2vw,2rem)}.section-heading>p{color:var(--color-muted);margin:1rem 0 0;font-weight:300}.course-list{border-top:1px solid #ffffff47}.course{border-bottom:1px solid #ffffff47;grid-template-columns:3rem minmax(0,1.35fr) minmax(14rem,.65fr);gap:clamp(1rem,2.25vw,2rem);padding:clamp(1.125rem,1.5vw,1.5rem) 0;display:grid}.course-index{color:var(--color-accent-hover);letter-spacing:.12em;padding-top:.4rem;font-size:.75rem;font-weight:600}.course-main,.course-heading,.course-facts,.course-facts div{min-width:0}.course-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.course h3{font-family:var(--font-display);letter-spacing:-.035em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.65rem,2.5vw,2.25rem);font-weight:700;line-height:1}.course-main>p{color:var(--color-muted);white-space:pre-line;margin:1rem 0 0;font-weight:300;line-height:1.7}.status{border-radius:var(--radius-control);letter-spacing:.05em;text-align:center;text-transform:uppercase;border:1px solid #ffffff52;flex:none;gap:.3rem;padding:.35rem .65rem;font-size:.68rem;font-weight:600;line-height:1.25;display:inline-grid}.status-open{border-color:var(--color-accent);background:var(--color-accent);color:#081522;font-size:.75rem;font-weight:600}.status-deadline{letter-spacing:.04em;white-space:nowrap;border-top:1px solid;padding-top:.3rem;font-size:.72rem;font-weight:700}.course-facts{align-content:start;gap:1rem;margin:0;display:grid}.course-facts div{grid-template-columns:6rem minmax(0,1fr);gap:1rem;padding-bottom:.75rem;display:grid}.course-facts div:not(:last-child){border-bottom:1px solid #ffffff24}.course-facts dt{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:500}.course-facts dd{overflow-wrap:anywhere;margin:0;font-size:.9rem}.empty-state,.data-error,.closed-message{color:var(--color-muted);border:1px solid #ffffff3d;margin:0;padding:clamp(1.5rem,3vw,2.5rem);font-size:clamp(1.1rem,2vw,1.4rem)}.application-section{padding-top:var(--section-space);padding-bottom:var(--section-space);background:var(--color-surface);grid-template-columns:minmax(14rem,.65fr) minmax(0,1.65fr);gap:clamp(2rem,4vw,4rem);display:grid}.application-heading{align-self:start}.application-heading p{color:var(--color-muted);margin:1.5rem 0 0;font-weight:300;line-height:1.7}.application-panel{justify-content:flex-start;min-width:0;display:flex}.application-form{gap:1.5rem;width:100%;display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.field{gap:.5rem;min-width:0;display:grid}.field label{letter-spacing:.07em;text-transform:uppercase;font-size:.76rem;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-raised);width:100%;min-width:0;color:var(--color-text);transition:border-color .25s,background .25s}.field input,.field select{min-height:3rem;padding:.72rem .9rem}.field textarea{resize:vertical;min-height:8.75rem;padding:.9rem;line-height:1.55}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-accent-hover);background:#1e2838;outline:none}.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#ff9595}.field-error,.form-message{color:var(--color-error);margin:0;font-size:.82rem}.consent-wrap{gap:.5rem;display:grid}.consent{color:var(--color-muted);cursor:pointer;align-items:flex-start;gap:.8rem;font-size:.9rem;line-height:1.5;display:flex}.consent input{width:1.15rem;height:1.15rem;accent-color:var(--color-accent);flex:none;margin:.15rem 0 0}.submit-button{cursor:pointer;justify-content:space-between;align-items:center;width:100%;min-height:3.75rem;padding:.9rem 1.25rem;display:flex}.submit-button span{font-size:1.5rem;line-height:1}.submit-button:disabled{cursor:wait;opacity:.65}.success-message{border:1px solid var(--color-accent);width:100%;color:var(--color-text);font-family:var(--font-display);letter-spacing:-.035em;padding:clamp(2rem,4vw,3rem);font-size:clamp(1.8rem,4vw,3.5rem);font-weight:700;line-height:1.1}.closed-message{border-color:var(--color-border)}.honeypot{display:none}.site-footer{background:var(--color-bg-deep);min-height:6rem;color:var(--color-muted);border-top:1px solid #fff3;justify-content:space-between;align-items:center;gap:1.5rem;font-size:.9rem;display:flex}.site-footer div{gap:1.5rem;display:flex}.site-footer a{text-underline-offset:.25rem}.loading-page{min-height:100svh;padding:var(--page-gutter);background:var(--color-bg);font-family:var(--font-display);letter-spacing:-.04em;text-align:center;text-transform:uppercase;place-items:center;font-size:clamp(2rem,5vw,4rem);font-weight:800;display:grid}.loading-page>div{justify-items:center;gap:2rem;display:grid}.error-retry{border:1px solid var(--color-accent);border-radius:var(--radius-control);background:var(--color-accent);color:#081522;cursor:pointer;min-height:3rem;font-family:var(--font-body);text-transform:none;padding:.7rem 1.1rem;font-size:.95rem;font-weight:600}@media (max-width:56.25rem){.primary-nav{display:none}.header-cta{margin-left:auto}.course{grid-template-columns:3rem minmax(0,1fr)}.course-facts{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.75rem}.application-section{grid-template-columns:1fr}}@media (max-width:46rem){:root{--section-space:clamp(2rem, 8vw, 2.75rem)}.site-header{min-height:4rem}.brand{font-size:1.05rem}.brand-mark{width:1.7rem;height:1.7rem}.header-cta{padding:.55rem .75rem;font-size:.75rem}.hero-section h1{font-size:clamp(2.75rem,14vw,4.5rem)}.course{grid-template-columns:1fr}.course-index,.course-facts{grid-column:1}.course-heading{display:grid}.status{width:fit-content}.course-facts,.field-grid{grid-template-columns:1fr}.site-footer{flex-direction:column;justify-content:center;align-items:flex-start;padding-top:1.5rem;padding-bottom:1.5rem}}@media (max-width:23.5rem){.brand>span:last-child{display:none}.site-footer div{flex-wrap:wrap;gap:.75rem 1rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
