:root{
  --header-edge:21px;
  --header-height:66px;
  --header-slot:87px;
}

html{scroll-padding-top:0}
main > .section[id]{scroll-margin-top:calc(var(--header-edge) + var(--header-height) + 20px)}
.stage{z-index:5}
.header-spacer{height:var(--header-slot)}

.header{
  position:fixed;
  z-index:6;
  top:var(--header-edge);
  left:0;
  right:0;
  width:calc(100% - 48px);
  max-width:1320px;
  min-height:var(--header-height);
  margin:0 auto;
  padding:9px 17px;
  opacity:1;
  animation:none;
  background:rgba(11,20,36,.76);
  border-color:rgba(206,224,246,.16);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:background .26s ease,border-color .26s ease,box-shadow .26s ease;
}
body.is-scrolled .header{
  background:rgba(11,20,36,.88);
  border-color:rgba(206,224,246,.2);
  box-shadow:0 12px 30px rgba(2,8,18,.22);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.header nav a{position:relative}
.header nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-11px;
  height:2px;
  background:var(--gold);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .23s ease;
}
.header nav a.is-active{color:var(--goldlight)}
.header nav a.is-active::after{transform:scaleX(1)}
a:focus-visible,button:focus-visible,summary:focus-visible{
  outline:2px solid var(--goldlight);
  outline-offset:4px;
}

.mobile-nav{
  position:fixed;
  z-index:7;
  top:calc(var(--header-edge) + var(--header-height) + 8px);
  max-height:calc(100vh - var(--header-edge) - var(--header-height) - 20px);
  max-height:calc(100dvh - var(--header-edge) - var(--header-height) - 20px);
  overflow-y:auto;
  overscroll-behavior:contain;
  left:20px;
  right:20px;
  width:auto;
  max-width:420px;
  margin:0 0 0 auto;
  padding:10px;
  background:rgba(11,24,42,.96);
  border-color:rgba(206,224,246,.22);
  box-shadow:0 20px 42px rgba(2,8,18,.35);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.mobile-nav a{display:flex;align-items:center;min-height:44px}
.menu-toggle{width:44px;height:44px}
.mobile-nav a.is-active{background:rgba(213,173,69,.13);color:var(--goldlight)}
.mobile-nav .mobile-connect{
  margin-top:6px;
  background:var(--gold);
  color:var(--navy);
  font-weight:800;
  text-align:center;
}
.mobile-nav .mobile-connect:hover{background:var(--goldlight);color:var(--navy)}

.devices-section{background:linear-gradient(180deg,#0B1424 0%,#10233A 52%,#0F2036 100%)}
.plans-section{background:radial-gradient(ellipse at 80% 25%,rgba(27,65,103,.2),transparent 47%),linear-gradient(180deg,#0F2036 0%,#0C1B2F 54%,#10233B 100%)}
.plans-support-note{margin:8px 0 0;color:var(--slate);font-size:14px}
.plans-support-note a{color:var(--goldlight);text-decoration:underline;text-decoration-color:rgba(234,215,165,.45);text-underline-offset:4px}
.plans-support-note a:hover{text-decoration-color:currentColor}
.steps-section{background:linear-gradient(180deg,#10233B 0%,#142B4A 45%,#0D1C30 100%)}
.faq-section{padding:110px 0 78px;background:linear-gradient(180deg,#0D1C30 0%,#0B192C 45%,#0B1424 100%)}
.footer{background:linear-gradient(180deg,#0B1424 0%,#081322 35%)}

html.js .reveal{
  opacity:.86;
  transform:translateY(14px);
  transition:opacity .62s ease,transform .62s cubic-bezier(.2,.8,.2,1);
}
html.js .reveal.is-visible{opacity:1;transform:none}
html.js .device-stage:not(.is-visible) img{transform:translateY(22px)}

.closing-cta{
  position:relative;
  isolation:isolate;
  min-height:174px;
  margin:86px 0 0;
  padding:36px 44px;
  gap:36px;
  border:1px solid rgba(213,173,69,.36);
  border-radius:16px;
  background:radial-gradient(ellipse at 82% 16%,rgba(213,173,69,.1),transparent 38%),
    linear-gradient(108deg,#193755,#142B4A 58%,#102239);
  box-shadow:0 20px 42px rgba(2,10,20,.13);
}
.closing-cta > div,.closing-cta > a{position:relative;z-index:1}
.closing-cta .closing-glow{
  z-index:0;
  right:-55px;
  top:-175px;
  width:430px;
  height:430px;
  border:0;
  background:radial-gradient(circle,rgba(234,215,165,.12),transparent 66%);
  box-shadow:none;
  filter:blur(6px);
}
.closing-cta .section-index{margin-bottom:10px}
.closing-cta h2{font-size:clamp(29px,2.7vw,39px)}
.closing-cta p:last-child{margin:10px 0 0}
.closing-cta .primary{flex:0 0 auto}

@media(max-width:960px){
  :root{--header-edge:14px;--header-slot:80px}
  .header{width:calc(100% - 40px);margin:0 auto}
  .closing-cta{gap:22px;padding:32px 34px}
}
@media(max-width:700px){
  :root{--header-edge:12px;--header-height:62px;--header-slot:74px}
  .header{width:calc(100% - 24px);margin:0 auto;padding:8px 12px}
  .mobile-nav{left:12px;right:12px;max-width:none;margin:0}
  .faq-section{padding:77px 0 54px}
  .closing-cta{display:flex;flex-direction:column;align-items:stretch;min-height:0;margin-top:62px;padding:30px 24px;gap:22px;border-radius:14px}
  .closing-cta .primary{margin-top:0;justify-content:space-between}
  .closing-cta .closing-glow{right:-140px;top:-140px}
}
@media(prefers-reduced-motion:reduce){
  html.js .reveal{opacity:1;transform:none;transition:none}
  html.js .device-stage:not(.is-visible) img{transform:none}
  .header,.header nav a::after{transition:none}
}
