:root{--navy:#082150;--blue:#163b83;--gold:#f4ae2b;--cream:#fffaf1;--ink:#101b35;--muted:#64708a;--line:#d9deea;--pink:#fff0f4;--sky:#edf5ff;--violet:#f2efff}
.lab-resources{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;background:#f8faff}.resource-card{padding:clamp(1.5rem,3vw,2.5rem);background:white;border:1px solid var(--line);border-radius:1.5rem;display:flex;flex-direction:column}.resource-card h2{font-size:clamp(1.6rem,2.4vw,2.4rem);line-height:1.3;color:var(--navy);margin:.5rem 0}.resource-card>p:not(.section-number){color:var(--muted)}.resource-links{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:auto;padding-top:1rem}.resource-links a{padding:.65rem 1rem;border-radius:999px;border:1px solid var(--navy);color:var(--navy);font-weight:600;font-size:.9rem}.resource-links a:hover{background:var(--navy);color:white}@media(max-width:700px){.lab-resources{grid-template-columns:1fr}}
.showcase-link{display:inline-block;margin-top:1.2rem;padding:.6rem .8rem;border:1px solid currentColor;border-radius:999px;font:600 .78rem/1.4 "DM Sans",sans-serif;white-space:nowrap}.showcase-link:hover{background:#082150;color:white}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1.25rem,4vw,4.5rem);background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(8,33,80,.08)}.brand{display:flex;align-items:center;gap:.65rem;font:700 1.32rem/1 "Playfair Display",serif;color:var(--navy)}.brand em{display:block;font-size:.82rem;color:var(--gold)}.brand-mark{display:grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid var(--gold);border-radius:50%;font-size:1.7rem;font-style:italic}.site-header nav{display:flex;align-items:center;gap:1.65rem;font-size:.9rem;font-weight:600}.site-header nav a:not(.nav-cta):hover{color:var(--blue)}.nav-cta{padding:.72rem 1.1rem;background:var(--navy);color:white;border-radius:999px}.lang-toggle{border:0;background:transparent;color:var(--blue);font:600 .86rem "DM Sans";cursor:pointer}.hero{min-height:86vh;display:grid;grid-template-columns:1.08fr .92fr;overflow:hidden;background:linear-gradient(130deg,#fff 0%,#fffaf1 55%,#eff5ff 100%)}.hero-copy{padding:clamp(5rem,9vw,8rem) clamp(1.25rem,7vw,7rem);padding-right:2rem;align-self:center}.eyebrow,.section-number{font-size:.76rem;letter-spacing:.16em;font-weight:700;color:var(--blue);text-transform:uppercase}.hero h1,.section h2{font-family:"Playfair Display",serif}.hero h1{margin:.7rem 0 1.5rem;font-size:clamp(3.5rem,7vw,7.3rem);line-height:.9;letter-spacing:-.055em;color:var(--navy)}.hero h1 i{color:var(--gold);font-weight:600}.hero-intro{max-width:40rem;font-size:clamp(1.08rem,1.5vw,1.32rem);color:#46516a}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin:2rem 0}.button{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.25rem;border-radius:999px;font-weight:700}.button.primary{background:var(--navy);color:white}.button.secondary{border:1px solid var(--navy);color:var(--navy)}.hero-proof{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2.4rem}.hero-proof span{padding:.4rem .7rem;border:1px solid var(--line);border-radius:999px;font-size:.78rem;color:#44506a}.hero-art{position:relative;min-height:38rem;background:radial-gradient(circle at 62% 35%,#fff 0 7%,transparent 7.5%),linear-gradient(155deg,#0a2457 0%,#163b83 52%,#6e83ba 100%);border-radius:0 0 0 42%}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-one{width:18rem;height:18rem;right:-2rem;top:9%;background:radial-gradient(circle at 35% 30%,#ffd985,#f4ae2b 50%,#ce7b00)}.orb-two{width:8rem;height:8rem;left:5%;bottom:12%;border:1px solid rgba(255,255,255,.35)}.staff-lines{position:absolute;inset:20% -8% auto 5%;height:16rem;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);transform:rotate(-8deg);box-shadow:0 3.8rem 0 rgba(255,255,255,.12),0 7.6rem 0 rgba(255,255,255,.1)}.note{position:absolute;color:white;font-family:serif}.note-one{font-size:7rem;right:12%;top:20%}.note-two{font-size:4rem;left:9%;top:12%;opacity:.55}.path-card{position:absolute;left:8%;bottom:8%;width:min(24rem,80%);padding:1.5rem;background:rgba(255,255,255,.93);border:1px solid rgba(255,255,255,.5);border-radius:1.4rem;box-shadow:0 28px 70px rgba(3,14,40,.32);display:grid;grid-template-columns:1fr auto;gap:.5rem 1rem}.path-card small{grid-column:1/-1;color:var(--muted);letter-spacing:.12em}.path-card strong{font:600 1.55rem "Playfair Display"}.path-card span{color:var(--gold);font-weight:700}.section{padding:clamp(5rem,9vw,9rem) clamp(1.25rem,7vw,7rem)}.manifesto{display:grid;grid-template-columns:.32fr 1fr;gap:3rem;background:var(--navy);color:white}.manifesto .section-number,.technology .section-number,.contact .section-number{color:#f8c65f}.manifesto h2{margin:0;max-width:55rem;font-size:clamp(2.2rem,4.4vw,4.7rem);line-height:1.08}.manifesto p:last-child{max-width:47rem;color:#cdd7ef;font-size:1.12rem}.section-heading{margin-bottom:3rem}.section-heading h2{margin:.45rem 0;font-size:clamp(2.3rem,4vw,4.3rem);line-height:1.08;color:var(--navy)}.pathway{background:#f8faff}.pathway-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:1.5rem;overflow:hidden;background:white}.path-step{min-height:22rem;padding:2.2rem;display:flex;flex-direction:column;border-right:1px solid var(--line)}.path-step:last-child{border-right:0}.path-step.featured{background:var(--navy);color:white}.step-no{font-size:.8rem;letter-spacing:.12em;color:var(--gold)}.path-step h3{font:600 2.6rem "Playfair Display";margin:auto 0 .5rem}.path-step p{color:var(--muted)}.path-step.featured p{color:#cbd7ef}.path-step strong{margin-top:1rem;color:var(--gold)}.split-heading{display:grid;grid-template-columns:1fr .6fr;gap:4rem;align-items:end}.split-heading>p{color:var(--muted);font-size:1.08rem}.program-list{display:grid;gap:1.1rem}.program-card{display:grid;grid-template-columns:.3fr .9fr 1fr;align-items:center;gap:2rem;padding:2rem;border:1px solid rgba(8,33,80,.08);border-radius:1.4rem}.playground{background:var(--pink)}.creator{background:var(--sky)}.innovator{background:var(--violet)}.age{font:700 clamp(2.3rem,4vw,4rem) "Playfair Display";color:var(--navy)}.age small{display:block;font:700 .7rem "DM Sans";letter-spacing:.16em}.program-kicker{font-size:.72rem;letter-spacing:.13em;font-weight:700;color:var(--blue);margin:0}.program-card h3{font:600 clamp(1.7rem,3vw,2.8rem) "Playfair Display";margin:.2rem 0}.program-card p:last-child{color:var(--muted)}.program-card ul{margin:0;padding-left:1.2rem}.program-card li{margin:.35rem 0}.technology{display:grid;grid-template-columns:1fr 1fr;gap:6rem;background:var(--navy);color:white}.tech-copy h2{font-size:clamp(2.4rem,4vw,4.5rem);line-height:1.08;margin:.5rem 0 1.5rem}.tech-copy>p:last-child{color:#cdd7ef}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.tool-grid div{display:flex;flex-direction:column;justify-content:flex-end;min-height:10rem;padding:1.4rem;border:1px solid rgba(255,255,255,.18);border-radius:1rem;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.03))}.tool-grid strong{font:600 1.65rem "Playfair Display";color:#ffd67d}.tool-grid span{color:#cdd7ef;font-size:.86rem}.about{display:grid;grid-template-columns:1fr .78fr;gap:2rem;background:var(--cream)}.about-card,.guide-card{background:white;border-radius:1.5rem;overflow:hidden;box-shadow:0 15px 50px rgba(8,33,80,.08)}.about-card{padding:clamp(2rem,4vw,4rem)}.about-card h2{font-size:clamp(2.3rem,4vw,4.2rem);line-height:1.1;margin:.5rem 0 1.5rem;color:var(--navy)}.credentials{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}.credentials span{padding:.5rem .75rem;background:#f2f5fa;border-radius:.5rem;font-size:.78rem;font-weight:700;color:var(--blue)}.guide-card{margin:0;align-self:center}.guide-card img{aspect-ratio:1/1.15;object-fit:cover;object-position:center top}.guide-card figcaption{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;font-size:.84rem}.guide-card figcaption a{font-weight:700;color:var(--blue);white-space:nowrap}.contact{text-align:center;background:linear-gradient(145deg,#123676,#061a43);color:white}.contact h2{font-size:clamp(3rem,6vw,6rem);line-height:1;margin:.6rem 0 1.5rem}.contact>p:not(.section-number){max-width:45rem;margin:0 auto 2rem;color:#cfdaee;font-size:1.1rem}.button.light{background:white;color:var(--navy)}footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;padding:2rem clamp(1.25rem,7vw,7rem);background:#03122e;color:#bec9de;font-size:.8rem}footer p:last-child{text-align:right}.footer-brand{color:white}
@media(max-width:900px){.site-header nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr}.hero-copy{padding-top:5rem;padding-right:1.25rem}.hero-art{min-height:30rem;border-radius:25% 0 0 0}.manifesto,.technology,.about,.split-heading{grid-template-columns:1fr}.manifesto{gap:1rem}.pathway-grid{grid-template-columns:1fr}.path-step{min-height:16rem;border-right:0;border-bottom:1px solid var(--line)}.program-card{grid-template-columns:1fr 1.4fr}.program-card ul{grid-column:1/-1}.technology{gap:3rem}.about{gap:1.5rem}footer{grid-template-columns:1fr;text-align:center}footer .brand{justify-content:center}footer p:last-child{text-align:center}}
@media(max-width:560px){.site-header{padding:.8rem 1rem}.site-header .nav-cta{display:none}.brand{font-size:1.05rem}.brand-mark{width:2rem;height:2rem}.hero h1{font-size:3.6rem}.hero-actions{display:grid}.button{width:100%}.hero-art{min-height:25rem}.path-card{left:6%;bottom:6%}.section{padding:4.5rem 1.1rem}.program-card{grid-template-columns:1fr;padding:1.35rem}.program-card ul{grid-column:auto}.tool-grid{grid-template-columns:1fr}.guide-card figcaption{flex-direction:column}footer{padding:2.5rem 1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Crescendary supplied brand artwork */
.brand{gap:0;font:inherit}
.brand-logo{display:block;width:auto;height:5.25rem;object-fit:contain;border-radius:.18rem}
.footer-logo{height:4.8rem;filter:brightness(.98)}
@media(max-width:560px){.site-header{padding:.55rem 1rem}.brand-logo{width:auto;height:4.15rem}.footer-logo{height:4.5rem}}

/* Trial lesson request */
.trial-form{width:min(52rem,100%);margin:2.5rem auto 0;display:grid;grid-template-columns:1fr 1fr;gap:1rem;text-align:left;padding:clamp(1.25rem,3vw,2rem);background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);border-radius:1.5rem}.trial-form label{display:grid;gap:.4rem;color:#e7edf9;font-size:.86rem;font-weight:700}.trial-form input,.trial-form select,.trial-form textarea{width:100%;border:1px solid rgba(255,255,255,.24);border-radius:.75rem;background:white;color:var(--ink);font:500 1rem "DM Sans",sans-serif;padding:.8rem .9rem}.trial-form textarea{resize:vertical}.trial-form input:focus,.trial-form select:focus,.trial-form textarea:focus{outline:3px solid rgba(244,174,43,.35);border-color:var(--gold)}.trial-form .form-wide{grid-column:1/-1}.trial-form button{border:0;cursor:pointer;font-family:"DM Sans",sans-serif}.trial-form .form-note{margin:0;text-align:center;color:#cfd9ec;font-size:.78rem;font-weight:500}
@media(max-width:650px){.trial-form{grid-template-columns:1fr}.trial-form .form-wide{grid-column:auto}}

/* Keep the dark wordmark legible on the navy footer. */
footer .footer-brand{justify-self:start;padding:.5rem .75rem;background:#fff;border-radius:.85rem;box-shadow:0 8px 24px rgba(0,0,0,.16)}
@media(max-width:900px){footer .footer-brand{justify-self:center}}

/* Mobile Chinese typography: calmer scale, natural CJK rhythm and wrapping. */
@media(max-width:560px){
  html[lang="zh-CN"] body{line-height:1.78;letter-spacing:.01em}
  html[lang="zh-CN"] .hero-copy{padding-top:3.8rem;padding-bottom:4rem}
  html[lang="zh-CN"] .eyebrow{font-size:.72rem;letter-spacing:.12em}
  html[lang="zh-CN"] .hero h1{margin:.85rem 0 1.25rem;font-family:"Noto Serif SC","Songti SC","STSong",serif;font-size:2.85rem;line-height:1.18;letter-spacing:-.035em}
  html[lang="zh-CN"] .hero h1 i{font-style:normal;font-weight:600}
  html[lang="zh-CN"] .hero-intro{font-size:1.03rem;line-height:1.82}
  html[lang="zh-CN"] .section{padding-top:4rem;padding-bottom:4rem}
  html[lang="zh-CN"] .section h2,
  html[lang="zh-CN"] .tech-copy h2,
  html[lang="zh-CN"] .about-card h2,
  html[lang="zh-CN"] .contact h2{font-family:"Noto Serif SC","Songti SC","STSong",serif;font-size:2.2rem;line-height:1.28;letter-spacing:-.025em}
  html[lang="zh-CN"] .manifesto h2{font-size:2.08rem}
  html[lang="zh-CN"] .section-heading{margin-bottom:2.2rem}
  html[lang="zh-CN"] .section-heading>p,
  html[lang="zh-CN"] .tech-copy>p,
  html[lang="zh-CN"] .about-card>p,
  html[lang="zh-CN"] .contact>p:not(.section-number){font-size:1rem;line-height:1.8}
  html[lang="zh-CN"] .path-step h3{font-family:"Noto Serif SC","Songti SC","STSong",serif;font-size:2.15rem}
  html[lang="zh-CN"] .path-step p,
  html[lang="zh-CN"] .program-card p,
  html[lang="zh-CN"] .program-card li{line-height:1.75}
  html[lang="zh-CN"] .button{font-size:.95rem;letter-spacing:.02em}
}
