
/* =========================
   TABLET
========================= */
@media (max-width: 900px){

  :root{
    --fl-pad: 22px;
  }

  /* HERO */
  .fl-hero{
    min-height: 780px !important;
  }

  .fl-hero__inner{
    padding-top: 110px !important;
    padding-bottom: 44px !important;
  }

  .fl-hero__content{
    max-width: 100% !important;
  }

  .fl-hero__eyebrow{
    font-size: 11px !important;
    letter-spacing: .16em !important;
  }

  .fl-hero__title{
    font-size: clamp(50px, 13vw, 82px) !important;
    line-height: .84 !important;
  }

  .fl-hero__meta{
    max-width: 92%;
    line-height: 1.4;
  }

  .fl-hero__signature{
    font-size: clamp(44px, 11vw, 70px) !important;
    margin-top: 18px !important;
  }

  /* RESULTADOS */
  .fl-resultados__grid{
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }

  .fl-resultado{
    min-height: auto !important;
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  /* HISTÓRIA */
  .fl-historia__grid{
    grid-template-columns: 1fr !important;
  }

  .fl-historia__image{
    min-height: 460px !important;
  }

  .fl-historia__content{
    padding: 46px 22px 52px !important;
  }

  .fl-historia__title{
    font-size: clamp(42px, 11vw, 64px) !important;
  }

  .fl-historia__quote{
    max-width: 100% !important;
  }

  /* PALMARÉS + CALENDÁRIO */
  .home .fl-main{
    grid-template-columns: 1fr !important;
  }

  .home .fl-main > .fl-palmares,
  .home .fl-main > .fl-cal{
    grid-column: 1 !important;
  }

  .fl-palmares__row{
    grid-template-columns: 64px 1fr !important;
  }

  .fl-palmares__event,
  .fl-palmares__location{
    grid-column: 2 !important;
  }

  .fl-cal__row{
    grid-template-columns: 92px 1fr !important;
  }

  .fl-cal__state,
  .fl-cal__result{
    grid-column: 2 !important;
  }

  /* MEDIA */
  .fl-media__grid{
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }

  .fl-media__card.is-featured{
    grid-column: span 2 !important;
  }

  /* CONTACTO */
  .fl-contacto__cta-row{
    align-items: flex-start !important;
  }

  .fl-contacto__intro h2{
    font-size: clamp(38px, 8vw, 56px) !important;
  }

  /* FOOTER */
  .fl-footer__cta{
    min-height: auto !important;
  }
}

/* =========================
   MOBILE
========================= */
@media (max-width: 620px){

  body{
    overflow-x: hidden;
  }

  /* HEADER */
  .fl-header__inner{
    min-height: 68px !important;
  }

  .fl-header__name{
    font-size: 14px !important;
    max-width: 145px !important;
  }

  /* HERO */
  .fl-hero{
    min-height: 720px !important;
  }

  .fl-hero__inner{
    align-items: flex-end !important;
    padding-top: 100px !important;
    padding-bottom: 34px !important;
  }

  .fl-hero__content{
    width: 100% !important;
  }

  .fl-hero__title{
    font-size: clamp(46px, 15vw, 64px) !important;
    line-height: .84 !important;
  }

  .fl-hero__meta{
    font-size: 10px !important;
    letter-spacing: .08em !important;
  }

  .fl-hero__signature{
    font-size: clamp(42px, 14vw, 58px) !important;
  }

  .fl-hero__actions{
    flex-direction: column !important;
    gap: 9px !important;
    margin-top: 30px !important;
  }

  .fl-hero__btn{
    width: 100% !important;
    min-height: 50px !important;
  }

  /* RESULTADOS */
  .fl-resultados__grid{
    grid-template-columns: 1fr !important;
  }

  .fl-resultado,
  .fl-resultado + .fl-resultado{
    border-left: 0 !important;
    border-top: 1px solid #d5d0c8 !important;
    padding: 20px 0 !important;
  }

  .fl-resultado:first-child{
    border-top: 0 !important;
  }

  .fl-resultado__big{
    font-size: clamp(42px, 14vw, 62px) !important;
  }

  /* HISTÓRIA */
  .fl-historia__image{
    min-height: 390px !important;
  }

  .fl-historia__content{
    padding: 40px 20px 46px !important;
    gap: 28px !important;
  }

  .fl-historia__title{
    font-size: clamp(40px, 13vw, 56px) !important;
  }

  .fl-historia__text{
    font-size: 15px !important;
  }

  .fl-historia__quote{
    grid-template-columns: 42px 1fr !important;
    gap: 10px !important;
  }

  .fl-historia__quote-mark{
    font-size: 64px !important;
  }

  .fl-historia__quote p{
    font-size: 24px !important;
  }

  .fl-historia__button{
    width: 100% !important;
    justify-content: space-between !important;
  }

  /* PALMARÉS */
  .fl-palmares,
  .fl-cal{
    padding-top: 34px !important;
    padding-bottom: 38px !important;
  }

  .fl-palmares__head,
  .fl-cal__head{
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .fl-palmares__head h2,
  .fl-cal__head h2{
    font-size: 32px !important;
  }

  .fl-palmares__row{
    grid-template-columns: 58px 1fr !important;
    font-size: 12px !important;
  }

  /* CALENDÁRIO */
  .fl-cal__row{
    grid-template-columns: 84px 1fr !important;
    gap: 10px !important;
    padding: 13px 0 !important;
  }

  .fl-cal__event strong{
    font-size: 12px !important;
  }

  .fl-cal__event span,
  .fl-cal__state{
    font-size: 11px !important;
  }

  /* MEDIA */
  .fl-media{
    padding-top: 38px !important;
    padding-bottom: 42px !important;
  }

  .fl-media__head{
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

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

  .fl-media__card.is-featured{
    grid-column: auto !important;
  }

  .fl-media__card.is-featured .fl-media__image{
    aspect-ratio: 16/9 !important;
  }

  .fl-media__content h3,
  .fl-media__card.is-featured .fl-media__content h3{
    font-size: 18px !important;
  }

  /* PATROCINADORES */
  .fl-pat{
    padding-top: 38px !important;
    padding-bottom: 42px !important;
  }

  .fl-pat__head{
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .fl-pat__cta{
    width: 100% !important;
    justify-content: center !important;
  }

  .fl-pat__principal,
  .fl-pat__grid,
  .fl-pat__grid.is-institutional{
    grid-template-columns: 1fr !important;
  }

  /* CONTACTO */
  .fl-contacto{
    padding: 38px 0 !important;
  }

  .fl-contacto__cta-row{
    flex-direction: column !important;
    gap: 24px !important;
  }

  .fl-contacto__intro h2{
    font-size: clamp(34px, 11vw, 46px) !important;
  }

  .fl-contacto__button{
    width: 100% !important;
  }

  .fl-contacto-modal__panel{
    width: 100% !important;
    padding: 28px 20px !important;
  }

  .fl-contacto-modal__head h3{
    font-size: 36px !important;
  }

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

  .fl-contacto__field--full{
    grid-column: auto !important;
  }

  /* FOOTER */
  .fl-footer__cta{
    padding: 34px 0 !important;
    gap: 26px !important;
  }

  .fl-footer__cta h2{
    font-size: 34px !important;
  }

  .fl-footer__button{
    width: 100% !important;
  }

  .fl-footer__bottom{
    flex-direction: column !important;
    gap: 12px !important;
  }

  .fl-footer__links{
    gap: 12px !important;
  }
}
