/* Public cache bypass fixes for visitor view. */
@media (min-width:981px){
  .cpm-front-shell{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 300px!important;
    gap:20px!important;
    align-items:start!important;
  }
  .cpm-front-main{
    width:auto!important;
    min-width:0!important;
  }
  .cpm-front-sidebar{
    display:flex!important;
    flex-direction:column!important;
    width:300px!important;
    max-width:300px!important;
    gap:22px!important;
    margin:0!important;
    align-self:start!important;
  }
  .cpm-front-sidebar .cpm-ad-list,
  .cpm-front-sidebar .cpm-ad-list .cpm-widget-area{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .cpm-front-sidebar .cpm-ad-wrap,
  .cpm-front-sidebar .cpm-widget-area,
  .cpm-front-sidebar .widget,
  .cpm-front-sidebar .wp-block-image,
  .cpm-front-sidebar figure,
  .cpm-front-sidebar a{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .cpm-front-sidebar .cpm-ad-wrap,
  .cpm-front-sidebar .cpm-widget-area,
  .cpm-front-sidebar .widget,
  .cpm-front-sidebar .wp-block-image,
  .cpm-front-sidebar figure{
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    aspect-ratio:auto!important;
  }
  .cpm-front-sidebar .cpm-widget-area > *,
  .cpm-front-sidebar .widget > *,
  .cpm-front-sidebar .wp-block-image,
  .cpm-front-sidebar figure{
    margin-top:0!important;
    margin-bottom:0!important;
  }
  .cpm-front-sidebar .cpm-widget-area > * + *,
  .cpm-front-sidebar .widget > * + *,
  .cpm-front-sidebar figure + figure,
  .cpm-front-sidebar .wp-block-image + .wp-block-image{
    margin-top:22px!important;
  }
  .cpm-front-sidebar img{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:#fff;
  }
  .cpm-front-sidebar .cpm-ad-zone-ad_sidebar_1,
  .cpm-front-sidebar .cpm-ad-zone-ad_sidebar_2,
  .cpm-front-sidebar .cpm-ad-zone-ad_sidebar_3,
  .cpm-front-sidebar .cpm-ad-zone-ad_sidebar_vertical{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    overflow:visible!important;
  }
  .cpm-front-sidebar .cpm-ad-zone-ad_sidebar_1 .cpm-widget-area,
  .cpm-front-sidebar .cpm-ad-zone-ad_sidebar_2 .cpm-widget-area,
  .cpm-front-sidebar .cpm-ad-zone-ad_sidebar_3 .cpm-widget-area,
  .cpm-front-sidebar .cpm-ad-zone-ad_sidebar_vertical .cpm-widget-area{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
  }
}

.cpm-home-ad-main,
.cpm-campaign-ad,
.cpm-footer-ad{
  width:100%!important;
  overflow:visible!important;
}
.cpm-home-ad-main{
  min-height:150px!important;
}
.cpm-campaign-ad,
.cpm-footer-ad{
  min-height:90px!important;
}
.cpm-home-ad-main .cpm-ad-wrap,
.cpm-home-ad-main .cpm-widget-area,
.cpm-home-ad-main .widget,
.cpm-home-ad-main .wp-block-image,
.cpm-home-ad-main figure,
.cpm-home-ad-main a,
.cpm-campaign-ad .cpm-ad-wrap,
.cpm-campaign-ad .cpm-widget-area,
.cpm-campaign-ad .widget,
.cpm-campaign-ad .wp-block-image,
.cpm-campaign-ad figure,
.cpm-campaign-ad a,
.cpm-footer-ad .cpm-ad-wrap,
.cpm-footer-ad .cpm-widget-area,
.cpm-footer-ad .widget,
.cpm-footer-ad .wp-block-image,
.cpm-footer-ad figure,
.cpm-footer-ad a,
.cpm-ad-horizontal,
.cpm-ad-horizontal .cpm-widget-area,
.cpm-ad-horizontal .widget,
.cpm-ad-horizontal .wp-block-image,
.cpm-ad-horizontal figure,
.cpm-ad-horizontal a{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
.cpm-home-ad-main .cpm-ad-wrap,
.cpm-home-ad-main .cpm-widget-area,
.cpm-home-ad-main .widget,
.cpm-home-ad-main .wp-block-image,
.cpm-home-ad-main figure,
.cpm-campaign-ad .cpm-ad-wrap,
.cpm-campaign-ad .cpm-widget-area,
.cpm-campaign-ad .widget,
.cpm-campaign-ad .wp-block-image,
.cpm-campaign-ad figure,
.cpm-footer-ad .cpm-ad-wrap,
.cpm-footer-ad .cpm-widget-area,
.cpm-footer-ad .widget,
.cpm-footer-ad .wp-block-image,
.cpm-footer-ad figure,
.cpm-ad-horizontal,
.cpm-ad-horizontal .cpm-widget-area,
.cpm-ad-horizontal .widget,
.cpm-ad-horizontal .wp-block-image,
.cpm-ad-horizontal figure{
  height:auto!important;
  overflow:hidden!important;
}
.cpm-home-ad-main img,
.cpm-campaign-ad img,
.cpm-footer-ad img,
.cpm-ad-horizontal img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#fff;
}
.cpm-home-ad-main img,
.cpm-ad-zone-ad_home_main img{
  aspect-ratio:1140 / 150!important;
}
.cpm-campaign-ad img,
.cpm-footer-ad img,
.cpm-ad-zone-ad_campaign img,
.cpm-ad-zone-ad_footer img{
  aspect-ratio:1140 / 90!important;
}
.cpm-home-ad-main .attachment-medium,
.cpm-campaign-ad .attachment-medium,
.cpm-footer-ad .attachment-medium{
  width:100%!important;
  max-width:100%!important;
}

.cpm-breaking-window{
  flex:1 1 auto!important;
  min-width:0!important;
  overflow:hidden!important;
}
.cpm-breaking-track{
  display:flex!important;
  align-items:center!important;
  gap:28px!important;
  width:max-content!important;
  min-width:100%!important;
  animation:cpm-breaking-marquee 120s linear infinite!important;
}
.cpm-breaking-track a{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  min-width:auto!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
}
.cpm-breaking-track a:after{
  content:"";
  width:6px;
  height:6px;
  margin-left:28px;
  border-radius:999px;
  background:#c9472c;
}
@keyframes cpm-breaking-marquee{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

/* Mobile hero balance for public cached view. */
@media(max-width:640px){
  .cpm-hero-grid .cpm-card{
    min-height:0!important;
    aspect-ratio:2 / 1!important;
  }
  .cpm-hero-grid .cpm-card-content{
    left:16px!important;
    right:16px!important;
    bottom:14px!important;
  }
  .cpm-hero-grid .cpm-card h2,
  .cpm-hero-grid .cpm-card h3{
    font-size:21px!important;
    line-height:1.12!important;
    max-width:none!important;
    margin:6px 0 5px!important;
    letter-spacing:0!important;
  }
  .cpm-hero-grid .cpm-meta{
    font-size:11px!important;
    line-height:1.15!important;
  }
}
@media(max-width:390px){
  .cpm-hero-grid .cpm-card h2,
  .cpm-hero-grid .cpm-card h3{
    font-size:20px!important;
  }
  .cpm-hero-grid .cpm-tag{
    font-size:10px!important;
  }
}
