:root{
  --allisto-navy:#04142d;
  --allisto-navy-soft:#0b2348;
  --allisto-blue:#174cff;
  --allisto-purple:#7a28ef;
  --allisto-pink:#f52778;
  --allisto-orange:#ff9e0b;
  --allisto-orange-deep:#ff7400;
  --allisto-paper:#f8faff;
  --allisto-copy:#d9deeb;
  --allisto-muted:#aab4c7;
  --allisto-line:rgba(255,255,255,.14);
  --allisto-gradient:linear-gradient(135deg,#174cff 0%,#7028f1 38%,#f52778 70%,#ff9e0b 100%);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#050b18}
body{
  min-height:100vh;
  margin:0;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 8% 3%,rgba(23,76,255,.19),transparent 27%),
    radial-gradient(circle at 90% 12%,rgba(245,39,120,.15),transparent 25%),
    radial-gradient(circle at 52% 100%,rgba(122,40,239,.11),transparent 30%),
    linear-gradient(160deg,#071226 0%,#080c18 46%,#05070d 100%);
  color:#fff;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.35;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,black,transparent 72%);
}
a{color:inherit}

.home-header{
  position:relative;
  z-index:20;
  width:min(1180px,calc(100% - 36px));
  margin:auto;
  padding:22px 0 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
.home-logo{
  display:inline-flex;
  align-items:center;
  width:auto;
  max-width:min(48vw,270px);
  padding:7px 10px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(23,76,255,.15);
  box-shadow:0 16px 42px rgba(0,0,0,.28),0 0 0 4px rgba(122,40,239,.05);
  line-height:0;
}
.home-logo img{display:block;width:min(240px,100%);height:auto;filter:none!important}
.home-nav{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.home-link,.home-button,.primary,.secondary{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:11px 17px;
  text-decoration:none;
  font-size:13px;
  font-weight:900;
  line-height:1.1;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.home-link,.secondary{
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.065)!important;
  box-shadow:none!important;
}
.home-button,.primary{
  color:#07152d!important;
  border:1px solid transparent!important;
  background:linear-gradient(135deg,#ffb30d,#ff7a00)!important;
  box-shadow:0 12px 28px rgba(255,126,0,.22)!important;
}
.home-link:hover,.secondary:hover{border-color:rgba(255,255,255,.34)!important;background:rgba(255,255,255,.1)!important;transform:translateY(-1px)}
.home-button:hover,.primary:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(255,126,0,.28)!important}
.home-link:focus-visible,.home-button:focus-visible,.primary:focus-visible,.secondary:focus-visible,.customer-language-control select:focus-visible{
  outline:3px solid #9eb9ff;
  outline-offset:3px;
}
.customer-language-control select{
  min-height:46px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:0 34px 0 14px;
  background:#101b31;
  color:#fff;
  font:850 12px/1 inherit;
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.hero{
  width:min(1180px,calc(100% - 36px));
  margin:58px auto clamp(76px,9vw,116px);
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(480px,1.12fr);
  gap:clamp(38px,5vw,68px);
  align-items:center;
}
.hero-copy{position:relative;z-index:2}
.eyebrow{
  margin:0 0 13px;
  color:#9eb9ff!important;
  font-size:12px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.hero h1{
  margin:0;
  max-width:690px;
  background:var(--allisto-gradient);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-size:clamp(56px,7vw,94px);
  line-height:.91;
  letter-spacing:-.067em;
  text-wrap:balance;
  text-shadow:none;
}
.hero-lead{
  max-width:630px;
  margin:25px 0;
  color:var(--allisto-copy);
  font-size:clamp(18px,2vw,22px);
  line-height:1.5;
}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap}
.trust-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}
.trust-row span{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  background:rgba(255,255,255,.055);
  color:#c5cede;
  font-size:11px;
  font-weight:850;
}
.trust-row span::before{content:"";width:6px;height:6px;margin-right:7px;border-radius:50%;background:linear-gradient(135deg,#6e8eff,#f52778)}

.hero-preview{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  aspect-ratio:16/10;
  min-height:0;
  padding:11px;
  overflow:hidden;
  border:2px solid rgba(255,158,11,.88)!important;
  border-radius:28px;
  background:linear-gradient(145deg,#fff7f9,#fffaf0);
  color:#8e153b;
  box-shadow:0 34px 90px rgba(0,0,0,.52),0 0 54px rgba(122,40,239,.17)!important;
  transform:rotate(.7deg);
}
.hero-preview::before{
  content:"";
  position:absolute;
  inset:-35% 48% 38% -20%;
  z-index:-1;
  background:radial-gradient(circle,rgba(245,39,120,.15),transparent 68%);
}
.preview-top{
  display:grid;
  grid-template-columns:minmax(82px,120px) 1fr minmax(75px,105px);
  align-items:center;
  gap:10px;
  padding:7px;
}
.preview-logo,.preview-time{
  padding:11px 8px;
  border:1px solid currentColor;
  border-radius:12px;
  text-align:center;
  font-size:12px;
  font-weight:950;
}
.preview-top>strong{text-align:center;font-size:clamp(23px,2.4vw,34px);font-style:italic;letter-spacing:-.035em}
.preview-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:9px;min-height:0}
.preview-photo,.preview-special{
  min-height:0;
  overflow:hidden;
  border:2px solid currentColor;
  border-radius:18px;
  display:grid;
  place-items:center;
  text-align:center;
}
.preview-photo{
  position:relative;
  background:
    radial-gradient(circle at 68% 30%,rgba(122,40,239,.34),transparent 28%),
    radial-gradient(circle at 28% 78%,rgba(23,76,255,.28),transparent 32%),
    linear-gradient(145deg,#171a25,#303241);
  color:#fff;
  font-size:13px;
  font-weight:950;
  letter-spacing:.13em;
}
.preview-photo::before,.preview-photo::after{content:"";position:absolute;border-radius:50%;filter:blur(1px)}
.preview-photo::before{width:82px;height:82px;left:18%;top:16%;background:linear-gradient(145deg,#174cff,#7a28ef)}
.preview-photo::after{width:118px;height:118px;right:8%;bottom:4%;background:linear-gradient(145deg,#f52778,#ff9e0b);opacity:.76}
.preview-photo{isolation:isolate}.preview-photo::before,.preview-photo::after{z-index:-1}
.preview-special{padding:clamp(17px,3vw,30px);align-content:center;background:rgba(255,255,255,.34)}
.preview-special small{font-size:10px;font-weight:950;letter-spacing:.04em}
.preview-special strong{display:block;margin:10px 0;font-size:clamp(27px,3vw,39px);line-height:.96;letter-spacing:-.045em}
.preview-special p{margin:0;font-size:13px;font-weight:750;line-height:1.35}
.preview-ticker{text-align:center;font-size:10px;font-weight:900;padding:10px 0 1px}

.feature-section,.story,.player-home-section,.final-cta{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto clamp(76px,9vw,112px);
}
.section-heading{max-width:820px}
.section-heading h2,.story h2,.player-home-section h2,.final-cta h2{
  margin:0;
  font-size:clamp(36px,5vw,64px);
  line-height:1;
  letter-spacing:-.052em;
  text-wrap:balance;
}
.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px}
.features article{
  min-height:220px;
  padding:28px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.features article:hover{transform:translateY(-4px);border-color:rgba(126,157,255,.34);background:linear-gradient(145deg,rgba(23,76,255,.11),rgba(255,255,255,.025))}
.features span{display:inline-flex;color:#ffad0a;font-size:12px;font-weight:950;letter-spacing:.08em}
.features h3{margin:18px 0 10px;font-size:23px;line-height:1.12;letter-spacing:-.025em}
.features p,.story p,.player-home-section p,.final-cta p{color:#c3cada;line-height:1.62}

.story{
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  align-items:center;
  gap:42px;
  padding:clamp(32px,5vw,56px);
  border:1px solid rgba(122,40,239,.30)!important;
  border-radius:32px;
  background:radial-gradient(circle at 100% 0,rgba(245,39,120,.15),transparent 36%),linear-gradient(145deg,#102549,#07172f)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.24);
}
.story>div:first-child{max-width:760px}
.story p{max-width:720px;margin-bottom:0}
.story-mark{
  width:170px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  justify-self:end;
  overflow:hidden;
  padding:21px;
  border-radius:40px;
  background:#fff!important;
  box-shadow:0 22px 52px rgba(4,20,45,.32),0 0 0 5px rgba(255,255,255,.06)!important;
}
.story-mark img{display:block;width:100%;height:100%;object-fit:contain}

.player-home-section{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);
  gap:clamp(30px,5vw,58px);
  align-items:center;
  padding:clamp(34px,6vw,66px);
  border:1px solid rgba(245,39,120,.28)!important;
  border-radius:32px;
  background:radial-gradient(circle at 90% 0,rgba(245,39,120,.17),transparent 34%),radial-gradient(circle at 6% 100%,rgba(23,76,255,.15),transparent 35%),linear-gradient(145deg,#0d2448,#07152e)!important;
  color:#fff;
  box-shadow:0 28px 80px rgba(0,0,0,.27)!important;
}
.player-home-section>div:first-child{max-width:720px}
.player-home-section h2{margin:7px 0 13px;color:#fff}
.player-home-section p{margin-bottom:20px}
.player-home-section small{display:block;margin-top:15px;color:rgba(255,255,255,.65);font-size:11px;line-height:1.48}
.player-home-section .secondary{color:#fff!important}
.player-device-visual{
  position:relative;
  display:grid;
  align-content:center;
  min-height:245px;
  overflow:hidden;
  padding:32px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:28px;
  background:linear-gradient(160deg,#292b35,#11131a);
  box-shadow:inset 0 0 0 1px rgba(255,158,11,.22),0 24px 50px rgba(0,0,0,.25)!important;
}
.player-device-visual::after{content:"";position:absolute;width:170px;height:170px;right:-58px;top:-64px;border-radius:50%;background:var(--allisto-gradient);filter:blur(3px);opacity:.22}
.player-device-visual span{color:#ffad0a!important;font-size:11px;font-weight:950;letter-spacing:.16em}
.player-device-visual strong{margin-top:5px;color:#fff;font-size:clamp(40px,6vw,64px);line-height:.9;letter-spacing:-.055em}
.player-device-visual small{margin-top:12px;color:rgba(255,255,255,.66);font-weight:850;letter-spacing:.04em}

.final-cta{
  padding:clamp(44px,7vw,72px) 24px;
  border:1px solid rgba(23,76,255,.18)!important;
  border-radius:32px;
  background:linear-gradient(145deg,#f8faff,#fff1e5)!important;
  color:#111114;
  text-align:center;
  box-shadow:0 26px 70px rgba(4,20,45,.20)!important;
}
.final-cta p{margin:16px auto 22px;max-width:620px;color:#4f5561}
.final-cta .primary{display:inline-flex;background:#07172f!important;color:#fff!important;box-shadow:0 12px 30px rgba(4,20,45,.22)!important}
footer{text-align:center;color:#929cad;padding:0 20px 42px;font-size:13px}
footer a{color:#fff}

@media(max-width:960px){
  .hero{grid-template-columns:1fr;margin-top:38px}
  .hero-copy{max-width:760px}
  .hero-preview{width:min(760px,100%);justify-self:center;transform:none}
  .features{grid-template-columns:1fr}
  .features article{min-height:0}
}

@media(max-width:760px){
  .home-header{width:min(100% - 20px,680px);display:grid;grid-template-columns:1fr;padding-top:12px;gap:12px}
  .home-logo{max-width:min(76vw,245px);justify-self:start}
  .home-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}
  .home-nav>*{width:100%;min-width:0}
  .home-link,.home-button,.customer-language-control select{min-height:42px;font-size:11px;padding-inline:10px}
  .hero{width:min(100% - 20px,680px);margin:38px auto 72px;gap:32px}
  .hero h1{font-size:clamp(48px,15vw,67px)}
  .hero-lead{font-size:17px}
  .feature-section,.story,.player-home-section,.final-cta{width:min(100% - 20px,680px);margin-bottom:72px}
  .story,.player-home-section{grid-template-columns:1fr;padding:29px 24px}
  .story-mark{width:116px;justify-self:start;border-radius:29px;padding:14px}
  .player-device-visual{min-height:185px;padding:25px}
}

@media(max-width:520px){
  .home-logo{max-width:min(72vw,225px)}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr}
  .hero-actions a{width:100%;padding-inline:10px;font-size:12px}
  .trust-row{margin-top:18px}
  .hero-preview{aspect-ratio:16/11;padding:7px;border-radius:20px}
  .preview-top{grid-template-columns:64px 1fr 60px;gap:6px;padding:4px}
  .preview-logo,.preview-time{padding:6px 3px;border-radius:8px;font-size:8px}
  .preview-top>strong{font-size:17px}
  .preview-grid{grid-template-columns:.9fr 1.1fr;gap:6px}
  .preview-photo,.preview-special{border-width:1.5px;border-radius:12px}
  .preview-photo{font-size:8px}
  .preview-photo::before{width:48px;height:48px}.preview-photo::after{width:68px;height:68px}
  .preview-special{padding:8px}
  .preview-special small{font-size:6px}
  .preview-special strong{margin:5px 0;font-size:18px}
  .preview-special p{font-size:7px;line-height:1.2}
  .preview-ticker{padding:5px 0 0;font-size:6px}
  .section-heading h2,.story h2,.player-home-section h2,.final-cta h2{font-size:36px}
  .features article{padding:23px;border-radius:21px}
  .story,.player-home-section,.final-cta{border-radius:24px}
  .player-home-section .hero-actions{grid-template-columns:1fr}
  .final-cta{padding:40px 20px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .home-link,.home-button,.primary,.secondary,.features article{transition:none}
  .home-link:hover,.home-button:hover,.primary:hover,.secondary:hover,.features article:hover{transform:none}
}
