/* Shared multi-page navigation */
.site-header{background:rgba(255,248,247,.94);backdrop-filter:blur(14px)}
.header-inner{min-height:92px;gap:24px}
.header-inner .main-nav{margin-left:auto;gap:24px}
.main-nav a{position:relative;white-space:nowrap;font-size:13px;font-weight:650}
.main-nav a[aria-current="page"]{color:var(--accent)}
.main-nav a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--accent)}
.locale-toggle{flex:none}
.page-hero-copy h1,.pricing-hero h1,.coming-copy h1,.native-copy h2,.pricing-cta h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.055em;line-height:.96}
.page-lead{max-width:640px;margin:30px 0 0;color:#6f555b;font-size:19px;line-height:1.75}

/* Chinese courses */
.course-hero{min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;padding-block:72px 84px}
.page-hero-copy h1{font-size:clamp(58px,6.3vw,94px)}
.page-hero-copy h1 em{color:var(--red);font-weight:400}
.language-motif{position:relative;min-height:500px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--accent);color:#fff;box-shadow:var(--shadow)}
.language-motif:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.23);background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:42px 42px}
.language-motif:after{content:"";position:absolute;width:390px;height:390px;border:1px solid rgba(255,255,255,.28);border-radius:50%;right:-110px;top:40px}
.language-motif>strong{position:relative;z-index:2;font-family:Georgia,serif;font-size:132px;font-weight:400;line-height:1}
.language-motif>span{position:relative;z-index:2;margin-top:18px;text-align:center;font-size:11px;font-weight:800;letter-spacing:.2em}
.motif-top{position:absolute;z-index:2;left:42px;top:36px;font-size:10px;letter-spacing:.22em}
.motif-chips{position:absolute;z-index:2;left:34px;right:34px;bottom:32px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.motif-chips b{padding:8px 11px;border:1px solid rgba(255,255,255,.35);background:rgba(86,4,24,.28);font-size:9px;letter-spacing:.1em}
.course-section{padding:105px 0;background:var(--white);border-top:1px solid var(--line)}
.online-section{background:var(--paper-2)}
.format-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.format-card{grid-column:span 2;min-height:260px;display:flex;flex-direction:column;padding:26px;border:1px solid var(--line);background:var(--paper);transition:transform .2s ease,box-shadow .2s ease}
.format-card:nth-child(4){grid-column:2/span 2}.format-card:nth-child(5){grid-column:4/span 2}
.format-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(91,13,31,.11)}
.format-card>span{color:var(--red);font-size:10px;font-weight:800;letter-spacing:.13em}
.format-card h3{min-height:65px;margin:24px 0;font-family:Georgia,serif;font-size:29px;font-weight:400;line-height:1.08}
.format-card.featured{background:var(--accent);color:#fff}.format-card.featured>span{color:#ffd7de}.format-card.featured .price-pair{border-color:rgba(255,255,255,.28)}
.format-card.hsk{background:#fff}
.price-pair{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:auto;border-top:1px solid var(--line)}
.price-pair p{margin:0;padding:17px 10px 0 0}
.price-pair b,.price-pair small{display:block}.price-pair b{font-size:17px}.price-pair small{margin-top:4px;color:inherit;opacity:.7;font-size:11px}
.online-club{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;margin-bottom:16px;padding:24px 28px;background:var(--accent);color:#fff}
.online-club>span{padding:7px 9px;background:#fff;color:var(--accent);font-size:9px;font-weight:900;letter-spacing:.13em}
.online-club h3{margin:0;font-family:Georgia,serif;font-size:29px;font-weight:400}.online-club p{margin:5px 0 0;color:#ffdfe4;font-size:12px}.online-club>strong{font-family:Georgia,serif;font-size:30px;font-weight:400}
.native-section{padding:110px 0;background:var(--burgundy);color:#fff}
.native-layout{display:grid;grid-template-columns:minmax(300px,.78fr) 1.22fr;gap:70px;align-items:center}
.native-visual{position:relative;min-height:570px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.22);background:#9b1029;box-shadow:0 28px 70px rgba(0,0,0,.3);transform:rotate(-1deg)}
.native-visual:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.2);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:40px 40px}
.native-visual img{position:absolute;z-index:2;left:28px;right:28px;top:28px;width:calc(100% - 56px);height:auto}.native-visual strong{position:relative;z-index:2;font-family:Georgia,serif;font-size:110px;font-weight:400}.native-visual span{position:relative;z-index:2;margin-top:18px;font-size:10px;font-weight:800;letter-spacing:.2em}
.native-copy h2{max-width:720px;font-size:clamp(48px,5.5vw,74px)}
.native-lead{max-width:670px;margin:26px 0 34px;color:#efd6dc;font-size:16px;line-height:1.75}
.native-prices{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.18)}
.native-prices article{min-height:135px;padding:20px;background:#6c071c}
.native-prices article:last-child{grid-column:1/-1}
.native-prices span,.native-prices strong,.native-prices small{display:block}.native-prices span{font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.native-prices strong{margin:12px 0 2px;color:#fff0d0;font-family:Georgia,serif;font-size:27px;font-weight:400}.native-prices small{color:#ddb8c1}

/* Camp */
.camp-page{background:var(--burgundy)}
.camp-page .site-header{background:var(--paper)}
.coming-main{padding:34px 0 80px;background:var(--burgundy)}
.coming-panel{position:relative;min-height:660px;overflow:hidden;display:grid;grid-template-columns:.72fr 1.28fr;align-items:center;padding:70px;background:var(--accent);color:#fff;box-shadow:0 30px 80px rgba(28,0,8,.3)}
.coming-panel:before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.27);background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:48px 48px}
.coming-mark,.coming-copy,.coming-foot{position:relative;z-index:2}
.coming-mark{align-self:start;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.coming-wordmark{width:min(300px,100%);height:auto;display:block}.coming-mark span{font-size:10px;letter-spacing:.18em}
.coming-copy h1{font-size:clamp(72px,10vw,150px)}.coming-copy h1 em{color:#ffb7c2;font-weight:400}.coming-copy>p:last-child{max-width:620px;margin:30px 0 0;color:#ffe4e8;font-size:17px;line-height:1.7}
.coming-hanzi{position:absolute;right:-25px;bottom:-110px;color:rgba(255,255,255,.07);font-family:serif;font-size:380px;line-height:1}
.coming-foot{position:absolute;left:70px;right:70px;bottom:48px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em}

/* Admission plans */
.pricing-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end;padding-block:95px 72px}
.pricing-hero h1{max-width:760px;font-size:clamp(56px,6.5vw,94px)}
.pricing-hero>p{margin:0 0 8px;color:var(--muted);font-size:18px;line-height:1.7}
.plans-section{padding:0 0 110px}.plans-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.plan-card{border:1px solid var(--line);background:#fff;box-shadow:0 22px 60px rgba(80,5,23,.09)}
.plan-head{padding:32px;border-bottom:1px solid var(--line)}
.plan-head>span{color:var(--red);font-size:10px;font-weight:900;letter-spacing:.13em}
.plan-head h2{margin:16px 0 12px;font-family:Georgia,serif;font-size:50px;font-weight:400;letter-spacing:-.04em}.plan-head strong{color:var(--accent);font-size:28px}
.plan-card.premium{background:var(--accent);color:#fff}.premium .plan-head{border-color:rgba(255,255,255,.2)}.premium .plan-head>span,.premium .plan-head strong{color:#ffdce2}
.plan-body{padding:30px 32px}.plan-label{margin:0 0 18px;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.plan-body ul{display:grid;gap:13px;margin:0;padding:0;list-style:none}.plan-body li{position:relative;padding-left:27px;line-height:1.45}.plan-body li:before{content:"✓";position:absolute;left:0;top:0;color:var(--red);font-weight:900}.premium .plan-body li:before{color:#ffd3da}
.plan-note{margin:24px 0 0;padding:17px;border-left:3px solid var(--red);background:var(--paper);color:#654b51;font-size:12px;line-height:1.6}
.plan-benefits{display:grid;gap:1px;background:var(--line);border-top:1px solid var(--line)}.plan-benefits p{display:grid;grid-template-columns:52px 1fr;gap:12px;align-items:center;margin:0;padding:18px 26px;background:var(--paper);color:var(--ink);font-size:12px;line-height:1.45}.plan-benefits b{color:var(--accent);font-size:19px}
.gift-box{margin:0 32px 28px;padding:23px;border:1px solid rgba(255,255,255,.35);background:rgba(103,5,28,.35)}.gift-box>span{font-size:10px;font-weight:900;letter-spacing:.15em}.gift-box p{position:relative;margin:14px 0 0;padding-left:20px;color:#ffe4e8;font-size:13px;line-height:1.55}.gift-box p:before{content:"+";position:absolute;left:0;color:#fff}
.pricing-cta{padding:80px 0;background:var(--burgundy);color:#fff}.pricing-cta>.wrap{display:flex;justify-content:space-between;align-items:end;gap:50px}.pricing-cta h2{font-size:clamp(44px,5.2vw,68px)}.light-button{border-color:rgba(255,255,255,.6);color:#fff;min-width:220px}

@media(max-width:1080px){
  .header-inner{flex-wrap:wrap;padding-block:14px}.header-inner .main-nav{order:3;width:100%;margin:0;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px}.course-hero{gap:40px}.format-card{grid-column:span 3}.format-card:nth-child(4),.format-card:nth-child(5){grid-column:span 3}.native-layout{gap:45px}.coming-panel{padding:55px}
}
@media(max-width:760px){
  .header-inner{min-height:auto}.header-inner .main-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:0;width:100%;padding:10px 0 0}.header-inner .main-nav a{display:block;padding:10px 8px 10px 0;font-size:12px;white-space:normal}.header-inner .main-nav a[aria-current="page"]:after{right:14px}.header-inner>.brand .brand-name{display:flex;font-size:14px}.header-inner>.brand .brand-name small{margin-top:6px;font-size:6px}
  .course-hero{grid-template-columns:1fr;min-height:auto;padding-block:50px 65px}.page-hero-copy h1{font-size:clamp(49px,14vw,70px)}.language-motif{min-height:430px}.language-motif>strong{font-size:104px}.page-lead{font-size:16px}.course-section{padding:72px 0}
  .format-grid{grid-template-columns:1fr}.format-card,.format-card:nth-child(4),.format-card:nth-child(5){grid-column:auto;min-height:220px}.format-card h3{min-height:auto}.online-club{grid-template-columns:1fr;gap:12px}.online-club>strong{font-size:27px}
  .native-section{padding:75px 0}.native-layout{grid-template-columns:1fr}.native-visual{width:min(430px,100%);min-height:510px;margin:auto}.native-copy h2{font-size:46px}.native-prices{grid-template-columns:1fr}.native-prices article:last-child{grid-column:auto}
  .coming-main{padding:16px 0 50px}.coming-panel{min-height:660px;grid-template-columns:1fr;align-content:start;gap:50px;padding:45px 28px}.coming-wordmark{width:230px}.coming-copy h1{font-size:72px}.coming-hanzi{font-size:230px}.coming-foot{left:28px;right:28px;bottom:35px}
  .pricing-hero{grid-template-columns:1fr;gap:28px;padding-block:64px 48px}.pricing-hero h1{font-size:52px}.pricing-hero>p{font-size:16px}.plans-section{padding-bottom:75px}.plans-grid{grid-template-columns:1fr}.plan-head,.plan-body{padding:26px 22px}.plan-head h2{font-size:42px}.gift-box{margin:0 22px 22px}.pricing-cta>.wrap{align-items:flex-start;flex-direction:column}.light-button{width:100%}
}

/* Keep contact shortcuts in the top-right corner on every page */
.header-inner .header-tools{margin-left:0}
@media(max-width:1080px){.header-inner .header-tools{margin-left:auto}}
