/*
 * Alsaveur safe mobile layer.
 * Intentionally scoped to live-rendered block classes so existing Polylang,
 * navigation and Site Editor content keep working unchanged.
 */

.wp-block-site-logo.alignright,
.wp-block-site-logo.alignright a{
  text-align:right;
}

.wp-block-site-logo.alignright{
  margin-left:auto;
}

.wp-block-site-logo img.custom-logo{
  height:auto;
  max-width:100%;
}

.wp-block-navigation .wp-block-polylang-navigation-language-switcher img{
  display:inline-block;
  vertical-align:-1px;
}

.bt-portfolio__grid{
  max-width:100%;
}

.bt-tile,
.bt-tile__media{
  box-sizing:border-box;
}

.bt-page-main img,
.bt-page-main video,
.pum-content img,
.pum-content video{
  max-width:100%;
  height:auto;
}

.bt-page-main :where(iframe, embed, object){
  max-width:100%;
}

@media (max-width: 900px){
  .bt-portfolio__grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:min(var(--bt-gap), 26px);
  }

  .bt-tile{
    grid-column:span 1 !important;
    width:100%;
    max-width:100%;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .bt-portfolio.caption-overlay .bt-tile__title{
    font-size:min(var(--bt-font-size), 32px);
    line-height:1.2;
  }
}

@media (max-width: 781px){
  .wp-block-template-part > .wp-block-columns{
    margin-bottom:0;
  }

  .wp-block-template-part .wp-block-site-logo.alignright{
    text-align:right;
  }

  .wp-block-template-part .wp-block-site-logo.alignright img{
    width:min(360px, 100%);
  }

  .wp-block-template-part .wp-block-navigation{
    justify-content:flex-start;
    width:100%;
  }

  .wp-block-navigation__responsive-container.is-menu-open{
    padding:28px 18px;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
    align-items:flex-end;
    text-align:right;
    gap:14px;
    padding-top:56px;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    align-items:flex-end;
    gap:14px;
  }
}

@media (max-width: 640px){
  .bt-portfolio__grid{
    grid-template-columns:1fr;
    gap:min(var(--bt-gap), 22px);
  }

  .bt-tile{
    width:100% !important;
    min-height:clamp(190px, 62vw, var(--bt-item-height, var(--bt-minh)));
  }

  .bt-tile__media{
    min-height:inherit;
  }

  .bt-portfolio.caption-overlay .bt-tile__title,
  .bt-portfolio.caption-below .bt-tile__title{
    font-size:min(var(--bt-font-size), 30px);
    line-height:1.22;
  }
}

@media (max-width: 420px){
  .wp-block-template-part .wp-block-site-logo.alignright img{
    width:min(300px, 100%);
  }

  .bt-tile{
    min-height:min(var(--bt-item-height, var(--bt-minh)), 220px);
  }

  .bt-portfolio.caption-overlay .bt-tile__title,
  .bt-portfolio.caption-below .bt-tile__title{
    font-size:min(var(--bt-font-size), 28px);
  }
}

@media (hover: none){
  .bt-tile.has-item-hover-zoom.is-image:hover .bt-tile__media::before,
  .bt-tile.has-item-hover-zoom.is-video:hover .bt-tile__video{
    transform:none;
  }
}
