/* === PB Fit-to-Screen Fixes v1.0.1 === */
html, body { overflow-x: hidden; }

/* Normalize margins that push layout to the right */
@media (max-width: 1200px){
  html, body { margin:0 !important; padding:0 !important; }
  .pb-fit-active .site,
  .pb-fit-active .site-container,
  .pb-fit-active .container,
  .pb-fit-active .wrap,
  .pb-fit-active .content,
  .pb-fit-active .main,
  .pb-fit-active .main-content,
  .pb-fit-active .inner,
  .pb-fit-active .grid-container,
  .pb-fit-active .page,
  .pb-fit-active .entry-content {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    width: auto !important;
    max-width: 100% !important;
  }
  /* Sticky headers / bars */
  .pb-fit-active .header, .pb-fit-active .site-header, .pb-fit-active .top-bar, .pb-fit-active .nav-bar, .pb-fit-active .nav, .pb-fit-active .menu {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Media should never overflow */
img, video, iframe, embed, object { max-width: 100%; height: auto; }
.entry-content img, .post-content img, .article-body img { height:auto; }

/* Iframes fluid 16:9 */
.pbf-fluid { width:100%; aspect-ratio: 16/9; }
.pbf-fluid > iframe { width:100%; height:100%; display:block; }

/* Grids collapse */
@media (max-width: 992px) {
  .grid, .row, .posts-grid, .cards, .news-grid { display:block; }
  .col, [class*="col-"] { width:100% !important; max-width:100% !important; float:none !important; }
}

/* Sidebar full width on small screens */
@media (max-width: 992px) {
  .content-sidebar, .sidebar, .widget-area { width:100% !important; }
}

/* Ads clamp */
.ad, .ads, .ad-slot, .adslot, .advert, .adsbygoogle { max-width:100%; overflow:hidden; }
.ad img, .ads img { height:auto; max-width:100%; }

/* Tables scroll */
.table-responsive { width:100%; overflow-x:auto; }
table { max-width:100%; }

/* Sliders */
.hero, .swiper, .slider, .carousel { max-width:100%; overflow:hidden; }
.hero * { word-wrap:break-word; overflow-wrap:anywhere; }

/* Menus wrap */
.nav, .menu, .site-nav { flex-wrap: wrap; }
.menu a { white-space: normal; }

/* Utilities */
* { box-sizing: border-box; }
pre, code { white-space: pre-wrap; word-break: break-word; }
