:root{--bg:#0a0907;--bg2:#13110d;--tx:#ece6d6;--mut:#a79f8b;--gold:#c9a961;--gold-d:#8f7536;--line:rgba(201,169,97,.28);--max:1180px}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{font:300 17px/1.8 Jost,system-ui,sans-serif;color:var(--tx);background:var(--bg);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:.01em}
h1{font-size:clamp(2.8rem,6.4vw,5.6rem)}h2{font-size:clamp(2.1rem,4vw,3.4rem);margin-bottom:.7em}h3{font-size:1.7rem;margin-bottom:.4em}
p+p{margin-top:1.2em}.wrap{max-width:var(--max);margin:0 auto;padding:0 32px}.sec{padding:150px 0}
.dark{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mut{color:var(--mut)}.gold{color:var(--gold)}
b{font-weight:500;color:var(--tx)}:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
header{position:sticky;top:0;z-index:50;background:rgba(10,9,7,.96);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:92px}
.brand{display:flex;align-items:center;gap:16px;text-decoration:none;font-family:"Cormorant Garamond",serif;font-size:1.2rem;line-height:1.15;color:var(--gold)}
.brand img{height:60px;width:auto}.nav ul{display:flex;gap:44px;list-style:none;padding:0}
.nav a.l{text-decoration:none;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;padding:8px 0;border-bottom:1px solid transparent;transition:color .25s,border-color .25s}
.nav a.l:hover,.nav a[aria-current]{color:var(--gold);border-color:var(--gold)}
.burger{display:none;background:none;border:1px solid var(--line);color:var(--gold);padding:10px 18px;font:inherit;letter-spacing:.12em;font-size:.8rem;cursor:pointer}
.btn{display:inline-block;padding:16px 36px;background:var(--gold);color:var(--bg);text-decoration:none;font:400 .82rem Jost,sans-serif;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--gold);transition:background .3s,color .3s;cursor:pointer}
.btn:hover{background:transparent;color:var(--gold)}.btn.o{background:transparent;color:var(--gold)}.btn.o:hover{background:var(--gold);color:var(--bg)}
.row{display:flex;gap:16px;flex-wrap:wrap;margin-top:44px}
.ph{position:relative;background:linear-gradient(160deg,#1a1610,#0f0d09);overflow:hidden;display:grid;place-items:center;border:1px solid var(--line)}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ph span{font-size:.78rem;letter-spacing:.1em;color:var(--gold-d);padding:8px;text-align:center}
.hero{position:relative;min-height:calc(100vh - 92px);min-height:min(820px,calc(100vh - 92px));display:flex;align-items:center;isolation:isolate}
.hero .ph{position:absolute;inset:0;z-index:-2;border:0;aspect-ratio:auto!important;height:100%}.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,9,7,.88) 20%,rgba(10,9,7,.25))}
.hero .t{max-width:var(--max);margin:0 auto;padding:120px 32px;width:100%}.hero .t>*{max-width:640px}
.hero h1::before{content:"";display:block;width:72px;height:1px;background:var(--gold);margin-bottom:36px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.split.r .ph{order:2}
.courses{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:56px}
.courses>div{padding:56px 56px 56px 0}.courses>div+div{padding-left:56px;border-left:1px solid var(--line)}
.list{list-style:none;padding:0}.list li{padding:26px 0;border-bottom:1px solid var(--line)}.list li:first-child{border-top:1px solid var(--line)}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px}.gal .ph{aspect-ratio:1!important;cursor:zoom-in}.gal .ph:nth-child(1){grid-column:span 2;aspect-ratio:2/1!important}
.gal img{transition:transform .6s}.gal .ph:hover img{transform:scale(1.04)}
.fee{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);margin-top:48px}.fee>div{padding:56px}.fee>div+div{border-left:1px solid var(--line)}
.big{font-family:"Cormorant Garamond",serif;font-size:4.6rem;line-height:1;color:var(--gold);margin:16px 0 20px}
form{display:grid;gap:22px}label{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);display:grid;gap:8px}
input,select,textarea{font:300 1rem Jost,sans-serif;letter-spacing:0;text-transform:none;padding:14px 16px;border:1px solid var(--line);background:var(--bg2);color:var(--tx)}
input:focus,select:focus,textarea:focus{border-color:var(--gold);outline:0}.err{color:#e08a7a;font-size:.82rem;letter-spacing:0;text-transform:none;min-height:1em}[aria-invalid=true]{border-color:#e08a7a}
footer{background:#070605;color:var(--mut);padding:100px 0 36px;font-size:.95rem;border-top:1px solid var(--line)}
.fg{display:grid;grid-template-columns:1.4fr 1fr 1.3fr;gap:72px}footer h3{color:var(--gold);font-size:1.4rem}footer ul{list-style:none;padding:0}footer li{margin-top:8px}footer a{text-decoration:none}footer a:hover{color:var(--gold)}
.copy{border-top:1px solid var(--line);margin-top:72px;padding-top:24px;font-size:.82rem}
.pagehead{padding:140px 0 110px}.pagehead p{max-width:560px}.pagehead h1::before{content:"";display:block;width:72px;height:1px;background:var(--gold);margin-bottom:32px}
#lb{position:fixed;inset:0;background:rgba(5,4,3,.96);display:none;place-items:center;z-index:99;padding:24px}#lb.on{display:grid}
#lb img{max-height:86vh;max-width:92vw;object-fit:contain}#lb button{position:absolute;top:16px;right:24px;background:none;border:0;color:var(--gold);font-size:2.4rem;cursor:pointer}
@media(max-width:900px){.burger{display:block}.nav{height:80px}.nav ul{display:none;position:absolute;top:80px;left:0;right:0;background:var(--bg);flex-direction:column;gap:0;padding:8px 32px 24px;border-bottom:1px solid var(--line)}.nav ul.open{display:flex}.nav ul a{display:block;padding:16px 0}
.split,.courses,.fee,.fg{grid-template-columns:1fr}.split{gap:48px}.split.r .ph{order:0}.sec{padding:88px 0}.pagehead{padding:88px 0 64px}.hero .t{padding:80px 24px}.wrap{padding:0 24px}
.courses>div,.courses>div+div{padding:40px 0;border-left:0}.courses>div+div{border-top:1px solid var(--line)}.fee>div{padding:36px 28px}.fee>div+div{border-left:0;border-top:1px solid var(--line)}.gal{grid-template-columns:1fr 1fr;gap:12px}.gal .ph:nth-child(1){grid-column:span 2}.brand span{font-size:1rem}.fg{gap:44px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}
