:root{
  --bg:#ffffff;
  --ink:#0b1020;
  --muted:#5b6475;
  --line:#e7eaf0;
  --soft:#f6f8fb;
  --blue:#4A82B8;
  --blue-dark:#2f5f8a;
  --radius:18px;
  --gold:#c7a76a;
  --cta:#25D366; /* WhatsApp green */
  --cta-dark:#19b955;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
}
img{max-width:100%;display:block}
a{color:inherit}
.container{max-width:1120px;margin:0 auto;padding:0 20px}

.nav{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.82);
  backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid var(--line);
}
.nav__inner{display:flex;align-items:center;gap:14px;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand__logo{height:130px;width:auto}
.nav__links{display:flex;gap:16px;flex:1;justify-content:center}
.nav__links a{
  text-decoration:none;
  font-weight:600;
  font-size:14px;
  color:var(--muted);
  padding:8px 10px;
  border-radius:12px;
}
.nav__links a:hover{background:var(--soft);color:var(--ink)}

.hero{position:relative;overflow:hidden;padding:90px 0 44px}
.hero--photo .lead{max-width:44ch}
.hero--photo .hero__grid{position:relative;z-index:2}
.hero__photo{position:absolute;left:0;right:0;top:0;height:520px;z-index:0;overflow:hidden}
.hero__photo img{width:100%;height:100%;object-fit:cover;object-position:center 35%;transform:translate3d(0,var(--parallax,0px),0);will-change:transform}
.hero__overlay{position:absolute;left:0;right:0;top:0;height:520px;z-index:1;background:linear-gradient(90deg, rgba(11,16,32,.72) 0%, rgba(11,16,32,.45) 44%, rgba(11,16,32,.18) 70%, rgba(11,16,32,0) 100%)}
.hero__grid{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:start}
.pill{background:rgba(255,255,255,.92)}
.hero--photo h1{color:#fff}
.hero--photo .lead{color:rgba(255,255,255,.92)}
.hero--photo .lead strong{color:#fff}
.hero--photo .lead a{color:#fff;text-decoration:underline}
.hero--photo .bullet{background:rgba(255,255,255,.90)}
.hero--photo .trust__item{background:rgba(255,255,255,.90)}
.hero--photo .micro{color:rgba(255,255,255,.82)}
.hero--photo .micro a{color:#fff}
.pill{
  display:inline-flex;align-items:center;
  padding:8px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  color:var(--muted);
  font-weight:600;
  font-size:13px;
  background:#fff;
}
h1{margin:14px 0 10px;font-size:46px;line-height:1.04;letter-spacing:-0.03em}
.lead{margin:0 0 18px;color:var(--muted);font-size:18px;line-height:1.5}
.hero__bullets{display:grid;gap:10px;margin:18px 0 18px}
.bullet{
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  color:var(--ink);
  font-weight:600;
  font-size:14px;
}

.card{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:#fff;
  padding:18px;
  box-shadow:0 18px 50px rgba(15,23,42,.08);
}
.card--glass{
  background:rgba(255,255,255,.72);
  backdrop-filter:saturate(180%) blur(14px);
}
.card__title{margin:0 0 12px;font-size:18px}
.checklist{margin:0;padding:0 0 0 18px;color:var(--muted)}
.checklist li{margin:8px 0}
.price{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:14px 0 16px;padding-top:14px;border-top:1px solid var(--line)}
.price__label{font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.price__value{font-size:32px;font-weight:800;letter-spacing:-.02em}
.price__old{opacity:.55;font-weight:700;margin-right:10px}
.price__new{color:var(--cta-dark)}
.price__tag{font-size:14px;font-weight:700;color:var(--muted);margin-left:8px;white-space:nowrap}
.price__note{font-size:13px;color:var(--muted);font-weight:600}

.section{padding:56px 0}
.section--soft{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section__head{margin-bottom:22px}
.section__head h2{margin:0 0 8px;font-size:30px;letter-spacing:-.02em}
.section__head p{margin:0;color:var(--muted);max-width:72ch}

.cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:18px}
.panel h3{margin:0 0 8px;font-size:18px}
.panel p{margin:0 0 10px;color:var(--muted);line-height:1.55}
.bullets{margin:0;padding-left:18px;color:var(--muted)}
.bullets li{margin:8px 0}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.feature{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:18px}
.feature h3{margin:0 0 8px;font-size:18px}
.feature p{margin:0;color:var(--muted);line-height:1.55}

.cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;align-items:start}
.card--flat{box-shadow:none}
.img{margin-top:12px;border-radius:14px;border:1px solid var(--line)}

.banner{margin:0 0 22px}
.banner__img{width:100%;height:320px;object-fit:cover;object-position:center 35%;border-radius:22px;border:1px solid var(--line);box-shadow:0 18px 60px rgba(15,23,42,.10)}
@media (max-width: 940px){
  .banner__img{height:220px}
}

.presenter{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;align-items:start}
.presenter__copy p{margin:0;color:var(--muted);line-height:1.6}
.presenter__card{display:flex;flex-direction:column;gap:12px}
.presenter__photo{padding:0;overflow:hidden}
.avatar{width:100%;height:100%;max-height:360px;object-fit:cover}

.final__price{margin:18px auto 18px;max-width:520px;border:1px solid var(--line);background:#fff;border-radius:var(--radius);padding:16px}
.final__price .price__label{text-align:center}
.final__price .price__value{text-align:center}
.final__price .price__note{text-align:center;margin-top:6px}

.final{text-align:center}
.final h2{margin:0 0 8px;font-size:34px;letter-spacing:-.02em}
.final p{margin:0 0 16px;color:var(--muted)}

.footer{border-top:1px solid var(--line);padding:18px 0;background:#fff}
.footer__inner{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-weight:600}
.footer__links{display:flex;gap:14px}
.footer__links a{text-decoration:none;color:var(--muted)}
.footer__links a:hover{color:var(--ink)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  gap:10px;
  padding:11px 14px;
  border-radius:14px;
  font-weight:800;
  text-decoration:none;
  border:1px solid var(--line);
  background:#fff;
}
.btn--primary{background:var(--cta);border-color:transparent;color:#0b1020;box-shadow:0 18px 40px rgba(37,211,102,.28)}
.btn--primary:hover{background:var(--cta-dark)}
.btn--ghost{background:#fff}
.btn--ghost:hover{background:var(--soft)}
.btn--lg{padding:13px 18px;border-radius:16px}
.cta{display:flex;gap:12px;align-items:center;margin-top:14px;flex-wrap:wrap}
.micro{margin:12px 0 0;color:var(--muted);font-size:13px}
.micro--center{text-align:center}

/* Speakers */
.speakers{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.16)}
.speakers__title{margin:0 0 10px;font-size:14px;letter-spacing:.2px;text-transform:uppercase;color:rgba(255,255,255,.9)}
.speakers__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.speaker{border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(0,0,0,.22);padding:10px;backdrop-filter:blur(6px)}
.speaker__photo{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;border:1px solid rgba(255,255,255,.12)}
.speaker__meta{margin-top:8px}
.speaker__name{margin-top:0;font-weight:700;font-size:14px;color:rgba(255,255,255,.96)}
.speaker__role{margin-top:4px;font-size:12px;line-height:1.35;color:rgba(255,255,255,.78)}

/* Speakers (light section) */
.speakers--light{margin-top:0;padding-top:0;border-top:0}
.speakers--light .speakers__title{color:var(--ink)}
.speakers--light .speaker{border:1px solid var(--line);background:#fff;backdrop-filter:none}
.speakers--light .speaker__photo{border:1px solid var(--line)}
.speakers--light .speaker__name{color:var(--ink)}
.speakers--light .speaker__role{color:var(--muted)}
/* In light mode, the meta container should not add extra top margin when stacked */
.speakers--light .speaker__meta{margin-top:8px}

/* Fit speakers below presenter photo */
.presenter__card .speakers__grid{gap:10px}
.presenter__card .speaker{padding:10px}
.presenter__card .speaker__photo{border-radius:12px}
.presenter__card .speaker__name{font-size:13px}
.presenter__card .speaker__role{font-size:11.5px}

/* When the presenter column gets narrow, force the stacked list layout (default) */
.presenter__card .speakers__grid{grid-template-columns:1fr}
.presenter__card .speaker{display:grid;grid-template-columns:92px 1fr;gap:12px;align-items:stretch}
.presenter__card .speaker__photo{width:92px !important;height:100% !important;aspect-ratio:auto !important}
.presenter__card .speaker__photo{grid-column:1}
.presenter__card .speaker__meta{grid-column:2;margin-top:0}
.presenter__card .speaker__name{margin-top:0}
.presenter__card .speaker__role{margin-top:2px}

/* Desktop: speakers in a 3-column row spanning full width */
@media (min-width: 941px){
  .presenter__card{display:contents}
  .presenter__photo{grid-column:2}
  .presenter__card .speakers{grid-column:1 / -1;margin-top:18px}
  .presenter__card .speakers__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .presenter__card .speaker{display:block;padding:14px}
  .presenter__card .speaker__photo{width:100% !important;height:auto !important;aspect-ratio:1/1 !important}
  .presenter__card .speaker__meta{margin-top:10px}
  .presenter__card .speaker__name{font-size:14px}
  .presenter__card .speaker__role{font-size:12.5px}
}

@media (max-width:860px){
  .speakers__grid{grid-template-columns:1fr}
  .speaker{display:grid;grid-template-columns:92px 1fr;gap:12px;align-items:stretch}
  /* On narrow screens we show photo left + text right.
     Make the photo take the same height as the text block. */
  .speaker__photo{height:100%;aspect-ratio:auto}
  .speaker__meta{margin-top:0}
  .speaker__name{margin-top:0}
}

.trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.trust__item{font-size:12px;font-weight:800;color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px}

.illus{width:100%;height:160px;object-fit:contain;display:block;margin:-6px auto 8px;filter:drop-shadow(0 18px 28px rgba(15,23,42,.10))}
.small{color:var(--muted);font-weight:700;font-size:13px}

@media (max-width: 940px){
  .nav__links{display:none}
  .hero__grid{grid-template-columns:1fr;}
  h1{font-size:38px}
  .presenter{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .cols{grid-template-columns:1fr}
}

@media (prefers-reduced-motion: reduce){
  .hero__bg{transform:none !important}
}
