/* BYTE-CON v1.3.8 · short-laptop vertical polish without shrinking controls */

@media(min-width:901px){
  /*
   * Mantiene la escala fluida de v1.3.7, pero reserva más altura útil para el
   * formulario en portátiles con viewport corto. Los controles conservan un
   * tamaño cómodo; recortamos chrome, márgenes y espacios antes de recurrir al
   * scroll interno.
   */
  .public-page .purchase-card-compact{
    max-height:calc(100% - clamp(2px,.8vh,10px))!important;
  }
}

/* Portátiles / navegador con poca altura útil (aprox. 650–820 px). */
@media(min-width:901px) and (max-height:820px){
  .public-page .public-nav-compact{
    padding-top:5px;
    padding-bottom:4px;
  }

  .public-page .brand-logo-wrap{
    width:44px;
    height:44px;
  }

  .public-page .landing-compact{
    padding-top:2px;
    padding-bottom:8px;
  }

  .public-page .purchase-card-compact{
    align-self:center!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }

  .public-page .purchase-brand{
    margin:-8px 0 2px!important;
  }

  .public-page .purchase-brand img{
    width:64px!important;
    height:64px!important;
    border-radius:14px!important;
  }

  .public-page .purchase-card-compact .card-heading{
    margin-bottom:5px!important;
  }

  .public-page .purchase-card-compact .card-heading .eyebrow{
    margin-bottom:2px!important;
  }

  .public-page .purchase-card-compact .card-heading h2{
    font-size:clamp(1.45rem,3vh,1.8rem)!important;
    line-height:1.02!important;
  }

  .public-page .lookup-box-top{
    margin-bottom:6px!important;
  }

  .public-page .lookup-box-top>summary{
    padding-top:6px!important;
    padding-bottom:6px!important;
  }

  .public-page .compact-form{
    gap:6px 9px!important;
  }

  .public-page .compact-form label{
    gap:2px!important;
    line-height:1.15!important;
  }

  /* Campos siguen cómodos: no repetimos el error de encogerlos de más. */
  .public-page .compact-form input,
  .public-page .compact-form select{
    min-height:38px!important;
    padding-top:7px!important;
    padding-bottom:7px!important;
  }

  .public-page .shirt-size-field small{
    line-height:1.1!important;
  }

  .public-page .registration-context{
    min-height:30px!important;
    padding-top:5px!important;
    padding-bottom:5px!important;
  }

  .public-page .compact-form>.btn{
    min-height:38px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
  }

  /* El panel izquierdo también ahorra altura sin perder presencia. */
  .public-page .hero-copy-clean .eyebrow{
    margin-bottom:4px!important;
  }

  .public-page .hero-copy-clean h1{
    margin-bottom:6px!important;
    font-size:clamp(2.35rem,min(4.7vw,6.5vh),4.25rem)!important;
  }

  .public-page .countdown-compact{
    margin:6px 0!important;
  }

  .public-page .countdown-compact>div{
    padding-top:6px!important;
    padding-bottom:6px!important;
  }

  .public-page .event-facts-compact{
    margin-top:6px!important;
  }

  .public-page .event-facts-compact>div{
    padding-top:7px!important;
    padding-bottom:7px!important;
  }
}

/* Casos realmente muy bajos: aquí sí permitimos algo más de compactación, sin tocar ancho. */
@media(min-width:901px) and (max-height:680px){
  .public-page .purchase-brand img{
    width:54px!important;
    height:54px!important;
  }

  .public-page .compact-form{
    gap:5px 8px!important;
  }

  .public-page .compact-form input,
  .public-page .compact-form select{
    min-height:36px!important;
  }

  .public-page .purchase-card-compact .card-heading h2{
    font-size:1.4rem!important;
  }
}

/* Móvil/tablet no hereda ninguna de estas compresiones de escritorio. */
@media(max-width:900px){
  .public-page .purchase-card-compact{
    max-height:none!important;
  }
}
