:root{--bg:#07080b;--ink:#f7f6f2;--muted:#b8b7b2;--line:rgba(255,255,255,.16);--panel:#11131a;--accent:#d9c39a;--accent2:#73d0d5;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;letter-spacing:-.02em}a{color:inherit;text-decoration:none}.topbar{position:fixed;z-index:40;top:0;left:0;right:0;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,72px);background:rgba(7,8,11,.55);backdrop-filter:blur(22px);border-bottom:1px solid rgba(255,255,255,.08)}.brand{font-size:14px;letter-spacing:.16em;font-weight:800}.topbar nav{display:flex;gap:28px;align-items:center}.topbar nav a{font-size:15px;color:rgba(255,255,255,.82)}.lang{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.07);color:#fff;border-radius:999px;padding:10px 14px;font-weight:800}.panel,.section{position:relative}.hero{min-height:100vh;display:grid;align-items:end;padding:120px clamp(24px,6vw,92px) 72px;background-image:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.38),rgba(0,0,0,.68)),url('https://images.unsplash.com/photo-1540959733332-eab4deabeeaf?auto=format&fit=crop&w=2400&q=88');background-size:cover;background-position:center}.shade{position:absolute;inset:0;background:radial-gradient(circle at 74% 25%,rgba(115,208,213,.18),transparent 28%),radial-gradient(circle at 20% 20%,rgba(217,195,154,.12),transparent 32%)}.hero-content{position:relative;z-index:1;max-width:1050px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:13px;color:var(--accent);font-weight:800;margin:0 0 18px}.hero h1{font-size:clamp(54px,9vw,128px);line-height:.88;margin:0;max-width:980px}.lead{max-width:760px;font-size:clamp(19px,2.2vw,27px);line-height:1.32;color:rgba(255,255,255,.82);margin:30px 0 0}.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:16px 24px;font-weight:850;min-height:54px}.primary{background:#fff;color:#08090c}.secondary{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.25);color:#fff}.hero-card{position:absolute;right:clamp(24px,6vw,92px);bottom:72px;z-index:2;width:min(330px,calc(100% - 48px));padding:26px;border:1px solid rgba(255,255,255,.18);border-radius:28px;background:rgba(10,12,16,.70);backdrop-filter:blur(18px);box-shadow:0 30px 80px rgba(0,0,0,.35)}.hero-card span{display:block;color:var(--muted);font-size:15px}.hero-card strong{display:block;font-size:28px;line-height:1.05;margin:12px 0}.hero-card p{margin:0;color:var(--muted);font-size:16px}.section{padding:clamp(70px,10vw,140px) clamp(24px,6vw,92px)}.split,.founder,.price,.apply{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,7vw,96px);align-items:center}.copy h2,.feature-copy h2,.outcomes h2,.price h2,.success h2,.apply h2{font-size:clamp(42px,6vw,80px);line-height:.95;margin:0 0 24px}.copy p,.feature-copy p,.value-copy p,.success p,.apply-copy p{font-size:20px;line-height:1.55;color:rgba(255,255,255,.76)}.image-card,.feature-image{min-height:560px;border-radius:34px;background-size:cover;background-position:center;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.12);position:relative}.image-train{background-image:linear-gradient(to top,rgba(0,0,0,.62),transparent 46%),url('https://images.unsplash.com/photo-1526481280693-3bfa7568e0f3?auto=format&fit=crop&w=1800&q=88')}.image-tokyo{background-image:url('https://images.unsplash.com/photo-1492571350019-22de08371fd3?auto=format&fit=crop&w=1800&q=88')}.image-kyoto{background-image:linear-gradient(to top,rgba(0,0,0,.50),transparent 42%),url('https://images.unsplash.com/photo-1493976040374-85c8e12f0c0e?auto=format&fit=crop&w=1800&q=88')}figcaption{position:absolute;left:26px;right:26px;bottom:24px;font-size:24px;line-height:1.15;font-weight:800}.dark{background:#0d0f14;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.feature{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,7vw,92px);align-items:center}.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.chips span{padding:10px 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:rgba(255,255,255,.78);background:rgba(255,255,255,.05)}.centered{text-align:center}.outcomes{max-width:var(--max);margin:auto}.outcomes h2{text-align:center;max-width:860px;margin-left:auto;margin-right:auto}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:46px}.grid article{padding:28px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.12)}.grid h3{font-size:24px;margin:0 0 14px}.grid p{color:var(--muted);line-height:1.45;margin:0}.price-card{background:#f5f2e9;color:#08090c;border-radius:36px;padding:42px;box-shadow:0 30px 100px rgba(0,0,0,.34)}.price-card .eyebrow{color:#8e6d31}.price-card h2{color:#08090c}.price-card h2 span{display:block;font-size:clamp(54px,6.5vw,82px)}.price-card h2 small{display:block;font-size:20px;margin-top:12px;color:#3a3935}.muted{color:#55524b!important}.price-card ul{padding:0;margin:28px 0 0;list-style:none}.price-card li{padding:14px 0;border-top:1px solid rgba(0,0,0,.12);font-weight:700}.value-copy h2{font-size:clamp(38px,5vw,64px)}.success{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.45)),url('https://images.unsplash.com/photo-1528164344705-47542687000d?auto=format&fit=crop&w=2200&q=88');background-size:cover;background-position:center;min-height:620px;display:flex;align-items:center}.success>div{max-width:850px}.success p{max-width:760px}.form{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:32px;padding:28px}.form label{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-size:14px}.form .full{grid-column:1/-1}input,textarea{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#fff;border-radius:16px;padding:16px;font:inherit;outline:none}textarea{resize:vertical}.submit{border:0;cursor:pointer;grid-column:1/-1;width:100%;font-size:16px}.privacy{grid-column:1/-1;margin:0;text-align:center;color:var(--muted);font-size:14px}footer{display:flex;justify-content:space-between;gap:20px;padding:36px clamp(24px,6vw,92px);border-top:1px solid rgba(255,255,255,.09);color:var(--muted)}@media(max-width:920px){.topbar{height:68px}.topbar nav{gap:14px}.topbar nav a{display:none}.hero{padding-top:110px}.hero h1{font-size:clamp(48px,14vw,78px)}.hero-card{position:relative;right:auto;bottom:auto;margin-top:40px}.split,.founder,.price,.apply,.feature{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.image-card,.feature-image{min-height:420px}.form{grid-template-columns:1fr}.section{padding:70px 22px}}@media(max-width:520px){.hero{padding-left:20px;padding-right:20px}.lead{font-size:18px}.btn{width:100%}.copy h2,.feature-copy h2,.outcomes h2,.price h2,.success h2,.apply h2{font-size:42px}.price-card{padding:28px}.price-card h2 span{font-size:52px}footer{flex-direction:column}}

/* Responsive typography fixes — especially for longer French headlines */
.hero h1{
  font-size:clamp(42px,7.2vw,104px);
  line-height:.94;
  max-width:880px;
  text-wrap:balance;
}
html:lang(fr) .hero h1{
  font-size:clamp(38px,6.15vw,86px);
  line-height:.98;
  max-width:820px;
}
html:lang(fr) .lead{font-size:clamp(17px,1.65vw,23px);max-width:680px}
html:lang(fr) .copy h2,
html:lang(fr) .feature-copy h2,
html:lang(fr) .outcomes h2,
html:lang(fr) .price h2,
html:lang(fr) .success h2,
html:lang(fr) .apply h2{font-size:clamp(34px,4.6vw,64px);line-height:1.02;text-wrap:balance}
html:lang(fr) .value-copy h2{font-size:clamp(32px,4vw,54px);line-height:1.06;text-wrap:balance}
html:lang(fr) .hero-card strong{font-size:clamp(22px,2.2vw,28px)}
@media(max-width:1100px){
  .hero{align-items:center;padding-bottom:54px}
  .hero h1{font-size:clamp(42px,9vw,84px);max-width:760px}
  html:lang(fr) .hero h1{font-size:clamp(36px,7.7vw,68px);max-width:720px}
  .hero-card{position:relative;right:auto;bottom:auto;margin-top:32px}
}
@media(max-width:720px){
  .topbar{padding:0 18px}.brand{font-size:12px}.lang{padding:8px 11px}
  .hero{min-height:auto;padding-top:118px;padding-bottom:52px;background-position:center}
  .hero h1{font-size:clamp(39px,12vw,58px);line-height:.98;max-width:100%}
  html:lang(fr) .hero h1{font-size:clamp(32px,9.6vw,48px);line-height:1.03;max-width:100%}
  .eyebrow{font-size:11px;letter-spacing:.15em}
  .lead{font-size:17px;line-height:1.45}
  html:lang(fr) .lead{font-size:16px;line-height:1.45}
  .copy h2,.feature-copy h2,.outcomes h2,.price h2,.success h2,.apply h2{font-size:clamp(32px,9vw,42px);line-height:1.04}
  html:lang(fr) .copy h2,html:lang(fr) .feature-copy h2,html:lang(fr) .outcomes h2,html:lang(fr) .price h2,html:lang(fr) .success h2,html:lang(fr) .apply h2{font-size:clamp(30px,8.1vw,38px);line-height:1.08}
  .copy p,.feature-copy p,.value-copy p,.success p,.apply-copy p{font-size:17px;line-height:1.55}
  .hero-card{width:100%;padding:22px;border-radius:24px}
  .hero-card strong{font-size:24px}
}
@media(max-width:390px){
  html:lang(fr) .hero h1{font-size:30px;line-height:1.06}
  .hero{padding-left:18px;padding-right:18px}
  html:lang(fr) .lead{font-size:15.5px}
}
