/* Landing page: hành trình từ muốn nói đến buổi học đầu tiên. */
body{background:radial-gradient(ellipse at 0 0,#6b380c55,transparent 780px),var(--bg)}
.wrap,.bar{max-width:1120px}
.page-nav{display:flex;gap:22px;margin-left:auto;margin-right:24px}
.page-nav a{font-size:12px;font-weight:600;text-decoration:none;color:var(--muted)}
.page-nav a:hover{color:var(--gold)}
.hero-focus{max-width:1000px;padding-top:86px;padding-bottom:48px}
.hero-focus h1{font-size:clamp(38px,5.7vw,70px);max-width:920px}
.hero-focus .lead{max-width:62ch}
.hero-route{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;width:100%;margin:42px 0 0;text-align:left;padding:0;list-style:none}
.hero-route li{border:1px solid #55432d;border-radius:16px;padding:20px;background:linear-gradient(140deg,#3c2a1a77,#151519);display:flex;gap:14px;align-items:center;font-size:13px;font-weight:600}
.hero-route span{font-family:var(--font-serif);font-style:italic;color:var(--gold);font-size:25px}
.section-cta{display:flex;justify-content:center;margin-top:32px}
#nguoi-day{border-bottom:1px solid var(--line)}
.who .portrait{box-shadow:0 0 70px #e5942320}
.who h2{font-size:clamp(29px,3.5vw,42px)}
.step{position:relative}.step p{line-height:1.75}
.gift:first-child{border-color:#9b6d35;background:linear-gradient(135deg,#47301d77,#17181d)}
.proof-note{padding:20px 24px;border-left:3px solid var(--gold);background:var(--card);border-radius:0 12px 12px 0;margin-top:24px;color:var(--muted)}
.booking-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start;text-align:left;margin-top:36px}
.booking-layout .formcard{margin:0;width:100%;max-width:none}
.booking-intro{padding-top:14px}.booking-intro h3{font-size:26px}.booking-intro p{margin:14px 0;max-width:none}
.booking-steps{list-style:none;counter-reset:booking;padding:0;display:grid;gap:20px;margin:28px 0}
.booking-steps li{counter-increment:booking;display:flex;gap:14px;align-items:start;color:var(--muted);font-size:14px}
.booking-steps li:before{content:counter(booking);display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;border:1px solid #77512f;color:var(--gold)}
.booking-steps strong{display:block;color:var(--ink);margin-bottom:3px}
.preview-notice{font-size:12px!important;border:1px solid var(--line);border-radius:10px;padding:14px;color:var(--muted)}
.mobile-booking{display:none}
.skip-link{position:fixed;top:-100px;left:16px;z-index:50;padding:12px;background:var(--gold);color:#16100a}.skip-link:focus{top:12px}
.sub:disabled{opacity:.65;cursor:wait}#done{scroll-margin-top:100px}
@media(max-width:1000px){.page-nav{gap:12px;margin-right:10px}.page-nav a{font-size:11px}.view-toggle{display:none}}
@media(max-width:860px){.page-nav{display:none}.booking-layout{grid-template-columns:1fr;gap:24px}.booking-intro{padding:0}.hero-route{grid-template-columns:1fr 1fr}.hero-focus{padding-top:52px}}
@media(max-width:520px){.hero-route{gap:8px;margin-top:30px}.hero-route li{padding:14px 12px;gap:10px;font-size:11px}.hero-route span{font-size:21px}.hero-focus h1{font-size:37px}.hero-focus .tag{max-width:100%;font-size:10px}.hero-focus .row{gap:14px}.hero-focus .btn.ghost{border:0;padding:8px}.tools #lang{display:none}.brand span{font-size:13px}.mini{font-size:12px}.mobile-booking{position:fixed;bottom:0;left:0;right:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#111216f5;border-top:1px solid #67472d;padding:10px 20px calc(10px + env(safe-area-inset-bottom));backdrop-filter:blur(12px)}.mobile-booking span{font-size:11px;color:var(--muted)}.mobile-booking strong{display:block;font-size:14px;color:var(--ink)}.mobile-booking .btn{font-size:12px;padding:11px 16px;min-height:42px}body{padding-bottom:84px}.toast{bottom:100px}.formcard{padding:20px}.booking-steps{gap:16px}.booking-layout{margin-top:24px}}
