:root {
  --lime:#dfff00;
  --purple:#5603ad;
  --ink:#151e3f;
  --red:#d64045;
  --paper:#fbfbfb;
  --blue:#657ed4;
  --muted:#74798c;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; }
.site-header { position:absolute; inset:0 0 auto; z-index:10; height:90px; display:flex; align-items:center; justify-content:space-between; padding:0 5vw; color:#fff; border-bottom:1px solid #ffffff30; }
.brand { display:flex; align-items:center; color:inherit; text-decoration:none; }
.brand img { display:block; width:74px; height:74px; object-fit:contain; }
nav { display:flex; align-items:center; gap:34px; }
nav a { text-decoration:none; font-weight:700; font-size:13px; }
.nav-cta { border:1px solid #ffffff70; padding:12px 18px; }
.hero { position:relative; min-height:820px; height:100vh; color:#fff; display:flex; align-items:center; overflow:hidden; }
.hero-image { position:absolute; inset:0; background:url("assets/kids-muay-thai-hero.png") center/cover no-repeat; }
.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg, rgba(21,30,63,.98) 0%,rgba(21,30,63,.82) 42%,rgba(21,30,63,.16) 78%),linear-gradient(0deg,rgba(21,30,63,.66),transparent 45%); }
.hero-content { position:relative; z-index:2; width:min(760px,90vw); margin-left:8vw; padding-top:70px; }
.eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 22px; text-transform:uppercase; letter-spacing:.16em; font-weight:800; font-size:12px; }
.eyebrow span { width:32px; height:3px; background:var(--lime); }
.eyebrow.dark span { background:var(--purple); }
.eyebrow.dark { color:#575757; }
h1,h2 { margin:0; font-stretch:condensed; font-family:Impact, "Arial Narrow", sans-serif; font-weight:900; line-height:.91; letter-spacing:.01em; }
h1 { font-size:clamp(64px,7.7vw,118px); }
h1 em,h2 em { color:var(--red); font-style:normal; }
.hero-copy { max-width:610px; margin:30px 0; color:#d4d4d4; font-size:18px; line-height:1.65; }
.hero-actions { display:flex; align-items:center; gap:30px; }
.button { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; min-height:56px; padding:0 24px; border:0; text-transform:uppercase; text-decoration:none; font-weight:900; font-size:12px; letter-spacing:.08em; cursor:pointer; }
.button span { font-size:20px; }
.primary { background:var(--red); color:#fff; box-shadow:8px 8px 0 #5603ad55; }
.primary:hover { background:var(--purple); }
.text-link { color:#fff; font-weight:700; text-underline-offset:6px; }
.trust-row { display:flex; gap:42px; margin-top:48px; padding-top:26px; border-top:1px solid #ffffff28; width:max-content; }
.trust-row span { color:#aaa; text-transform:uppercase; font-size:10px; line-height:1.4; letter-spacing:.1em; }
.trust-row b { color:#fff; font-size:20px; margin-right:5px; }
.scroll-cue { position:absolute; z-index:2; right:4vw; bottom:45px; writing-mode:vertical-rl; text-decoration:none; letter-spacing:.18em; font-size:9px; font-weight:800; }
.scroll-cue span { margin-top:14px; color:var(--red); font-size:20px; }
.section { padding:110px 8vw; }
.intro { display:grid; grid-template-columns:1fr 1fr; gap:10vw; }
h2 { font-size:clamp(48px,5.6vw,82px); }
.intro-copy>p { font-size:19px; line-height:1.75; margin:0 0 38px; color:#424242; }
.schedule { display:grid; grid-template-columns:auto 1fr; column-gap:25px; align-items:center; background:var(--ink); color:#fff; padding:24px 28px; border-left:5px solid var(--lime); }
.schedule span { grid-row:1/3; color:var(--lime); font-family:Impact,sans-serif; font-size:27px; }
.schedule strong { font-size:20px; }
.schedule small { color:#a8a8a8; margin-top:5px; }
.benefits { display:grid; grid-template-columns:repeat(4,1fr); padding-top:0; }
.benefits article { min-height:290px; padding:30px; border:1px solid #d7d2c9; transition:.25s; }
.benefits article:hover { background:var(--purple); color:#fff; transform:translateY(-6px); }
.number { font:18px Impact,sans-serif; color:var(--purple); }
.benefits article:hover .number { color:#fff; }
.benefits h3 { margin:80px 0 14px; text-transform:uppercase; font-size:20px; }
.benefits p { margin:0; color:#656565; line-height:1.55; font-size:14px; }
.benefits article:hover p { color:#fff; }
.trainers { background:var(--ink); color:#fff; display:grid; grid-template-columns:.8fr 1.2fr; gap:9vw; }
.trainer-heading>p:last-child { color:#999; line-height:1.7; max-width:390px; }
.trainer-list article { display:grid; grid-template-columns:35px 62px 1fr auto; align-items:center; gap:20px; padding:25px 0; border-top:1px solid #ffffff21; }
.trainer-list article:last-child { border-bottom:1px solid #ffffff21; }
.trainer-index { color:#666; font:16px Impact,sans-serif; }
.avatar { width:58px; height:58px; display:grid; place-items:center; background:#202b55; border:1px solid var(--blue); color:var(--lime); font-weight:900; }
.trainer-list h3 { margin:0 0 5px; text-transform:uppercase; }
.trainer-list p { margin:0; color:#888; font-size:13px; }
.certified { color:#aaa; font-size:10px; line-height:1.5; text-transform:uppercase; letter-spacing:.08em; }
.trial { position:relative; background:var(--ink); color:#fff; display:grid; grid-template-columns:1fr 440px; gap:10vw; }
.trial:before { content:""; position:absolute; left:0; top:0; bottom:0; width:5px; background:var(--red); }
.trial-copy>p:not(.eyebrow) { color:#aaa; line-height:1.75; max-width:550px; }
.trial ul { list-style:none; padding:0; margin:30px 0 0; display:grid; gap:14px; font-weight:700; }
.trial li span { color:var(--lime); margin-right:10px; }
.trial-form { background:var(--paper); color:var(--ink); padding:35px; box-shadow:14px 14px 0 #0004; }
.trial-form h3 { text-transform:uppercase; font-size:24px; margin:0 0 5px; }
.trial-form>p { color:#666; font-size:13px; margin-bottom:25px; }
.trial-form label { display:grid; gap:7px; margin-bottom:15px; font-weight:800; font-size:11px; text-transform:uppercase; letter-spacing:.06em; }
.trial-form input,.trial-form select { width:100%; min-height:48px; padding:0 12px; border:1px solid #ccc7bd; background:#fff; font:14px Arial,sans-serif; }
.form-row { display:grid; grid-template-columns:.65fr 1.35fr; gap:12px; }
.trial-form .consent { display:flex; align-items:flex-start; gap:8px; text-transform:none; font-weight:400; line-height:1.5; letter-spacing:0; }
.consent input { width:16px; min-height:auto; margin-top:2px; }
.trial-form .button { width:100%; }
.trial-form>small { display:block; text-align:center; margin-top:15px; color:#666; }
.website-field { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.form-message { padding:13px 15px; margin:0 0 18px; font-size:13px; font-weight:700; line-height:1.5; }
.form-message.success { color:#164d23; background:#e0f5e4; border-left:4px solid #2e8b45; }
.form-message.error { color:#711d20; background:#f9e3e4; border-left:4px solid var(--red); }
input:focus,select:focus,a:focus-visible,button:focus-visible { outline:3px solid var(--lime); outline-offset:3px; }
.location { display:grid; grid-template-columns:1fr .7fr auto; align-items:end; gap:7vw; }
address { font-style:normal; line-height:1.8; color:#555; }
address strong { color:var(--ink); text-transform:uppercase; }
.outline { border:2px solid var(--ink); }
.outline:hover { background:var(--blue); border-color:var(--blue); color:#fff; }
footer { background:#0d1533; color:#fff; min-height:190px; padding:55px 8vw; display:flex; align-items:center; justify-content:space-between; gap:30px; }
footer p { color:#777; font-size:12px; line-height:1.6; }
footer>div { display:flex; gap:22px; font-size:11px; color:#aaa; }

@media (max-width:900px) {
  nav a:not(.nav-cta) { display:none; }
  .hero { min-height:760px; }
  .hero-shade { background:linear-gradient(90deg,rgba(21,30,63,.96),rgba(21,30,63,.56)),linear-gradient(0deg,rgba(21,30,63,.82),transparent); }
  .hero-content { margin-left:6vw; }
  .section { padding:80px 6vw; }
  .intro,.trainers,.trial { grid-template-columns:1fr; gap:55px; }
  .benefits { grid-template-columns:1fr 1fr; padding-top:0; }
  .trial { grid-template-columns:1fr minmax(0,560px); }
  .location { grid-template-columns:1fr 1fr; }
  .location .button { grid-column:2; }
}
@media (max-width:600px) {
  .site-header { height:74px; padding:0 20px; }
  .brand img { width:58px; height:58px; }
  .nav-cta { padding:10px 12px; font-size:10px; }
  .hero { height:auto; min-height:760px; align-items:flex-end; padding-bottom:50px; }
  .hero-image { background-position:62% center; }
  .hero-shade { background:linear-gradient(0deg,rgba(21,30,63,.98) 20%,rgba(21,30,63,.42) 90%); }
  .hero-content { margin:0 20px; padding:130px 0 0; }
  h1 { font-size:52px; }
  .hero-copy { font-size:15px; line-height:1.55; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:20px; }
  .trust-row { width:100%; gap:13px; justify-content:space-between; }
  .trust-row span { font-size:8px; }
  .trust-row b { display:block; font-size:17px; }
  .scroll-cue { display:none; }
  .benefits { grid-template-columns:1fr; }
  .benefits article { min-height:220px; }
  .benefits h3 { margin-top:55px; }
  .trainer-list article { grid-template-columns:30px 52px 1fr; gap:12px; }
  .avatar { width:50px; height:50px; }
  .certified { grid-column:3; }
  .trial-form { padding:25px 20px; }
  .form-row { grid-template-columns:1fr; }
  .location { grid-template-columns:1fr; align-items:start; }
  .location .button { grid-column:auto; }
  footer { align-items:flex-start; flex-direction:column; }
  footer>div { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }
