@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Barlow:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#111111;--panel:#191919;--ink:#f2f0eb;--muted:#b3b1ae;--accent:#ed4a42;--line:#363636;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'Barlow',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.skip{position:absolute;left:20px;top:-100px;background:var(--ink);color:#111;padding:12px;z-index:10}.skip:focus{top:10px}.header{min-height:108px;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:24px 4.3%;border-bottom:1px solid var(--line)}.brand{display:flex;gap:15px;align-items:center;flex-shrink:0}.brand-mark{font-family:var(--display);font-weight:800;font-size:32px;line-height:1;border:2px solid var(--accent);padding:5px 7px;color:var(--accent)}.brand-mark span{display:block;font:10px var(--body);letter-spacing:2px;text-align:center;margin-top:4px}.brand-name{font:600 18px var(--display);letter-spacing:.6px}.brand-name small{display:block;font:12px var(--body);letter-spacing:2px;margin-top:7px;color:var(--muted)}nav{display:flex;align-items:center;gap:23px}nav a{font-size:14px;font-weight:600}nav a:hover,.text-link:hover,footer a:hover{color:var(--accent)}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--accent);color:#111;border:1px solid var(--accent);font-weight:700;font-size:16px;padding:15px 29px;min-height:52px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#ff6a62;color:#111;transform:translateY(-2px)}.button.compact{padding:10px 18px;font-size:14px;min-height:44px}.menu-toggle{display:none}.hero{min-height:740px;position:relative;display:grid;grid-template-columns:1.15fr 1fr;overflow:hidden;padding:78px 7% 96px}.hero-content{position:relative;z-index:1}.eyebrow{font-size:13px;letter-spacing:2px;font-weight:600;margin:0 0 28px;color:var(--accent)}.hero .eyebrow{display:flex;align-items:center;gap:13px}.eyebrow span{height:1px;width:30px;background:var(--accent)}h1,h2,p{margin-top:0}h1{font-family:var(--display);font-size:clamp(80px,9.4vw,152px);font-weight:700;line-height:.94;letter-spacing:-1.5px;margin-bottom:30px;text-transform:uppercase}h1 .intro{display:block;font-size:.39em;letter-spacing:1px;margin-bottom:10px}h1 .place{display:block;font-size:.69em;margin-top:8px}.period{color:var(--accent)}.hero-description{color:var(--muted);font-size:20px;line-height:1.6}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:34px}.text-link{font-size:16px;font-weight:600;border-bottom:1px solid #767676;padding-bottom:4px}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;border-left:1px solid #ffffff0b; margin:0 0 5px 70px}.character{font-family:'KaiTi','STKaiti','Noto Serif CJK SC',serif;font-size:clamp(150px,17vw,270px);font-weight:900;line-height:1.03;color:#b92924;transform:rotate(-7deg);text-shadow:9px 7px 0 #ef514108;user-select:none}.art-top,.art-bottom{position:absolute;font-size:11px;letter-spacing:2px;color:#888;writing-mode:vertical-rl;right:-16px}.art-top{top:0}.art-bottom{left:0;bottom:0;right:auto;transform:rotate(180deg)}.hero-bottom{position:absolute;bottom:0;left:7%;right:7%;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0;font-size:12px;letter-spacing:1.7px;color:#a4a4a4}.hero-bottom a span{color:var(--accent);margin-left:12px}.section{padding:95px 7%}h2{font-family:var(--display);font-weight:600;font-size:clamp(48px,5.2vw,76px);line-height:1.02;letter-spacing:-.5px}.why{display:grid;grid-template-columns:1fr 1.35fr;gap:9%;border-bottom:1px solid var(--line);background:#171717}.why h2{font-size:clamp(65px,7.4vw,106px)}.why-copy p{max-width:680px;color:var(--muted);margin-bottom:22px}.why-copy .lead{color:var(--ink);font-size:30px;line-height:1.25;margin-bottom:28px}.principles{display:grid;grid-template-columns:1fr 1.35fr;gap:9%}.section-heading>p:last-child{color:var(--muted);max-width:300px}.principle-list{padding-top:15px}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:24px;list-style:none;cursor:pointer;padding:27px 0;font-family:var(--display);font-size:32px;line-height:1.2}summary::-webkit-details-marker{display:none}.number{font-family:var(--body);font-size:13px;color:var(--accent)}.plus{margin-left:auto;position:relative;width:16px;height:16px;flex-shrink:0}.plus:before,.plus:after{content:'';position:absolute;background:var(--accent);height:2px;width:16px;top:7px}.plus:after{transform:rotate(90deg)}details[open] .plus:after{transform:rotate(0)}details p{color:var(--muted);padding:0 32px 12px 42px;font-size:17px}.closing{background:var(--panel);text-align:center;border-top:1px solid var(--line)}.closing h2{font-size:clamp(60px,7vw,100px);margin-bottom:35px}.closing .text-link{display:table;margin:22px auto 0}footer{padding:40px 7%;display:flex;align-items:center;gap:30px;flex-wrap:wrap;font-size:14px;color:var(--muted)}.footer-brand{font-family:var(--display);font-size:20px;font-weight:600;color:var(--ink);line-height:1.2}.footer-brand span{display:block;color:var(--accent)}footer p{margin:0}footer small{margin-left:auto}dialog{background:#1a1a1a;border:1px solid #4d4d4d;color:var(--ink);padding:55px;max-width:550px;width:calc(100% - 32px)}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}dialog h2{font-size:56px;margin-bottom:20px}dialog p{color:var(--muted)}dialog .eyebrow{font-size:12px;color:var(--accent)}.close-dialog{position:absolute;right:15px;top:8px;background:none;border:0;color:var(--ink);font-size:32px;cursor:pointer;width:44px;height:44px}
@media(min-width:1600px){.header,.hero,.section,footer{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}}
@media(max-width:1200px){.header{flex-wrap:wrap;gap:20px}nav{width:100%;justify-content:space-between}.hero{min-height:700px}.hero-art{margin-left:30px}}
@media(max-width:700px){.header{padding:18px 6%;min-height:85px;position:relative}.brand-name{font-size:16px}.brand-mark{font-size:27px}.menu-toggle{display:flex;gap:10px;align-items:center;background:none;color:var(--ink);border:1px solid var(--line);padding:9px 12px;font-size:14px;cursor:pointer}nav{display:none;flex-direction:column;align-items:stretch;gap:0;padding-top:10px}nav.is-open{display:flex}nav a{padding:11px 8px}nav .button{margin-top:12px}.hero{padding:58px 6% 96px;display:block;min-height:690px}.hero .eyebrow{font-size:11px;letter-spacing:1.1px}.hero h1{font-size:clamp(68px,14.7vw,105px)}.hero-description{font-size:18px;max-width:290px}.hero-art{position:absolute;right:8%;top:90px;opacity:.19;margin:0;z-index:0;border:0;pointer-events:none}.character{font-size:180px}.art-top,.art-bottom{display:none}.hero-actions{gap:24px}.hero-bottom{left:6%;right:6%;font-size:10px;letter-spacing:1px}.hero-bottom>span:last-child{display:none}.section{padding:65px 6%}.why,.principles{grid-template-columns:1fr;gap:20px}.why h2 br{display:none}.why h2{font-size:60px}.why-copy .lead{font-size:27px}.section-heading h2{font-size:54px}.section-heading>p:last-child{max-width:none}summary{font-size:28px;gap:16px}details p{padding-left:31px;padding-right:5px}.closing h2{font-size:64px}footer{padding:35px 6%;gap:20px;align-items:flex-start}footer p{display:none}footer small{width:100%;margin:0;order:3}footer>a:last-child{margin-left:auto}dialog{padding:50px 26px 32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.school-logo{width:58px;height:58px;object-fit:contain;border-radius:50%}.hero{grid-template-columns:1fr 1fr;gap:35px;background:#0b0b0b}.hero-art{margin:30px -3vw 25px 0;border:0;align-self:center;display:block}.hero-art img{display:block;width:100%;height:auto}.hero-art figcaption{margin-top:25px;text-align:center;font-size:12px;letter-spacing:3px;color:var(--muted)}.school-photos{padding-top:0;display:grid;grid-template-columns:1.35fr 1fr;gap:28px}.school-photos figure{margin:0}.school-photos img{width:100%;height:310px;object-fit:cover;display:block;filter:saturate(.72)}.school-photos figcaption{padding:18px 0;border-bottom:1px solid var(--line);color:var(--accent);font-size:12px;letter-spacing:1.5px}.school-photos figcaption span{display:block;font-size:16px;letter-spacing:0;color:var(--muted);margin-top:4px}
@media(max-width:700px){.hero{display:block;padding-bottom:95px}.hero-art{position:relative;opacity:1;right:auto;top:auto;margin:42px -2% 15px;pointer-events:auto}.hero-art img{width:100%}.hero-art figcaption{font-size:10px;margin-top:15px}.school-photos{grid-template-columns:1fr}.school-photos img{height:auto}.school-logo{width:48px;height:48px}.brand-name{font-size:14px}.brand-name small{font-size:10px}}
/* Ink-dark paper, restrained movement, and traditional character accents. */
html{scroll-padding-top:calc(var(--header-height,108px) + 24px)}
.header{position:sticky;top:0;z-index:20;background:rgba(15,15,15,.96);backdrop-filter:blur(16px);box-shadow:0 8px 28px #0003}
.skip{position:fixed;z-index:30}
.hero,.section{position:relative;isolation:isolate;overflow:hidden}
.hero:before,.section:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.55;background-image:repeating-linear-gradient(103deg,transparent 0 5px,#f0e7d904 5px 6px,transparent 6px 11px),repeating-linear-gradient(7deg,transparent 0 3px,#ffffff03 3px 4px,transparent 4px 9px);}
.hero:after,.closing:after{content:'';position:absolute;inset:-25%;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 73% 48%,#a5201926,transparent 48%);animation:ink-drift 22s ease-in-out infinite alternate}
.ambient-character{position:absolute;z-index:-1;pointer-events:none;user-select:none;font-family:'KaiTi','STKaiti','Noto Serif CJK TC',serif;font-weight:700;line-height:1.1;color:#d2bfa6;opacity:.045;animation:character-drift 18s ease-in-out infinite alternate}
.hero-character{right:3%;top:10px;font-size:clamp(170px,24vw,340px);writing-mode:vertical-rl;color:var(--accent);opacity:.075}
.why-character{left:3%;bottom:-25px;font-size:clamp(150px,23vw,330px);animation-delay:-7s}
.principles-character{right:2%;bottom:0;font-size:clamp(150px,21vw,300px);animation-delay:-12s}
.promo{position:relative;z-index:1;margin:30px 0 25px;min-width:0;width:100%}
.video-frame{border:1px solid #55413e;padding:7px;background:#080808;box-shadow:0 22px 65px #0007}
.promo video{display:block;width:100%;aspect-ratio:1878/1080;object-fit:contain;background:#080808}
.promo figcaption{display:flex;justify-content:space-between;gap:12px;text-align:left;font-size:11px;letter-spacing:1.7px;margin-top:18px}
.promo figcaption span:last-child{color:var(--accent);white-space:nowrap}
.motion-toggle{background:none;border:1px solid var(--line);padding:8px 12px;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}
.motion-toggle:hover{border-color:var(--accent);color:var(--ink)}
.motion-paused .ambient-character,.motion-paused .hero:after,.motion-paused .closing:after{animation-play-state:paused}
@keyframes ink-drift{from{transform:translate(-2%,-1%)}to{transform:translate(3%,4%)}}
@keyframes character-drift{from{transform:translateY(-8px) rotate(-4deg)}to{transform:translateY(12px) rotate(-2deg)}}
@media(max-width:700px){.header{position:sticky}.header nav{max-height:calc(100dvh - 105px);overflow-y:auto}.promo{margin:42px 0 15px}.promo figcaption{font-size:10px;letter-spacing:1px}.hero-character{right:-20px;top:20px;font-size:210px}.ambient-character{opacity:.035}.why-character{font-size:190px}.principles-character{font-size:210px}.motion-toggle{order:4}}
@media(prefers-reduced-motion:reduce){.ambient-character,.hero:after,.closing:after{animation:none!important}}
.cursor-glow{position:fixed;top:0;left:0;width:340px;height:340px;border-radius:50%;pointer-events:none;z-index:25;opacity:0;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 12%,transparent) 0%,color-mix(in srgb,var(--accent) 5%,transparent) 35%,transparent 70%);transition:opacity .2s ease;will-change:transform}
.cursor-glow.is-visible{opacity:1}
.photos-section>.text-link{display:inline-block;margin-bottom:30px;color:var(--muted)}.photos-section>.eyebrow{margin-bottom:20px}.photos-section>h1{font-size:clamp(58px,7.5vw,106px);text-transform:none;line-height:1.03;margin-bottom:24px}.gallery-intro{color:var(--muted);font-size:20px;margin-bottom:45px}.gallery-feature{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:center;position:relative;z-index:1}.gallery-side{display:grid;gap:24px}.gallery-tile{margin:0;min-width:0}.gallery-open{display:block;position:relative;overflow:hidden;background:#202020;border:0;padding:0;width:100%;cursor:zoom-in;color:var(--ink)}.gallery-open img{display:block;width:100%;height:auto;transition:transform .45s ease}.gallery-open:hover img{transform:scale(1.025)}.photo-expand{position:absolute;right:12px;bottom:12px;background:#111d;border:1px solid #ffffff50;padding:6px 12px;font:500 13px var(--body)}.gallery-tile figcaption{display:flex;gap:14px;align-items:baseline;color:var(--muted);font-size:15px;line-height:1.4;padding:15px 0 8px}.gallery-tile figcaption>span{color:var(--accent);font-size:12px}.gallery-mosaic{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:36px 28px;align-items:center;margin-top:44px}.gallery-mosaic .portrait{grid-column:span 2}.gallery-mosaic .wide{grid-column:span 4}.gallery-mosaic .gallery-tile:nth-child(2){align-self:center}.gallery-mosaic .gallery-tile:nth-child(3){grid-column:span 2}.gallery-mosaic .gallery-tile:nth-child(4){grid-column:span 2}.gallery-mosaic .gallery-tile:nth-child(5){grid-column:span 2}
#photo-viewer{width:min(1200px,95vw);max-width:1200px;max-height:94dvh;padding:16px;background:#101010;border-color:#4a3331;overflow:auto}#photo-viewer::backdrop{background:#000e}.viewer-toolbar,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}.viewer-toolbar p{margin:0;font-size:14px;color:var(--accent)}#photo-viewer button{color:var(--ink);background:#242424;border:1px solid #444;padding:9px 16px;cursor:pointer;min-height:44px;font-size:14px}#photo-viewer button:hover{border-color:var(--accent)}#viewer-image{display:block;width:100%;height:calc(85dvh - 135px);min-height:120px;object-fit:contain;margin:15px 0}.viewer-bottom p{margin:0;text-align:center;color:var(--muted);font-size:15px}
@media(max-width:750px){.gallery-feature{grid-template-columns:1fr}.gallery-side{grid-template-columns:1fr 1fr;gap:18px}.gallery-mosaic{grid-template-columns:1fr 1fr;gap:28px 18px;align-items:start}.gallery-mosaic .gallery-tile.portrait,.gallery-mosaic .gallery-tile.wide{grid-column:span 1}.gallery-mosaic .gallery-tile:nth-child(2){grid-column:span 1}.gallery-mosaic .gallery-tile:last-child{grid-column:1/-1}.gallery-tile figcaption{font-size:14px}.viewer-bottom{gap:8px}.viewer-bottom p{font-size:13px}.photos-section>h1{font-size:clamp(52px,12vw,80px)}}
@media(max-width:420px){.gallery-side,.gallery-mosaic{grid-template-columns:1fr}.gallery-mosaic .gallery-tile{grid-column:1!important}.photo-expand{font-size:12px}}
.history-section>.text-link{display:inline-block;margin-bottom:30px;color:var(--muted)}.history-section>.eyebrow{margin-bottom:20px}.history-section>h1{font-size:clamp(64px,8vw,112px);text-transform:none;margin-bottom:50px}.history-story{display:grid;grid-template-columns:1.25fr .85fr;gap:60px;position:relative;z-index:1}.history-copy h2{font-size:clamp(38px,4vw,56px);margin-bottom:28px}.history-copy>p{color:var(--muted);font-size:18px;line-height:1.9}.history-section figure{margin:0}.training-history img{display:block;width:100%;height:auto;border-top:3px solid var(--accent)}.history-section figcaption{font-size:16px;color:var(--muted);padding:20px 0;border-bottom:1px solid var(--line)}.history-section figcaption span{display:block;font-size:12px;letter-spacing:2px;color:var(--accent);margin-bottom:8px}.seminar-history{margin-top:65px!important}.seminar-history img{display:block;width:100%;height:auto}.history-sources{margin-top:28px}.history-sources summary{font:500 16px var(--body);padding:18px 0}.history-sources summary:after{content:'+';margin-left:auto;color:var(--accent)}.history-sources[open] summary:after{content:'−'}.history-sources div{display:grid;gap:12px;padding:0 0 20px}.history-sources a{font-size:14px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.history-sources a:hover{color:var(--accent)}
@media(max-width:800px){.history-story{grid-template-columns:1fr;gap:35px}.history-section>h1{font-size:clamp(54px,12vw,80px)}.history-copy>p{font-size:17px}.training-history{max-width:520px}.seminar-history{margin-top:40px!important}}
.location-section{min-height:75vh}.location-section>.text-link{display:inline-block;margin-bottom:30px;color:var(--muted)}.location-section>.eyebrow{margin-bottom:20px}.location-section>h1{font-size:clamp(64px,8vw,112px);text-transform:none;margin-bottom:50px}.location-layout{display:grid;grid-template-columns:1fr 1.55fr;border:1px solid var(--line);border-top:2px solid var(--accent);position:relative;z-index:1;background:#191919}.location-details{padding:40px 30px;align-self:center}.location-details h2{font-size:40px;line-height:1.1}.location-details address{font-style:normal;color:var(--muted);font-size:22px;line-height:1.6;margin-bottom:32px}.location-details .eyebrow{font-size:12px}.map-link{display:table;margin-top:22px}.location-map{min-width:0;min-height:520px;background:#252525}.location-map iframe{display:block;width:100%;height:100%;min-height:520px;border:0;color-scheme:normal}
@media(max-width:800px){.location-layout{grid-template-columns:1fr}.location-details{padding:30px 24px}.location-section>h1{font-size:clamp(52px,12vw,80px)}.location-map,.location-map iframe{min-height:380px}.location-map iframe{height:380px}}
.curriculum-section>.text-link{display:inline-block;color:var(--muted);margin-bottom:30px}.curriculum-section>.eyebrow{margin-bottom:20px}.curriculum-section>h1{font-size:clamp(64px,8vw,112px);text-transform:none;margin-bottom:55px}.curriculum-stages{position:relative;z-index:1;border-top:2px solid var(--accent)}.curriculum-stage{display:grid;grid-template-columns:240px minmax(0,1fr);gap:50px;padding:45px 35px;border-bottom:1px solid var(--line);background:#171717ed}.curriculum-stage:nth-child(2){background:#1c1919ed}.grade-label>span{font:600 62px var(--display);line-height:1;color:var(--accent)}.grade-label>p{font-size:16px;color:var(--muted);margin:16px 0 0}.stage-copy h2{font-size:clamp(32px,3.5vw,48px);line-height:1.1;margin-bottom:24px}.stage-copy p{max-width:730px;color:var(--muted);margin-bottom:18px}.stage-copy p:last-child{margin-bottom:0}.stage-copy .stage-subtitle{color:var(--ink);font-size:21px}.progression-note{color:var(--muted);margin:28px 0 0;font-style:italic}
@media(max-width:800px){.curriculum-stage{grid-template-columns:1fr;gap:24px;padding:30px 22px}.grade-label>span{font-size:48px}.grade-label>p{margin-top:10px}.curriculum-section>h1{font-size:clamp(52px,12vw,80px);margin-bottom:35px}}
.schedule-section{min-height:75vh}.schedule-section>.text-link{display:inline-block;margin-bottom:30px;color:var(--muted)}.schedule-section>.eyebrow{margin-bottom:20px}.schedule-section h1{font-size:clamp(60px,7.5vw,108px);text-transform:none;line-height:1.05;margin-bottom:24px}.schedule-context{color:var(--muted)}.class-legend{display:flex;gap:28px;margin:35px 0 18px;font-size:14px}.class-legend span{display:flex;align-items:center;gap:10px}.class-legend span:before{content:'';width:12px;height:12px;background:var(--accent)}.class-legend span:last-child:before{background:#d3b07b}.weekly-calendar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--line);background:#161616;position:relative}.calendar-day{position:relative;min-width:0;border-right:1px solid var(--line);padding:0 12px 18px}.calendar-day:last-child{border-right:0}.calendar-day h2{font:600 25px var(--display);margin:0 -12px 18px;padding:20px 12px;border-bottom:1px solid var(--line);background:#202020}.early-slot,.late-slot{min-height:115px}.class-event{padding:14px 10px;border-left:3px solid var(--accent);background:#ed4a4214;min-height:95px}.class-event strong{display:block;font-size:16px;color:var(--ink);margin-bottom:6px}.class-event span{display:block;font-size:14px;line-height:1.5;color:#d2cecb}.kids-event{border-color:#d3b07b;background:#d3b07b12}.no-classes{position:absolute;top:100px;left:15px;right:15px;font-size:15px;color:var(--muted);text-align:center}.private-note{font-size:20px;font-weight:600;border-left:3px solid var(--accent);padding:14px 20px;margin:30px 0 0;background:#1b1919}
@media(max-width:850px){.weekly-calendar{grid-template-columns:1fr;background:none;border:0;gap:16px}.calendar-day{background:#161616;border:1px solid var(--line)!important;padding:0 16px 16px}.calendar-day h2{margin:0 -16px 16px;padding:14px 16px}.early-slot,.late-slot{min-height:0}.early-slot:empty,.late-slot:empty{display:none}.class-event{min-height:0;margin-top:12px;padding:15px}.class-event span{font-size:16px}.no-classes{position:static;text-align:left;margin:0;padding:4px 0}.schedule-section h1{font-size:clamp(54px,12vw,80px)}.private-note{font-size:18px}}
.instructor-photo:has(img){position:relative}
.instructor-photo img[src*="instructor-"]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.instructor-photo img[src*="instructor-jeff"]{transform:scale(1.75);transform-origin:44% 45%}
.instructor-photo img[src*="instructor-raven"]{object-position:center 28%}
.instructor-photo img[src*="instructor-tad"]{transform:scale(1.12);transform-origin:50% 53%}
.instructor-photo img[src*="instructor-greg"]{transform:scale(1.2);transform-origin:50% 55%}
.header a[aria-current="page"]{color:var(--accent)}
.header a.button[aria-current="page"]{color:#111111}
.instructors-intro{padding-bottom:0}.instructors-intro>.text-link{display:inline-block;margin-bottom:30px;color:var(--muted)}.instructors-intro>h1{font-size:clamp(64px,8vw,112px);margin-bottom:52px;text-transform:none}.instructors-intro>.eyebrow{margin-bottom:20px}
.lead-instructor{display:grid;grid-template-columns:minmax(240px,.8fr) 1.3fr;background:#1b1919;border:1px solid #453330;border-top:3px solid var(--accent);position:relative;z-index:1}.lead-portrait{display:block;width:100%;height:100%;max-height:640px;object-fit:cover;object-position:center 18%}.lead-biography{padding:clamp(28px,4vw,65px);align-self:center}.lead-biography h2{font-size:clamp(38px,4vw,62px);margin-bottom:24px}.lead-biography h2 span{display:block;font:500 19px var(--body);color:var(--muted);margin-bottom:16px}.lead-biography .eyebrow{font-size:12px}.lead-biography p{color:var(--muted);max-width:580px}.lead-biography .technician{display:inline-block;border:1px solid #7a3a35;color:var(--ink);padding:7px 14px;font-weight:600;margin-bottom:24px}.instructor-team{padding-top:75px}.instructor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}.instructor-card{margin:0;min-width:0}.instructor-photo{aspect-ratio:4/5;background:#1b1b1b;border:1px solid var(--line);overflow:hidden;display:flex;align-items:center;justify-content:center}.instructor-photo img{width:100%;height:100%;object-fit:contain;display:block}.not-pictured{background:linear-gradient(135deg,#211b1b,#151515);color:var(--muted)}.not-pictured span{border-top:1px solid #733b36;border-bottom:1px solid #733b36;padding:14px 25px;font-size:16px}.instructor-card h3{font:600 30px var(--display);margin:0;padding:20px 0 16px;border-bottom:1px solid var(--line)}
@media(max-width:900px){.instructor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-biography{padding:28px}.lead-biography .eyebrow{letter-spacing:1px}}
@media(max-width:600px){.lead-instructor{grid-template-columns:1fr}.lead-portrait{height:auto;max-height:none}.instructor-grid{grid-template-columns:1fr;gap:30px}.instructors-intro>h1{font-size:64px}.lead-biography h2{font-size:42px}.instructor-team{padding-top:55px}.instructor-card h3{font-size:30px}}
.motion-paused .cursor-glow{opacity:0}
@media(hover:none),(prefers-reduced-motion:reduce){.cursor-glow{display:none}}

/* School news and shared communications */
.news-section>.text-link{display:inline-block;margin-bottom:30px;color:var(--muted)}.news-section>.eyebrow{margin-bottom:20px}.news-section>h1{font-size:clamp(60px,8vw,112px);text-transform:none;margin-bottom:55px}.news-entry{display:grid;grid-template-columns:1.2fr .8fr;gap:7%;padding:40px 0;border-top:1px solid var(--line);position:relative;z-index:1}.news-copy h2{font-size:clamp(44px,5vw,70px)}.news-copy p{color:var(--muted)}.news-copy .eyebrow{color:var(--accent)}.news-copy .news-lead{font-size:26px;line-height:1.35;color:var(--ink)}.news-copy .news-note{font-size:14px;border-left:2px solid var(--accent);padding-left:18px;margin:30px 0}.news-image{margin:0;max-width:460px}.news-image img{display:block;width:100%;height:auto}.news-image figcaption{font-size:13px;color:var(--muted);margin-top:12px}.footer-contact{width:100%;display:grid;grid-template-columns:1fr 2fr;gap:35px;padding:15px 0 40px;border-bottom:1px solid var(--line)}.footer-contact h2{font-size:40px;margin:12px 0 0}.contact-links{display:flex;flex-wrap:wrap;gap:25px 40px;align-items:center}.contact-links a{font-size:15px;overflow-wrap:anywhere}.contact-links span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.footer-contact .eyebrow{font-size:11px}.footer-contact h2{color:var(--ink)}@media(max-width:800px){.news-entry{grid-template-columns:1fr;gap:35px}.news-section>h1{font-size:clamp(52px,11vw,80px)}.news-image{max-width:420px}.footer-contact{grid-template-columns:1fr;gap:25px}.contact-links{flex-direction:column;align-items:flex-start;gap:20px}}

/* Trial registration */
.registration-section>.text-link{display:inline-block;margin-bottom:30px;color:var(--muted)}.registration-section>h1{font-size:clamp(60px,8vw,112px);text-transform:none;margin-bottom:50px}.registration-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;position:relative;z-index:1}.registration-intro h2{font-size:clamp(48px,5vw,72px)}.registration-intro p{color:var(--muted);max-width:390px}.registration-form{padding:35px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--accent);min-width:0}.registration-form>label,.form-row>label{display:block;font-weight:600;margin-bottom:22px}.registration-form label span,.registration-form legend span{font-size:13px;font-weight:400;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.registration-form input:not([type=radio]),.registration-form textarea{display:block;width:100%;background:#111;border:1px solid #666;color:var(--ink);font:inherit;padding:11px 12px;margin-top:8px;border-radius:2px}.registration-form textarea{resize:vertical}.registration-form input:focus-visible,.registration-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.registration-form fieldset{margin:0 0 22px;padding:0;border:0}.registration-form legend{font-weight:600;margin-bottom:12px}.class-options{display:flex;flex-wrap:wrap;gap:15px 30px}.class-options label{display:flex;align-items:center;gap:10px;cursor:pointer;min-height:44px}.class-options input{width:20px;height:20px;accent-color:var(--accent)}.trial-note{border-left:3px solid var(--accent);padding-left:18px;color:var(--muted);margin-top:30px}.trial-note strong{display:block;color:var(--ink)}.registration-form .form-privacy,.registration-help{font-size:13px;color:var(--muted)}.registration-help{margin:20px 0 0}.registration-help a{text-decoration:underline;overflow-wrap:anywhere}@media(max-width:800px){.registration-layout{grid-template-columns:1fr;gap:35px}.registration-section>h1{font-size:clamp(52px,11vw,80px)}.registration-intro h2 br{display:none}.registration-intro p{max-width:none}.registration-form{padding:24px}}@media(max-width:480px){.form-row{grid-template-columns:1fr;gap:0}.registration-form{padding:20px}.registration-form .button{width:100%}}
