/* LandingStyle.css — Hype Neon (Demo A) */

.landing-wrapper.landing-a{
  position: relative;
  min-height: 70vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  padding: 54px 18px 64px;
  overflow:hidden;
  text-align:center;
}


/* Darken the mesh so it stays readable (less pastel) */
.landing-wrapper.landing-a::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    radial-gradient(circle at 50% 20%, rgba(0,0,0,.55), transparent 55%),
    radial-gradient(circle at 50% 100%, rgba(0,0,0,.70), transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.30));
}

/* Background mesh */
.landing-bg-a{
  position:absolute;
  inset:-40%;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 22%, rgba(56,189,248,.16), transparent 38%),
    radial-gradient(circle at 82% 18%, rgba(251,55,160,.16), transparent 38%),
    radial-gradient(circle at 55% 88%, rgba(167,139,250,.14), transparent 42%),
    conic-gradient(from 120deg, rgba(56,189,248,.06), rgba(251,55,160,.06), rgba(167,139,250,.06), rgba(56,189,248,.06));
  filter: blur(18px);
  opacity:.60;
  animation: landingFloatA 16s ease-in-out infinite alternate;
}
@keyframes landingFloatA{
  0%{ transform: translate3d(0,0,0) rotate(0deg) scale(1); }
  100%{ transform: translate3d(3vw,-2vh,0) rotate(8deg) scale(1.05); }
}

/* Extra glows (reusing your existing hooks) */
.hero-glow-1,.hero-glow-2,.hero-glow-3{
  position:absolute;
  filter: blur(90px);
  opacity:.22;
  z-index:0;
  pointer-events:none;
}
.hero-glow-1{ top:-25%; left:-15%; width:55%; height:55%; background: radial-gradient(circle, var(--neon-pink), transparent 62%); }
.hero-glow-2{ bottom:-22%; right:-18%; width:65%; height:55%; background: radial-gradient(circle, var(--neon-cyan), transparent 62%); }
.hero-glow-3{ top:10%; right:-15%; width:55%; height:45%; background: radial-gradient(circle, var(--neon-purple), transparent 62%); }

/* Hero */
.hero-content{
  max-width: 860px;
  z-index:2;
  position:relative;
  margin-bottom: 22px;
}

.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 0 0 1px rgba(56,189,248,.06);
  font-size: 11px;
  font-weight: 900;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: rgba(226,232,240,.95);
}
.hero-badge-strong{
  background: linear-gradient(90deg, rgba(251,55,160,.06), rgba(56,189,248,.06));
  border-color: rgba(56,189,248,.22);
}

.hero-title{
  margin: 18px 0 12px;
  font-weight: 900;
  letter-spacing: -0.03em;
  color: #fff;
}
.hero-title-big{
  font-size: clamp(32px, 3.8vw, 52px);
  line-height: 1.05;
  text-shadow: 0 0 40px rgba(0,0,0,.55);
}
.hero-title-subline{
  display:block;
  margin-top: 10px;
  font-size: 14px;
  font-weight: 800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color: rgba(226,232,240,.70);
}

.gradient-text{
  background: linear-gradient(90deg, #fff 10%, var(--neon-cyan) 45%, var(--neon-pink) 70%, #fff 92%);
  -webkit-background-clip:text;
  -webkit-text-fill-color: transparent;
  background-size: 220% 100%;
  animation: shimmer 4.5s ease-in-out infinite;
  filter: drop-shadow(0 0 10px rgba(56,189,248,.25));
}
@keyframes shimmer{
  0%,100%{ background-position: 0% 50%; }
  50%{ background-position: 100% 50%; }
}

.hero-sub{
  margin: 0 auto 18px;
  max-width: 720px;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(226,232,240,.72);
}
.hero-sub-strong{ font-size: 15px; }

.hero-actions{
  display:flex;
  gap: 12px;
  justify-content:center;
  flex-wrap: wrap;
  margin-top: 14px;
}
.hero-btn-xl{
  padding: 12px 16px;
  font-size: 13px;
  min-width: 190px;
}

/* Metrics */
.hero-metrics{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}
.metric{
  border-radius: 18px;
  padding: 12px 12px 11px;
  background: rgba(2,6,23,.50);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}
.metric-big{
  font-size: 18px;
  font-weight: 900;
  letter-spacing: .02em;
}
.metric-sub{
  margin-top: 4px;
  font-size: 12px;
  color: rgba(226,232,240,.62);
  text-transform: uppercase;
  letter-spacing: .12em;
}

/* Marquee */
.hero-marquee{
  width: min(1080px, 100%);
  margin: 22px auto 0;
  border-radius: 999px;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(2,6,23,.55);
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
  z-index:2;
  position:relative;
}
.marquee-track{
  display:flex;
  gap: 18px;
  padding: 9px 14px;
  white-space: nowrap;
  animation: marquee 18s linear infinite;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(226,232,240,.75);
}
.marquee-track span:nth-child(2n){
  color: rgba(56,189,248,.95);
}
@keyframes marquee{
  from{ transform: translateX(0); }
  to{ transform: translateX(-50%); }
}

/* Pricing tease */
.pricing-tease{
  width: min(1080px, 100%);
  margin: 26px auto 0;
  z-index:2;
  position:relative;
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 14px;
  align-items: stretch;
}
.pricing-tease-card{
  border-radius: 20px;
  padding: 16px;
  background: linear-gradient(180deg, rgba(15,23,42,.72), rgba(2,6,23,.92));
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 18px 70px rgba(0,0,0,.40);
  text-align:left;
  position:relative;
  overflow:hidden;
}
.pricing-tease-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: linear-gradient(120deg, rgba(56,189,248,.0), rgba(56,189,248,.18), rgba(251,55,160,.16), rgba(56,189,248,.0));
  opacity:.55;
  filter: blur(12px);
  animation: sheen 6s ease-in-out infinite;
}
@keyframes sheen{
  0%,100%{ transform: translateX(-20%) rotate(0deg); }
  50%{ transform: translateX(20%) rotate(8deg); }
}
.pricing-tease-card > *{ position:relative; z-index:2; }

.pricing-kicker{
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(226,232,240,.60);
  font-weight: 900;
}
.pricing-headline{
  margin-top: 10px;
  font-size: 24px;
  font-weight: 900;
  color:#fff;
  line-height:1.15;
}
.pricing-bullets{
  margin-top: 12px;
  display:grid;
  gap: 8px;
  font-size: 13px;
  color: rgba(226,232,240,.74);
}
.pricing-cta-row{
  margin-top: 16px;
  display:flex;
  align-items:center;
  gap: 14px;
  flex-wrap: wrap;
}
.pricing-fineprint{
  font-size: 12px;
  color: rgba(226,232,240,.55);
}

.pricing-tease-media{
  border-radius: 22px;
  padding: 14px;
  background: rgba(2,6,23,.55);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 18px 70px rgba(0,0,0,.40);
 overflow:hidden;}
.media-stack{
  height: 100%;
  display:grid;
  place-items:center;
  position:relative;
  min-height: 230px;
}
.media-card{
  width: min(240px, 70%);
  aspect-ratio: 3 / 4.7;
  border-radius: 20px;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 50px rgba(0,0,0,.55);
  position:absolute;
}
.media-card img{ width:100%; height:100%; object-fit:cover; display:block; }
.media-card:nth-child(1){ transform: translate(-12%, 8%) rotate(-6deg); }
.media-card:nth-child(2){ transform: translate(6%, -2%) rotate(5deg); }
.media-card:nth-child(3){ transform: translate(14%, 12%) rotate(10deg); opacity:.95; }

/* Showcase + features reuse existing names but with a richer vibe */
.showcase-section{
  width: min(1080px, 100%);
  margin: 26px auto 0;
  z-index:2;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap: 14px;
}
.showcase-text h2{
  margin: 0;
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing:.12em;
  color:#fff;
}
.showcase-text p{
  margin: 6px 0 0;
  color: rgba(226,232,240,.65);
  max-width: 780px;
}

.showcase-strip{
  display:flex;
  gap: 14px;
  width: 100%;
  overflow-x:auto;
  padding: 16px 8px 6px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
.showcase-card{
  flex: 0 0 190px;
  height: 300px;
  border-radius: 22px;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.35);
  scroll-snap-align:center;
  position:relative;
  box-shadow: 0 18px 60px rgba(0,0,0,.45);
  transition: transform .18s ease, filter .18s ease, border-color .18s ease;
}
.showcase-card:hover{
  transform: translateY(-6px);
  border-color: rgba(56,189,248,.38);
}
.showcase-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter: saturate(1.05) contrast(1.05);
}

/* Features grid */
.features-grid{
  width: min(1080px, 100%);
  margin-top: 22px;
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
  z-index:2;
  position:relative;
}
.feature-card{
  border-radius: 20px;
  padding: 16px;
  background: linear-gradient(180deg, rgba(15,23,42,.68), rgba(2,6,23,.90));
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 18px 70px rgba(0,0,0,.35);
  text-align:left;
  transition: transform .18s ease, border-color .18s ease, filter .18s ease;
}
.feature-card:hover{
  transform: translateY(-4px);
  border-color: rgba(251,55,160,.35);
  filter: brightness(1.04);
}
.feature-icon{
  font-size: 24px;
  width: 40px;
  height: 40px;
  display:grid;
  place-items:center;
  border-radius: 14px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.10);
  margin-bottom: 10px;
}
.feature-card h3{
  margin: 0 0 6px;
  font-size: 15px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color:#fff;
}
.feature-card p{
  margin:0;
  font-size: 13px;
  color: rgba(226,232,240,.70);
  line-height: 1.55;
}

/* Final CTA */
.landing-final-cta{
  width: min(1080px, 100%);
  margin: 22px auto 0;
  z-index:2;
  position:relative;
}
.cta-card{
  border-radius: 26px;
  padding: 18px;
  background: linear-gradient(135deg, rgba(251,55,160,.12), rgba(56,189,248,.06));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 18px 70px rgba(0,0,0,.38);
}
.cta-title{
  font-size: 18px;
  font-weight: 900;
  color: #fff;
}
.cta-sub{
  margin-top: 6px;
  color: rgba(226,232,240,.72);
}
.cta-actions{
  margin-top: 14px;
  display:flex;
  gap: 12px;
  justify-content:center;
  flex-wrap: wrap;
}

/* Mobile tweaks */
@media (max-width: 900px){
  .hero-metrics{ grid-template-columns: 1fr; }
  .pricing-tease{ grid-template-columns: 1fr; }
  .media-card{ width: min(240px, 70%); }
}
@media (max-width: 520px){
  .hero-btn-xl{ min-width: 0; width: 100%; }
  .showcase-card{ flex-basis: 170px; height: 280px; }
}


/* =======================
   Model Store teaser
   ======================= */
.modelstore-banner{
  margin-top: 18px;
  border-radius: 26px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(135deg, rgba(251,55,160,.12), rgba(56,189,248,.10), rgba(2,6,23,.70));
  box-shadow: 0 24px 120px rgba(0,0,0,.45);
  display:flex;
  gap: 16px;
  align-items: stretch;
}
.modelstore-left{flex: 1.25; min-width: 240px;}
.modelstore-right{
  flex: .85;
  min-width: 220px;
  border-radius: 22px;
  padding: 14px;
  background: rgba(2,6,23,.55);
  border: 1px solid rgba(255,255,255,.10);
  display:flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
}
.modelstore-kicker{
  display:inline-flex;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.14);
  color: rgba(226,232,240,.88);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.modelstore-title{
  margin-top: 10px;
  font-size: 18px;
  font-weight: 900;
  color: #fff;
  line-height: 1.15;
}
.modelstore-sub{
  margin-top: 8px;
  color: rgba(226,232,240,.74);
  font-size: 13px;
  line-height: 1.5;
}
.modelstore-bullets{
  display:grid;
  gap: 8px;
  color: rgba(226,232,240,.86);
  font-size: 13px;
}
.modelstore-btn{
  width: 100%;
}

@media (max-width: 900px){
  .modelstore-banner{flex-direction: column;}
  .modelstore-right{min-width: 0;}
}
