:root{--ink:#000;--paper:#fff;--paper-soft:#f3f3f1;--text-on-ink:#f7f7f5;--text-on-ink-dim:#a4a4a0;--text-on-paper:#0a0a0a;--text-on-paper-dim:#5e5e5a;--line-on-ink:#ffffff24;--line-on-ink-strong:#ffffff4d;--line-on-paper:#00000024;--line-control-on-ink:#ffffff6b;--line-control-on-paper:#00000094;--font-display:"Bodoni Moda", "Times New Roman", Times, serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-meta:ui-monospace, "SFMono-Regular", "Cascadia Mono", Menlo, Consolas, monospace;--step-negative:clamp(.75rem, .71rem + .16vw, .8125rem);--step-0:clamp(.95rem, .9rem + .22vw, 1.05rem);--step-1:clamp(1.1rem, 1rem + .5vw, 1.35rem);--step-2:clamp(1.5rem, 1.2rem + 1.4vw, 2.4rem);--step-3:clamp(2rem, 1.4rem + 3vw, 4rem);--step-hero:clamp(2.4rem, 1rem + 7vw, 7.5rem);--space-2xs:.375rem;--space-xs:.75rem;--space-sm:1.25rem;--space-md:2rem;--space-lg:3.5rem;--space-xl:6rem;--space-2xl:clamp(4.5rem, 3.25rem + 5vw, 8rem);--shell-max:82rem;--shell-pad:clamp(1.25rem, .8rem + 3vw, 4rem);--measure:62ch;--masthead-clearance:5.5rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-fast:.18s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background-color:var(--ink);color:var(--text-on-ink);font-family:var(--font-body);font-size:var(--step-0);letter-spacing:.005em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-weight:300;line-height:1.65}img,video{max-width:100%;display:block}h1,h2,h3,p,figure,blockquote{margin:0}ul{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}:focus-visible{outline-offset:3px;border-radius:1px;outline:2px solid}.shell{width:100%;max-width:var(--shell-max);padding-inline:var(--shell-pad);margin-inline:auto}.section{padding-block:var(--space-2xl)}.section--ink{background-color:var(--ink);color:var(--text-on-ink)}.section--paper{background-color:var(--paper);color:var(--text-on-paper)}.section--paper .eyebrow{color:var(--text-on-paper-dim)}.section--ink+.section--ink{border-top:1px solid var(--line-on-ink)}.section__head{gap:var(--space-sm);max-width:var(--measure);margin-bottom:var(--space-xl);display:grid}.eyebrow{font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.16em;text-transform:uppercase;color:var(--text-on-ink-dim);font-weight:400}.section__title{font-family:var(--font-display);font-size:var(--step-3);letter-spacing:-.015em;font-weight:400;line-height:1.06}.btn{font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out);border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:.6em;padding:.95em 1.7em;display:inline-flex}.btn--primary{background-color:var(--paper);color:var(--ink);border-color:var(--paper)}.btn--primary:hover{color:var(--paper);background-color:#0000}.btn--ghost{border-color:var(--line-control-on-ink);color:var(--text-on-ink)}.btn--ghost:hover{background-color:var(--paper);border-color:var(--paper);color:var(--ink)}.btn--paper{border-color:var(--line-control-on-paper);color:var(--text-on-paper)}.btn--paper:hover{background-color:var(--ink);border-color:var(--ink);color:var(--paper)}.masthead{z-index:3;padding-block:var(--space-sm);position:absolute;inset:0 0 auto}.masthead__inner{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.masthead__wordmark{font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.14em;text-transform:uppercase;gap:.15em;line-height:1.3;display:grid}.masthead__wordmark span:last-child{color:var(--text-on-ink-dim)}.masthead__nav{align-items:center;gap:var(--space-md);display:flex}.masthead__links{align-items:center;gap:var(--space-md);font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;text-transform:uppercase;color:var(--text-on-ink-dim);flex-wrap:wrap;display:flex}.masthead__links a{transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);border-bottom:1px solid #0000;padding-block:.9em}.masthead__links a:hover{color:var(--text-on-ink);border-bottom-color:var(--line-on-ink-strong)}@media (max-width:60rem){:root{--masthead-clearance:7rem}.masthead__inner{align-items:flex-start;gap:var(--space-xs);flex-direction:column}.masthead__wordmark{grid-auto-flow:column;gap:.35em}.masthead__links{gap:var(--space-xs)}}.hero{min-height:100svh;padding-block:calc(var(--masthead-clearance) + 1.5rem) clamp(3rem, 2rem + 2vw, 4.5rem);background-color:var(--ink);isolation:isolate;align-content:end;display:grid;position:relative;overflow:hidden}.hero__backdrop{z-index:-1;position:absolute;inset:0;overflow:hidden}.hero__video,.hero__still{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__still{background-color:var(--ink)}.hero__frame{inset:clamp(.75rem,2vw,2rem);top:var(--masthead-clearance);border:1px solid var(--line-on-ink-strong);position:absolute}.hero__inner{gap:1.625rem;display:grid;position:relative}.hero__title{font-family:var(--font-display);font-size:var(--step-hero);letter-spacing:-.03em;text-wrap:balance;font-weight:400;line-height:.92}@media (max-width:40rem){.hero__title{font-size:clamp(2.2rem,1rem + 6.2vw,3.2rem)}}.hero__title-line{margin-bottom:-.3em;padding-bottom:.3em;display:block;overflow:hidden}.hero__title-line>span{display:block}.hero__title-line:last-child>span{font-style:italic}.hero__tagline{max-width:34ch;font-size:var(--step-1);color:var(--text-on-ink-dim);text-wrap:pretty}.hero__actions{gap:var(--space-xs);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.hero__meta{gap:var(--space-sm) var(--space-md);margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--line-on-ink);font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;display:flex;position:relative}.hero__meta>div{flex-wrap:wrap;align-items:baseline;gap:0 .6em;display:flex}.hero__meta dt{color:var(--text-on-ink-dim)}.hero__meta dd{color:var(--text-on-ink);margin:0}.hero__meta-status{color:var(--text-on-ink)}.hero__video-toggle{right:var(--shell-pad);bottom:var(--space-lg);z-index:3;border:1px solid var(--line-control-on-ink);color:var(--text-on-ink);font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background-color:#000000d9;border-radius:0;padding:.6em 1.1em;position:absolute}.hero__video-toggle:hover{background-color:var(--paper);color:var(--ink)}.quotations__list{border-top:1px solid var(--line-on-ink);gap:0;display:grid}.quotation{gap:var(--space-sm);border-bottom:1px solid var(--line-on-ink);padding-block:clamp(1.75rem,1.2rem + 2vw,2.75rem);display:grid}.quotation__text{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;font-size:clamp(1.4rem,1.1rem + 1.3vw,2.1rem);font-weight:400;line-height:1.26}.quotation__text:before{content:"“"}.quotation__text:after{content:"”"}.quotation__attribution{margin-top:var(--space-xs);font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;text-transform:uppercase;color:var(--text-on-ink-dim)}.admissions__grid{gap:var(--space-xl);display:grid}@media (min-width:60rem){.admissions__grid{gap:var(--space-2xl);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}}.admissions__steps{border-top:1px solid var(--line-on-paper);gap:0;display:grid}.step{gap:var(--space-sm);padding-block:var(--space-md);border-bottom:1px solid var(--line-on-paper);grid-template-columns:3rem 1fr;display:grid}.step__number{font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;color:var(--text-on-paper-dim);padding-top:.35em}.step__title{font-family:var(--font-display);font-size:var(--step-2);text-wrap:balance;font-weight:400;line-height:1.15}.step__body{margin-top:var(--space-2xs);max-width:var(--measure);color:var(--text-on-paper-dim)}.fee-card{align-self:start;gap:var(--space-sm);padding:var(--space-lg);background-color:var(--paper-soft);display:grid}.fee-card__label{font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.14em;text-transform:uppercase;color:var(--text-on-paper-dim)}.fee-card__amount{font-family:var(--font-display);font-size:var(--step-3);letter-spacing:-.02em;font-weight:400;line-height:1}.fee-card__note{font-size:var(--step-0);color:var(--text-on-paper-dim);max-width:40ch}.fee-card__status{padding-top:var(--space-sm);border-top:1px solid var(--line-on-paper);font-size:var(--step-0);color:var(--text-on-paper-dim)}.contact__grid{gap:var(--space-lg);display:grid}@media (min-width:52rem){.contact__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.contact__channel{gap:var(--space-2xs);padding-top:var(--space-sm);border-top:1px solid var(--line-on-ink);display:grid}.contact__label{font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.14em;text-transform:uppercase;color:var(--text-on-ink-dim)}.contact__value{font-size:var(--step-1);overflow-wrap:anywhere}.contact__value--pending{color:var(--text-on-ink-dim)}.contact__note{margin-top:var(--space-md);font-size:var(--step-0);color:var(--text-on-ink-dim);max-width:var(--measure)}.colophon{padding-block:var(--space-lg);border-top:1px solid var(--line-on-ink);background-color:var(--ink);color:var(--text-on-ink-dim)}.colophon__inner{justify-content:space-between;align-items:baseline;gap:var(--space-sm);font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;display:flex}.colophon__name{color:var(--text-on-ink)}.registration-modal{z-index:20;padding:var(--space-sm) var(--shell-pad);background-color:#000000b8;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.registration-modal__panel{width:min(30rem,100%);max-height:calc(100dvh - 2 * var(--space-sm));padding:var(--space-md) var(--space-sm) var(--space-sm);border:1px solid var(--line-on-paper);background-color:var(--paper);color:var(--text-on-paper);position:relative;overflow-y:auto}.registration-form{gap:var(--space-sm);display:grid}.registration-form__close{width:2.75rem;height:2.75rem;color:var(--text-on-paper-dim);cursor:pointer;background:0 0;border:0;font-size:1.5rem;line-height:1;position:absolute;top:0;right:0}.registration-form__close:hover{color:var(--text-on-paper)}.registration-form__title{max-width:18ch;font-family:var(--font-display);font-size:var(--step-2);letter-spacing:-.01em;margin:0;padding-right:2.75rem;font-weight:400;line-height:1.05}.registration-form__group{gap:var(--space-2xs);display:grid}.registration-form__label{font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;align-items:baseline;gap:0 .5em;display:flex}.registration-form__hint{color:var(--text-on-paper-dim);font-family:var(--font-body);font-size:var(--step-negative);letter-spacing:0;text-transform:none}.registration-form__input{border:1px solid var(--line-control-on-paper);background-color:var(--paper);width:100%;color:var(--text-on-paper);font-family:var(--font-body);font-size:var(--step-0);border-radius:0;padding:.75em .85em}.registration-form__input:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.registration-form__error{color:var(--text-on-paper);font-size:var(--step-negative);border-left:2px solid var(--ink);padding-left:.6em}.registration-form__error-summary{padding:var(--space-2xs) 0;border-top:1px solid var(--line-on-paper);border-bottom:1px solid var(--line-on-paper);font-size:var(--step-negative);margin:0}.registration-form__photo-preview,.registration-form__photo-placeholder{border:1px solid var(--line-on-paper);background-color:var(--paper-soft);justify-content:center;align-items:center;width:5.5rem;height:5.5rem;display:flex}.registration-form__photo-preview{overflow:hidden}.registration-form__photo-image{object-fit:cover;width:100%;height:100%}.registration-form__photo-svg{color:var(--text-on-paper-dim)}.registration-form__browse,.registration-form__submit{border:1px solid var(--line-control-on-paper);color:var(--text-on-paper);font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background-color:#0000;border-radius:0;justify-self:start;padding:.8em 1.4em}.registration-form__submit{border-color:var(--ink);background-color:var(--ink);color:var(--paper)}.registration-form__browse:hover{border-color:var(--ink)}.registration-form__submit:hover:not(:disabled){color:var(--ink);background-color:#0000}.registration-form__browse:focus-visible,.registration-form__submit:focus-visible,.registration-form__close:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.registration-form__submit:disabled{cursor:default;opacity:.55}.registration-form__success{padding-top:var(--space-xs);border-top:1px solid var(--line-on-paper)}.registration-form__success-message{font-family:var(--font-display);font-size:var(--step-1);margin:0;line-height:1.25}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:var(--space-xs);left:var(--space-xs);z-index:10;background-color:var(--paper);color:var(--ink);font-family:var(--font-meta);font-size:var(--step-negative);letter-spacing:.16em;text-transform:uppercase;transition:transform var(--dur-fast) var(--ease-out);padding:.7em 1.2em;position:absolute;transform:translateY(-160%)}.skip-link:focus-visible{transform:translateY(0)}.js-reveal [data-reveal]{opacity:0;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(22px)}.js-reveal [data-reveal].in-view{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.btn,.masthead__links a,.skip-link{transition:opacity var(--dur-fast) linear, background-color var(--dur-fast) linear, color var(--dur-fast) linear}.js-reveal [data-reveal]{transition:opacity var(--dur-fast) linear!important}}
