/* Mobile-specific overrides to add gutters and vertical spacing */
@media (max-width:639px) {
  .organiza {
    display: none;
  }

  .home-hero {
    min-height: 100svh !important;
    height: 100svh;
    padding: 0 !important;
    background: #0f2440;
  }

  .hero-home-card {
    width: 100%;
    height: 100svh;
    min-height: 0;
    max-height: none;
    border-radius: 0;
    box-shadow: none;
  }

  .hero-home-image {
    background-position: calc(50% - 2cm) center;
    filter: none !important;
  }

  .hero-home-overlay {
    background: transparent !important;
  }

  .hero-home-content {
    align-items: flex-start;
    justify-content: flex-start;
    text-align: left;
    padding: 6.7rem 1.15rem 6.4rem;
  }

  .hero-home-kicker {
    margin-bottom: 1.4rem;
    color: #12406F;
    font-size: .9rem;
    letter-spacing: .14em;
    text-shadow: 0 2px 8px rgba(255, 255, 255, .9);
  }

  .hero-home-content h1 {
    max-width: 280px;
    margin-bottom: .75rem;
    color: #A3191A;
    font-size: clamp(2.85rem, 15vw, 3.7rem);
    line-height: .98;
    text-align: left;
    text-shadow: 0 3px 12px rgba(255, 255, 255, .9);
  }

  .hero-home-content h1 span {
    color: #12406F;
  }

  .hero-home-content > p {
    max-width: 280px;
    margin-bottom: .7rem;
    color: #12406F !important;
    font-size: 1.1rem;
    line-height: 1.3;
    text-align: left;
    text-shadow: 0 2px 8px rgba(255, 255, 255, .9);
  }

  .hero-home-content > p:first-of-type {
    font-size: 1rem;
  }

  .hero-home-title-rest {
    display: block;
  }

  .home-welcome-title {
    font-size: clamp(1rem, 4.8vw, 1.3rem);
    line-height: 1.25;
  }

  .home-welcome-title span {
    white-space: nowrap;
  }

  .hero-home-content .hero-home-date {
    display: flex !important;
    margin-bottom: 1.2rem;
    color: #12406F !important;
    font-size: .62rem !important;
    line-height: 1.1;
    font-weight: 700;
  }

  .hero-home-content .hero-home-date div:first-child {
    font-size: .82rem;
    line-height: 1.1;
    color: #A3191A !important;
  }

  .hero-home-content .hero-home-date div:last-child {
    font-size: .58rem;
    line-height: 1.1;
  }

  .hero-home-content .btn-g {
    align-self: flex-start;
    padding: .78rem 1.4rem;
    font-size: .95rem;
    border-radius: 999px;
  }

  .hero-home-brand-strip {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: space-around;
    min-height: 4.5rem;
    padding: .55rem .7rem;
    background: rgba(255, 255, 255, .94);
  }

  .hero-home-brand-strip img {
    width: 32%;
    height: 3.35rem;
    object-fit: contain;
  }

  .hero-home-brand-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32%;
    height: 3.35rem;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }

  .hero-home-brand-strip .hero-home-brand-link img {
    width: 100%;
    max-width: none;
    height: 100%;
    object-fit: contain;
  }

  .hero-home-dots {
    display: none;
  }

  .nb-logo {
    gap: .6rem;
  }

  .nb-logos-unified {
    width: 145px;
    height: 36px;
    transform: scale(1.12);
  }

  .nb-lt {
    display: block;
    min-width: 0;
    line-height: 1.1;
  }

  .nb-lt span {
    display: block;
    font-size: .72rem;
    white-space: nowrap;
  }

  .nb-lt p {
    display: block;
    font-size: .52rem;
    white-space: nowrap;
  }

  .nb-cta {
    display: none;
  }

  .card,
  .cc,
  .ib,
  .ph2,
  .pw,
  .fw,
  .mw,
  .vi {
    margin-left: 0.75rem;
    margin-right: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .cc { padding-top: 1.25rem; padding-bottom: 1.25rem; }

  .tp#tp-inscripcion-escuela .school-form-wrap {
    margin-left: 0.75rem;
    margin-right: 0.75rem;
  }

  .fg,
  .cg,
  .pg {
    padding-left: 0.25rem;
    padding-right: 0.25rem;
  }

  .day-grid {
    grid-template-columns: 1fr !important;
  }

  .ph { padding-left: 1rem; padding-right: 1rem; }
  .ph h1 { margin-bottom: 1rem; }
  .ph p { margin-bottom: 1.25rem; line-height: 1.7; }
  .ph h1, .tp.active > h2 { margin-left: 1rem; margin-right: 1rem; }
  .tp.active > p { margin-left: 1rem; margin-right: 1rem; }
  .ig > div > p { margin-left: 1rem; margin-right: 1rem; }
  .cct, .pn { line-height: 1.4; }

  .external-frame-wrap { min-height: 360px; margin-left: .75rem; margin-right: .75rem; }
  .external-frame-wrap iframe { height: 360px; }
  .external-fallback { flex-direction: column; align-items: flex-start; margin-left: .75rem; margin-right: .75rem; }

  .enrolled-card {
    grid-template-columns: 1fr !important;
    min-width: auto !important;
    padding: .7rem .85rem !important;
    gap: .25rem !important;
  }

  .enrolled-card h3,
  .enrolled-card p {
    white-space: normal !important;
  }

  .enrolled-list {
    gap: .3rem;
  }

  .enrolled-card h3 {
    line-height: 1.15;
  }

  .enrolled-card p {
    line-height: 1.25;
  }

  .selected-status {
    line-height: 1.1;
  }

  .pw { overflow-x: auto; }
  .ptbl { min-width: 560px; }
  .ptbl thead th, .ptbl td { padding: 0.8rem 0.9rem; }
}
