
:root{--orange:#f96300;--cream:#f5edda;--ink:#292522}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--orange);font-family:Arial,Helvetica,sans-serif}a{color:inherit}
.wrap{width:min(1240px,92vw);margin:auto}.nav{height:58px;background:var(--cream);position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(241,91,36,.35)}
.nav .wrap{height:100%;display:flex;align-items:center;justify-content:flex-end}.links{display:flex;gap:36px;font-size:14px}.links a{text-decoration:underline;text-underline-offset:4px}.menu{display:none;border:0;background:none;color:var(--orange);font-size:27px}
.hero{display:grid;grid-template-columns:52% 48%;min-height:600px;background:var(--orange);color:var(--cream)}.hero-copy{display:flex;align-items:center;padding:55px 5vw}.hero h1{margin:0;font-weight:950;font-size:clamp(72px,8.8vw,142px);line-height:.8;letter-spacing:.08em}
.hero-art{background:#2b211c;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-art img{width:100%;height:100%;object-fit:cover}
.hero-placeholder{padding:40px;text-align:center;max-width:480px}.hero-placeholder b{font-size:36px}.hero-placeholder p{line-height:1.5}
.section{padding:70px 0}.cream{background:var(--cream)}.orange{background:var(--orange);color:var(--cream)}
.big{font-size:clamp(60px,8.5vw,125px);line-height:.8;margin:0 0 35px;font-weight:950}.body{font-size:16px;line-height:1.52}.body p{margin:0 0 18px}
.about{display:grid;grid-template-columns:54% 46%;gap:45px;align-items:stretch}.about-photo{min-height:620px}.about-photo img{width:100%;height:100%;object-fit:cover;display:block}
.approach{margin-top:38px}.approach h3{font-size:25px}.vm{display:grid;grid-template-columns:1fr 1fr;gap:70px}.vm h2{font-size:clamp(56px,7vw,105px);line-height:.83;margin:0 0 30px}.vm p{font-size:17px;line-height:1.5}.manifest{font-size:clamp(32px,4vw,58px)!important;font-weight:950;line-height:.96!important}
.teacher{display:grid;grid-template-columns:48% 52%;gap:50px;align-items:center}.teacher-photo img{width:100%;max-height:760px;object-fit:cover;display:block}.teacher h3{font-size:30px}.tag{font-size:clamp(28px,3.6vw,52px);font-weight:900;line-height:1.05;margin-top:35px}
.edu-head{padding-bottom:38px}.edu-nav{display:grid;grid-template-columns:1fr 1fr;gap:60px}.edu-nav h3{font-size:32px;margin:0 0 12px}.edu-nav a{display:block;font-size:clamp(21px,2.4vw,34px);font-weight:900;text-decoration:underline;margin:9px 0}
.course{padding:58px 0;border-top:1px solid rgba(241,91,36,.48)}.course h2{font-size:clamp(50px,6.6vw,96px);line-height:.85;margin:0 0 20px}.course .lead{font-size:22px;font-weight:800}.cols{display:grid;grid-template-columns:1.2fr .8fr;gap:55px}.cols p,.cols li{font-size:16px;line-height:1.5}.cols h3{font-size:20px}.cta{display:inline-block;background:var(--orange);color:var(--cream);padding:14px 18px;font-weight:900;text-decoration:none;margin-top:22px}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.logo{width:min(370px,75vw);display:block;margin:auto}.contact h2{font-size:clamp(55px,7vw,95px);margin:0 0 25px}.orange .cta{background:var(--cream);color:var(--orange)}
footer{background:var(--orange);color:var(--cream);text-align:center;padding:20px;font-size:13px}
@media(max-width:760px){
 .nav .wrap{justify-content:space-between}.menu{display:block}.links{display:none;position:absolute;top:58px;left:0;right:0;background:var(--cream);padding:20px 5vw;flex-direction:column;gap:18px}.links.open{display:flex}.links a{font-size:18px}
 .hero{grid-template-columns:1fr;min-height:0}.hero-copy{min-height:430px;padding:45px 6vw}.hero h1{font-size:clamp(56px,18vw,90px)}.hero-art{min-height:430px}
 .section{padding:46px 0}.big{font-size:clamp(52px,15vw,76px)}.about,.vm,.teacher,.edu-nav,.cols,.contact{grid-template-columns:1fr;gap:30px}.about-photo{min-height:460px;order:2}.vm h2{font-size:clamp(52px,15vw,78px)}.manifest{font-size:37px!important}
 .teacher-photo img{max-height:610px}.teacher h3{font-size:27px}.tag{font-size:34px}.edu-nav{gap:26px}.edu-nav a{font-size:21px}.course{padding:46px 0}.course h2{font-size:clamp(45px,13vw,64px)}.cta{width:100%;text-align:center;padding:16px}
}
.backtop-wrap{background:var(--cream);padding:24px 4vw;text-align:right}.backtop{display:inline-flex;align-items:center;justify-content:center;min-width:130px;min-height:48px;border:2px solid var(--orange);padding:10px 18px;color:var(--orange);font-weight:900;text-decoration:none}.backtop:hover,.backtop:focus{background:var(--orange);color:var(--cream)}@media(max-width:760px){.backtop-wrap{text-align:center}.backtop{width:100%}}
html,body{max-width:100%;overflow-x:hidden}
img,svg,video{max-width:100%}
@media(max-width:760px){
  .wrap{width:100%;max-width:100%;padding-left:18px;padding-right:18px}
  .hero,.section,.cream,.orange,footer,.backtop-wrap{width:100%;max-width:100%;overflow:hidden}
  .hero-copy{width:100%;min-width:0;padding:42px 18px}
  .hero h1{font-size:clamp(48px,15.5vw,70px);line-height:.84;letter-spacing:.015em;max-width:100%;overflow-wrap:anywhere}
  .hero-art{width:100%;min-width:0}
  .hero-art img{width:100%;height:auto;min-height:0;object-fit:cover;display:block}
  .big,.vm h2,.course h2,.contact h2{max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal;hyphens:auto;letter-spacing:-.025em}
  .big{font-size:clamp(42px,12.5vw,60px);line-height:.9}
  .vm h2{font-size:clamp(42px,12vw,58px);line-height:.9}
  .manifest{font-size:clamp(29px,8.7vw,40px)!important;line-height:.98!important;overflow-wrap:anywhere}
  .body,.body p,.vm p,.cols p,.cols li{max-width:100%;overflow-wrap:break-word}
  .about,.teacher,.vm,.edu-nav,.cols,.contact{width:100%;min-width:0}
  .about-photo,.teacher-photo{width:100%;min-width:0}
  .about-photo img,.teacher-photo img{width:100%;height:auto;object-fit:cover}
  .edu-nav a{overflow-wrap:anywhere}
}
@media(max-width:390px){
  .hero h1{font-size:14.5vw}
  .big{font-size:11.7vw}
  .vm h2{font-size:11.5vw}
  .manifest{font-size:8.2vw!important}
}

/* v10 – hero typography refinement */
.hero-copy{min-width:0}
.hero h1{
  font-size:clamp(64px,7.25vw,116px);
  line-height:.98;
  letter-spacing:.045em;
  max-width:8.2em;
}
@media(max-width:760px){
  .hero-copy{min-height:410px;padding:44px 20px}
  .hero h1{
    font-size:clamp(45px,13.2vw,61px);
    line-height:1.01;
    letter-spacing:.01em;
    max-width:6.4em;
    overflow-wrap:normal;
    word-break:normal;
  }
}
@media(max-width:390px){
  .hero h1{
    font-size:12.8vw;
    line-height:1.02;
  }
}

/* Multilingual navigation */
.links a{white-space:nowrap}
