body.page-home{background:transparent}

.page-home .shell--home{
  position:relative;
  isolation:isolate;
  min-height:100vh;
  min-height:100dvh;
}

.page-home .shell-main--home{
  width:100%;
  margin:0;
  padding:0;
  display:block;
  flex:1 1 auto;
}

.page-home .shell-header,
.page-home .shell-footer{
  position:relative;
  z-index:2;
  background-color:var(--home-shell-chrome);
}

.page-home .shell-header{backdrop-filter:blur(10px)}
.page-home .shell-footer{border-top-color:var(--home-shell-border)}
.page-home .header-noise::after,
.page-home .shell-footer::before{background-image:none}

.home-page{
  position:relative;
}

.home-page__media{
  position:fixed;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
  background-color:var(--bg-main);
}

.home-page__media::before,
.home-page__media::after,
.home-page__veil{
  position:absolute;
  inset:0;
}

.home-page__media::before,
.home-page__media::after{content:""}

.home-page__media::before{
  background:
    radial-gradient(circle at 16% 18%, rgba(243,177,75,.12), transparent 18%),
    radial-gradient(circle at 82% 18%, rgba(71,208,255,.16), transparent 24%),
    linear-gradient(180deg, rgba(3,8,14,.24) 0%, rgba(3,8,14,.38) 24%, rgba(3,8,14,.60) 64%, rgba(3,8,14,.92) 100%),
    linear-gradient(90deg, rgba(3,8,14,.64) 0%, rgba(3,8,14,.22) 40%, rgba(3,8,14,.56) 100%);
  opacity:var(--home-veil-dark-opacity);
}

.home-page__media::after{
  background:
    radial-gradient(circle at 16% 18%, rgba(243,177,75,.08), transparent 18%),
    radial-gradient(circle at 82% 18%, rgba(71,208,255,.10), transparent 24%),
    linear-gradient(180deg, rgba(244,247,251,.12) 0%, rgba(244,247,251,.30) 24%, rgba(244,247,251,.68) 64%, rgba(244,247,251,.90) 100%),
    linear-gradient(90deg, rgba(244,247,251,.56) 0%, rgba(244,247,251,.16) 40%, rgba(244,247,251,.46) 100%);
  opacity:var(--home-veil-light-opacity);
}

.home-page__video,
.home-page__veil{
  width:100%;
  height:100%;
}

.home-page__video{
  display:block;
  object-fit:cover;
  object-position:center center;
}

.home-page__veil{
  background:rgba(0,0,0,.76);
  opacity:var(--home-veil-contrast-opacity);
}

.home-hero{
  position:relative;
  z-index:1;
  min-height:calc(85dvh - var(--header-offset));
  display:flex;
  align-items:center;
}

.home-hero__inner{
  width:min(calc(100% - 48px), 1540px);
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  align-content:center;
  padding:18px 0 16px;
}

.home-copy,
.home-newsletter{
  position:relative;
  width:100%;
  border:1px solid var(--home-shell-border);
  background:var(--home-frost-surface);
  box-shadow:inset 0 0 0 1px var(--inner-stroke), var(--shadow-lift);
  backdrop-filter:blur(12px);
  overflow:hidden;
}

.home-copy::before,
.home-newsletter::before{
  content:"";
  position:absolute;
  left:-1px;
  top:-1px;
  width:24px;
  height:24px;
  border-top:1px solid var(--accent-main);
  border-left:1px solid var(--accent-main);
  opacity:.8;
}

.home-copy::after,
.home-newsletter::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(90deg,var(--grid-line) 1px, transparent 1px),linear-gradient(180deg,var(--grid-line) 1px, transparent 1px);
  background-size:44px 44px;
  opacity:.10;
  pointer-events:none;
}

.home-copy{
  padding:34px 38px;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.home-newsletter{
  padding:22px 28px;
  display:grid;
  gap:16px;
  background:linear-gradient(180deg, var(--home-frost-featured) 0%, var(--home-frost-surface) 100%);
}

.home-copy__eyebrow{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:30px;
  padding:0 12px;
  border:1px solid var(--home-shell-border);
  background:var(--home-frost-muted);
  font-size:10px;
  font-weight:900;
  letter-spacing:.20em;
  text-transform:uppercase;
  color:var(--text-soft);
}

.home-copy__title,
.home-newsletter__title{
  position:relative;
  z-index:1;
  margin:0;
}

.home-copy__title{
  font-size:clamp(34px, 4.8vw, 72px);
  line-height:.96;
  letter-spacing:-.05em;
  max-width:none;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.08em;
}

.home-copy__intros{
  position:relative;
  display:block;
  width:100%;
  min-height:1.12em;
}

.home-copy__intro{
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  opacity:0;
  transform:translateY(.16em);
  animation:home-intro-rotator 20s linear infinite;
  will-change:opacity, transform;
  text-shadow:0 0 18px rgba(0,0,0,.18);
}

.home-copy__intro--1{animation-delay:0s;color:#f3b14b}
.home-copy__intro--2{animation-delay:2s;color:#5fd4ff}
.home-copy__intro--3{animation-delay:4s;color:#78e0c4}
.home-copy__intro--4{animation-delay:6s;color:#9f8cff}
.home-copy__intro--5{animation-delay:8s;color:#ff9c6e}
.home-copy__intro--6{animation-delay:10s;color:#8ddf61}
.home-copy__intro--7{animation-delay:12s;color:#ffd166}
.home-copy__intro--8{animation-delay:14s;color:#55d8ef}
.home-copy__intro--9{animation-delay:16s;color:#c7a1ff}
.home-copy__intro--10{animation-delay:18s;color:#ffbf47}

.home-copy__fixed{
  display:block;
  color:var(--text-main);
}

@keyframes home-intro-rotator{
  0%, 100%{
    opacity:0;
    transform:translateY(.16em);
  }
  3%, 8.5%{
    opacity:1;
    transform:translateY(0);
  }
  10%, 100%{
    opacity:0;
    transform:translateY(-.10em);
  }
}

@media (prefers-reduced-motion: reduce){
  .home-copy__intro{
    animation:none;
    opacity:0;
    transform:none;
  }

  .home-copy__intro--1{opacity:1;position:relative}
}

.home-copy__body{
  position:relative;
  z-index:1;
  margin:0;
  max-width:150ch;
  font-size:17px;
  line-height:1.58;
  color:var(--text-main);
}

.home-newsletter__title{
  font-size:clamp(24px, 2.1vw, 34px);
  line-height:1.04;
  letter-spacing:-.04em;
}

.home-newsletter__body{
  position:relative;
  z-index:1;
  margin:0;
  max-width:150ch;
  font-size:15px;
  line-height:1.58;
  color:var(--text-main);
}

.home-newsletter__form{
  position:relative;
  z-index:1;
  display:grid;
}

.home-newsletter__label{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0, 0, 0, 0);
  white-space:nowrap;
  border:0;
}

.home-newsletter__trap{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

.home-newsletter__controls{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 190px;
  gap:12px;
  align-items:stretch;
}

.home-newsletter__input,
.home-newsletter__submit{
  min-height:56px;
  border:1px solid var(--border-main);
  background:var(--surface-main);
  color:var(--text-main);
  transition:border-color var(--fast), background var(--fast), color var(--fast), transform var(--fast), box-shadow var(--fast);
}

.home-newsletter__input{
  width:100%;
  padding:0 18px;
  font-size:15px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);
}

.home-newsletter__input::placeholder{color:var(--text-dim)}

.home-newsletter__submit{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 20px;
  text-transform:uppercase;
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  background:linear-gradient(180deg, rgba(243,177,75,.18) 0%, rgba(243,177,75,.10) 100%), var(--surface-main);
}

.home-newsletter__submit::before{
  content:"";
  position:absolute;
  left:-1px;
  top:-1px;
  width:18px;
  height:18px;
  border-top:1px solid var(--accent-main);
  border-left:1px solid var(--accent-main);
  opacity:.75;
}

.home-newsletter__submit:hover,
.home-newsletter__submit:focus-visible{
  transform:translateY(-1px);
  border-color:var(--border-strong);
  background:linear-gradient(180deg, rgba(243,177,75,.24) 0%, rgba(243,177,75,.14) 100%), var(--surface-strong);
  box-shadow:var(--shadow-lift);
}

@media (max-width: 760px){
  .page-home .shell-main--home{padding:0}
  .home-page,
  .home-hero{min-height:calc(100dvh - 108px)}

  .home-hero__inner{
    width:min(calc(100% - 28px), 760px);
    gap:14px;
    padding:14px 0 18px;
  }

  .home-copy,
  .home-newsletter{
    padding:20px 18px;
  }

  .home-copy__eyebrow{
    min-height:28px;
    font-size:9px;
    letter-spacing:.16em;
  }

  .home-copy__title{
    font-size:clamp(28px, 10vw, 44px);
    line-height:.98;
  }

  .home-copy__intros{
    min-height:1.95em;
  }

  .home-copy__body,
  .home-newsletter__title,
  .home-newsletter__body{
    max-width:none;
  }

  .home-copy__body{
    font-size:14px;
    line-height:1.52;
  }

  .home-newsletter__title{
    font-size:clamp(20px, 7vw, 28px);
  }

  .home-newsletter__body{
    font-size:14px;
    line-height:1.52;
  }

  .home-newsletter__controls{
    grid-template-columns:1fr;
    gap:10px;
  }

  .home-newsletter__input,
  .home-newsletter__submit{
    min-height:54px;
  }

  .home-newsletter__submit{width:100%}
}
