/* AVENSCI_PUBLIC_RESPONSIVE_FIX_V2 */

/* Desktop is intentionally untouched. */

@media (min-width:769px) and (max-width:1023px){
  html,body{max-width:100%!important;overflow-x:hidden!important}

  .fm-r2-header{
    width:100%!important;
    max-width:100%!important;
  }
  .fm-r2-header-inner{
    width:100%!important;
    max-width:100%!important;
    padding-left:24px!important;
    padding-right:24px!important;
    gap:14px!important;
  }
  .fm-r2-nav{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-end!important;
    gap:10px 18px!important;
    min-width:0!important;
  }

  .fm-r2-hero{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .fm-r2-hero-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(300px,46%)!important;
    gap:22px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .fm-r2-hero-inner>*{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .fm-r2-hero h1{
    max-width:100%!important;
    font-size:clamp(38px,5vw,58px)!important;
    line-height:1.02!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  .fm-r2-hero img{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    object-fit:cover!important;
  }

  .fm-r2-audience-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .fm-r2-audience-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .fm-r2-latest-section{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .fm-r2-publication-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    align-items:start!important;
  }
  .fm-r2-publication-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  .fm-r2-publication-card img{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    margin:0 auto!important;
  }

  .fm-r2-footer-inner{
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:24px!important;
  }
}

@media (max-width:768px){
  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .fm-r2-header{
    width:100%!important;
    max-width:100%!important;
  }
  .fm-r2-header-inner{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:100%!important;
    padding:10px 16px!important;
    gap:10px!important;
  }
  .fm-r2-logo,
  .fm-r2-logo img{
    max-width:210px!important;
    height:auto!important;
  }
  .fm-r2-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    max-width:100%!important;
    gap:8px 12px!important;
  }
  .fm-r2-nav a{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  .fm-r2-hero{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .fm-r2-hero-inner{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:16px!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .fm-r2-hero-inner>*{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .fm-r2-hero h1{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(34px,11vw,48px)!important;
    line-height:1.02!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    white-space:normal!important;
  }
  .fm-r2-hero p{
    width:100%!important;
    max-width:100%!important;
    font-size:16px!important;
    line-height:1.45!important;
  }
  .fm-r2-hero img{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    object-fit:cover!important;
  }
  .fm-r2-hero a,
  .fm-r2-hero button{
    max-width:100%!important;
  }

  .fm-r2-audience-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .fm-r2-audience-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
  }

  .fm-r2-latest-section{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .fm-r2-publication-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .fm-r2-publication-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  .fm-r2-publication-card img{
    display:block!important;
    width:auto!important;
    max-width:min(260px,78vw)!important;
    height:auto!important;
    margin:0 auto!important;
  }

  .fm-r2-footer-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:100%!important;
    padding-left:16px!important;
    padding-right:16px!important;
    gap:18px!important;
  }

  .fm-r2-footer-inner>*{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
}
