:root{--ink:#171717;--muted:#616161;--gold:#c2a46a;--line:#dededb;--paper:#f6f6f4}html{scroll-behavior:smooth;overflow-x:clip;scroll-padding-top:90px}body{font-size:15px;line-height:1.8;color:var(--muted)}a{color:inherit}a,.btn,button,img{transition:color .2s,background-color .2s,border-color .2s,opacity .2s,transform .35s}a:hover{color:#786035}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a27d35;outline-offset:5px}h1,h2,h3{color:var(--ink);text-wrap:balance}.font-alt{font-family:'Roboto Condensed',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:3px}.container{max-width:1240px;width:calc(100% - 100px);padding:0}.module{padding:100px 0;scroll-margin-top:74px}.module-title{font-size:32px;letter-spacing:5px;line-height:1.4;margin:0 0 23px}.section-heading{text-align:center;max-width:710px;margin:0 auto 55px}.section-heading p{font-size:16px;line-height:1.9;margin:0}.eyebrow{font-size:12px;letter-spacing:4px;margin-bottom:22px}.btn{border-radius:0;padding:15px 26px;font-size:12px;letter-spacing:2px;font-family:'Roboto Condensed',sans-serif;line-height:1.5;white-space:normal;min-height:48px}.btn span{margin-left:24px}.btn-border-w{color:white;border:1px solid #ffffffa8;background:transparent}.btn-border-w:hover{background:white;color:#111}.btn-border-d{border:1px solid #888;background:transparent;color:#222}.btn-border-d:hover,.btn-dark{background:#191919;color:#fff;border-color:#191919}.btn-dark:hover{background:#414141;color:white}.btn-gold{background:var(--gold);color:#171717;border:1px solid var(--gold)}.btn-gold:hover{background:#dac08d;color:#111}.text-link{display:inline-block;padding:8px 0;border-bottom:1px solid #aaa;font-size:13px}.skip-link{position:fixed;top:-100px;left:16px;z-index:999;background:white;color:#111;padding:12px}.skip-link:focus{top:10px}.site-header{height:78px;background:#111;position:sticky;top:0;z-index:100;border-bottom:1px solid #ffffff1c;color:white}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:25px}.brand{display:flex;align-items:center;gap:11px;font:700 25px 'Roboto Condensed',sans-serif;letter-spacing:3px;color:#fff;flex-shrink:0}.brand:hover{color:var(--gold)}.brand img{width:40px;height:40px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:27px}.site-header nav a{font:400 11px 'Roboto Condensed',sans-serif;text-transform:uppercase;letter-spacing:1.5px;padding:14px 0;color:#e5e5e5}.site-header nav a:hover{color:var(--gold)}.site-header .nav-cta{padding:12px 17px;border:1px solid #a5a5a5}.site-header .nav-account{color:#b9b9b9}.menu-toggle{display:none}.hero{position:relative;min-height:620px;height:calc(100svh - 78px);max-height:900px;display:grid;place-items:center;background:#202020;text-align:center}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{object-position:center 47%}.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.56),rgba(0,0,0,.24) 60%,rgba(0,0,0,.28))}.hero-content{position:relative;color:white;padding:55px 0}.hero h1{color:white;font-size:clamp(56px,6.5vw,94px);letter-spacing:13px;line-height:1.17;margin:22px 0 23px;font-weight:400}.hero-subtitle{font-size:19px;letter-spacing:1px;margin-bottom:36px}.hero .eyebrow{color:#eee}.intro{text-align:center}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:75px;max-width:960px;margin:0 auto 30px}.principles h3{font-size:17px;letter-spacing:3px;margin:18px 0 15px}.principles p{font-size:14px}.principle-line{display:block;width:27px;height:2px;background:var(--gold);margin:0 auto}.disciplines{background:var(--paper)}.discipline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 28px}.work-image{overflow:hidden;background:#ddd}.work-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;filter:saturate(.65)}.discipline a:hover img{transform:scale(1.035);filter:saturate(1)}.discipline-caption{display:flex;justify-content:space-between;align-items:center;padding:20px 0 0;gap:16px}.discipline h3{font-size:18px;margin:0 0 7px;letter-spacing:2px}.discipline p{font-size:13px;margin:0}.discipline-caption>span{font-size:24px;color:#555}.start-section{display:grid;grid-template-columns:1fr 1fr;scroll-margin-top:78px;background:#181818;color:#ccc}.start-photo{min-width:0}.start-photo img{width:100%;height:100%;object-fit:cover}.start-copy{padding:70px clamp(35px,5vw,85px)}.start-copy .eyebrow{color:var(--gold)}.start-copy h2{font-size:36px;line-height:1.45;letter-spacing:4px;color:white;margin:0 0 26px}.start-copy>p{font-size:14px;max-width:540px}.start-facts{margin:27px 0}.start-facts div{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #ffffff26;padding:12px 0;font-size:13px}.start-facts dt{font-weight:400}.start-facts dd{color:white;text-align:right;font-weight:600}.start-copy .small-print{font-size:12px;color:#c3c3c3;margin-bottom:25px}.start-copy .booking-note{font-size:11px;color:#bbb;margin-top:16px;max-width:410px}.day-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-bottom:35px}.day-filters button{border:0;background:none;padding:11px 17px;color:#555;font:14px 'Roboto Condensed',sans-serif;letter-spacing:1px;min-height:44px}.day-filters button[aria-pressed=true]{background:#202020;color:white}.day-filters button:hover{background:#ececea;color:#111}.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 40px}.day h3{font-size:17px;padding-bottom:18px;margin:5px 0 0;border-bottom:2px solid var(--ink)}.class-row{display:grid;grid-template-columns:100px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #ededeb;font-size:12px}.class-row time{font-variant-numeric:tabular-nums;color:#6c6c6c}.class-row span{color:#242424}.day[hidden]{display:none}.schedule-status:empty{display:none}.schedule-status,.schedule-note{font-size:12px;margin-top:27px;color:#666}.schedule-grid.filtered{grid-template-columns:1fr;max-width:600px;margin:auto}.pricing{background:var(--paper)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.price-table{border:1px solid #d2d2cf;background:white;padding:37px 25px;margin:0;display:flex;align-items:center;flex-direction:column}.price-table h3{font-size:16px;margin:0 0 22px;letter-spacing:2px}.price-table .price{color:#666;font-size:12px;margin:0 0 19px}.price strong{font:400 53px 'Roboto Condensed',sans-serif;color:#171717}.price strong span{font-size:26px}.price-table>p:not(.price){font-size:13px;max-width:250px;min-height:48px;margin-bottom:26px}.price-table .btn{margin-top:auto;font-size:11px}.other-plans{margin-top:32px;border-bottom:1px solid #ccc}.other-plans summary{padding:15px 0;display:flex;justify-content:space-between;color:#222;font-size:14px}.other-plans summary span{font-size:22px}.more-plans{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:25px 0 10px}.more-plans strong{display:block;color:#222}.more-plans p,.other-plans>p{font-size:13px}.education-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.education h2{font-size:36px;line-height:1.5;letter-spacing:4px;margin:0 0 25px}.education p{max-width:455px;margin-bottom:28px}.education img{width:100%;aspect-ratio:4/3;object-fit:cover}.faq{padding-top:0}.faq-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:60px}.faq h2{font-size:25px;letter-spacing:3px;text-align:left}.faq details{border-bottom:1px solid var(--line)}summary{cursor:pointer;min-height:48px}summary:hover{color:#786035}.faq summary{padding:17px 0;font-size:15px;color:#222}.faq details p{font-size:14px;padding-bottom:15px}.contact-section{background:var(--paper)}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;text-align:center}.contact-grid h3{font-size:15px;margin:0 0 22px}.contact-grid address{font-style:normal;font-size:14px}.contact-grid>div>a{display:block;font-size:13px;width:fit-content;margin:0 auto 13px;overflow-wrap:anywhere}.contact-grid .phone{font-size:24px;color:#222;font-family:'Roboto Condensed',sans-serif;letter-spacing:2px}.contact-grid .btn{margin-top:24px;padding:12px 20px;font-size:11px}.footer{padding:40px 0 25px;background:#151515;color:#bdbdbd;font-size:11px}.footer-top{display:flex;align-items:center;gap:25px;padding-bottom:28px;border-bottom:1px solid #ffffff21}.footer-top p{margin:0 auto 0 5px}.footer-top .brand{font-size:22px}.footer-bottom{display:flex;gap:23px;padding-top:25px;flex-wrap:wrap}.footer a:hover{color:white}.back-top{margin-left:auto}.detail-hero{height:460px;position:relative;display:grid;align-items:center;color:white;text-align:center}.detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.detail-hero>.container{position:relative}.detail-hero h1{font-size:60px;color:white;letter-spacing:7px;margin:16px 0 22px}.detail-content{max-width:930px}.detail-content h2{font-size:33px;line-height:1.5;margin:30px 0 22px}.detail-content .lead{font-size:18px;line-height:1.9}.detail-facts{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;margin:40px 0}.detail-facts h3,.programs h3{font-size:17px}.secondary-link{margin-left:22px}.programs{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:40px 0}.programs p{font-size:14px}
.container::before,.container::after{display:none}.price-table p.price{font-family:'Open Sans',sans-serif;font-size:13px;line-height:1.6;margin:0 0 22px;color:#666}.price-table .price strong{display:inline-block}.price-table p.price strong span{font-size:26px;padding-top:0;vertical-align:baseline}.price-table{border-radius:0;transition:border-color .2s}
@media(min-width:1600px){.container{max-width:1340px}}
@media(max-width:1150px){.container{width:calc(100% - 64px)}.site-header nav{gap:17px}.site-header nav a{letter-spacing:1px;font-size:10px}.site-header .nav-account{display:none}.start-copy{padding:45px 35px}.education-grid{gap:40px}.hero h1{letter-spacing:10px}}
@media(max-width:800px){.container{width:calc(100% - 40px)}.site-header{height:68px}.brand{font-size:22px}.brand img{width:35px;height:35px}.menu-toggle{display:block;background:transparent;color:white;border:1px solid #777;padding:10px 14px;font:12px 'Roboto Condensed',sans-serif;letter-spacing:1px;min-height:44px}.menu-toggle span{margin-left:12px}.site-header nav{display:none;position:absolute;top:68px;left:0;right:0;background:#151515;padding:16px 24px 24px;border-top:1px solid #555;max-height:calc(100dvh - 68px);overflow:auto}.site-header nav.open{display:flex;flex-direction:column;gap:0;align-items:stretch}.site-header nav a{font-size:13px;padding:15px 0}.site-header .nav-account{display:block}.site-header .nav-cta{text-align:center;margin-top:10px;padding:14px}.hero{height:calc(88svh - 68px);min-height:530px}.hero h1{font-size:60px;letter-spacing:7px}.hero-image{object-position:46% center}.hero-subtitle{font-size:17px}.module{padding:70px 0}.module-title{font-size:27px;letter-spacing:3px}.section-heading{margin-bottom:38px}.principles{gap:30px}.discipline-grid{grid-template-columns:repeat(2,1fr);gap:30px 20px}.start-section{grid-template-columns:1fr}.start-photo{height:340px}.start-copy{padding:45px 32px}.start-copy>p{max-width:none}.start-facts{max-width:600px}.start-copy .booking-note{max-width:500px}.schedule-grid{grid-template-columns:repeat(2,1fr);gap:25px}.price-grid{gap:12px}.price-table{padding:30px 13px}.price-table h3{font-size:14px;letter-spacing:1px}.price-table .btn{padding:12px 10px}.more-plans{grid-template-columns:1fr 1fr}.education-grid{gap:30px}.education h2{font-size:28px;letter-spacing:2px}.education p{font-size:14px}.faq{padding-top:0}.faq-grid{grid-template-columns:1fr;gap:8px}.contact-grid{gap:23px}.contact-grid h3{font-size:14px;letter-spacing:2px}.footer-top{flex-wrap:wrap}.footer-top p{width:60%;margin-right:0}.detail-hero h1{font-size:43px}.detail-hero{height:370px}}
@media(max-width:520px){.hero h1{font-size:48px;letter-spacing:5px}.hero .eyebrow{font-size:10px;letter-spacing:3px}.hero{min-height:500px}.hero-content{padding:35px 0}.hero-shade{background:rgba(0,0,0,.48)}.hero-subtitle{font-size:16px}.module{padding:60px 0}.section-heading p{font-size:14px}.principles{grid-template-columns:1fr;gap:20px;max-width:300px}.principles h3{margin:14px 0 8px}.discipline-grid{gap:28px 14px}.discipline-caption{padding-top:13px;gap:5px}.discipline h3{font-size:15px;letter-spacing:1.5px}.discipline p{font-size:11px;line-height:1.6}.discipline-caption>span{font-size:18px}.start-photo{height:280px}.start-copy{padding:40px 22px}.start-copy h2{font-size:29px;letter-spacing:2px}.start-facts div{font-size:12px}.day-filters{gap:2px}.day-filters button{padding:12px 13px;font-size:13px}.schedule-grid{grid-template-columns:1fr}.class-row{font-size:13px;grid-template-columns:110px 1fr}.price-grid{grid-template-columns:1fr;gap:18px}.price-table{padding:30px 25px}.price-table h3{font-size:17px}.price-table>p:not(.price){min-height:0}.more-plans{gap:16px}.education-grid{grid-template-columns:1fr;gap:35px}.education img{grid-row:1}.education h2{font-size:30px}.education p{max-width:none}.faq{padding-top:0}.faq h2{font-size:25px}.contact-grid{grid-template-columns:1fr;gap:33px}.contact-grid h3{margin-bottom:15px}.footer-top{gap:18px}.footer-top p{width:100%;margin:0}.footer-bottom{gap:15px}.back-top{margin-left:0}.detail-hero{height:330px}.detail-hero h1{font-size:35px;letter-spacing:4px}.detail-content h2{font-size:26px}.detail-facts,.programs{grid-template-columns:1fr;gap:25px}.detail-content .lead{font-size:16px}.desktop-break{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
