:root{
  --midnight:#020817;
  --navy:#061627;
  --cyan:#06d9e8;
  --blue:#2473ff;
  --purple:#8236f4;
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--midnight)}
body{
  margin:0;
  background:var(--midnight);
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  overflow-x:hidden;
}
.site-nav{
  position:fixed;
  z-index:1000;
  top:16px;
  left:50%;
  transform:translateX(-50%);
  width:min(1180px,calc(100% - 28px));
  min-height:64px;
  padding:9px 12px 9px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(2,8,23,.86);
  backdrop-filter:blur(18px);
  box-shadow:0 18px 60px rgba(0,0,0,.45);
}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;min-width:260px}
.brand img{width:43px;height:43px;object-fit:contain}
.brand-copy{display:flex;flex-direction:column;line-height:1.05}
.brand-copy strong{font-size:14px;letter-spacing:.22em}
.brand-copy small{
  font-size:10px;
  margin-top:5px;
  background:linear-gradient(90deg,var(--cyan),var(--blue),var(--purple));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  white-space:nowrap;
}
.nav-links{display:flex;align-items:center;gap:25px}
.nav-links a{color:#fff;text-decoration:none;font-size:12px;font-weight:700}
.nav-links a:not(.partner-button):hover{color:var(--cyan)}
.partner-button{
  padding:13px 20px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--cyan),var(--blue),var(--purple));
  box-shadow:0 8px 25px rgba(36,115,255,.4);
}
.menu-button{
  display:none;background:transparent;color:#fff;border:0;font-size:25px;cursor:pointer;
}
main{background:var(--midnight)}
.slide-section{
  position:relative;
  width:100%;
  min-height:100vh;
  padding:96px 0 0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:var(--midnight);
}
.slide-section img{
  display:block;
  width:100%;
  height:auto;
  max-height:calc(100vh - 96px);
  object-fit:contain;
  object-position:center;
  background:var(--midnight);
}
.hero-section{padding-top:0;min-height:100vh}
.hero-section img{
  width:100%;
  height:100vh;
  max-height:none;
  object-fit:cover;
  object-position:center;
}
.scroll-cue{
  position:absolute;
  bottom:24px;
  left:50%;
  transform:translateX(-50%);
  padding:10px 16px;
  color:#fff;
  text-decoration:none;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  border-radius:999px;
  background:rgba(2,8,23,.7);
  border:1px solid rgba(255,255,255,.2);
  backdrop-filter:blur(10px);
}
.final-actions{
  position:absolute;
  bottom:44px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:12px;
}
.final-actions a{
  color:#fff;
  text-decoration:none;
  font-weight:800;
  font-size:13px;
  padding:13px 20px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--cyan),var(--blue),var(--purple));
}
.final-actions a.secondary{
  background:rgba(2,8,23,.72);
  border:1px solid rgba(255,255,255,.3);
}
footer{
  min-height:90px;
  padding:20px max(24px,calc((100% - 1160px)/2));
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#010511;
  border-top:1px solid rgba(255,255,255,.12);
  color:#d7e4f3;
  font-size:12px;
}
.footer-brand{display:flex;align-items:center;gap:10px}
.footer-brand img{width:36px;height:36px}
.footer-brand span{display:flex;flex-direction:column}
.footer-brand strong{letter-spacing:.14em}
.footer-brand small{color:#4fe5f2;margin-top:3px}

@media (max-width:850px){
  .site-nav{border-radius:24px;align-items:flex-start;min-height:58px;flex-wrap:wrap}
  .brand{min-width:auto}
  .brand-copy small{display:none}
  .menu-button{display:block}
  .nav-links{
    display:none;
    width:100%;
    padding:15px 8px 6px;
    flex-direction:column;
    align-items:stretch;
    gap:6px;
  }
  .nav-links.open{display:flex}
  .nav-links a{padding:11px 14px;border-radius:12px;background:rgba(255,255,255,.05)}
  .partner-button{text-align:center}
  .slide-section{min-height:auto;padding-top:85px}
  .slide-section img{width:100%;height:auto;max-height:none;object-fit:contain}
  /* Mobile hero: show the complete artwork instead of zooming/cropping it. */
  .hero-section{
    min-height:auto;
    padding-top:96px;
    align-items:flex-start;
  }
  .hero-section img{
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    max-height:none;
    object-fit:contain;
    object-position:center top;
  }
  .hero-section .scroll-cue{
    bottom:14px;
    font-size:10px;
    padding:9px 14px;
    white-space:nowrap;
  }
  .final-actions{position:static;transform:none;padding:22px;justify-content:center;flex-wrap:wrap}
  footer{flex-direction:column;gap:15px;text-align:center}
}

/* v4 anchor navigation improvements */
.slide-section { scroll-margin-top: 92px; }
.anchor-alias { display:block; height:0; scroll-margin-top:92px; }
.sr-only {
  position:absolute !important;
  width:1px; height:1px;
  padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0);
  white-space:nowrap; border:0;
}
.nav-links a.active:not(.partner-button) { color:var(--cyan); }
.nav-links a.active::after {
  content:"";
  display:block;
  height:2px;
  margin-top:5px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--cyan),var(--purple));
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
}

/* v5 launch-ready refinements */
.final-actions { display:none !important; }

.launch-cta{
  width:100%;
  min-height:128px;
  padding:24px max(28px,calc((100% - 1160px)/2));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  background:linear-gradient(100deg,#010511,#06162a 58%,#0a1731);
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.launch-cta-copy{
  display:flex;
  align-items:center;
  gap:16px;
}
.launch-cta-copy img{
  width:64px;
  height:64px;
  object-fit:contain;
}
.launch-cta-copy div{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.launch-cta-copy span{
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  color:var(--cyan);
}
.launch-cta-copy strong{
  font-size:clamp(22px,3vw,36px);
  line-height:1;
}
.launch-cta-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.launch-cta-actions a{
  color:#fff;
  text-decoration:none;
  font-weight:800;
  font-size:13px;
  padding:14px 22px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--cyan),var(--blue),var(--purple));
  box-shadow:0 10px 28px rgba(36,115,255,.3);
}
.launch-cta-actions a.secondary{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.28);
  box-shadow:none;
}
.launch-cta-actions a:hover{
  transform:translateY(-1px);
}

@media(max-width:850px){
  .launch-cta{
    flex-direction:column;
    align-items:flex-start;
  }
  .launch-cta-actions{
    width:100%;
    justify-content:flex-start;
  }
}


/* v5.4 mobile anchor navigation: keep section links visible as a compact scrollable row. */
@media (max-width:850px){
  .site-nav{
    top:10px;
    width:calc(100% - 20px);
    min-height:118px;
    padding:10px 12px 9px;
    border-radius:24px;
    align-items:center;
  }
  .brand img{width:38px;height:38px}
  .brand-copy strong{font-size:13px;letter-spacing:.18em}
  .menu-button{display:none}
  .nav-links,
  .nav-links.open{
    display:flex;
    width:100%;
    padding:9px 0 0;
    flex-direction:row;
    align-items:center;
    gap:8px;
    overflow-x:auto;
    overflow-y:hidden;
    white-space:nowrap;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .nav-links::-webkit-scrollbar{display:none}
  .nav-links a{
    flex:0 0 auto;
    padding:8px 12px;
    border-radius:999px;
    font-size:10px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
  }
  .nav-links a.active:not(.partner-button){
    color:#fff;
    background:linear-gradient(90deg,rgba(6,217,232,.28),rgba(130,54,244,.28));
    border-color:rgba(76,214,255,.45);
  }
  .nav-links a.active::after{display:none}
  .partner-button{
    padding:8px 13px !important;
    text-align:center;
  }
  .slide-section{padding-top:138px}
  .hero-section{padding-top:138px}
  .slide-section{scroll-margin-top:132px}
  .anchor-alias{scroll-margin-top:132px}
}

/* v5.6 typography consistency: keep the closing CTA heading identical across desktop and mobile browsers. */
.launch-cta-copy strong{
  font-family:Arial,Helvetica,sans-serif !important;
  font-style:normal !important;
  font-weight:800 !important;
  letter-spacing:-0.02em;
  text-transform:none;
  font-synthesis:none;
}
@media (max-width:850px){
  .launch-cta-copy strong{
    font-size:clamp(24px,7vw,32px);
    line-height:1.08;
  }
}


/* V6.0 launch candidate: elegant text navigation with active-section highlight. */
.nav-links{
  gap:24px;
}
.nav-links a,
.nav-links .partner-button{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 2px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:rgba(255,255,255,.82);
  font-family:Arial,Helvetica,sans-serif;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
  transition:color .2s ease, transform .2s ease;
}
.nav-links a:hover,
.nav-links .partner-button:hover{
  color:#fff;
  transform:translateY(-1px);
}
.nav-links a::after,
.nav-links .partner-button::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:2px;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--cyan),var(--blue),var(--purple));
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .22s ease;
}
.nav-links a:hover::after,
.nav-links a.active::after,
.nav-links .partner-button:hover::after,
.nav-links .partner-button.active::after{
  transform:scaleX(1);
}
.nav-links a.active,
.nav-links a.active:not(.partner-button),
.nav-links .partner-button.active{
  color:#fff;
  background:transparent;
  border-color:transparent;
}

@media (max-width:850px){
  .site-nav{
    min-height:104px;
    padding:10px 13px 8px;
  }
  .nav-links,
  .nav-links.open{
    gap:20px;
    padding:7px 2px 0;
  }
  .nav-links a,
  .nav-links .partner-button{
    padding:8px 0 9px !important;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    font-size:10.5px;
    color:rgba(255,255,255,.78);
  }
  .nav-links a.active,
  .nav-links a.active:not(.partner-button),
  .nav-links .partner-button.active{
    color:#fff;
    background:transparent;
    border-color:transparent;
  }
  .nav-links a.active::after,
  .nav-links .partner-button.active::after{
    display:block;
    transform:scaleX(1);
  }
  .slide-section,
  .hero-section{
    padding-top:124px;
  }
  .slide-section{scroll-margin-top:118px}
  .anchor-alias{scroll-margin-top:118px}
}

.footer-links {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
}

.footer-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.linkedin-icon {
    width: 32px;
    height: 32px;
    display: block;
    object-fit: contain;
    transition: transform 0.2s ease;
}

.footer-links a:hover .linkedin-icon {
    transform: scale(1.15);
    opacity: 0.9;
}