/**
 * Digital Crazy Hub - Responsive Media Queries & Breakpoints
 * Optimized for 320px - 1920px viewports
 */

/* =========================================================
   LARGE DESKTOPS & SCREENS (Max 1280px)
   ========================================================= */
@media (max-width: 1280px) {
  .hero-main-title {
    font-size: 3rem;
  }
  .info-cards-grid {
    gap: 16px;
  }
}

/* =========================================================
   TABLETS & SMALL DESKTOPS (Max 1024px)
   ========================================================= */
@media (max-width: 1024px) {
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .hero-content-col {
    text-align: center;
  }
  .hero-content-col .hero-cta-wrapper,
  .hero-content-col .hero-guarantee-note {
    justify-content: center;
  }
  .hero-content-col .hero-main-title,
  .hero-main-title {
    font-size: 2.3rem;
  }
  .hero-content-col .hero-supporting-title,
  .hero-supporting-title {
    font-size: 1.15rem;
  }
  .info-cards-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .audience-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .testimonials-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .transformation-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .footer-top {
    grid-template-columns: 1fr 1fr;
  }
  .footer-brand {
    grid-column: span 2;
  }
}

/* =========================================================
   MOBILE DEVICES & SMALL TABLETS (Max 768px)
   ========================================================= */
@media (max-width: 768px) {
  .container {
    padding: 0 18px;
  }
  .site-header {
    padding: 10px 0;
  }
  .header-marquee-bar {
    padding: 7px 0;
  }
  .marquee-ticker-item {
    font-size: 0.85rem;
    gap: 8px;
  }
  .ticker-live-badge {
    font-size: 0.74rem;
    padding: 2px 8px;
  }
  .ticker-cta {
    font-size: 0.78rem;
    padding: 2px 8px;
  }
  .site-logo {
    height: 42px;
  }
  .msme-badge-img {
    height: 32px;
    padding-left: 8px;
  }
  .header-live-badge {
    display: none; /* Conserve header space on mobile */
  }
  .btn-header-cta {
    padding: 8px 16px;
    font-size: 0.85rem;
  }

  /* Hero */
  .hero-section {
    padding: 35px 0 50px;
  }
  .hero-container {
    padding: 0 16px;
  }
  .hero-pill-badge {
    font-size: 0.8rem;
    padding: 6px 14px;
    margin-bottom: 16px;
  }
  .hero-content-col .hero-main-title,
  .hero-main-title {
    font-size: 1.85rem;
    letter-spacing: -0.02em;
  }
  .hero-content-col .hero-supporting-title,
  .hero-supporting-title {
    font-size: 1.02rem;
    line-height: 1.4;
  }
  .hero-content-col .hero-description,
  .hero-description {
    font-size: 0.9rem;
    margin-bottom: 22px;
  }
  .hero-content-col .hero-cta-wrapper,
  .hero-cta-wrapper {
    flex-direction: column;
    width: 100%;
  }
  .btn-primary, .btn-secondary {
    width: 100%;
    justify-content: center;
  }

  /* Info Cards & Countdown */
  .workshop-info-section {
    padding: 60px 0;
  }
  .info-cards-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .info-card {
    padding: 20px 14px;
  }
  .info-card-val {
    font-size: 1.08rem;
  }
  .countdown-box-wrapper {
    padding: 24px 16px;
  }
  .countdown-number {
    font-size: 2.1rem;
  }
  .countdown-unit {
    padding: 12px 6px;
  }

  /* Scoreboard */
  .scoreboard-section {
    padding: 40px 0;
  }
  .scoreboard-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .score-number {
    font-size: 2.2rem;
  }

  /* Audience & Curriculum */
  .audience-section, .curriculum-section, .transformation-section, .testimonials-section, .gallery-section, .faq-section, .final-pricing-section {
    padding: 60px 0;
  }
  .section-title {
    font-size: 1.9rem;
  }
  .audience-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .curriculum-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .curriculum-card {
    padding: 18px 20px;
    gap: 14px;
    min-height: auto;
  }
  .curriculum-card-icon {
    width: 34px;
    height: 34px;
    min-width: 34px;
    font-size: 1.05rem;
  }
  .curriculum-card-text {
    font-size: 0.98rem;
  }
  .transformation-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .testimonials-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  /* Marquee Track items */
  .marquee-item {
    width: 220px;
    height: 150px;
  }

  /* Lightbox Mobile Adjustments */
  .lightbox-prev-btn {
    left: 10px;
  }
  .lightbox-next-btn {
    right: 10px;
  }
  .lightbox-nav-btn {
    width: 40px;
    height: 40px;
    font-size: 1.3rem;
    background: rgba(0, 0, 0, 0.6);
  }

  /* CTA Banner */
  .cta-banner-section {
    padding: 60px 0;
  }
  .cta-banner-title {
    font-size: 2rem;
  }

  /* Pricing */
  .pricing-card-wrapper {
    padding: 34px 20px;
  }
  .current-price {
    font-size: 3.2rem;
  }

  /* Footer */
  .footer-top {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .footer-brand {
    grid-column: span 1;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 14px;
    text-align: center;
  }

  /* Mobile Sticky Bottom Bar */
  .mobile-sticky-bar {
    display: flex;
  }

  /* Ensure body has bottom margin so sticky bar does not cover footer/buttons */
  body {
    padding-bottom: 64px;
  }

  .floating-whatsapp {
    bottom: 80px;
    right: 18px;
    width: 50px;
    height: 50px;
    font-size: 1.5rem;
  }

  .back-to-top {
    bottom: 140px;
    right: 20px;
  }
}

/* =========================================================
   VERY SMALL SCREENS (Max 380px: iPhone SE, older Android)
   ========================================================= */
@media (max-width: 380px) {
  .hero-main-title {
    font-size: 1.85rem;
  }
  .info-cards-grid {
    grid-template-columns: 1fr;
  }
  .countdown-number {
    font-size: 1.7rem;
  }
  .countdown-label {
    font-size: 0.68rem;
  }
  .current-price {
    font-size: 2.8rem;
  }
}

