/* Loaded only by the portrait switch. Inline B2 ratios need explicit override. */
body .post-list:not(.post-3) .post-list-item .post-module-thumb {
    padding-top: 125% !important; height: 0;
}
body .post-3 .post-list-item .post-module-thumb > div { padding-top: 125% !important; }
body .post-list .post-module-thumb img.post-thumb { width: 100%; height: 100%; object-fit: cover; }
body .av-recommendation-card .post-module-thumb a.thumb-link { aspect-ratio: 4 / 5; }
body .related-posts .related-post-thumb { padding-top: 125%; height: 0; background-size: cover; }
/* B2 fixes small rows at 92px and absolutely positions their 60px thumbnails.
   Portrait thumbnails must participate in row sizing to avoid overlap. */
body .b2-widget-hot li.widget-post-small,
body .b2-widget-hot li.widget-post-big { height: auto; }
body .widget-post-small .b2-widget-post-thumb { display: grid; grid-template-columns: 83px minmax(0,1fr); gap: 10px; width: 100%; align-items: start; }
body .widget-post-small .b2-widget-post-thumb-img { position: relative; left: auto; top: auto; width: 100%; height: auto; aspect-ratio: 4 / 5; }
body .widget-post-small .b2-widget-post-title { padding-left: 0; height: auto; min-width: 0; }
body .widget-post-small .b2-widget-post-thumb-img img { width: 100%; height: 100%; object-fit: cover; }
body .widget-post-big .b2-widget-post-thumb { height: auto; padding: 0; aspect-ratio: 4 / 5; }
body .widget-post-big .b2-widget-post-thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
