:root{--ink:#111211;--paper:#f4f2ec;--blue:#3f51d8;--lime:var(--blue);--red:#e43b2c;--line:#1112112e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}.site-header{background:var(--paper);border-bottom:1px solid var(--line);z-index:10;height:86px;position:relative}.nav-wrap{justify-content:space-between;align-items:center;max-width:1280px;height:100%;margin:auto;padding:0 32px;display:flex}.brand{letter-spacing:-.5px;text-transform:uppercase;align-items:center;gap:11px;font-size:13px;font-weight:800;line-height:1;display:flex}.brand img{object-fit:contain;width:48px;height:48px}.brand small{letter-spacing:.08em;margin-top:5px;font-family:DM Mono,monospace;font-size:8px;display:block}nav{text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:30px;font-family:DM Mono,monospace;font-size:11px;display:flex}nav a:hover,.text-link:hover{color:var(--red)}.menu-button{display:none}.hero{color:#fff;align-items:flex-end;height:720px;min-height:calc(100svh - 86px);max-height:820px;display:flex;position:relative;overflow:hidden}.hero>img{object-fit:cover;object-position:center 46%;filter:grayscale()}.hero-shade{background:linear-gradient(90deg,#000000bd,#0000001f 72%),linear-gradient(#0000 45%,#00000061);position:absolute;inset:0}.hero-content{z-index:2;width:100%;max-width:1280px;margin:0 auto;padding:0 32px 88px;position:relative}.eyebrow{color:var(--red);text-transform:uppercase;letter-spacing:.11em;margin:0 0 16px;font:500 11px DM Mono,monospace}.hero .eyebrow{color:var(--red)}h1,h2{letter-spacing:-.065em;margin:0;font-weight:800;line-height:.95}h1{font-size:clamp(56px,7.3vw,108px)}h2{font-size:clamp(38px,4.2vw,61px)}em{font-family:Playfair Display,Georgia,serif;font-weight:600}.hero-copy{max-width:370px;margin:28px 0;font-size:16px;line-height:1.6}.button{background:var(--blue);color:#fff;text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:22px;padding:15px 20px;font:500 11px DM Mono,monospace;transition:transform .2s;display:inline-flex}.button:hover{transform:translateY(-3px)}.button span,.text-link span{font-size:20px;line-height:10px}.button.dark{background:var(--ink);color:#fff}.hero-side{z-index:2;letter-spacing:.08em;text-transform:uppercase;text-align:right;margin:0;font:500 10px/1.5 DM Mono,monospace;position:absolute;bottom:34px;right:32px}.section{max-width:1170px;margin:0 auto;padding:120px 32px}.intro{grid-template-columns:43% 1fr;align-items:center;gap:10.5%;display:grid}.intro-photo,.about-image,.instructor-image,.schedule-image{position:relative;overflow:hidden}.intro-photo{height:430px}.intro-photo img,.about-image img,.instructor-image img,.schedule-image img,.gallery img{object-fit:cover}.intro>div:last-child{max-width:470px}.intro p:not(.eyebrow),.about-copy p,.instructor-feature p:not(.eyebrow),.schedule-lead{font-size:16px;line-height:1.8}.text-link{color:var(--red);text-transform:uppercase;align-items:center;gap:11px;margin-top:22px;font:500 12px DM Mono,monospace;display:inline-flex}.values{background:var(--ink);color:var(--paper);justify-content:space-between;gap:12%;padding:100px max(32px,50% - 553px);display:flex}.values .eyebrow{color:var(--lime)}.value-list{min-width:400px;padding-top:12px}.value-list span{color:var(--lime);border-top:1px solid #ffffff38;gap:28px;padding:19px 0;font:11px DM Mono,monospace;display:flex}.value-list b{color:var(--paper);font:600 16px Manrope,sans-serif}.page-title{max-width:1170px;margin:auto;padding:110px 32px 78px}.about-grid,.instructor-feature,.schedule{grid-template-columns:46% 1fr;align-items:center;gap:9%;padding-top:24px;display:grid}.about-image{height:600px}.about-copy p:first-child{margin-top:0}.about-copy p+p{margin-top:24px}.instructor-image,.schedule-image{height:510px}.instructor-feature>div:last-child{max-width:480px}.schedule{grid-template-columns:1fr 46%}.schedule>div:first-child{max-width:470px}.schedule-lead{margin:0 0 30px;font-size:22px;line-height:1.55}.gallery-title{padding-bottom:62px}.gallery{grid-template-columns:repeat(3,1fr);gap:12px;max-width:1320px;margin:0 auto;padding:0 24px 90px;display:grid}.gallery figure{background:#ddd;height:300px;margin:0;position:relative;overflow:hidden}.gallery figure:first-child,.gallery figure:nth-child(4){grid-row:span 2;height:612px}footer{border-top:1px solid var(--line)}.footer-wrap{text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;max-width:1280px;margin:auto;padding:29px 32px;font:10px DM Mono,monospace;display:flex}footer a{color:var(--red)}@media (max-width:760px){.site-header{height:72px}.nav-wrap{padding:0 20px}.brand img{width:42px;height:42px}.brand{font-size:11px}.menu-button{background:0 0;border:0;flex-direction:column;justify-content:center;gap:6px;width:34px;height:30px;padding:5px 0;display:flex}.menu-button i{background:var(--ink);width:25px;height:1px;display:block}nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:22px;padding:22px 20px 28px;display:none;position:absolute;top:72px;left:0;right:0}nav.open{display:flex}.hero{height:calc(100svh - 72px);min-height:560px}.hero-content{padding:0 20px 55px}.hero-side{display:none}.section{padding:72px 20px}.intro,.about-grid,.instructor-feature,.schedule{flex-direction:column;align-items:stretch;gap:38px;display:flex}.intro-photo{height:360px}.values{padding:70px 20px;display:block}.value-list{min-width:0;margin-top:45px}.page-title{padding:76px 20px 52px}.about-grid{padding-top:10px}.about-image,.instructor-image,.schedule-image{height:390px}.schedule{flex-direction:column-reverse}.gallery{grid-template-columns:1fr 1fr;gap:8px;padding:0 10px 60px}.gallery figure{height:190px}.gallery figure:first-child,.gallery figure:nth-child(4){height:388px}.footer-wrap{gap:10px;padding:25px 20px;display:grid}.footer-wrap span:nth-child(2){display:none}.hero h1{font-size:clamp(32px,10.5vw,54px);line-height:1.05}.hero h1 em{white-space:nowrap}}.gallery-status{grid-column:1/-1;padding:30px 10px;line-height:1.7}.header-actions{align-items:center;gap:16px;display:flex}.instagram-link{flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.instagram-link:hover{color:var(--red)}.instagram-link:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:6px}@media (min-width:761px) and (max-width:960px){.header-actions nav{gap:16px}}@media (max-width:760px){.header-actions{gap:8px}}.academy-address{text-transform:none;letter-spacing:normal;font:400 16px/1.7 Manrope,Arial,sans-serif}.academy-address a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px}.academy-address a:hover{color:var(--red)}.academy-contact{text-transform:none;letter-spacing:normal;min-width:0;margin:0;padding:0;font:400 16px/1.7 Manrope,Arial,sans-serif;list-style:none}.academy-contact a{overflow-wrap:anywhere;color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;padding:8px 0;display:inline-block}.academy-contact a:hover{color:var(--red)}.footer-wrap{flex-wrap:wrap;align-items:center;gap:24px}.footer-wrap .academy-address,.footer-wrap .academy-contact{font:inherit;text-transform:inherit;letter-spacing:inherit;line-height:1.7}@media (max-width:760px){.footer-wrap{grid-template-columns:minmax(0,1fr)}}.schedule-location{border-top:1px solid var(--line);margin-top:36px;padding-top:28px}.schedule-location h2{letter-spacing:-.03em;margin-bottom:14px;font-size:24px;line-height:1.3}.schedule-section{max-width:1280px;padding-top:0}.schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px 24px;margin-bottom:24px;display:flex}.schedule-toolbar p{margin:0;line-height:1.7}.schedule-fallback{font-size:14px}.schedule-fallback a{text-underline-offset:4px;padding-block:6px;text-decoration:underline;display:inline-block}.schedule-fallback a:hover{color:var(--red)}.schedule-fallback a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.schedule-embed{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;height:850px;display:block}.schedule-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;display:grid}@media (max-width:760px){.schedule-section{padding-top:0;padding-inline:12px}.schedule-toolbar,.schedule-details{margin-inline:8px}.schedule-embed{height:1100px}.schedule-details{grid-template-columns:minmax(0,1fr);gap:0}}.instructor-list{padding-top:0}.instructor-profile{border-top:1px solid var(--line);grid-template-columns:minmax(0,36%) minmax(0,1fr);align-items:start;gap:clamp(32px,6vw,80px);padding-top:40px;display:grid}.instructor-profile+.instructor-profile{margin-top:80px}.instructor-portrait{aspect-ratio:3/4;background:#e7e4dc;position:relative;overflow:hidden}.instructor-portrait img{object-fit:cover}.instructor-bio{min-width:0}.instructor-bio h2{letter-spacing:-.045em;margin-bottom:24px;font-size:clamp(32px,3.5vw,48px);line-height:1.1}.instructor-bio p:not(.eyebrow){margin:0;font-size:16px;line-height:1.85}.instructor-bio p:not(.eyebrow)+p{margin-top:20px}.instructor-placeholder{color:#595a54;flex-direction:column;justify-content:center;align-items:center;gap:20px;height:100%;display:flex}.instructor-placeholder span{font-family:Playfair Display,Georgia,serif;font-size:clamp(64px,8vw,100px)}.instructor-placeholder p{text-transform:uppercase;letter-spacing:.1em;margin:0;font:11px DM Mono,monospace}@media (max-width:760px){.instructor-list{padding-top:0}.instructor-profile{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:28px}.instructor-profile+.instructor-profile{margin-top:56px}.instructor-portrait{width:100%;max-width:440px;margin-inline:auto}.instructor-portrait:has(.instructor-placeholder){aspect-ratio:4/3}}.announcements{padding-top:72px;padding-bottom:72px}.announcements h2{overflow-wrap:anywhere;font-size:clamp(34px,5vw,61px)}.announcement-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:36px;display:grid}.announcement-list article{border-top:1px solid var(--line);min-width:0;padding-top:22px}.announcement-list time{color:var(--red);font:11px DM Mono,monospace}.announcement-list h3{overflow-wrap:anywhere;margin:15px 0 12px;font-size:22px;line-height:1.3}.announcement-list p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.8}@media (max-width:760px){.announcement-list{grid-template-columns:1fr;gap:24px}}
