:root{
  --bg0:#060815;
  --bg1:#0b1020;
  --card:#0e1530cc;
  --stroke:#24335f;
  --text:#ffffff;
  --muted:#b3bbcc;
  --muted2:#ffffff;
  --blue:#66a3ff;
  --cyan:#57e6ff;
  --gold:#ffcf57;
  --red:#ff4d5a;
  --shadow:0 18px 60px rgba(0,0,0,.45);
  --radius:18px;
  --radius2:24px;
  --container:1120px;
}

*{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(--text);
  background:radial-gradient(1200px 600px at 20% 10%, rgba(87,230,255,.10), transparent 55%),
             radial-gradient(900px 500px at 70% 0%, rgba(102,163,255,.10), transparent 50%),
             radial-gradient(1200px 800px at 50% 100%, rgba(255,77,90,.06), transparent 60%),
             linear-gradient(180deg, var(--bg0), var(--bg1));
  overflow-x:hidden;
}

a{color:inherit}
.container{
  width:min(var(--container), calc(100% - 40px));
  margin-inline:auto;
}

.bg{position:fixed; inset:0; pointer-events:none; z-index:-1}
.bg__glow{
  position:absolute; width:900px; height:900px; filter:blur(60px);
  opacity:.7; transform:translate3d(0,0,0);
}
.bg__glow--a{left:-260px; top:-360px; background:radial-gradient(circle at 30% 30%, rgba(87,230,255,.36), transparent 58%)}
.bg__glow--b{right:-320px; bottom:-420px; background:radial-gradient(circle at 30% 30%, rgba(255,207,87,.22), transparent 62%)}
.bg__noise{
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
  opacity:.35;
}

.topbar{
  position:sticky; top:0; z-index:10;
  backdrop-filter: blur(10px);
  background:linear-gradient(180deg, rgba(6,8,21,.82), rgba(6,8,21,.55));
  border-bottom:1px solid rgba(36,51,95,.6);
}
.topbar__inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 0;
}

.topbar .btn--ghost{
  background:linear-gradient(135deg, rgba(255,77,90,.95), rgba(255,207,87,.92));
  color:#1b0b0f;
  border:none;
  box-shadow:0 16px 40px rgba(255,77,90,.18);
}

.topbar .btn--ghost:hover{
  box-shadow:0 18px 50px rgba(255,77,90,.25);
  transform:translateY(-1px);
}

.brand{display:flex; align-items:center; gap:12px}
.brand__mark{
  width:auto; height:44px; display:grid; place-items:center;
  font-weight:800;
  letter-spacing:.4px;
}
.brand__name{font-weight:800; line-height:1.1}
.brand__sub{font-size:12px; color:var(--muted2)}
.brand--mini .brand__mark{width:36px; height:36px; border-radius:12px}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:10px;
  padding:12px 16px;
  border-radius:14px;
  font-weight:700;
  text-decoration:none;
  border:1px solid transparent;
  transition:transform .12s ease, background .12s ease, border-color .12s ease, box-shadow .12s ease;
  cursor:pointer;
  position: relative;
  overflow: hidden;
}
.btn:active{transform:translateY(1px)}
.btn--primary{
  background:linear-gradient(135deg, rgba(255,77,90,.95), rgba(255,207,87,.92));
  color:#1b0b0f;
  box-shadow:0 16px 40px rgba(255,77,90,.18);
}
.btn--primary:hover{box-shadow:0 18px 50px rgba(255,77,90,.25)}
.btn--ghost{
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.15);
  color: #fff;
  backdrop-filter: blur(10px);
  transition: .25s;
}

.btn--ghost:hover{
  background: linear-gradient(
    135deg,
    #66a3ff,
    #57e6ff
  );
  border-color: transparent;
  color: #061020;
  box-shadow: 0 10px 30px rgba(102,163,255,.4);
}

.btn--ghost:active{
  transform: translateY(0);
}
.btn--ghost::after{
  content:"";
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(255,255,255,.15),
    transparent
  );
  transition:.6s;
}

.btn--webinar{
  position: relative;
  padding: 14px 32px;
  border-radius: 14px;
  font-weight: 600;
  letter-spacing: .5px;
  overflow: hidden;
  color: #fff;
  border: none;
  cursor: pointer;
  background: linear-gradient(120deg,#8e54e9,#4776e6,#00d2ff);
  background-size: 200% auto;
  box-shadow: 0 10px 30px rgba(71,118,230,.35);
  transition: all .35s ease;
  animation: gradientMove 4s linear infinite;
}

/* Hover Effect */
.btn--webinar:hover{
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 20px 40px rgba(71,118,230,.55);
}

/* Shine Effect */
.btn--webinar::before{
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(255,255,255,.6),
    transparent
  );
  transform: skewX(-25deg);
  animation: shineMove 3s infinite;
}

/* Glow Effect */
.btn--webinar::after{
  content:'';
  position:absolute;
  inset:0;
  border-radius:14px;
  background: linear-gradient(120deg,#8e54e9,#4776e6,#00d2ff);
  filter: blur(15px);
  opacity:.6;
  z-index:-1;
  transition:.3s;
}

.btn--webinar:hover::after{
  opacity:1;
  filter: blur(20px);
}

/* Gradient Animation */
@keyframes gradientMove{
  0%{background-position:0%}
  100%{background-position:200%}
}

/* Shine Animation */
@keyframes shineMove{
  0%{left:-100%}
  60%{left:120%}
  100%{left:120%}
}

.btn--ghost:hover::after{
  left:100%;
}
.btn--full{width:100%}
.btn--lg{padding:14px 18px; border-radius:16px}

.hero{padding:42px 0 20px}
.hero__grid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:28px;
  align-items:start;
}
.badge-row{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:14px}
.badge{
  display:inline-flex; align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:999px;
  background:rgba(14,21,48,.45);
  border:1px solid rgba(36,51,95,.65);
  color:var(--muted);
  font-weight:700;
  font-size:12px;
}
.badge--rating{
  background:rgba(87,230,255,.10);
  border-color:rgba(87,230,255,.22);
}
.h1{
  margin:0 0 10px;
  font-size:44px;
  letter-spacing:-.02em;
  line-height:1.08;
}
.h1__accent{
  background:linear-gradient(90deg, var(--cyan), var(--blue), var(--gold));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.lead{margin:0 0 18px; color:var(--muted); font-size:16px; line-height:1.6}
.checks{display:grid; gap:10px; margin:18px 0}
.check{
  padding:10px 12px;
  border-radius:14px;
  background:rgba(14,21,48,.28);
  border:1px solid rgba(36,51,95,.55);
  color:var(--text);
}
.meta{display:flex; flex-wrap:wrap; gap:12px; margin:16px 0 20px}
.meta__item{
  font-size:13px; color:var(--muted2);
  padding:8px 10px;
  border-radius:999px;
  background:rgba(14,21,48,.22);
  border:1px dashed rgba(36,51,95,.65);
}
.stats{display:grid; grid-template-columns:repeat(3,1fr); gap:12px}
.stat{
  padding:14px 14px;
  border-radius:16px;
  background:rgba(14,21,48,.35);
  border:1px solid rgba(36,51,95,.55);
}
.stat__num{font-weight:800; font-size:18px}
.stat__label{font-size:12px; color:var(--muted2); margin-top:6px}

.hero__card{display:grid; gap:16px}
.card{
  background:linear-gradient(180deg, rgba(14,21,48,.70), rgba(14,21,48,.40));
  border:1px solid rgba(102,163,255,.20);
  border-radius:var(--radius2);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.card__head{
  padding:18px 18px 14px;
  border-bottom:1px solid rgba(36,51,95,.55);
  background:radial-gradient(900px 300px at 10% 0%, rgba(87,230,255,.14), transparent 55%),
             radial-gradient(800px 300px at 90% 0%, rgba(255,207,87,.12), transparent 55%);
}
.card__kicker{font-weight:800; letter-spacing:.02em}
.card__price{
  margin-top:8px;
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  color:var(--muted2);
  font-weight:700;
}
.price__new{color:var(--gold)}
.price__arrow{color:rgba(234,240,255,.55)}

.form{padding:16px 18px 18px; display:grid; gap:12px}
.field{display:grid; gap:6px}
.field__label{font-size:12px; color:var(--muted2); font-weight:700}
.field__input{
  width:100%;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(36,51,95,.75);
  background:rgba(6,8,21,.55);
  color:var(--text);
  outline:none;
}
.field__input:focus{
  border-color:rgba(87,230,255,.55);
  box-shadow:0 0 0 4px rgba(87,230,255,.10);
}
.lock{font-size:12px; color:var(--muted2); line-height:1.45}

.poster{
  border-radius:var(--radius2);
  overflow:hidden;
  border:1px solid rgba(36,51,95,.55);
  background:rgba(14,21,48,.25);
  box-shadow:var(--shadow);
}
.poster img{
  width:100%;
  display:block;
  height:auto;
}

.section{padding:42px 0}
.section--tight{padding:26px 0 40px}
.h2{
  margin:0 0 18px;
  font-size:28px;
  letter-spacing:-.02em;
}
.h3{margin:0 0 8px; font-size:18px}
.p{margin:0; color:var(--muted); line-height:1.65}

.steps{
  display:grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  gap:14px;
  align-items:stretch;
}
.step{
  padding:18px 18px;
  border-radius:var(--radius2);
  background:rgba(14,21,48,.30);
  border:1px solid rgba(36,51,95,.55);
}
.step__icon{font-size:22px; margin-bottom:10px}

/* Webinar Modal Styles */
.modal-overlay{
  position:fixed;
  inset:0;
  background:rgba(6,8,21,.85);
  backdrop-filter:blur(8px);
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
}
.modal-overlay.active{
  display:flex;
}

.modal{
  background:linear-gradient(135deg, #0e1530, #0b1020);
  border:1px solid var(--stroke);
  border-radius:var(--radius2);
  padding:32px;
  width:min(480px, calc(100% - 40px));
  max-height:90vh;
  overflow-y:auto;
  position:relative;
  box-shadow:var(--shadow);
}

.modal__close{
  position:absolute;
  top:16px;
  right:16px;
  background:none;
  border:none;
  color:var(--muted);
  font-size:28px;
  cursor:pointer;
  line-height:1;
}
.modal__close:hover{
  color:var(--text);
}

.modal__logo{
  width:70px;
  height:auto;
  display:block;
  margin:0 auto 16px;
}
.modal__title{
  margin:0 0 8px;
  font-size:24px;
  font-weight:700;
  color:var(--text);
  text-align: center;
}
.modal__subtitle{
  margin:0 0 24px;
  color:var(--muted);
  font-size:14px;
  text-align: center;
}

.webinar-form .form-group{
  margin-bottom:7px;
}
.webinar-form label{
  display:block;
  margin-bottom:5px;
  font-size:14px;
  font-weight:600;
  color:var(--muted2);
}
.webinar-form input,
.webinar-form textarea{
  width:100%;
  padding:12px 16px;
  background:rgba(6,8,21,.6);
  border:1px solid var(--stroke);
  border-radius:12px;
  color:var(--text);
  font-size:15px;
  font-family:inherit;
  transition:border-color .2s, box-shadow .2s;
}
.webinar-form input::placeholder,
.webinar-form textarea::placeholder{
  color:var(--muted);
}
.webinar-form input:focus,
.webinar-form textarea:focus{
  outline:none;
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(102,163,255,.15);
}
.webinar-form textarea{
  resize:vertical;
  min-height:100px;
}

.form-status{
  margin-top:12px;
  padding:12px;
  border-radius:8px;
  font-size:14px;
  text-align:center;
}
.form-status.success{
  background:rgba(87,230,255,.15);
  color:var(--cyan);
  border:1px solid rgba(87,230,255,.3);
}
.form-status.error{
  background:rgba(255,77,90,.15);
  color:var(--red);
  border:1px solid rgba(255,77,90,.3);
}
.step__meta{font-size:12px; color:var(--muted2); font-weight:700; margin-bottom:6px}
.steps__arrow{
  display:grid; place-items:center;
  color:rgba(234,240,255,.55);
  font-weight:900;
  font-size:22px;
}

.demo{
  display:grid;
  grid-template-columns: 1fr 320px;
  gap:16px;
  align-items:stretch;
}
.demo__frame{
  border-radius:var(--radius2);
  border:1px solid rgba(36,51,95,.55);
  background:
    radial-gradient(900px 300px at 20% 0%, rgba(102,163,255,.16), transparent 60%),
    radial-gradient(900px 300px at 80% 100%, rgba(255,77,90,.10), transparent 60%),
    rgba(14,21,48,.25);
  min-height:315px;
  display: flex;
  align-items: stretch;
  padding:0;
  height:100%;
  width:100%;
}
.demo__frame iframe {
  border-radius: var(--radius2);
  width: 100%;
  height: 100%;
  min-height: 315px;
  border: none;
  display: block;
}
.demo__hint {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  color: var(--muted);
  text-align: center;
  max-width: none;
  line-height: 1.6;
  display: flex;
  align-items: stretch;
  justify-content: stretch;
}
.demo__cta{
  border-radius:var(--radius2);
  border:1px solid rgba(36,51,95,.55);
  background:rgba(14,21,48,.30);
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
}
.small{font-size:12px; color:var(--muted2); line-height:1.45}
.small--muted{opacity:.9}

.learn{
  margin:0;
  padding-left:20px;
  display:grid;
  gap:10px;
}
.learn__item{
  padding:10px 10px;
  border-radius:14px;
  background:rgba(14,21,48,.22);
  border:1px solid rgba(36,51,95,.50);
  color:var(--muted);
}

.speaker__card{
  display:grid;
  grid-template-columns: 84px 1fr;
  gap:16px;
  padding:18px;
  border-radius:var(--radius2);
  background:rgba(14,21,48,.30);
  border:1px solid rgba(36,51,95,.55);
}
.speaker__avatar{
  width:84px; 
  height:84px;
  border-radius:50%;
  display:grid; 
  place-items:center;
  font-weight:900;
  background:radial-gradient(circle at 30% 30%, rgba(255,207,87,.20), rgba(102,163,255,.18) 55%, rgba(14,21,48,.25));
  border:1px solid rgba(255,207,87,.25);
}
.speaker__role{color:var(--muted2); font-weight:700; margin:4px 0 10px; font-size:13px}
.speaker__chips{display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 12px}
.chip{
  font-size:12px;
  color:var(--muted);
  border:1px solid rgba(36,51,95,.55);
  background:rgba(6,8,21,.35);
  border-radius:999px;
  padding:7px 10px;
}

.grid3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.tile{
  padding:18px;
  border-radius:var(--radius2);
  background:rgba(14,21,48,.30);
  border:1px solid rgba(36,51,95,.55);
}
.tile__num{font-weight:900; font-size:18px}
.tile__label{margin-top:8px; color:var(--muted); line-height:1.6}

.cta{
  padding:44px 0 54px;
  background:
    radial-gradient(1000px 500px at 15% 0%, rgba(87,230,255,.12), transparent 60%),
    radial-gradient(900px 500px at 85% 100%, rgba(255,207,87,.12), transparent 60%);
  border-top:1px solid rgba(36,51,95,.6);
  border-bottom:1px solid rgba(36,51,95,.6);
}
.cta__inner{
  display:grid;
  grid-template-columns: 1fr 340px;
  gap:18px;
  align-items:center;
}
.h2--cta{margin-bottom:10px}
.lead--cta{margin:0; color:var(--muted)}
.cta__actions{
  padding:18px;
  border-radius:var(--radius2);
  border:1px solid rgba(36,51,95,.55);
  background:rgba(14,21,48,.30);
  display:grid;
  gap:10px;
}

.footer{padding:26px 0}
.footer__inner{display:flex; justify-content:space-between; align-items:center; gap:14px}
.footer__left{display:grid; gap:10px}

@media (max-width: 980px){
  .hero__grid{grid-template-columns:1fr; gap:18px}
  .h1{font-size:38px}
  .stats{grid-template-columns:1fr; }
  .steps{grid-template-columns:1fr; gap:12px}
  .steps__arrow{display:none}
  .demo{grid-template-columns:1fr; }
  .cta__inner{grid-template-columns:1fr; }
  .grid3{grid-template-columns:1fr}
}

@media (max-width: 520px){
  .container{width:min(var(--container), calc(100% - 28px))}
  .h1{font-size:32px}
  .topbar__inner{padding:12px 0}
  .btn{padding:11px 14px}
  .speaker__card{grid-template-columns:1fr}
  .speaker__avatar{
    width:72px;
    height:72px;
    border-radius:50%;
  }
}
