@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700;900&display=swap');

:root {
  --bg: #050510;
  --bg-darker: #02020a;
  --card-bg: rgba(255, 255, 255, 0.03);
  --glass: rgba(255, 255, 255, 0.05);
  --glass-border: rgba(255, 255, 255, 0.1);
  --text: #ffffff;
  --text-muted: #a9a9c3;
  --cyan: #00e5ff;
  --blue: #2563ff;
  --purple: #8b00ff;
  --pink: #d400ff;
  --gradient: linear-gradient(135deg, #8b00ff, #2563ff, #00e5ff);
  --gradient-hover: linear-gradient(135deg, #d400ff, #8b00ff, #2563ff);
  --transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  --radius: 24px;
}

html, body {
  overflow-x: hidden;
  position: relative;
  scroll-behavior: smooth;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Outfit', sans-serif;
  background: var(--bg);
  color: var(--text);
  overflow-x: hidden;
  line-height: 1.6;
}

body::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: 
    radial-gradient(circle at 20% 20%, rgba(139, 0, 255, 0.15), transparent 40%),
    radial-gradient(circle at 80% 80%, rgba(0, 229, 255, 0.1), transparent 40%),
    radial-gradient(circle at 50% 50%, rgba(212, 0, 255, 0.05), transparent 50%);
  z-index: -1;
  animation: bgPulse 20s ease-in-out infinite alternate;
}

@keyframes bgPulse {
  0% { transform: scale(1); }
  100% { transform: scale(1.1); }
}

.container {
  width: min(1280px, 92%);
  margin: auto;
}

section {
  padding: 120px 0;
  position: relative;
}

/* Typography */
.gradient-text {
  background: var(--gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

h1 {
  font-size: clamp(40px, 8vw, 90px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -3px;
  margin-bottom: 30px;
}

h2 {
  font-size: clamp(32px, 5vw, 60px);
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 20px;
}

p {
  color: var(--text-muted);
  font-size: 18px;
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 18px 36px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 16px;
  text-decoration: none;
  transition: var(--transition);
  cursor: pointer;
  border: none;
  white-space: nowrap;
}

.btn-primary {
  background: var(--gradient);
  color: white;
  box-shadow: 0 10px 40px rgba(139, 0, 255, 0.3);
}

.btn-primary:hover {
  transform: translateY(-5px) scale(1.05);
  box-shadow: 0 15px 50px rgba(0, 229, 255, 0.5);
  background: var(--gradient-hover);
}

.btn-secondary {
  background: var(--glass);
  color: white;
  border: 1px solid var(--glass-border);
  backdrop-filter: blur(10px);
}

.btn-secondary:hover {
  background: rgba(255, 255, 255, 0.1);
  transform: translateY(-5px);
  border-color: var(--cyan);
}

/* Header */
header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
  padding: 20px 0;
  transition: var(--transition);
}

header.scrolled {
  background: rgba(5, 5, 16, 0.8);
  backdrop-filter: blur(20px);
  padding: 15px 0;
  border-bottom: 1px solid var(--glass-border);
}

nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo {
  display: flex;
  align-items: center;
}

.header-logo,
.footer-logo {
  display: none; /* Removed old logo images */
}

.logo-icon {
  height: 60px;
  width: auto;
  margin-right: 15px;
  display: block;
}

.logo-text {
  font-size: 28px;
  font-weight: 900;
  letter-spacing: -0.5px;
  color: white;
  text-transform: uppercase;
  line-height: 1;
}

.logo-text span {
  color: var(--cyan);
}

.nav-links {
  display: flex;
  gap: 40px;
}

.nav-links a {
  color: var(--text-muted);
  font-weight: 500;
  transition: var(--transition);
  font-size: 15px;
}

.nav-links a:hover {
  color: white;
}

.menu-toggle {
  display: none;
  font-size: 24px;
  cursor: pointer;
  z-index: 1001;
  color: white;
}

.mobile-only-btn {
  display: none;
}

/* Hero Section */
.hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  padding-top: 150px;
}

.hero-grid {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 60px;
  align-items: center;
}

.badge {
  display: inline-flex;
  padding: 10px 20px;
  background: rgba(0, 229, 255, 0.1);
  border: 1px solid rgba(0, 229, 255, 0.2);
  border-radius: 100px;
  color: var(--cyan);
  font-weight: 600;
  font-size: 14px;
  margin-bottom: 30px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.hero-actions {
  display: flex;
  gap: 20px;
  margin-top: 40px;
}

.hero-visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 56px; /* breathing room for stat cards on both sides */
}

.video-container {
  width: 100%;
  max-width: 320px;
  aspect-ratio: 9/16;
  border-radius: var(--radius);
  overflow: hidden;
  position: relative;
  border: 1px solid var(--glass-border);
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.5);
  background: #000;
  cursor: pointer;
  margin: 0 auto;
}

.video-container img,
.video-container video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8;
  transition: var(--transition);
}

.video-container:hover img,
.video-container:hover video {
  transform: scale(1.05);
  opacity: 1;
}

.play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
  background: var(--gradient);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  box-shadow: 0 0 30px rgba(139, 0, 255, 0.5);
  z-index: 2;
  transition: var(--transition);
}

.video-container:hover .play-btn {
  transform: translate(-50%, -50%) scale(1.1);
  box-shadow: 0 0 50px rgba(0, 229, 255, 0.8);
}

.video-container::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: var(--radius);
  padding: 2px;
  background: var(--gradient);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0.3;
  transition: var(--transition);
}

.video-container:hover::after {
  opacity: 1;
}

/* Floating Stats */
.stat-card {
  position: absolute;
  padding: 20px;
  background: rgba(10, 10, 30, 0.8);
  backdrop-filter: blur(10px);
  border: 1px solid var(--glass-border);
  border-radius: 20px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  z-index: 5;
  animation: float 6s ease-in-out infinite;
}

.stat-card.s1 { top: 14%;  right: -36px; animation-delay: 0s; }
.stat-card.s2 { bottom: 14%; left: -36px; animation-delay: 1.5s; }
.stat-card.s3 { top: 50%;  right: -36px; animation-delay: 3s; transform: translateY(-50%); }

@keyframes float {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-20px) rotate(2deg); }
}

.stat-card h4 {
  font-size: 24px;
  font-weight: 800;
  color: var(--cyan);
}

.stat-card p {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Metrics (Integrated into Mix Sections) */
.metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  margin-top: 40px;
}

.metric-item h3 {
  font-size: 56px;
  font-weight: 900;
  margin-bottom: 5px;
  letter-spacing: -2px;
  text-shadow: 0 0 30px rgba(0, 229, 255, 0.2);
}

.metric-item p {
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Mix Sections */
.mix-section .container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  margin-bottom: 120px;
}

.mix-section.reverse .container {
  grid-template-columns: 1fr 1.1fr;
}

.mix-section.reverse .reveal:first-child {
  order: 2;
}

.mix-section.reverse .image-wrap {
  order: 1;
}

.mix-section .image-wrap {
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.4);
}

.mix-section img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition);
}

.mix-section:hover img {
  transform: scale(1.05);
}

.mix-section ul {
  list-style: none;
  margin: 30px 0;
}

.mix-section li {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 15px;
  color: var(--text-muted);
}

.mix-section li i {
  color: var(--cyan);
  font-size: 20px;
  filter: drop-shadow(0 0 5px rgba(0, 229, 255, 0.5));
}

/* Services */
.section-head {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 80px;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
}

.service-card {
  background: var(--card-bg);
  border: 1px solid var(--glass-border);
  padding: 40px;
  border-radius: var(--radius);
  transition: var(--transition);
  position: relative;
  overflow: hidden;
}

.service-card:hover {
  background: rgba(255, 255, 255, 0.05);
  transform: translateY(-10px);
  border-color: var(--cyan);
  box-shadow: 0 20px 50px rgba(0, 229, 255, 0.1);
}

.service-card .icon {
  width: 70px;
  height: 70px;
  background: rgba(0, 229, 255, 0.1);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  margin-bottom: 30px;
  color: var(--cyan);
  box-shadow: 0 10px 20px rgba(0, 229, 255, 0.1);
}

.service-card:hover .icon {
  background: var(--gradient);
  color: white;
  transform: scale(1.1) rotate(5deg);
}

/* Showcase Grid */
.showcase-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.video-card {
  border-radius: var(--radius);
  overflow: hidden;
  position: relative;
  aspect-ratio: 9/16;
  background: #000;
}

.video-card img,
.video-card video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8;
  transition: var(--transition);
}

.video-card:hover img,
.video-card:hover video {
  transform: scale(1.1);
  opacity: 1;
}

.video-card .overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 30px;
  transition: var(--transition);
}

.video-card h3 {
  font-size: 20px;
  margin-bottom: 5px;
}

.video-card p {
  font-size: 14px;
}

/* CTA & Form Section */
.cta-card {
  padding: 80px 40px;
  text-align: center;
  background: radial-gradient(circle at top right, rgba(139, 0, 255, 0.1), transparent), var(--card-bg);
  border: 1px solid var(--glass-border);
  position: relative;
}

.cta-subtitle {
  margin-bottom: 40px;
}

.cta-form {
  max-width: 650px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.form-input {
  width: 100%;
  padding: 18px 25px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--glass-border);
  color: white;
  font-size: 16px;
  font-family: inherit;
  transition: var(--transition);
  outline: none;
}

.form-input:focus {
  border-color: var(--cyan);
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.1);
}

.form-textarea {
  min-height: 140px;
  resize: vertical;
}

.form-select {
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2300e5ff' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 44px;
}

/* Native option dropdown — force dark bg + light text on all browsers */
.form-select option {
  background-color: #0f0f1a;
  color: #ffffff;
  font-size: 14px;
  padding: 12px 16px;
}

.form-select option:checked,
.form-select option:hover {
  background-color: #1a1a2e;
  color: #00e5ff;
}

.cta-btn {
  padding: 20px;
  font-size: 18px;
  margin-top: 10px;
}

.show-more-wrap {
  display: none;
  justify-content: center;
  margin-top: 40px;
}

/* Scroll Animations */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s ease-out;
}

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

/* Mobile Optimizations */
@media (max-width: 1024px) {
  .hero-grid, .proof-grid, .mix-section .container, .mix-section.reverse .container {
    grid-template-columns: 1fr;
    gap: 60px;
    text-align: center;
  }
  
  .proof-grid .image-wrap {
    max-width: 80%;
    margin: 0 auto;
  }
  
  .hero-actions, .mix-section ul {
    justify-content: center;
    flex-wrap: wrap;
  }
  
  .stat-card.s2 { left: -10px; bottom: 14%; }
  .stat-card.s1 { right: -10px; top: 14%; }
}

@media (max-width: 768px) {
  section { padding: 50px 0; }
  
  .hero {
    padding-top: 120px;
    min-height: auto;
  }

  .hero-actions {
    flex-direction: column;
    gap: 15px;
  }

  .hero-actions .btn {
    width: 100%;
  }

  .menu-toggle { display: block; }

  .desktop-only { display: none !important; }

  .nav-links {
    position: fixed;
    top: 0;
    right: -100%;
    width: 80%;
    height: 100vh;
    background: rgba(5, 5, 16, 0.95);
    backdrop-filter: blur(20px);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 40px;
    transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
    border-left: 1px solid var(--glass-border);
  }

  .nav-links.active {
    right: 0;
  }

  .nav-links a {
    font-size: 20px;
    font-weight: 700;
  }

  .mobile-only-btn {
    display: flex;
    background: var(--gradient);
    padding: 15px 30px;
    border-radius: 100px;
    color: white !important;
    font-weight: 700;
    text-align: center;
  }
  
  .showcase-grid {
    grid-template-columns: 1fr;
  }
  
  .metrics {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .btn { width: 100%; }

  .stat-card {
    padding: 10px 14px;
    transform: none;
  }

  .stat-card.s1 { top: 10%; right: -8px; }
  .stat-card.s2 { bottom: 10%; left: -8px; }
  .stat-card.s3 { display: none; }

  .mix-section.reverse .reveal:first-child,
  .mix-section.reverse .image-wrap {
    order: unset;
  }

  h1 { font-size: clamp(32px, 10vw, 48px); letter-spacing: -1px; }

  .form-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .cta-card {
    padding: 60px 20px;
  }

  .cta-form {
    gap: 15px;
  }

  .cta-btn {
    font-size: 16px;
  }

  .show-more-wrap {
    display: flex;
  }

  .showcase-grid .video-card:nth-child(n+3) {
    display: none;
  }

  .showcase-grid.expanded .video-card:nth-child(n+3) {
    display: block;
  }
}


/* Added Sections: Process, Case Studies, Testimonials, FAQ */
.process-grid,
.case-study-grid,
.testimonial-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}

.process-card,
.case-study-card,
.testimonial-card,
.faq-item {
  background: var(--card-bg);
  border: 1px solid var(--glass-border);
  border-radius: var(--radius);
  transition: var(--transition);
  position: relative;
  overflow: hidden;
}

.process-card,
.case-study-card,
.testimonial-card {
  padding: 34px;
}

.process-card:hover,
.case-study-card:hover,
.testimonial-card:hover,
.faq-item:hover {
  transform: translateY(-8px);
  border-color: var(--cyan);
  box-shadow: 0 20px 50px rgba(0, 229, 255, 0.1);
}

.process-number {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--gradient);
  color: #fff;
  font-weight: 900;
  margin-bottom: 24px;
  box-shadow: 0 12px 35px rgba(139, 0, 255, 0.25);
}

.process-card h3,
.case-study-card h3,
.testimonial-card h4 {
  margin-bottom: 14px;
}

.case-study-grid,
.testimonial-grid {
  grid-template-columns: repeat(3, 1fr);
}

.case-topline {
  display: inline-flex;
  padding: 8px 14px;
  border-radius: 100px;
  background: rgba(0, 229, 255, 0.1);
  color: var(--cyan);
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 22px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.case-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 26px;
}

.case-stats span {
  padding: 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--glass-border);
  color: var(--text-muted);
  font-size: 14px;
}

.case-stats strong {
  display: block;
  color: var(--text);
  font-size: 24px;
  line-height: 1.1;
}

.stars {
  color: var(--cyan);
  letter-spacing: 3px;
  margin-bottom: 22px;
  text-shadow: 0 0 18px rgba(0, 229, 255, 0.35);
}

.client-info {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 26px;
}

.client-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--gradient);
  font-weight: 900;
  color: #fff;
}

.client-info span {
  color: var(--text-muted);
  font-size: 14px;
}

.faq-list {
  max-width: 900px;
  margin: 0 auto;
  display: grid;
  gap: 16px;
}

.faq-question {
  width: 100%;
  padding: 24px 26px;
  border: none;
  background: transparent;
  color: var(--text);
  font-family: inherit;
  font-size: 18px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.faq-question i {
  color: var(--cyan);
  transition: var(--transition);
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}

.faq-answer p {
  padding: 0 26px 24px;
}

.faq-item.active .faq-answer {
  max-height: 180px;
}

.faq-item.active .faq-question i {
  transform: rotate(45deg);
}

@media (max-width: 1024px) {
  .process-grid,
  .case-study-grid,
  .testimonial-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .process-grid,
  .case-study-grid,
  .testimonial-grid {
    grid-template-columns: 1fr;
  }

  .process-card,
  .case-study-card,
  .testimonial-card {
    padding: 28px;
  }

  .faq-question {
    font-size: 16px;
    padding: 20px;
  }

  .faq-answer p {
    padding: 0 20px 20px;
  }
}


/* About / Authority Section */
.authority-section {
  padding-top: 90px;
}

.authority-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 70px;
  align-items: center;
}

.authority-copy p {
  max-width: 720px;
  margin-bottom: 30px;
}

.authority-points {
  display: grid;
  gap: 16px;
  margin: 34px 0;
}

.authority-points div {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--glass-border);
  color: var(--text-muted);
}

.authority-points i {
  color: var(--cyan);
  font-size: 20px;
}

.authority-card {
  border-radius: var(--radius);
  padding: 1px;
  background: var(--gradient);
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.45);
}

.authority-card-inner {
  min-height: 520px;
  border-radius: var(--radius);
  padding: 44px;
  background:
    radial-gradient(circle at top right, rgba(0, 229, 255, 0.14), transparent 35%),
    radial-gradient(circle at bottom left, rgba(139, 0, 255, 0.20), transparent 35%),
    rgba(5, 5, 16, 0.96);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.mini-badge {
  width: fit-content;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(0, 229, 255, 0.1);
  color: var(--cyan);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 22px;
}

.authority-card h3 {
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.1;
  margin-bottom: 30px;
}

.authority-stack {
  display: grid;
  gap: 16px;
}

.authority-stack div {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--glass-border);
}

.authority-stack strong {
  color: var(--cyan);
  font-size: 20px;
}

.authority-stack span {
  color: var(--text-muted);
}

/* Strong CTA */
.strong-cta-section {
  padding-bottom: 110px;
}

.strong-cta {
  display: grid;
  grid-template-columns: 1fr 0.95fr;
  gap: 40px;
  padding: 46px;
  border-radius: 34px;
  background:
    radial-gradient(circle at top left, rgba(139, 0, 255, 0.18), transparent 30%),
    radial-gradient(circle at bottom right, rgba(0, 229, 255, 0.16), transparent 30%),
    var(--card-bg);
  border: 1px solid var(--glass-border);
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.35);
}

.cta-left,
.cta-right {
  min-width: 0;
}

.contact-actions {
  display: grid;
  gap: 14px;
  margin-top: 34px;
}

.contact-action {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px;
  border-radius: 20px;
  border: 1px solid var(--glass-border);
  background: rgba(255, 255, 255, 0.045);
  text-decoration: none;
  color: var(--text);
  transition: var(--transition);
}

.contact-action:hover {
  transform: translateY(-5px);
  border-color: var(--cyan);
  background: rgba(255, 255, 255, 0.08);
}

.contact-action i {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  font-size: 22px;
  background: var(--gradient);
}

.contact-action span {
  display: grid;
  gap: 3px;
}

.contact-action small {
  color: var(--text-muted);
}

.cta-note {
  margin-top: 22px;
  font-size: 14px;
}

.cta-note i {
  color: var(--cyan);
}

.cta-right .cta-form {
  max-width: none;
  padding: 30px;
  border-radius: 26px;
  background: rgba(0, 0, 0, 0.22);
  border: 1px solid var(--glass-border);
}

.cta-right .cta-form h3 {
  font-size: 26px;
  margin-bottom: 4px;
}

.floating-contact-bar {
  position: fixed;
  right: 18px;
  bottom: 18px;
  display: grid;
  gap: 10px;
  z-index: 999;
}

.floating-contact-bar a {
  width: 52px;
  height: 52px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  color: white;
  text-decoration: none;
  background: var(--gradient);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.35);
  transition: var(--transition);
}

.floating-contact-bar a:hover {
  transform: translateY(-5px) scale(1.05);
}

@media (max-width: 1024px) {
  .authority-grid,
  .strong-cta {
    grid-template-columns: 1fr;
  }

  .authority-card-inner {
    min-height: auto;
  }
}

@media (max-width: 768px) {
  .authority-grid {
    gap: 34px;
  }

  .authority-card-inner,
  .strong-cta,
  .cta-right .cta-form {
    padding: 24px;
  }

  .strong-cta {
    border-radius: 26px;
  }

  .contact-action {
    align-items: flex-start;
  }

  .floating-contact-bar {
    right: 12px;
    bottom: 12px;
  }

  .floating-contact-bar a {
    width: 46px;
    height: 46px;
    border-radius: 15px;
  }
}


/* ===== SAFE FIX: Showcase 3 Videos + Visible Button ===== */
.show-more-wrap {
  display: flex !important;
  justify-content: center;
  margin-top: 40px;
}

.showcase-grid .video-card:nth-child(n+4) {
  display: none !important;
}

.showcase-grid.expanded .video-card {
  display: block !important;
}

#load-more-btn {
  width: auto;
  min-width: 220px;
}

@media (max-width: 768px) {
  .showcase-grid .video-card:nth-child(n+4) {
    display: none !important;
  }

  .showcase-grid.expanded .video-card {
    display: block !important;
  }

  #load-more-btn {
    width: 100%;
  }
}


/* ===== PREMIUM CTA + COMPACT CONTACT FOOTER FLOW ===== */
.premium-cta-section {
  padding: 110px 0 34px;
  background:
    radial-gradient(circle at 15% 15%, rgba(139, 0, 255, 0.16), transparent 32%),
    radial-gradient(circle at 85% 10%, rgba(0, 229, 255, 0.11), transparent 28%),
    linear-gradient(180deg, rgba(2, 2, 10, 0), rgba(2, 2, 10, 0.75));
}

.premium-cta {
  display: grid;
  grid-template-columns: 0.92fr 1.08fr;
  gap: 42px;
  align-items: stretch;
  padding: 44px;
  border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025)),
    rgba(5, 5, 16, 0.7);
  border: 1px solid var(--glass-border);
  box-shadow: 0 35px 110px rgba(0, 0, 0, 0.42);
  backdrop-filter: blur(18px);
}

.premium-cta-intro {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.premium-cta-intro h2 {
  max-width: 760px;
  margin-bottom: 22px;
}

.premium-cta-intro p {
  max-width: 680px;
}

.cta-trust-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 36px;
}

.cta-trust-row div {
  padding: 18px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid var(--glass-border);
}

.cta-trust-row strong {
  display: block;
  color: var(--cyan);
  font-size: 25px;
  line-height: 1;
  margin-bottom: 7px;
}

.cta-trust-row span {
  color: var(--text-muted);
  font-size: 13px;
  line-height: 1.35;
}

.premium-cta-form {
  width: 100%;
  padding: 34px;
  border-radius: 28px;
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.form-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 4px;
}

.form-title-row h3 {
  font-size: clamp(25px, 3vw, 34px);
  line-height: 1.1;
  margin-top: 12px;
}

.form-title-row > i {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  background: var(--gradient);
  box-shadow: 0 18px 45px rgba(0, 229, 255, 0.18);
  flex: 0 0 auto;
}

.premium-cta-form .form-grid {
  grid-template-columns: 1fr 1fr;
}

.premium-cta-form .form-textarea {
  min-height: 170px;
}

.premium-cta-form .cta-btn {
  width: 100%;
}

.contact-info-footer {
  display: grid;
  grid-template-columns: 1.45fr 0.9fr 0.75fr 0.9fr;
  gap: 34px;
  margin-top: 34px;
  padding: 34px 0 28px;
  border-bottom: 1px solid var(--glass-border);
}

.footer-mini-logo {
  height: 54px;
  width: auto;
  margin-bottom: 18px;
}

.footer-brand-block p,
.footer-social-column p {
  font-size: 15px;
  line-height: 1.7;
}

.footer-link-column,
.footer-social-column {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.footer-link-column h4,
.footer-social-column h4 {
  font-size: 20px;
  margin-bottom: 8px;
}

.footer-link-column a,
.premium-footer-bottom a {
  color: var(--text-muted);
  text-decoration: none;
  transition: var(--transition);
  width: fit-content;
}

.footer-link-column a:hover,
.premium-footer-bottom a:hover {
  color: var(--cyan);
}

.footer-link-column a i {
  color: var(--cyan);
  width: 22px;
}

.footer-social-icons {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.footer-social-icons a {
  width: 44px;
  height: 44px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  color: white;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid var(--glass-border);
  transition: var(--transition);
}

.footer-social-icons a:hover {
  background: var(--gradient);
  transform: translateY(-4px);
  border-color: transparent;
}

.premium-footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding-top: 24px;
  color: var(--text-muted);
  font-size: 14px;
}

.premium-footer-bottom div {
  display: flex;
  gap: 22px;
  flex-wrap: wrap;
}

/* Hide old floating contact pattern on the premium CTA version */
.floating-contact-bar {
  display: none !important;
}

@media (max-width: 1024px) {
  .premium-cta,
  .contact-info-footer {
    grid-template-columns: 1fr;
  }

  .premium-cta {
    padding: 32px;
  }
}

@media (max-width: 768px) {
  .premium-cta-section {
    padding: 70px 0 28px;
  }

  .premium-cta,
  .premium-cta-form {
    padding: 24px;
    border-radius: 26px;
  }

  .premium-cta-form .form-grid,
  .cta-trust-row {
    grid-template-columns: 1fr;
  }

  .form-title-row > i {
    display: none;
  }

  .contact-info-footer {
    gap: 26px;
  }

  .premium-footer-bottom {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* ===== USER REQUEST FIX: Remove left CTA intro and let form fill full CTA ===== */
.premium-cta {
  grid-template-columns: 1fr !important;
  max-width: 1040px;
  margin: 0 auto;
  padding: 42px !important;
}

.premium-cta-form {
  width: 100%;
  max-width: none;
  padding: 42px !important;
  background:
    radial-gradient(circle at top right, rgba(0, 229, 255, 0.08), transparent 32%),
    rgba(0, 0, 0, 0.30);
}

.premium-cta-form .form-grid {
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.premium-cta-form .form-input {
  padding: 20px 24px;
  min-height: 62px;
}

.premium-cta-form .form-textarea {
  min-height: 210px;
}

.premium-cta-form .cta-btn {
  min-height: 64px;
  font-size: 18px;
}

@media (max-width: 768px) {
  .premium-cta {
    padding: 22px !important;
  }

  .premium-cta-form {
    padding: 24px !important;
  }

  .premium-cta-form .form-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== FINAL CLEAN PREMIUM UI + MOBILE SYSTEM ===== */
header {
  padding: 14px 0;
}

header.scrolled {
  background: rgba(2, 2, 12, 0.88);
  backdrop-filter: blur(24px);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  padding: 10px 0;
}

nav {
  background: rgba(8, 8, 24, 0.66);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 999px;
  padding: 12px 18px;
  backdrop-filter: blur(22px);
  box-shadow: 0 20px 70px rgba(0,0,0,0.26);
}

.nav-links {
  gap: 10px;
  padding: 6px;
  border-radius: 999px;
  background: rgba(255,255,255,0.025);
}

.nav-links a {
  position: relative;
  padding: 10px 16px;
  border-radius: 999px;
  color: rgba(255,255,255,0.72);
  font-weight: 700;
  text-decoration: none;
}

.nav-links a::after {
  display: none;
}

.nav-links a:hover {
  color: white;
  background: rgba(255,255,255,0.07);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08), 0 0 24px rgba(0,229,255,0.12);
}

.header-btn {
  padding: 14px 24px;
}

.hero p,
.authority-copy p,
.section-head p {
  max-width: 760px;
}

.private-negotiation {
  margin-top: 30px;
  text-align: center;
  padding: 14px 18px;
  border-radius: 18px;
  background: rgba(0,229,255,0.045);
  border: 1px solid rgba(0,229,255,0.12);
}

.private-negotiation a {
  color: var(--text-muted);
  text-decoration: none;
  font-weight: 700;
  transition: var(--transition);
}

.private-negotiation a:hover {
  color: var(--cyan);
}

.form-privacy-note {
  margin-top: -2px;
  text-align: center;
  font-size: 13px;
  color: rgba(255,255,255,0.54);
}

.form-privacy-note i {
  color: var(--cyan);
}

.premium-contact-hub {
  padding: 34px;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 30px;
  background: rgba(255,255,255,0.025);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.footer-brand-block h4 {
  font-size: 24px;
  margin-bottom: 10px;
}

.footer-contact-link {
  padding: 10px 0;
}

.social-premium-icons a {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  font-size: 18px;
}

.hero-mobile-socials,
.mobile-bottom-cta {
  display: none;
}

@media (max-width: 768px) {
  html {
    scroll-padding-top: 92px;
  }

  body {
    padding-bottom: 82px;
  }

  .container {
    width: min(100% - 28px, 560px);
  }

  header {
    padding: 10px 0;
  }

  nav {
    border-radius: 22px !important;
    padding: 10px 14px !important;
    background: rgba(5, 5, 16, 0.82) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    box-shadow: 0 16px 50px rgba(0,0,0,0.35) !important;
  }

  .logo-icon {
    height: 44px;
    margin-right: 0;
  }

  .menu-toggle {
    width: 44px;
    height: 44px;
    border-radius: 15px;
    display: grid !important;
    place-items: center;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.10);
  }

  .nav-links {
    position: fixed;
    top: 0;
    right: -105%;
    width: min(88%, 360px) !important;
    height: 100vh;
    padding: 92px 24px 30px;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    flex-direction: column;
    background:
      radial-gradient(circle at top right, rgba(0,229,255,0.14), transparent 34%),
      rgba(4, 4, 16, 0.96) !important;
    border-left: 1px solid rgba(255,255,255,0.12);
    border-radius: 0 !important;
    z-index: 1000;
    transition: 0.45s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .nav-links.active {
    right: 0;
  }

  .nav-links a {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 15px 18px !important;
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    color: white !important;
    font-size: 17px !important;
    text-decoration: none;
  }

  .mobile-only-btn {
    margin-top: 8px;
    background: var(--gradient) !important;
    box-shadow: 0 14px 38px rgba(0,229,255,0.18);
  }

  section {
    padding: 58px 0;
  }

  .hero {
    padding-top: 108px;
    text-align: center;
    min-height: auto;
  }

  .hero-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .badge {
    margin-bottom: 18px;
    padding: 8px 14px;
    font-size: 11px;
    letter-spacing: 0.8px;
  }

  h1 {
    font-size: clamp(38px, 12vw, 54px) !important;
    line-height: 0.95 !important;
    letter-spacing: -1.8px !important;
    margin-bottom: 20px;
  }

  h2 {
    font-size: clamp(30px, 9vw, 42px);
    line-height: 1.02;
  }

  p {
    font-size: 16px;
    line-height: 1.65;
  }

  .hero p {
    max-width: 96%;
    margin: 0 auto;
  }

  .hero-actions {
    margin-top: 28px;
    gap: 12px !important;
    flex-direction: column;
  }

  .btn {
    width: 100%;
    min-height: 54px;
    padding: 15px 20px;
    font-size: 15px;
    border-radius: 18px;
  }

  .hero-mobile-socials {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 18px;
  }

  .hero-mobile-socials a {
    width: 44px;
    height: 44px;
    border-radius: 15px;
    display: grid;
    place-items: center;
    color: white;
    text-decoration: none;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.10);
    backdrop-filter: blur(12px);
  }

  .video-container {
    border-radius: 22px;
    max-width: 260px;
    aspect-ratio: 9 / 16;
    box-shadow: 0 24px 70px rgba(0,0,0,0.42);
  }

  .stat-card {
    padding: 10px 12px !important;
    border-radius: 16px;
    animation: none;
  }

  .stat-card h4 {
    font-size: 18px;
  }

  .stat-card p {
    font-size: 10px;
  }

  .stat-card.s1 {
    top: 10% !important;
    right: -6px !important;
  }

  .stat-card.s2 {
    bottom: 10% !important;
    left: -6px !important;
  }

  .stat-card.s3 {
    display: none;
  }

  .authority-grid,
  .mix-section .container,
  .mix-section.reverse .container {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    text-align: center;
  }

  .authority-card-inner,
  .premium-cta,
  .premium-cta-form,
  .service-card,
  .process-card,
  .testimonial-card,
  .faq-item {
    border-radius: 24px !important;
  }

  .authority-card-inner {
    padding: 26px !important;
    min-height: auto;
  }

  .authority-points {
    margin: 24px 0;
    gap: 12px;
  }

  .authority-points div,
  .authority-stack div {
    padding: 15px;
    border-radius: 16px;
    text-align: left;
  }

  .mix-section .container {
    margin-bottom: 58px !important;
  }

  .mix-section ul {
    margin: 22px 0;
  }

  .mix-section li {
    justify-content: flex-start;
    text-align: left;
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.07);
    padding: 13px 14px;
    border-radius: 15px;
    margin-bottom: 10px;
  }

  .mix-section .image-wrap {
    border-radius: 22px;
  }

  .section-head {
    margin-bottom: 38px;
  }

  .showcase-grid {
    grid-template-columns: 1fr !important;
    gap: 18px;
  }

  .showcase-grid .video-card:nth-child(n+4) {
    display: none !important;
  }

  .showcase-grid.expanded .video-card {
    display: block !important;
  }

  .video-card {
    border-radius: 24px;
    box-shadow: 0 18px 60px rgba(0,0,0,0.35);
  }

  .video-card .overlay {
    padding: 22px;
  }

  .process-grid,
  .testimonial-grid,
  .services-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .process-card,
  .testimonial-card,
  .service-card {
    padding: 24px !important;
    text-align: left;
  }

  .process-number {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    margin-bottom: 18px;
  }

  .client-info {
    margin-top: 20px;
  }

  #pricing .service-card {
    position: relative;
    overflow: hidden;
  }

  #pricing .service-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 18px;
    right: 18px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0,229,255,0.65), transparent);
  }

  .private-negotiation {
    margin-top: 22px !important;
  }

  .faq-list {
    gap: 12px;
  }

  .faq-question {
    padding: 18px !important;
    font-size: 15px !important;
  }

  .faq-answer p {
    font-size: 14px;
  }

  .premium-cta {
    max-width: 100% !important;
    padding: 18px !important;
    box-shadow: 0 24px 80px rgba(0,0,0,0.36);
  }

  .premium-cta-form {
    gap: 14px;
    padding: 24px !important;
  }

  .form-title-row h3 {
    font-size: 28px;
  }

  .premium-cta-form .form-grid,
  .form-grid {
    grid-template-columns: 1fr !important;
  }

  .form-input {
    min-height: 54px;
    padding: 15px 17px;
    border-radius: 15px;
    font-size: 15px;
  }

  .premium-cta-form .form-textarea {
    min-height: 130px;
  }

  .form-privacy-note {
    font-size: 12px;
    line-height: 1.4;
  }

  .premium-contact-hub,
  .contact-info-footer {
    grid-template-columns: 1fr !important;
    margin-top: 24px;
    gap: 22px !important;
    padding: 24px;
  }

  .footer-mini-logo {
    height: 48px;
  }

  .footer-brand-block p,
  .footer-social-column p {
    font-size: 14px;
  }

  .footer-link-column h4,
  .footer-social-column h4 {
    font-size: 18px;
  }

  .footer-link-column a {
    width: 100%;
    padding: 12px 0;
  }

  .social-premium-icons {
    gap: 10px;
  }

  .social-premium-icons a {
    width: 46px;
    height: 46px;
  }

  .mobile-bottom-cta {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 1200;
    display: grid;
    grid-template-columns: 1fr 1.25fr 1fr;
    gap: 8px;
    padding: 9px;
    border-radius: 24px;
    background: rgba(5,5,16,0.88);
    border: 1px solid rgba(255,255,255,0.12);
    backdrop-filter: blur(22px);
    box-shadow: 0 18px 60px rgba(0,0,0,0.45);
  }

  .mobile-bottom-cta a {
    min-height: 48px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    color: white;
    text-decoration: none;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
    font-size: 12px;
    font-weight: 800;
    transition: var(--transition);
    -webkit-tap-highlight-color: transparent;
  }

  .mobile-bottom-cta a:active {
    transform: scale(0.94);
    background: rgba(255,255,255,0.12);
    border-color: var(--cyan);
  }

  .mobile-bottom-cta a i {
    transition: var(--transition);
  }

  .mobile-bottom-cta a:active i {
    transform: scale(1.15);
  }

  .mobile-bottom-cta .primary-mobile-cta {
    background: var(--gradient);
    box-shadow: 0 10px 28px rgba(0,229,255,0.22);
  }

  .mobile-bottom-cta .primary-mobile-cta:active {
    transform: scale(0.94);
    box-shadow: 0 6px 18px rgba(0,229,255,0.35);
    background: var(--gradient-hover);
  }

  footer {
    padding-bottom: 110px !important;
  }
}

@media (max-width: 380px) {
  h1 {
    font-size: 36px !important;
  }

  .mobile-bottom-cta a span {
    font-size: 11px;
  }
}

/* USER UPDATE: showcase plans + process video */
.plan-showcase-grid{grid-template-columns:repeat(3,1fr)!important}
.plan-video-card{position:relative;border:1px solid var(--glass-border);}
.plan-video-card.popular{border-color:var(--cyan);box-shadow:0 0 40px rgba(0,229,255,.12)}
.plan-badge{position:absolute;top:18px;left:18px;z-index:5;background:var(--gradient);padding:8px 16px;border-radius:999px;font-weight:800}
.sound-toggle{position:absolute;top:18px;right:18px;z-index:5;border:none;background:rgba(0,0,0,.55);color:#fff;width:46px;height:46px;border-radius:50%;cursor:pointer}
.process-video-wrap{max-width:1100px;margin:0 auto;border-radius:28px;overflow:hidden;border:1px solid var(--glass-border);box-shadow:0 20px 80px rgba(0,0,0,.35)}
.process-video{width:100%;display:block;background:#000;aspect-ratio:16/9}
@media(max-width:768px){.plan-showcase-grid{grid-template-columns:1fr!important}}



/* ===== BUG FIX + MOBILE IMPROVEMENTS ===== */
.plan-showcase-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:28px;
}

.plan-video-card{
  display:block !important;
  aspect-ratio:auto !important;
  min-height:620px;
  border:1px solid var(--glass-border);
  border-radius:28px;
  overflow:hidden;
}

.plan-video-card video{
  width:100%;
  height:100%;
  min-height:620px;
  object-fit:cover;
  opacity:1;
}

.plan-video-card .overlay{
  z-index:4;
}

.plan-badge{
  z-index:6;
}

.sound-toggle{
  z-index:7;
}

.process-video-wrap{
  width:100%;
}

.process-video{
  width:100%;
  border-radius:24px;
}

/* override old mobile hiding bug */
.showcase-grid.plan-showcase-grid .video-card{
  display:block !important;
}

.showcase-grid.plan-showcase-grid .video-card:nth-child(n+3),
.showcase-grid.plan-showcase-grid .video-card:nth-child(n+4){
  display:block !important;
}

@media (max-width:768px){
  .plan-showcase-grid{
    grid-template-columns:1fr !important;
    gap:22px;
  }

  .plan-video-card{
    min-height:auto;
    border-radius:24px;
  }

  .plan-video-card video{
    min-height:520px;
  }

  .plan-badge{
    top:14px;
    left:14px;
    font-size:13px;
    padding:8px 14px;
  }

  .sound-toggle{
    top:14px;
    right:14px;
    width:42px;
    height:42px;
  }

  .video-card .overlay{
    padding:22px;
  }

  .video-card h3{
    font-size:22px;
  }

  .video-card p{
    font-size:15px;
    line-height:1.5;
  }

  .process-section .section-head{
    margin-bottom:30px;
  }
}


/* ===== PREMIUM PRICING SECTION ===== */
.pricing-premium-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:28px;
align-items:stretch;
}
.pricing-premium-card{
position:relative;
padding:36px;
border-radius:32px;
background:linear-gradient(180deg,rgba(10,10,35,.9),rgba(4,4,18,.96));
border:1px solid rgba(0,229,255,.35);
box-shadow:0 20px 60px rgba(0,0,0,.35);
overflow:hidden;
}
.pricing-premium-card.popular{
border-color:#b14cff;
transform:translateY(-8px);
box-shadow:0 20px 80px rgba(139,0,255,.25);
}
.popular-pill{
position:absolute;
top:18px;left:50%;
transform:translateX(-50%);
padding:10px 22px;
border-radius:999px;
font-size:14px;
font-weight:800;
background:linear-gradient(135deg,#8b00ff,#00e5ff);
}
.pricing-premium-card h3{font-size:28px;margin-top:10px}
.plan-subtitle{font-size:16px;margin:12px 0 22px}
.price{font-size:64px;font-weight:900;line-height:1;margin-bottom:24px}
.price span{font-size:24px;color:var(--text-muted)}
.pricing-feature-list{list-style:none;padding:0;margin:10px 0 34px}
.pricing-feature-list li{
display:flex;align-items:center;gap:12px;
margin-bottom:16px;font-size:18px
}
.pricing-feature-list li::before{
font-weight:900;font-size:18px;width:24px;text-align:center
}
.pricing-feature-list li.yes::before{content:"✓";color:#65ff7a}
.pricing-feature-list li.no::before{content:"✕";color:#ff5b5b}
.pricing-btn{
display:flex;justify-content:center;align-items:center;
width:100%;padding:20px;border-radius:999px;
border:1px solid rgba(0,229,255,.6);
text-decoration:none;color:#fff;font-weight:800;
background:rgba(255,255,255,.03)
}
.pricing-btn.primary{
background:linear-gradient(135deg,#c126ff,#00d8ff);
border:none;
}
@media(max-width:900px){
.pricing-premium-grid{grid-template-columns:1fr}
.pricing-premium-card.popular{transform:none}
.price{font-size:52px}
}


/* ===== FINAL PRICING FIX ===== */
.popular-pill{
top:-18px !important;
left:50% !important;
transform:translateX(-50%) !important;
min-width:210px;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
z-index:15;
box-shadow:0 12px 35px rgba(139,0,255,.35);
}

.pricing-btn{
transition:all .35s ease !important;
position:relative;
overflow:hidden;
box-shadow:0 0 0 rgba(0,229,255,0);
}

.pricing-btn:hover{
transform:translateY(-6px) scale(1.02);
box-shadow:0 15px 35px rgba(0,229,255,.22);
border-color:#00e5ff;
background:rgba(255,255,255,.08);
}

.pricing-btn.primary:hover{
transform:translateY(-6px) scale(1.03);
box-shadow:0 18px 45px rgba(139,0,255,.35);
filter:brightness(1.08);
}

.pricing-btn::before{
content:'';
position:absolute;
top:0;
left:-120%;
width:60%;
height:100%;
background:linear-gradient(
90deg,
transparent,
rgba(255,255,255,.18),
transparent
);
transition:.7s;
}

.pricing-btn:hover::before{
left:140%;
}

.pricing-premium-card{
overflow:visible !important;
padding-top:56px;
}


/* =========================================================
   2026 PREMIUM REDESIGN — ADDITIONS
   ========================================================= */

/* Scroll Progress Bar */
.scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  width: 0%;
  background: var(--gradient);
  z-index: 2000;
  transition: width 0.1s ease-out;
  box-shadow: 0 0 12px rgba(0, 229, 255, 0.6);
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Keyboard focus visibility */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid var(--cyan);
  outline-offset: 3px;
  border-radius: 8px;
}

/* Magnetic / premium button hover */
.btn {
  position: relative;
  overflow: hidden;
  will-change: transform;
}

.btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -120%;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);
  transition: 0.7s;
  pointer-events: none;
}

.btn:hover::before {
  left: 140%;
}

.whatsapp-btn {
  border-color: rgba(37, 211, 102, 0.4) !important;
}

.whatsapp-btn i {
  color: #25D366;
}

.whatsapp-btn:hover {
  border-color: #25D366 !important;
  background: rgba(37, 211, 102, 0.12) !important;
}

/* =========================================================
   ABOUT US SECTION
   ========================================================= */
.about-section {
  position: relative;
  padding-top: 90px;
}

.about-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 40px;
  margin-bottom: 60px;
}

.about-story-card {
  height: 100%;
  border-radius: var(--radius);
  padding: 44px;
  background:
    radial-gradient(circle at top right, rgba(0, 229, 255, 0.12), transparent 35%),
    radial-gradient(circle at bottom left, rgba(139, 0, 255, 0.18), transparent 35%),
    rgba(255, 255, 255, 0.03);
  border: 1px solid var(--glass-border);
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.4);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.about-story-card h3 {
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.25;
  margin: 18px 0 18px;
}

.about-story-card p {
  margin-bottom: 16px;
}

.about-story-card .btn {
  margin-top: 12px;
  align-self: flex-start;
}

.about-trust {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.trust-card {
  background: var(--card-bg);
  border: 1px solid var(--glass-border);
  border-radius: 20px;
  padding: 28px;
  transition: var(--transition);
}

.trust-card:hover {
  transform: translateY(-6px);
  border-color: var(--cyan);
  background: rgba(255, 255, 255, 0.05);
  box-shadow: 0 20px 50px rgba(0, 229, 255, 0.1);
}

.trust-card h4 {
  margin: 16px 0 8px;
  font-size: 18px;
}

.trust-card p {
  font-size: 14px;
  margin: 0;
}

.trust-icon {
  font-size: 26px;
  width: 56px;
  height: 56px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.trust-icon.green {
  color: #34d399;
  background: rgba(52, 211, 153, 0.12);
}

.trust-icon.cyan {
  color: var(--cyan);
  background: rgba(0, 229, 255, 0.12);
}

.trust-icon.purple {
  color: var(--purple);
  background: rgba(139, 0, 255, 0.12);
}

.trust-icon.amber {
  color: #fbbf24;
  background: rgba(251, 191, 36, 0.12);
}

/* Timeline */
.about-timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  position: relative;
  padding-top: 30px;
}

.about-timeline::before {
  content: '';
  position: absolute;
  top: 50px;
  left: 8%;
  right: 8%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--glass-border) 10%, var(--glass-border) 90%, transparent);
}

.timeline-item {
  position: relative;
  padding-top: 50px;
  text-align: center;
}

.timeline-dot {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--gradient);
  box-shadow: 0 0 0 6px var(--bg), 0 0 24px rgba(0, 229, 255, 0.5);
}

.timeline-item h4 {
  margin-bottom: 8px;
  font-size: 18px;
}

.timeline-item p {
  font-size: 14px;
}

@media (max-width: 1024px) {
  .about-grid {
    grid-template-columns: 1fr;
  }

  .about-timeline {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 24px;
  }

  .about-timeline::before {
    display: none;
  }
}

@media (max-width: 768px) {
  .about-section {
    padding-top: 50px;
  }

  .about-trust {
    grid-template-columns: 1fr;
  }

  .about-story-card {
    padding: 26px;
    text-align: left;
  }

  .about-story-card .btn {
    width: 100%;
    justify-content: center;
  }

  .about-timeline {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .timeline-item {
    text-align: left;
    padding-left: 50px;
    padding-top: 0;
  }

  .timeline-dot {
    left: 0;
    top: 4px;
    transform: none;
  }
}

/* =========================================================
   SHOWCASE SLIDER
   ========================================================= */
.showcase-slider {
  position: relative;
}

.slider-track {
  display: flex;
  gap: 28px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 8px;
  scrollbar-width: none;
}

.slider-track::-webkit-scrollbar {
  display: none;
}

.slider-track .video-card {
  flex: 0 0 calc((100% - 56px) / 3);
  scroll-snap-align: start;
  min-height: 560px;
}

.slider-track .video-card video {
  min-height: 560px;
}

.slider-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  margin-top: 36px;
}

.slider-arrow {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1px solid var(--glass-border);
  background: var(--glass);
  color: white;
  font-size: 18px;
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: var(--transition);
  backdrop-filter: blur(10px);
}

.slider-arrow:hover {
  background: var(--gradient);
  border-color: transparent;
  transform: scale(1.08);
  box-shadow: 0 10px 30px rgba(0, 229, 255, 0.3);
}

.slider-dots {
  display: flex;
  gap: 10px;
}

.slider-dots span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--glass-border);
  cursor: pointer;
  transition: var(--transition);
}

.slider-dots span.active {
  background: var(--gradient);
  width: 28px;
  border-radius: 6px;
}

@media (max-width: 1024px) {
  .slider-track .video-card {
    flex: 0 0 calc((100% - 28px) / 2);
    min-height: 480px;
  }

  .slider-track .video-card video {
    min-height: 480px;
  }
}

@media (max-width: 768px) {
  .slider-track {
    gap: 18px;
  }

  .slider-track .video-card {
    flex: 0 0 88%;
    min-height: 460px;
  }

  .slider-track .video-card video {
    min-height: 460px;
  }

  .slider-controls {
    gap: 16px;
    margin-top: 24px;
  }

  .slider-arrow {
    width: 44px;
    height: 44px;
    font-size: 15px;
  }
}

/* =========================================================
   CONSULTATION SECTION (replaces pricing)
   ========================================================= */
.consult-section {
  padding-top: 90px;
}

.consult-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-bottom: 50px;
}

.consult-card {
  background: var(--card-bg);
  border: 1px solid var(--glass-border);
  border-radius: var(--radius);
  padding: 38px;
  text-align: center;
  transition: var(--transition);
}

.consult-card:hover {
  transform: translateY(-8px);
  border-color: var(--cyan);
  box-shadow: 0 20px 50px rgba(0, 229, 255, 0.1);
}

.consult-icon {
  font-size: 32px;
  width: 70px;
  height: 70px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 24px;
}

.consult-icon.cyan {
  color: var(--cyan);
  background: rgba(0, 229, 255, 0.1);
}

.consult-icon.purple {
  color: var(--purple);
  background: rgba(139, 0, 255, 0.1);
}

.consult-icon.green {
  color: #34d399;
  background: rgba(52, 211, 153, 0.12);
}

.consult-card h3 {
  font-size: 22px;
  margin-bottom: 10px;
}

.consult-card p {
  font-size: 15px;
  margin: 0;
}

.consult-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 46px;
  border-radius: 30px;
  background:
    radial-gradient(circle at top left, rgba(139, 0, 255, 0.18), transparent 30%),
    radial-gradient(circle at bottom right, rgba(0, 229, 255, 0.16), transparent 30%),
    var(--card-bg);
  border: 1px solid var(--glass-border);
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.35);
}

.consult-cta-text h3 {
  font-size: clamp(22px, 3vw, 30px);
  margin-bottom: 10px;
  max-width: 480px;
}

.consult-cta-text p {
  margin: 0;
  max-width: 480px;
}

.consult-cta-actions {
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 0 0 auto;
}

.consult-cta-actions .btn {
  white-space: nowrap;
}

@media (max-width: 1024px) {
  .consult-grid {
    grid-template-columns: 1fr;
  }

  .consult-cta {
    flex-direction: column;
    text-align: center;
    padding: 36px;
  }

  .consult-cta-text h3,
  .consult-cta-text p {
    margin-left: auto;
    margin-right: auto;
  }

  .consult-cta-actions {
    width: 100%;
  }

  .consult-cta-actions .btn {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .consult-section {
    padding-top: 50px;
  }

  .consult-card {
    padding: 28px;
  }

  .consult-cta {
    padding: 26px;
    border-radius: 24px;
    gap: 24px;
  }
}

/* =========================================================
   CONTEXTUAL SOCIAL ICON COLORS
   ========================================================= */
.icon-instagram:hover {
  background: linear-gradient(45deg, #f9ce34, #ee2a7b, #6228d7) !important;
  border-color: transparent !important;
}

.icon-youtube:hover {
  background: #ff0000 !important;
  border-color: transparent !important;
}

.icon-linkedin:hover {
  background: #0a66c2 !important;
  border-color: transparent !important;
}

.icon-whatsapp:hover {
  background: #25D366 !important;
  border-color: transparent !important;
}

.icon-email:hover {
  background: var(--gradient) !important;
  border-color: transparent !important;
}

.icon-call:hover {
  background: rgba(0, 229, 255, 0.9) !important;
  border-color: transparent !important;
}

.footer-social-icons a:hover {
  transform: translateY(-4px) scale(1.05);
}

/* Hero mobile socials visible on mobile only */
@media (max-width: 768px) {
  .hero-mobile-socials a:hover {
    transform: translateY(-3px) scale(1.05);
  }
}


/* =========================================================
   STATS / SOCIAL PROOF BAR
   ========================================================= */
.stats-bar {
  padding: 60px 0;
  position: relative;
  border-top: 1px solid var(--glass-border);
  border-bottom: 1px solid var(--glass-border);
  background: linear-gradient(180deg, rgba(255,255,255,0.02), transparent);
}

.stats-bar-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  text-align: center;
}

.stat-item {
  position: relative;
}

.stat-item:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 10%;
  right: -15px;
  height: 80%;
  width: 1px;
  background: var(--glass-border);
}

.counter {
  font-size: clamp(36px, 5vw, 56px);
  font-weight: 900;
  letter-spacing: -2px;
  background: var(--gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
  margin-bottom: 8px;
  display: inline-block;
}

.stat-item p {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--text-muted);
  margin: 0;
}

@media (max-width: 1024px) {
  .stats-bar-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 20px;
  }

  .stat-item:nth-child(2)::after,
  .stat-item:nth-child(4)::after {
    display: none;
  }

  .stat-item:nth-child(odd)::after {
    display: none;
  }

  .stat-item:nth-child(1)::after,
  .stat-item:nth-child(3)::after {
    display: block;
  }
}

@media (max-width: 768px) {
  .stats-bar {
    padding: 40px 0;
  }

  .stats-bar-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 16px;
  }

  .stat-item::after {
    display: none !important;
  }

  .counter {
    font-size: 34px;
  }

  .stat-item p {
    font-size: 11px;
    letter-spacing: 1px;
  }
}


/* =====================================================
   2026 PREMIUM UPGRADE — ALL NEW SECTIONS
   ===================================================== */

/* ---- Scroll Progress ---- */
.scroll-progress {
  position: fixed; top: 0; left: 0;
  height: 3px; width: 0%;
  background: linear-gradient(90deg, #8b00ff, #2563ff, #00e5ff);
  z-index: 9999;
  transition: width .08s linear;
  box-shadow: 0 0 10px rgba(0,229,255,.7);
}

/* ---- Floating Orbs ---- */
.orb {
  position: fixed;
  border-radius: 50%;
  pointer-events: none;
  z-index: -1;
  animation: orbFloat 20s ease-in-out infinite alternate;
  filter: blur(80px);
  opacity: .35;
}
.orb-1 { width: 600px; height: 600px; background: radial-gradient(circle, #8b00ff, transparent 70%); top: -200px; left: -200px; animation-delay: 0s; }
.orb-2 { width: 500px; height: 500px; background: radial-gradient(circle, #00e5ff, transparent 70%); bottom: -150px; right: -150px; animation-delay: -7s; }
.orb-3 { width: 400px; height: 400px; background: radial-gradient(circle, #d400ff, transparent 70%); top: 50%; left: 50%; transform: translate(-50%, -50%); animation-delay: -14s; }

@keyframes orbFloat {
  0% { transform: translate(0, 0) scale(1); }
  33% { transform: translate(40px, -30px) scale(1.05); }
  66% { transform: translate(-30px, 40px) scale(.95); }
  100% { transform: translate(20px, -20px) scale(1.02); }
}

/* ---- Stagger Reveals ---- */
.stagger-1 { transition-delay: .1s; }
.stagger-2 { transition-delay: .25s; }
.stagger-3 { transition-delay: .4s; }

/* ---- Tilt Card (JS adds 3D transform on mousemove) ---- */
.tilt-card { transform-style: preserve-3d; will-change: transform; }

/* ---- Float Animations ---- */
.float-anim { animation: floatA 6s ease-in-out infinite; }
.float-anim-slow { animation: floatA 9s ease-in-out infinite; animation-delay: -3s; }
@keyframes floatA {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-16px); }
}

/* ---- Magnetic Button ---- */
.magnetic-btn { position: relative; overflow: hidden; transition: var(--transition), transform .2s ease; }
.magnetic-btn::before {
  content: ''; position: absolute;
  top: 0; left: -120%; width: 60%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);
  transition: .7s; pointer-events: none;
}
.magnetic-btn:hover::before { left: 140%; }

/* ---- Social Pills (Hero) ---- */
.hero-social-strip {
  display: flex; align-items: center; flex-wrap: wrap;
  gap: 10px; margin-top: 28px;
}
.hero-social-strip span { font-size: 13px; color: var(--text-muted); font-weight: 600; }
.social-pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 14px; border-radius: 100px;
  font-size: 13px; font-weight: 700; text-decoration: none;
  border: 1px solid transparent; transition: var(--transition);
  -webkit-tap-highlight-color: transparent;
}
.pill-instagram { color: #e1306c; border-color: rgba(225,48,108,.25); background: rgba(225,48,108,.07); }
.pill-instagram:hover { background: linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); color: #fff; border-color: transparent; transform: translateY(-2px); }
.pill-youtube { color: #FF0000; border-color: rgba(255,0,0,.25); background: rgba(255,0,0,.07); }
.pill-youtube:hover { background: #FF0000; color: #fff; border-color: transparent; transform: translateY(-2px); }
.pill-whatsapp { color: #25D366; border-color: rgba(37,211,102,.25); background: rgba(37,211,102,.07); }
.pill-whatsapp:hover { background: #25D366; color: #fff; border-color: transparent; transform: translateY(-2px); }
.pill-tiktok { color: #fff; border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.05); }
.pill-tiktok:hover { background: #010101; color: #fff; border-color: #69C9D0; transform: translateY(-2px); }

/* ---- Stats Bar ---- */
.stats-bar {
  padding: 60px 0;
  border-top: 1px solid var(--glass-border);
  border-bottom: 1px solid var(--glass-border);
  background: linear-gradient(180deg,rgba(255,255,255,.02),transparent);
}
.stats-bar-grid {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 30px; text-align: center;
}
.stat-item { position: relative; }
.stat-item:not(:last-child)::after {
  content: ''; position: absolute;
  top: 10%; right: -15px; height: 80%; width: 1px;
  background: var(--glass-border);
}
.counter {
  font-size: clamp(36px,5vw,56px); font-weight: 900;
  letter-spacing: -2px;
  background: var(--gradient);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text; line-height: 1; margin-bottom: 8px;
  display: inline-block;
}
.stat-item p { font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: 1.5px; color: var(--text-muted); margin: 0; }

@media (max-width: 1024px) {
  .stats-bar-grid { grid-template-columns: repeat(2, 1fr); gap: 40px 20px; }
  .stat-item:nth-child(even)::after { display: none; }
}
@media (max-width: 600px) {
  .stats-bar { padding: 36px 0; }
  .stats-bar-grid { gap: 24px 16px; }
  .stat-item::after { display: none !important; }
  .counter { font-size: 32px; }
  .stat-item p { font-size: 11px; }
}

/* =====================================================
   WHY CUT2POST
   ===================================================== */
.why-section { padding: 120px 0; }

.why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.why-card {
  background: var(--card-bg);
  border: 1px solid var(--glass-border);
  border-radius: 28px;
  padding: 36px;
  position: relative;
  overflow: hidden;
  transition: var(--transition);
}
.why-card::before {
  content: ''; position: absolute;
  inset: 0; border-radius: 28px;
  background: radial-gradient(circle at var(--mx,50%) var(--my,50%), rgba(var(--icon-rgb,0,229,255),.08), transparent 60%);
  opacity: 0; transition: opacity .4s;
}
.why-card:hover::before { opacity: 1; }
.why-card:hover {
  transform: translateY(-8px);
  border-color: rgba(0,229,255,.35);
  box-shadow: 0 24px 60px rgba(0,229,255,.1);
}
.why-icon-wrap {
  width: 60px; height: 60px;
  border-radius: 18px;
  display: flex; align-items: center; justify-content: center;
  font-size: 24px;
  color: var(--icon-color);
  background: color-mix(in srgb, var(--icon-color) 12%, transparent);
  margin-bottom: 20px;
  transition: var(--transition);
}
.why-card:hover .why-icon-wrap {
  background: var(--icon-color);
  color: #000;
  transform: scale(1.1) rotate(5deg);
}
.why-metric {
  font-size: 28px; font-weight: 900; letter-spacing: -1px;
  color: var(--icon-color);
  margin-bottom: 10px;
  text-shadow: 0 0 20px color-mix(in srgb, var(--icon-color) 40%, transparent);
}
.why-card h3 { font-size: 20px; font-weight: 700; margin-bottom: 10px; }
.why-card p { font-size: 14px; color: var(--text-muted); margin: 0 0 20px; }

.why-progress {
  height: 4px; background: rgba(255,255,255,.08);
  border-radius: 4px; overflow: hidden; margin-top: auto;
}
.why-progress-bar {
  height: 100%; width: 0;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--bar-color, #00e5ff), transparent);
  transition: width 1.2s cubic-bezier(.4,0,.2,1) .3s;
}
.why-card.active .why-progress-bar { width: var(--pct, 90%); }

.why-cta-card {
  background: radial-gradient(circle at top left, rgba(139,0,255,.2), transparent 40%),
              radial-gradient(circle at bottom right, rgba(0,229,255,.15), transparent 40%),
              var(--card-bg);
  border: 1px solid var(--glass-border);
  border-radius: 28px;
  padding: 40px;
  display: flex; flex-direction: column; justify-content: center;
  gap: 16px;
  transition: var(--transition);
}
.why-cta-card:hover { border-color: var(--cyan); box-shadow: 0 24px 80px rgba(0,229,255,.15); }
.why-cta-card h3 { font-size: 24px; margin-bottom: 4px; }
.why-cta-card p { font-size: 15px; margin: 0; }
.why-cta-card .btn { width: 100%; justify-content: center; }
.whatsapp-btn-full { border-color: rgba(37,211,102,.35) !important; color: #25D366 !important; }
.whatsapp-btn-full i { color: #25D366; }
.whatsapp-btn-full:hover { background: rgba(37,211,102,.12) !important; border-color: #25D366 !important; }

@media (max-width: 1100px) {
  .why-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .why-section { padding: 60px 0; }
  .why-grid { grid-template-columns: 1fr; }
  .why-card { padding: 28px; }
}

/* =====================================================
   NETFLIX SHOWCASE CAROUSEL
   ===================================================== */
.showcase-section { padding: 120px 0 80px; overflow: hidden; }
.showcase-section .container { margin-bottom: 60px; }

.netflix-carousel {
  position: relative;
  width: 100%;
  padding: 40px 0 80px;
  overflow: hidden;
}

.netflix-track {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 28px;
  transition: transform .6s cubic-bezier(.4,0,.2,1);
  padding: 20px 0;
}

.netflix-card {
  position: relative;
  flex: 0 0 300px;
  border-radius: 24px;
  overflow: visible;
  transition: transform .5s cubic-bezier(.4,0,.2,1), box-shadow .5s ease;
  cursor: pointer;
  will-change: transform;
}
.netflix-card .netflix-video-wrap {
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 9/16;
  background: #000;
  border: 1px solid var(--glass-border);
  position: relative;
  transition: var(--transition);
}
.netflix-card video {
  width: 100%; height: 100%;
  object-fit: cover; opacity: .75;
  transition: var(--transition);
}
.netflix-card.active video { opacity: 1; }
.netflix-card:hover video { opacity: .9; }

/* Center/active card */
.netflix-card.active {
  transform: scale(1.08);
  z-index: 5;
}
.netflix-card.active .netflix-video-wrap {
  border-color: var(--cyan);
  box-shadow: 0 0 0 2px var(--cyan), 0 30px 80px rgba(0,229,255,.35);
}

/* Side cards */
.netflix-card:not(.active) {
  transform: scale(.88);
  opacity: .7;
  z-index: 1;
}
.netflix-card:not(.active):hover {
  opacity: .9;
  transform: scale(.92);
}

/* Sound toggle inside card */
.netflix-sound-btn {
  position: absolute;
  bottom: 14px; right: 14px;
  width: 38px; height: 38px;
  border-radius: 50%;
  background: rgba(0,0,0,.65);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.15);
  display: flex; align-items: center; justify-content: center;
  font-size: 14px; color: white; cursor: pointer;
  transition: var(--transition);
  z-index: 10;
}
.netflix-sound-btn:hover { background: var(--cyan); color: #000; }

/* Card info */
.netflix-info {
  padding: 18px 4px 0;
  transition: var(--transition);
}
.netflix-card:not(.active) .netflix-info { opacity: 0; transform: translateY(8px); }
.netflix-card.active .netflix-info { opacity: 1; transform: translateY(0); }
.netflix-label {
  display: inline-flex; padding: 5px 14px;
  background: rgba(0,229,255,.12); border: 1px solid rgba(0,229,255,.25);
  border-radius: 100px; color: var(--cyan); font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px;
}
.netflix-label.popular {
  background: rgba(139,0,255,.15); border-color: rgba(139,0,255,.35); color: var(--purple);
}
.netflix-info h3 { font-size: 20px; margin-bottom: 6px; }
.netflix-info p { font-size: 14px; color: var(--text-muted); margin: 0; }

/* Arrows */
.netflix-arrow {
  position: absolute; top: 42%;
  transform: translateY(-50%);
  width: 54px; height: 54px;
  border-radius: 50%; border: 1px solid var(--glass-border);
  background: rgba(5,5,16,.8); backdrop-filter: blur(12px);
  color: white; font-size: 18px; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: var(--transition); z-index: 20;
}
.netflix-prev { left: max(20px, 4%); }
.netflix-next { right: max(20px, 4%); }
.netflix-arrow:hover {
  background: var(--gradient); border-color: transparent;
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 10px 30px rgba(0,229,255,.3);
}

/* Progress indicators */
.netflix-progress-wrap {
  display: flex; justify-content: center; gap: 10px;
  position: absolute; bottom: 30px; width: 100%;
}
.netflix-progress-item {
  width: 48px; height: 3px;
  background: rgba(255,255,255,.15);
  border-radius: 3px; overflow: hidden; cursor: pointer;
  transition: var(--transition);
}
.netflix-progress-item.active { width: 80px; }
.netflix-progress-fill {
  height: 100%; width: 0%;
  background: var(--gradient); border-radius: 3px;
  transition: none;
}
.netflix-progress-item.playing .netflix-progress-fill {
  transition: width 4s linear;
  width: 100%;
}

/* Mobile carousel */
@media (max-width: 768px) {
  .showcase-section { padding: 60px 0 60px; }
  .netflix-track {
    gap: 16px;
    transition: transform .4s cubic-bezier(.4,0,.2,1);
  }
  .netflix-card { flex: 0 0 75vw; }
  .netflix-card.active { transform: scale(1.04); }
  .netflix-card:not(.active) { transform: scale(.9); opacity: .65; }
  .netflix-arrow { display: none; }
}

/* =====================================================
   SOCIAL ICON COLORS (PRECISE BRAND COLORS)
   ===================================================== */
.social-icon-btn {
  width: 48px; height: 48px;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px; text-decoration: none; color: white;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  transition: var(--transition);
  -webkit-tap-highlight-color: transparent;
}
.footer-social-icons { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }

/* Exact brand colors on hover */
.icon-instagram:hover { background: linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); border-color: transparent; transform: translateY(-4px) scale(1.05); }
.icon-youtube:hover { background: #FF0000; border-color: transparent; transform: translateY(-4px) scale(1.05); }
.icon-linkedin:hover { background: #0A66C2; border-color: transparent; transform: translateY(-4px) scale(1.05); }
.icon-whatsapp:hover { background: #25D366; border-color: transparent; transform: translateY(-4px) scale(1.05); }
.icon-email:hover { background: #00E5FF; color: #000; border-color: transparent; transform: translateY(-4px) scale(1.05); }
.icon-call:hover { background: #8B00FF; border-color: transparent; transform: translateY(-4px) scale(1.05); }

/* Footer contact links */
.footer-contact-link {
  display: flex; align-items: center; gap: 10px;
  color: var(--text-muted); text-decoration: none; font-size: 15px;
  padding: 6px 0; transition: var(--transition);
}
.footer-contact-link.icon-whatsapp:hover { color: #25D366; background: transparent; border: none; transform: translateX(4px); }
.footer-contact-link.icon-email:hover { color: #00E5FF; background: transparent; border: none; transform: translateX(4px); }
.footer-contact-link.icon-call:hover { color: #8B00FF; background: transparent; border: none; transform: translateX(4px); }

/* =====================================================
   CONSULTATION SECTION
   ===================================================== */
.consult-section { padding: 120px 0; }
.consult-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-bottom: 50px; }

.consult-card {
  background: var(--card-bg); border: 1px solid var(--glass-border);
  border-radius: var(--radius); padding: 38px; text-align: center;
  transition: var(--transition); position: relative; overflow: hidden;
}
.consult-card:hover { transform: translateY(-8px); border-color: var(--cyan); box-shadow: 0 20px 50px rgba(0,229,255,.1); }

.consult-icon {
  font-size: 30px; width: 68px; height: 68px; border-radius: 20px;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 22px;
}
.consult-icon.cyan { color: var(--cyan); background: rgba(0,229,255,.1); }
.consult-icon.purple { color: var(--purple); background: rgba(139,0,255,.1); }
.consult-icon.green { color: #34d399; background: rgba(52,211,153,.1); }

.consult-card h3 { font-size: 22px; margin-bottom: 10px; }
.consult-card p { font-size: 15px; margin: 0; }

.consult-cta {
  display: flex; align-items: center; justify-content: space-between;
  gap: 40px; padding: 46px; border-radius: 30px;
  background: radial-gradient(circle at top left, rgba(139,0,255,.18), transparent 30%),
              radial-gradient(circle at bottom right, rgba(0,229,255,.16), transparent 30%),
              var(--card-bg);
  border: 1px solid var(--glass-border);
  box-shadow: 0 30px 100px rgba(0,0,0,.35);
}
.consult-cta-text h3 { font-size: clamp(22px,3vw,30px); margin-bottom: 10px; max-width: 480px; }
.consult-cta-text p { margin: 0; max-width: 480px; }
.consult-cta-actions { display: flex; flex-direction: column; gap: 14px; flex: 0 0 auto; }
.consult-cta-actions .btn { white-space: nowrap; justify-content: center; }
.whatsapp-btn { border-color: rgba(37,211,102,.35) !important; }
.whatsapp-btn i { color: #25D366; }
.whatsapp-btn:hover { border-color: #25D366 !important; background: rgba(37,211,102,.12) !important; }

@media (max-width: 1024px) {
  .consult-grid { grid-template-columns: 1fr; }
  .consult-cta { flex-direction: column; text-align: center; padding: 36px; }
  .consult-cta-actions { width: 100%; }
  .consult-cta-actions .btn { width: 100%; }
}
@media (max-width: 768px) {
  .consult-section { padding: 60px 0; }
  .consult-card { padding: 28px; }
  .consult-cta { padding: 26px; border-radius: 24px; gap: 24px; }
}

/* =====================================================
   MOBILE STICKY BOTTOM CTA
   ===================================================== */
.mobile-bottom-cta { display: none; }

@media (max-width: 768px) {
  .mobile-bottom-cta {
    display: grid;
    grid-template-columns: 1fr 1.35fr 1fr;
    position: fixed; bottom: 12px; left: 12px; right: 12px;
    z-index: 1200; gap: 8px; padding: 9px;
    border-radius: 24px;
    background: rgba(5,5,16,.92);
    border: 1px solid rgba(255,255,255,.12);
    backdrop-filter: blur(24px);
    box-shadow: 0 20px 60px rgba(0,0,0,.5);
  }
  .mob-cta-btn {
    min-height: 50px; border-radius: 18px;
    display: flex; align-items: center; justify-content: center; gap: 6px;
    color: white; text-decoration: none;
    font-size: 12px; font-weight: 800;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.1);
    transition: transform .15s ease, background .2s ease, box-shadow .2s ease;
    -webkit-tap-highlight-color: transparent;
    cursor: pointer;
  }
  .mob-cta-btn:active {
    transform: scale(.93);
    background: rgba(255,255,255,.14);
    box-shadow: 0 4px 20px rgba(0,229,255,.2);
  }
  .mob-whatsapp { border-color: rgba(37,211,102,.25); }
  .mob-whatsapp i { color: #25D366; font-size: 15px; }
  .mob-whatsapp:active { background: rgba(37,211,102,.15) !important; }
  .mob-primary {
    background: var(--gradient);
    box-shadow: 0 10px 30px rgba(0,229,255,.22);
    border-color: transparent;
  }
  .mob-primary:active {
    background: var(--gradient-hover) !important;
    box-shadow: 0 6px 20px rgba(0,229,255,.35) !important;
    transform: scale(.94);
  }
  .mob-portfolio i { color: var(--cyan); font-size: 15px; }
  .mob-portfolio:active { background: rgba(0,229,255,.1) !important; }

  footer, .premium-cta-section { padding-bottom: 110px !important; }
}

@media (max-width: 380px) {
  .mob-cta-btn span { font-size: 11px; }
  .mob-cta-btn { gap: 4px; }
}

/* =====================================================
   ACCESSIBILITY + FOCUS
   ===================================================== */
a:focus-visible, button:focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; border-radius: 8px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .orb { display: none; }
}

/* =====================================================
   MINI-BADGE UTILITY
   ===================================================== */
.mini-badge {
  display: inline-flex; padding: 5px 14px;
  background: rgba(0,229,255,.08); border: 1px solid rgba(0,229,255,.2);
  border-radius: 100px; color: var(--cyan); font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px;
}


/* =====================================================
   HERO — PREMIUM 2026 UPGRADE
   ===================================================== */

/* Canvas particles — sits behind everything in hero */
.hero-particles {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  pointer-events: none;
  z-index: 0;
  will-change: transform;
}

/* Moving spotlight beams (CSS-only, GPU-accelerated) */
.hero-lights {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
}
.hero-light {
  position: absolute;
  border-radius: 50%;
  filter: blur(120px);
  opacity: 0;
  animation: lightPulse 12s ease-in-out infinite;
  will-change: transform, opacity;
}
.hero-light-1 {
  width: 700px; height: 700px;
  background: radial-gradient(circle, rgba(139,0,255,.45), transparent 65%);
  top: -200px; left: -200px;
  animation-delay: 0s;
}
.hero-light-2 {
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(0,229,255,.35), transparent 65%);
  top: -100px; right: -150px;
  animation-delay: -4s;
}
.hero-light-3 {
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(212,0,255,.3), transparent 65%);
  bottom: 0; left: 40%;
  animation-delay: -8s;
}
@keyframes lightPulse {
  0%   { opacity: 0;    transform: translate(0,0)     scale(1);    }
  20%  { opacity: 1;                                               }
  50%  { opacity: .6;  transform: translate(60px,-40px) scale(1.1); }
  80%  { opacity: .9;                                               }
  100% { opacity: 0;    transform: translate(-30px,30px) scale(.95); }
}

/* Hero section itself — ensure z-index stacking */
.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  padding-top: 140px;
  padding-bottom: 60px;
  overflow: hidden;
  isolation: isolate;
}
.hero .container { position: relative; z-index: 2; }

/* Eyebrow badge */
.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 18px;
  background: rgba(0,229,255,.07);
  border: 1px solid rgba(0,229,255,.18);
  border-radius: 100px;
  color: var(--cyan);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .5px;
  margin-bottom: 28px;
}
.eyebrow-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--cyan);
  box-shadow: 0 0 8px var(--cyan);
  animation: dotPulse 2s ease-in-out infinite;
}
@keyframes dotPulse {
  0%,100% { opacity: 1; transform: scale(1); box-shadow: 0 0 8px var(--cyan); }
  50%      { opacity: .5; transform: scale(1.4); box-shadow: 0 0 18px var(--cyan); }
}

/* H1 typography refinement */
.hero-h1-sub {
  font-size: .72em;
  font-weight: 700;
  color: var(--text-muted);
  -webkit-text-fill-color: var(--text-muted);
  letter-spacing: -1px;
}
.hero-h1-gradient {
  display: block;
  background-size: 200% auto;
  animation: gradientShift 5s linear infinite;
}
@keyframes gradientShift {
  0%   { background-position: 0%   center; }
  100% { background-position: 200% center; }
}

.hero-desc {
  font-size: clamp(16px, 2vw, 20px);
  max-width: 520px;
  line-height: 1.7;
  margin-bottom: 10px;
}

/* Glass CTA button */
.btn-glass {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 18px 32px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  color: white;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.16);
  backdrop-filter: blur(14px);
  transition: var(--transition);
  cursor: pointer;
  white-space: nowrap;
}
.btn-glass:hover {
  background: rgba(255,255,255,.12);
  border-color: var(--cyan);
  transform: translateY(-3px);
  box-shadow: 0 12px 40px rgba(0,229,255,.15);
}

/* Glow ring behind video */
.hero-glow-ring {
  position: absolute;
  inset: -30px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(139,0,255,.25) 0%, rgba(0,229,255,.15) 40%, transparent 70%);
  z-index: -1;
  filter: blur(40px);
  animation: glowPulse 4s ease-in-out infinite alternate;
  pointer-events: none;
}
@keyframes glowPulse {
  0%   { opacity: .6; transform: scale(.95); }
  100% { opacity: 1;  transform: scale(1.05); }
}

/* Video overlay gradient bottom fade */
.video-overlay-gradient {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 40%;
  background: linear-gradient(to top, rgba(5,5,16,.7), transparent);
  pointer-events: none;
  z-index: 2;
}

/* Hero copy positioning */
.hero-copy { display: flex; flex-direction: column; }

/* Scroll cue at hero bottom */
.hero-scroll-cue {
  position: absolute;
  bottom: 24px; left: 50%;
  transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center;
  z-index: 3;
}
.scroll-cue-line {
  width: 1px; height: 60px;
  background: linear-gradient(to bottom, transparent, var(--cyan), transparent);
  animation: scrollLine 2s ease-in-out infinite;
}
@keyframes scrollLine {
  0%,100% { opacity: 0; transform: scaleY(.5) translateY(-20px); }
  50%      { opacity: 1; transform: scaleY(1)  translateY(0); }
}

/* Mobile hero tweaks */
@media (max-width: 768px) {
  .hero { padding-top: 110px; padding-bottom: 40px; min-height: auto; }
  .hero-desc { font-size: 16px; max-width: 100%; }
  .hero-h1-sub { font-size: .6em; }
  .hero-lights { opacity: .5; }
  .hero-scroll-cue { display: none; }
  .hero-glow-ring { display: none; }
}

/* =====================================================
   TRUST STRIP — ANIMATED MARQUEE
   ===================================================== */
.trust-strip {
  position: relative;
  overflow: hidden;
  background: rgba(255,255,255,.025);
  border-top: 1px solid var(--glass-border);
  border-bottom: 1px solid var(--glass-border);
  padding: 18px 0;
  /* edge fades */
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, black 8%, black 92%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, black 8%, black 92%, transparent 100%);
}
.trust-strip-track {
  display: flex;
  align-items: center;
  gap: 0;
  width: max-content;
  animation: marquee 28s linear infinite;
  will-change: transform;
}
.trust-strip:hover .trust-strip-track { animation-play-state: paused; }

@keyframes marquee {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

.trust-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 28px;
  font-size: 14px;
  font-weight: 700;
  color: var(--text-muted);
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: color .3s;
}
.trust-item:hover { color: var(--cyan); }
.trust-item i { color: var(--cyan); font-size: 13px; }
.trust-sep {
  color: rgba(255,255,255,.15);
  font-size: 18px;
  padding: 0 4px;
}

@media (prefers-reduced-motion: reduce) {
  .trust-strip-track { animation: none; }
}

/* =====================================================
   CUSTOM GROWTH PLANS
   ===================================================== */
.growth-plans-section { padding: 120px 0; }

/* Three pillars */
.growth-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-bottom: 48px;
}
.growth-pillar {
  background: var(--card-bg);
  border: 1px solid var(--glass-border);
  border-radius: 24px;
  padding: 36px;
  transition: var(--transition);
  text-align: center;
}
.growth-pillar:hover {
  transform: translateY(-6px);
  border-color: rgba(0,229,255,.3);
  box-shadow: 0 20px 50px rgba(0,0,0,.3);
}
.pillar-icon {
  width: 64px; height: 64px;
  border-radius: 20px;
  display: flex; align-items: center; justify-content: center;
  font-size: 26px;
  color: var(--c, var(--cyan));
  background: color-mix(in srgb, var(--c, var(--cyan)) 12%, transparent);
  margin: 0 auto 20px;
  transition: var(--transition);
}
.growth-pillar:hover .pillar-icon {
  background: var(--c, var(--cyan));
  color: #000;
  transform: scale(1.1) rotate(6deg);
}
.growth-pillar h4 { font-size: 19px; margin-bottom: 8px; }
.growth-pillar p { font-size: 14px; color: var(--text-muted); margin: 0; }

/* Big CTA card */
.growth-cta-card {
  position: relative;
  border-radius: 32px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.1);
}
.growth-cta-bg {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at top left, rgba(139,0,255,.28), transparent 45%),
    radial-gradient(ellipse at bottom right, rgba(0,229,255,.2), transparent 45%),
    rgba(255,255,255,.025);
  z-index: 0;
}
.growth-cta-content {
  position: relative; z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 48px;
  padding: 56px;
}
.growth-cta-left { flex: 1; }
.growth-cta-left h3 { font-size: clamp(22px,3vw,32px); margin: 12px 0 14px; }
.growth-cta-left p { font-size: 16px; margin-bottom: 24px; max-width: 460px; }

.growth-checklist {
  list-style: none;
  display: flex; flex-direction: column; gap: 10px;
}
.growth-checklist li {
  display: flex; align-items: center; gap: 10px;
  font-size: 15px; color: var(--text-muted);
}
.growth-checklist li i { color: #34d399; font-size: 16px; flex-shrink: 0; }

.growth-cta-right {
  flex: 0 0 auto;
  display: flex; flex-direction: column;
  align-items: stretch; gap: 14px;
  min-width: 220px;
}
.growth-quote-btn { justify-content: center; font-size: 16px; padding: 20px 28px; }
.growth-wa-btn { justify-content: center; font-size: 15px; }
.growth-note {
  font-size: 12px !important;
  color: var(--text-muted) !important;
  text-align: center;
  margin: 0 !important;
  display: flex; align-items: center; justify-content: center; gap: 5px;
}
.growth-note i { color: var(--cyan); }

@media (max-width: 1024px) {
  .growth-pillars { grid-template-columns: 1fr; }
  .growth-cta-content { flex-direction: column; gap: 32px; padding: 36px; }
  .growth-cta-right { width: 100%; }
  .growth-quote-btn, .growth-wa-btn { width: 100%; }
}
@media (max-width: 768px) {
  .growth-plans-section { padding: 60px 0; }
  .growth-pillar { padding: 28px; }
  .growth-cta-content { padding: 28px; }
}

/* =====================================================
   GENERAL DESIGN REFINEMENTS
   ===================================================== */

/* Better typography hierarchy */
h2 { letter-spacing: -1.5px; }
h3 { letter-spacing: -.5px; }
p { line-height: 1.75; }

/* Richer section spacing */
section { padding: 130px 0; }
@media (max-width: 768px) { section { padding: 60px 0; } }

/* Glassmorphism card base polish */
.why-card, .consult-card, .testimonial-card, .growth-pillar, .growth-cta-card {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* Better section-head spacing */
.section-head { margin-bottom: 70px; }
.section-head p { max-width: 600px; margin: 16px auto 0; font-size: 17px; }

/* Premium form inputs */
.form-input:focus {
  border-color: var(--cyan);
  background: rgba(255,255,255,.07);
  box-shadow: 0 0 0 3px rgba(0,229,255,.12), 0 0 20px rgba(0,229,255,.08);
}

/* Stat cards — glass upgrade */
.stat-card {
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(5,5,20,.75);
  box-shadow: 0 8px 32px rgba(0,0,0,.4), 0 0 0 1px rgba(0,229,255,.08);
}
.stat-card h4 { font-size: 22px; font-weight: 900; color: var(--cyan); }

/* Testimonial stars glow */
.testimonial-card .stars { color: #fbbf24; font-size: 18px; letter-spacing: 2px; margin-bottom: 16px; text-shadow: 0 0 12px rgba(251,191,36,.5); }

/* Nav active link indicator */
.nav-links a { position: relative; }
.nav-links a::after { content: ''; position: absolute; bottom: -4px; left: 0; right: 0; height: 1px; background: var(--cyan); transform: scaleX(0); transition: transform .3s ease; transform-origin: center; }
.nav-links a:hover::after { transform: scaleX(1); }


/* =====================================================
   PORTFOLIO SECTION — UPGRADED (niche filters, results,
   platform badges, client quotes, delivery chips, CTA)
   ===================================================== */

/* ---- Niche Filter Tabs ---- */
.niche-filters {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 48px;
}

.niche-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 10px 22px;
  border-radius: 100px;
  border: 1px solid var(--glass-border);
  background: rgba(255,255,255,0.04);
  color: var(--text-muted);
  font-size: 14px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  transition: var(--transition);
  -webkit-tap-highlight-color: transparent;
}

.niche-btn i {
  font-size: 13px;
}

.niche-btn:hover {
  border-color: rgba(0,229,255,0.4);
  color: white;
  background: rgba(0,229,255,0.07);
  transform: translateY(-2px);
}

.niche-btn.active {
  background: var(--gradient);
  border-color: transparent;
  color: white;
  box-shadow: 0 8px 24px rgba(0,229,255,0.25);
}

/* Cards hidden when filtered out */
.netflix-card.filtered-out {
  display: none;
}

/* ---- Platform Badges ---- */
.platform-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 100px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.3px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 10;
  border: 1px solid rgba(255,255,255,0.15);
}

.platform-instagram {
  background: linear-gradient(135deg, rgba(225,48,108,0.85), rgba(188,24,136,0.85));
  color: white;
}

.platform-youtube {
  background: rgba(255,0,0,0.82);
  color: white;
}

.platform-linkedin {
  background: rgba(10,102,194,0.85);
  color: white;
}

.platform-tiktok {
  background: rgba(1,1,1,0.8);
  color: white;
  border-color: rgba(105,201,208,0.4);
}

/* ---- Turnaround / Delivery Chip ---- */
.delivery-chip {
  position: absolute;
  bottom: 14px;
  left: 14px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 12px;
  border-radius: 100px;
  background: rgba(5,5,20,0.78);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(0,229,255,0.25);
  color: var(--cyan);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.3px;
  z-index: 10;
}

.delivery-chip i {
  font-size: 10px;
  color: var(--cyan);
}

/* ---- Result Metrics Row ---- */
.result-metrics {
  display: flex;
  gap: 8px;
  padding: 10px 4px 0;
  flex-wrap: wrap;
}

.metric-chip {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 10px 8px;
  background: rgba(255,255,255,0.04);
  border: 1px solid var(--glass-border);
  border-radius: 14px;
  text-align: center;
  transition: var(--transition);
}

.netflix-card.active .metric-chip {
  background: rgba(0,229,255,0.06);
  border-color: rgba(0,229,255,0.18);
}

.metric-chip i {
  font-size: 11px;
  color: var(--cyan);
}

.metric-num {
  font-size: 16px;
  font-weight: 900;
  letter-spacing: -0.5px;
  color: white;
  line-height: 1;
}

.metric-label {
  font-size: 10px;
  color: var(--text-muted);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* ---- Niche Tag (replaces netflix-label) ---- */
.niche-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 14px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 10px;
}

.niche-fitness {
  background: rgba(255,107,53,0.12);
  border: 1px solid rgba(255,107,53,0.3);
  color: #ff6b35;
}

.niche-brand {
  background: rgba(0,229,255,0.1);
  border: 1px solid rgba(0,229,255,0.25);
  color: var(--cyan);
}

.niche-realestate {
  background: rgba(37,211,102,0.1);
  border: 1px solid rgba(37,211,102,0.25);
  color: #25D366;
}

.niche-coach {
  background: rgba(139,0,255,0.1);
  border: 1px solid rgba(139,0,255,0.3);
  color: var(--purple);
}

/* ---- Client Quote ---- */
.client-quote {
  margin-top: 14px;
  padding: 14px 16px;
  background: rgba(255,255,255,0.03);
  border: 1px solid var(--glass-border);
  border-left: 3px solid var(--cyan);
  border-radius: 0 14px 14px 0;
  position: relative;
}

.client-quote > i {
  font-size: 14px;
  color: var(--cyan);
  opacity: 0.6;
  margin-bottom: 6px;
  display: block;
}

.client-quote > span {
  font-size: 13px;
  color: var(--text-muted);
  line-height: 1.6;
  font-style: italic;
  display: block;
  margin-bottom: 8px;
}

.client-name {
  font-size: 12px;
  font-weight: 700;
  color: var(--cyan);
  opacity: 0.8;
}

/* ---- Sound-On Pulse Prompt (center card) ---- */
.netflix-sound-btn.sound-pulse {
  bottom: 52px;
  right: 14px;
  width: auto;
  border-radius: 100px;
  padding: 6px 12px;
  gap: 6px;
  display: flex;
  align-items: center;
}

.sound-hint {
  font-size: 11px;
  font-weight: 700;
  color: white;
  white-space: nowrap;
  animation: soundFadeIn 3s ease-in-out infinite;
}

@keyframes soundFadeIn {
  0%, 100% { opacity: 0.4; }
  50% { opacity: 1; }
}

/* Hide hint after mute is toggled off */
.netflix-sound-btn.sound-pulse.sound-on .sound-hint {
  display: none;
}

/* ---- Upgraded Netflix info panel (more space for quote) ---- */
.netflix-info {
  padding: 16px 4px 4px;
}

.netflix-info h3 {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 6px;
  color: white;
}

.netflix-info > p {
  font-size: 13px;
  color: var(--text-muted);
  line-height: 1.5;
  margin: 0;
}

/* ---- Inline CTA below carousel ---- */
.showcase-inline-cta {
  margin-top: 52px;
  padding: 0 0 10px;
}

.showcase-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 36px 48px;
  border-radius: 28px;
  background:
    radial-gradient(circle at top left, rgba(139,0,255,0.2), transparent 40%),
    radial-gradient(circle at bottom right, rgba(0,229,255,0.15), transparent 40%),
    rgba(255,255,255,0.03);
  border: 1px solid var(--glass-border);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}

.showcase-cta-eyebrow {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--cyan);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

.showcase-cta-eyebrow i {
  color: #ff6b35;
}

.showcase-cta-copy h3 {
  font-size: clamp(18px, 2.5vw, 26px);
  font-weight: 800;
  margin: 0;
  max-width: 480px;
  line-height: 1.25;
}

.showcase-cta-btn {
  flex: 0 0 auto;
  white-space: nowrap;
  padding: 18px 32px;
  font-size: 15px;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .niche-filters {
    gap: 8px;
    margin-bottom: 32px;
  }

  .niche-btn {
    padding: 8px 16px;
    font-size: 13px;
  }

  .result-metrics {
    gap: 6px;
  }

  .metric-chip {
    padding: 8px 6px;
  }

  .metric-num {
    font-size: 14px;
  }

  .showcase-cta-inner {
    flex-direction: column;
    text-align: center;
    padding: 28px 24px;
    gap: 20px;
  }

  .showcase-cta-btn {
    width: 100%;
    justify-content: center;
  }

  .showcase-cta-eyebrow {
    justify-content: center;
  }

  .client-quote > span {
    font-size: 12px;
  }

  .netflix-sound-btn.sound-pulse {
    bottom: 52px;
  }
}

@media (max-width: 480px) {
  .niche-btn span,
  .niche-btn:not([data-niche="all"]) {
    font-size: 12px;
  }

  .delivery-chip,
  .platform-badge {
    font-size: 10px;
    padding: 4px 9px;
  }
}


/* =====================================================
   HERO VERTICAL VIDEO + SHOWCASE RESPONSIVE FIX
   ===================================================== */

/* Desktop: give hero-visual enough horizontal breathing room */
@media (min-width: 1200px) {
  .hero-visual { padding: 0 70px; }
  .video-container { max-width: 340px; }
}

/* Tablet: shrink padding, keep cards inside */
@media (max-width: 1024px) {
  .hero-visual { padding: 0 46px; }
  .video-container { max-width: 280px; }
}

/* Mobile: centre video, reduce padding, hide s3 */
@media (max-width: 768px) {
  .hero-visual {
    padding: 20px 44px 0;
    justify-content: center;
  }
  .video-container {
    max-width: 220px;
    aspect-ratio: 9 / 16;
    border-radius: 18px;
  }
  .stat-card.s1 { right: -6px; top: 8%; }
  .stat-card.s2 { left: -6px; bottom: 8%; }
  .stat-card.s3 { display: none !important; }
  .stat-card h4 { font-size: 16px; }
  .stat-card p  { font-size: 10px; }
}

@media (max-width: 400px) {
  .hero-visual { padding: 16px 38px 0; }
  .video-container { max-width: 190px; }
}

/* =====================================================
   SHOWCASE SECTION — FULL RESPONSIVE REBUILD
   Mobile: Instagram-style snap scroll
   Desktop: Netflix centre-scaled
   ===================================================== */

/* Wipe old conflicting rules */
.showcase-section {
  padding: 100px 0 60px;
  overflow: hidden;
}

.showcase-section .container {
  margin-bottom: 48px;
}

/* --- TRACK --- */
.netflix-carousel {
  position: relative;
  width: 100%;
  padding-bottom: 72px; /* space for dots */
  overflow: hidden;
}

.netflix-track {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  padding: 30px 0;
  /* NO overflow scroll on desktop — JS handles visibility */
  transition: transform .55s cubic-bezier(.4,0,.2,1);
  will-change: transform;
}

/* --- DESKTOP CARD SIZES --- */
.netflix-card {
  position: relative;
  flex: 0 0 260px;
  border-radius: 24px;
  overflow: visible;
  transition: transform .45s cubic-bezier(.4,0,.2,1),
              opacity .35s ease,
              box-shadow .35s ease;
  cursor: pointer;
  will-change: transform, opacity;
}

.netflix-card .netflix-video-wrap {
  border-radius: 22px;
  overflow: hidden;
  aspect-ratio: 9 / 16;
  background: #000;
  border: 1px solid var(--glass-border);
  position: relative;
  transition: border-color .3s, box-shadow .3s;
}

.netflix-card video {
  width: 100%; height: 100%;
  object-fit: cover;
  opacity: .65;
  transition: opacity .3s;
  display: block;
}

/* Active (centre) card */
.netflix-card.active {
  transform: scale(1.08);
  z-index: 5;
}
.netflix-card.active video { opacity: 1; }
.netflix-card.active .netflix-video-wrap {
  border-color: var(--cyan);
  box-shadow: 0 0 0 2px var(--cyan),
              0 24px 70px rgba(0,229,255,.35);
}

/* Side cards */
.netflix-card:not(.active) {
  transform: scale(.86);
  opacity: .6;
  z-index: 1;
}
.netflix-card:not(.active):hover {
  transform: scale(.91);
  opacity: .82;
}

/* Filtered */
.netflix-card.filtered-out { display: none; }

/* --- ARROWS --- */
.netflix-arrow {
  position: absolute;
  top: 44%;
  transform: translateY(-50%);
  width: 52px; height: 52px;
  border-radius: 50%;
  border: 1px solid var(--glass-border);
  background: rgba(5,5,20,.85);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  color: white; font-size: 17px;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: var(--transition);
  z-index: 20;
  -webkit-tap-highlight-color: transparent;
}
.netflix-prev { left: clamp(12px, 3%, 40px); }
.netflix-next { right: clamp(12px, 3%, 40px); }
.netflix-arrow:hover {
  background: var(--gradient);
  border-color: transparent;
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 8px 28px rgba(0,229,255,.35);
}
.netflix-arrow:active { transform: translateY(-50%) scale(.96); }

/* --- PROGRESS DOTS --- */
.netflix-progress-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  position: absolute;
  bottom: 22px;
  left: 0; right: 0;
}
.netflix-progress-item {
  height: 4px; width: 32px;
  background: rgba(255,255,255,.15);
  border-radius: 4px;
  overflow: hidden;
  cursor: pointer;
  transition: width .25s ease, background .25s;
}
.netflix-progress-item.active { width: 64px; }
.netflix-progress-fill {
  height: 100%; width: 0%;
  background: linear-gradient(90deg, var(--cyan), var(--purple));
  border-radius: 4px;
  transition: none;
}
.netflix-progress-item.playing .netflix-progress-fill {
  transition: width 4s linear;
  width: 100%;
}

/* --- INFO PANEL --- */
.netflix-info {
  padding: 14px 2px 4px;
  transition: opacity .3s, transform .3s;
}
.netflix-card:not(.active) .netflix-info {
  opacity: 0;
  transform: translateY(6px);
  pointer-events: none;
}
.netflix-card.active .netflix-info {
  opacity: 1;
  transform: translateY(0);
}
.netflix-info h3 {
  font-size: 18px; font-weight: 800;
  color: white; margin-bottom: 5px;
}
.netflix-info > p {
  font-size: 13px; color: var(--text-muted);
  line-height: 1.5; margin: 0;
}

/* Metric chips — only on active card */
.result-metrics {
  display: flex;
  gap: 6px;
  padding: 10px 0 0;
}
.metric-chip {
  flex: 1; min-width: 0;
  display: flex; flex-direction: column;
  align-items: center; gap: 2px;
  padding: 8px 6px;
  background: rgba(255,255,255,.04);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  text-align: center;
  transition: background .3s, border-color .3s;
}
.netflix-card.active .metric-chip {
  background: rgba(0,229,255,.06);
  border-color: rgba(0,229,255,.2);
}
.metric-chip i   { font-size: 10px; color: var(--cyan); }
.metric-num      { font-size: 15px; font-weight: 900; letter-spacing: -.5px; color: white; line-height: 1; }
.metric-label    { font-size: 9px; color: var(--text-muted); font-weight: 600; text-transform: uppercase; letter-spacing: .4px; }

/* --- PLATFORM + DELIVERY CHIPS --- */
.platform-badge {
  position: absolute; top: 12px; left: 12px;
  display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 10px; border-radius: 100px;
  font-size: 11px; font-weight: 700;
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.15);
  z-index: 10;
}
.platform-instagram { background: linear-gradient(135deg,rgba(225,48,108,.85),rgba(188,24,136,.85)); color: white; }
.platform-youtube   { background: rgba(255,0,0,.82); color: white; }
.platform-linkedin  { background: rgba(10,102,194,.85); color: white; }

.delivery-chip {
  position: absolute; bottom: 12px; left: 12px;
  display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 10px; border-radius: 100px;
  background: rgba(5,5,20,.78); backdrop-filter: blur(8px);
  border: 1px solid rgba(0,229,255,.28);
  color: var(--cyan); font-size: 11px; font-weight: 700;
  z-index: 10;
}
.delivery-chip i { font-size: 9px; color: var(--cyan); }

/* --- SOUND BUTTON --- */
.netflix-sound-btn {
  position: absolute; bottom: 12px; right: 12px;
  width: 36px; height: 36px; border-radius: 50%;
  background: rgba(0,0,0,.65); backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.15);
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; color: white; cursor: pointer;
  transition: var(--transition); z-index: 10;
  -webkit-tap-highlight-color: transparent;
}
.netflix-sound-btn:hover { background: var(--cyan); color: #000; }
.netflix-sound-btn.sound-pulse {
  bottom: 50px; right: 12px;
  width: auto; border-radius: 100px;
  padding: 5px 11px; gap: 5px; flex-direction: row;
}
.sound-hint {
  font-size: 10px; font-weight: 700; color: white;
  white-space: nowrap; animation: soundFadeIn 3s ease-in-out infinite;
}
@keyframes soundFadeIn { 0%,100%{opacity:.4} 50%{opacity:1} }
.netflix-sound-btn.sound-pulse.sound-on .sound-hint { display: none; }

/* --- NICHE TAG + CLIENT QUOTE --- */
.niche-tag {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 12px; border-radius: 100px;
  font-size: 11px; font-weight: 700; text-transform: uppercase;
  letter-spacing: .7px; margin-bottom: 8px;
}
.niche-fitness   { background: rgba(255,107,53,.12); border: 1px solid rgba(255,107,53,.3); color: #ff6b35; }
.niche-brand     { background: rgba(0,229,255,.1);   border: 1px solid rgba(0,229,255,.25); color: var(--cyan); }
.niche-realestate{ background: rgba(37,211,102,.1);  border: 1px solid rgba(37,211,102,.25); color: #25D366; }
.niche-coach     { background: rgba(139,0,255,.1);   border: 1px solid rgba(139,0,255,.3);  color: var(--purple); }

.client-quote {
  margin-top: 12px; padding: 12px 14px;
  background: rgba(255,255,255,.03);
  border: 1px solid var(--glass-border);
  border-left: 3px solid var(--cyan);
  border-radius: 0 12px 12px 0;
}
.client-quote > i { font-size: 13px; color: var(--cyan); opacity: .6; margin-bottom: 5px; display: block; }
.client-quote > span { font-size: 12px; color: var(--text-muted); line-height: 1.55; font-style: italic; display: block; margin-bottom: 6px; }
.client-name { font-size: 11px; font-weight: 700; color: var(--cyan); opacity: .8; }

/* --- INLINE CTA --- */
.showcase-inline-cta { margin-top: 48px; }
.showcase-cta-inner {
  display: flex; align-items: center; justify-content: space-between;
  gap: 28px; padding: 32px 44px; border-radius: 26px;
  background:
    radial-gradient(circle at top left, rgba(139,0,255,.18), transparent 40%),
    radial-gradient(circle at bottom right, rgba(0,229,255,.14), transparent 40%),
    rgba(255,255,255,.03);
  border: 1px solid var(--glass-border);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
}
.showcase-cta-eyebrow {
  display: flex; align-items: center; gap: 7px;
  font-size: 12px; font-weight: 700; color: var(--cyan);
  text-transform: uppercase; letter-spacing: .9px; margin-bottom: 7px;
}
.showcase-cta-eyebrow i { color: #ff6b35; }
.showcase-cta-copy h3 {
  font-size: clamp(17px, 2.2vw, 24px); font-weight: 800;
  margin: 0; max-width: 440px; line-height: 1.25;
}
.showcase-cta-btn { flex: 0 0 auto; white-space: nowrap; }

/* ==============================
   MOBILE: Instagram-style carousel
   ============================== */
@media (max-width: 900px) {
  .showcase-section { padding: 60px 0 50px; }
  .showcase-section .container { margin-bottom: 36px; }

  .netflix-carousel {
    overflow: visible;
    padding-bottom: 60px;
  }

  .netflix-track {
    /* Switch to native horizontal scroll on mobile */
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    gap: 14px;
    padding: 10px 20px 10px;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    transition: none; /* kill JS transform, use native scroll */
  }
  .netflix-track::-webkit-scrollbar { display: none; }

  /* All cards same size — no scale effect on mobile */
  .netflix-card {
    flex: 0 0 72vw;
    max-width: 300px;
    transform: none !important;
    opacity: 1 !important;
    scroll-snap-align: center;
    border-radius: 20px;
  }

  .netflix-card .netflix-video-wrap {
    border-radius: 18px;
    aspect-ratio: 9 / 16;
  }

  /* Active glow still applies */
  .netflix-card.active .netflix-video-wrap {
    border-color: var(--cyan);
    box-shadow: 0 0 0 2px var(--cyan), 0 16px 50px rgba(0,229,255,.25);
  }

  /* Info visible on all cards on mobile */
  .netflix-card:not(.active) .netflix-info {
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto;
  }

  /* Arrows hidden — swipe instead */
  .netflix-arrow { display: none; }

  /* Progress dots repositioned */
  .netflix-progress-wrap {
    position: relative;
    bottom: auto;
    margin-top: 18px;
  }

  .showcase-cta-inner {
    flex-direction: column;
    text-align: center;
    padding: 24px 20px;
    gap: 18px;
    border-radius: 20px;
  }
  .showcase-cta-btn { width: 100%; justify-content: center; }
  .showcase-cta-eyebrow { justify-content: center; }
}

@media (max-width: 480px) {
  .netflix-card { flex: 0 0 82vw; }
  .niche-btn { padding: 7px 14px; font-size: 12px; }
  .metric-num { font-size: 13px; }
  .platform-badge, .delivery-chip { font-size: 10px; padding: 3px 8px; }
  .client-quote > span { font-size: 11px; }
}

/* Niche filters mobile */
@media (max-width: 768px) {
  .niche-filters { gap: 7px; margin-bottom: 28px; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; justify-content: flex-start; scrollbar-width: none; }
  .niche-filters::-webkit-scrollbar { display: none; }
  .niche-btn { flex-shrink: 0; }
}


/* =====================================================
   FINAL POLISH PASS — COPY + UX + FORM + MOBILE
   ===================================================== */

/* ---- Hero trust line ---- */
.hero-trust-line {
  font-size: 13px;
  color: var(--text-muted);
  margin: 14px 0 20px;
  display: flex;
  align-items: center;
  gap: 8px;
  opacity: 0.85;
}
.hero-trust-line i { color: #34d399; font-size: 14px; }

/* ---- Form subtitle ---- */
.form-subtitle {
  font-size: 14px;
  color: var(--text-muted);
  margin: 4px 0 0;
  line-height: 1.5;
}

/* ---- Form field wrapper ---- */
.form-field {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

/* ---- Inline field errors ---- */
.field-error {
  font-size: 12px;
  color: #f87171;
  display: none;
  padding-left: 2px;
}
.form-field.has-error .field-error { display: block; }
.form-field.has-error .form-input {
  border-color: rgba(248,113,113,0.5);
  box-shadow: 0 0 0 3px rgba(248,113,113,0.08);
}
.form-field.is-valid .form-input {
  border-color: rgba(52,211,153,0.4);
  box-shadow: 0 0 0 3px rgba(52,211,153,0.06);
}

/* ---- Button 3-state: idle / loading / success ---- */
#submit-btn .btn-loading,
#submit-btn .btn-success { display: none; }

#submit-btn.is-loading .btn-text,
#submit-btn.is-loading .btn-success { display: none; }
#submit-btn.is-loading .btn-loading {
  display: inline-flex; align-items: center; gap: 8px;
}

#submit-btn.is-success .btn-text,
#submit-btn.is-success .btn-loading { display: none; }
#submit-btn.is-success .btn-success {
  display: inline-flex; align-items: center; gap: 8px;
}
#submit-btn.is-success {
  background: linear-gradient(135deg,#34d399,#10b981);
  pointer-events: none;
}

/* ---- Input focus ring ---- */
.form-input:focus {
  border-color: var(--cyan);
  box-shadow: 0 0 0 3px rgba(0,229,255,0.1);
  outline: none;
}
.form-input::placeholder { color: rgba(255,255,255,0.28); font-size: 14px; }

/* ---- FAQ 5th item consistent ---- */
.faq-question { font-size: 15px; line-height: 1.5; }

/* ---- Section head paragraph width ---- */
.section-head p { max-width: 560px; margin-inline: auto; }

/* ---- Tighter footer brand block ---- */
.footer-brand-block p { font-size: 14px; line-height: 1.7; max-width: 260px; }

/* ---- Remove form-grid double columns on narrow screens ---- */
@media (max-width: 560px) {
  .premium-cta-form .form-grid { grid-template-columns: 1fr; }
  .hero-trust-line { font-size: 12px; }
  .form-subtitle { font-size: 13px; }
}

/* ---- Showcase section head paragraph centred ---- */
.showcase-section .section-head p { max-width: 520px; }

/* ---- Why card copy tightening ---- */
.why-card p { font-size: 14px; line-height: 1.65; }
.mix-section p { font-size: 15px; line-height: 1.7; }
