:root{--font-display: "Fraunces", "Playfair Display", Georgia, serif;--font-body: "Inter", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--text-xs: clamp(.75rem, .7rem + .2vw, .85rem);--text-sm: clamp(.875rem, .82rem + .25vw, 1rem);--text-base: clamp(1rem, .94rem + .3vw, 1.125rem);--text-lg: clamp(1.15rem, 1.05rem + .5vw, 1.35rem);--text-xl: clamp(1.5rem, 1.3rem + .8vw, 1.85rem);--text-2xl: clamp(2rem, 1.6rem + 1.5vw, 2.75rem);--text-3xl: clamp(2.5rem, 1.9rem + 2.4vw, 4rem);--text-hero: clamp(3rem, 2rem + 5vw, 6.5rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--space-24: 6rem;--space-section: clamp(4rem, 3rem + 5vw, 8rem);--radius-sm: .375rem;--radius-md: .75rem;--radius-lg: 1.25rem;--radius-xl: 2rem;--radius-pill: 999px;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .6s;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-smooth: cubic-bezier(.4, 0, .2, 1);--shadow-sm: 0 1px 2px rgb(0 0 0 / .06);--shadow-md: 0 6px 20px -4px rgb(0 0 0 / .12);--shadow-lg: 0 20px 40px -12px rgb(0 0 0 / .18);--container: min(1200px, 92vw);--container-narrow: min(760px, 92vw);--ink: oklch(18% .01 240);--ink-dim: oklch(38% .01 240);--ink-mute: oklch(58% .01 240);--paper: oklch(99% 0 0);--paper-dim: oklch(96% .005 240);--line: oklch(90% .005 240)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.05;margin:0;letter-spacing:-.02em}h1{font-weight:500}p{margin:0}img,svg{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.container{width:var(--container);margin-inline:auto}.container-narrow{width:var(--container-narrow);margin-inline:auto}.section{padding-block:var(--space-section)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.2em;text-transform:uppercase;color:var(--brand-accent)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:.9rem 1.6rem;border-radius:var(--radius-pill);font-weight:600;font-size:var(--text-sm);transition:transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-expo),background var(--duration-fast) var(--ease-out-expo);border:1px solid transparent}.btn-primary{background:var(--brand-primary);color:var(--brand-primary-ink, var(--paper));box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--ink);background:var(--paper-dim)}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root{--font-display: "Cormorant Garamond", "Playfair Display", Georgia, serif;--brand-primary: oklch(28% .09 260);--brand-primary-ink: oklch(97% 0 0);--brand-accent: oklch(75% .14 85);--brand-cream: oklch(96% .02 85);--paper: oklch(98% .005 85);--ink: oklch(20% .03 260)}.site-header{position:sticky;top:0;z-index:30;background:color-mix(in oklab,var(--paper) 92%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{display:flex;justify-content:space-between;align-items:center;padding-block:1rem}.brand{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--font-display);font-size:1.35rem;font-weight:500}.brand-crest{color:var(--brand-accent);font-size:1.4rem}.brand-name em{font-style:italic;font-weight:400}.site-nav{display:flex;gap:1.75rem;align-items:center}.site-nav a:not(.btn){font-size:var(--text-sm);font-weight:500;letter-spacing:.02em}.site-nav a:not(.btn):hover{color:var(--brand-primary)}@media(max-width:720px){.site-nav a:not(.btn){display:none}}.hero{padding-block:clamp(3rem,6vw,6rem) clamp(3rem,6vw,5rem);background:linear-gradient(180deg,var(--brand-cream),var(--paper));position:relative}.hero-inner{display:grid;grid-template-columns:1.15fr 1fr;gap:var(--space-12);align-items:center}.hero-eyebrow{font-family:Inter,sans-serif;font-size:var(--text-xs);letter-spacing:.3em;text-transform:uppercase;color:var(--brand-primary);font-weight:600}.hero-title{font-size:clamp(3rem,2rem + 5vw,6rem);font-weight:500;max-width:12ch;line-height:1.05;margin-top:var(--space-4)}.hero-title em{color:var(--brand-accent);font-weight:400}.hero-lede{font-size:var(--text-lg);max-width:44ch;margin-top:var(--space-6);color:var(--ink-dim)}.hero-cta{display:flex;gap:.75rem;margin-top:var(--space-6);flex-wrap:wrap}.hero-visual{aspect-ratio:4/5;background:linear-gradient(135deg,var(--brand-primary),oklch(45% .14 260));border-radius:var(--radius-lg);position:relative;overflow:hidden;box-shadow:var(--shadow-lg)}.hero-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom}.hero-visual:after{content:"EST · 2024";position:absolute;bottom:1.5rem;left:1.5rem;font-family:Inter,monospace;font-size:var(--text-xs);letter-spacing:.3em;color:var(--brand-accent);font-weight:500;background:color-mix(in oklab,var(--ink) 60%,transparent);padding:.4rem .8rem;border-radius:var(--radius-pill);backdrop-filter:blur(8px);z-index:2}@media(max-width:800px){.hero-inner{grid-template-columns:1fr}.hero-visual{max-width:320px;margin-inline:auto}}.values{padding-block:var(--space-section)}.values-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.value{padding:var(--space-8);border-right:1px solid var(--line)}.value:last-child{border-right:none}.value-num{font-family:var(--font-display);font-style:italic;font-size:var(--text-3xl);color:var(--brand-accent)}.value-title{font-size:var(--text-xl);margin-block:var(--space-3)}.value-body{color:var(--ink-dim);font-size:var(--text-sm)}@media(max-width:800px){.values-inner{grid-template-columns:1fr}.value{border-right:none;border-bottom:1px solid var(--line)}}.programs{padding-block:var(--space-section);background:var(--brand-cream)}.programs-head{text-align:center;margin-bottom:var(--space-12)}.programs-title{font-size:var(--text-3xl);font-weight:500;margin-top:var(--space-3)}.programs-title em{color:var(--brand-accent);font-style:italic}.programs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.program{background:var(--paper);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--line);transition:transform var(--duration-normal) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-expo)}.program:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.program-cover{aspect-ratio:4/3;background:linear-gradient(135deg,var(--brand-primary),oklch(45% .14 260));position:relative;overflow:hidden}.program-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.program-cover span{position:absolute;bottom:1rem;right:1rem;font-family:Inter,monospace;color:var(--brand-accent);font-size:var(--text-xs);letter-spacing:.2em;background:color-mix(in oklab,var(--ink) 70%,transparent);padding:.35rem .7rem;border-radius:var(--radius-pill);backdrop-filter:blur(6px);font-weight:600;z-index:2}.program-body{padding:var(--space-6)}.program-tag{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.2em;color:var(--brand-primary);text-transform:uppercase}.program-title{font-size:var(--text-xl);margin-block:var(--space-2)}.program-body p{color:var(--ink-dim);font-size:var(--text-sm)}@media(max-width:800px){.programs-grid{grid-template-columns:1fr}}.faculty{padding-block:var(--space-section)}.faculty-head{display:flex;justify-content:space-between;align-items:end;gap:var(--space-8);margin-bottom:var(--space-12);flex-wrap:wrap}.faculty-title{font-size:var(--text-3xl);max-width:20ch}.faculty-title em{color:var(--brand-accent);font-style:italic}.faculty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}.teacher-avatar{aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,var(--brand-cream),oklch(88% .05 85));margin-bottom:var(--space-3);overflow:hidden;border:2px solid var(--brand-accent);position:relative}.teacher-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}.teacher-name{font-family:var(--font-display);font-size:var(--text-lg)}.teacher-role{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--brand-primary);letter-spacing:.15em;text-transform:uppercase;margin-top:var(--space-1)}@media(max-width:800px){.faculty-grid{grid-template-columns:repeat(2,1fr)}}.cta-band{background:var(--brand-primary);color:var(--paper);padding-block:var(--space-section)}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:var(--space-8);flex-wrap:wrap}.cta-title{font-size:var(--text-3xl);font-weight:500;max-width:22ch}.cta-title em{color:var(--brand-accent);font-style:italic}.site-footer{background:var(--ink);color:#ccced1;padding-block:var(--space-16) var(--space-8)}.footer-inner{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-12)}.footer-brand .brand{color:var(--paper)}.footer-tag{color:#9d9ea2;margin-top:var(--space-3);font-size:var(--text-sm);max-width:30ch}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8)}.footer-links h4{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.2em;color:var(--brand-accent);margin-bottom:var(--space-3)}.footer-links a{display:block;margin-block:.4rem;font-size:var(--text-sm)}.footer-links a:hover{color:var(--brand-accent)}.footer-bottom{display:flex;justify-content:space-between;margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid oklch(30% .03 260);font-size:var(--text-xs);font-family:var(--font-mono);color:#7e8083;letter-spacing:.1em;text-transform:uppercase}@media(max-width:720px){.footer-inner{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr 1fr}}
