/* responsive.css - overrides to ensure proper mobile/tablet display */

/* Base: ensure fluid images and elements */
img, svg {
  max-width: 100%;
  height: auto;
}

/* Tablets and small desktops */
@media (max-width: 1050px) {
  .hero {
    flex-direction: column;
    align-items: center;
    padding: 1.5em 3vw;
  }
  .hero-content {
    max-width: 100%;
    text-align: center;
    margin-bottom: 1em;
  }
  .hero-illustration {
    width: 90vw;
    max-width: 600px;
    margin: 0 auto 1.5em;
  }
  .starburst {
    width: 94%;
    margin: 2em 0;
    padding: 1em;
  }
  .grid-section {
    gap: 1.5em;
  }
  .info-block {
    max-width: 45%;
    min-width: 200px;
  }
  .cta-row {
    flex-wrap: wrap;
  }
}

/* Mobile phones */
@media (max-width: 700px) {
  h1 { font-size: 1.6em; }
  h2 { font-size: 1.8em; }
  h3 { font-size: 1.2em; }

  .hero-content {
    padding: 0 1em;
  }
  .grid-section {
    flex-direction: column;
    gap: 1em;
    align-items: stretch;
  }
  .info-block {
    width: 95vw;
    max-width: none;
    margin: 0 auto 1em;
    padding: 1em;
    font-size: 0.95em;
  }
  .countdown-box {
    flex-direction: column;
    gap: 1em;
    padding: 0.8em;
    font-size: 1em;
	width: 94%;
  }
  .countdown-item span {
    font-size: 2em;
  }
  .cta-main {
    width: 90vw;
    max-width: 100%;
    padding: 0.8em 1em;
    font-size: 1.1em;
    box-sizing: border-box;
  }
  .cta-row {
    flex-direction: column;
    gap: 0.8em;
    align-items: center;
  }
  .cta-download {
    width: 90vw;
    max-width: 350px;
    justify-content: center;
    font-size: 1em;
    padding: 0.8em;
  }
}

/* Smallest phones */
@media (max-width: 480px) {
  .starburst, .comite-section, .aspi-support, .extra-info {
    padding: 0.5em;
  }
  .cta-main {
    width: 100vw;
    padding: 0.6em;
    font-size: 1em;
  }
  .comite-section {
    padding: 0.6em;
    font-size: 0.9em;
  }
  .countdown-box {
    gap: 0.5em;
    padding: 0.4em;
    font-size: 0.85em;
	width: 94%;
  }
  .info-block h3 {
    font-size: 1.1em;
  }
  .info-block {
    padding: 0.8em;
    font-size: 0.9em;
  }
}
