/* WordPress integration only; the four imported comp styles remain unchanged. */
.vc-no-image { background: var(--av-color-soft); color: var(--av-color-muted); font: italic 1.5rem var(--av-font-latin); }
.comp-site .comp-hero .av-media img { object-fit: contain; }
.comp-site .av-summary > .av-media { align-self: start; }
.comp-site .av-media img { display:block; min-width:0; }
.comp-site .av-profile .av-media { max-width:100%; }
.comp-site .av-person a { height:100%; }
.comp-site .av-review-grid > .av-empty { grid-column:1/-1; }
.comp-site .av-prose iframe, .comp-site .av-prose video { max-width:100%; }
.vc-movie iframe { width:100%; aspect-ratio:16/9; height:auto; border:0; }
.vc-lightbox { width:min(1000px,calc(100% - 32px)); }
.vc-lightbox > img { max-height:75dvh; width:auto; margin:auto; object-fit:contain; }
.vc-article-content img { max-width:100%; height:auto; }
.vc-filters-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; align-items:center; }
.vc-person-grid { row-gap:40px; }
.vc-menu-fallback { display:flex; flex-wrap:wrap; gap:20px; }
.vc-portrait-credit { font-size:var(--av-text-xs); margin-top:12px; }
.comp-site .av-prose .av-gallery { clear:both; }
.comp-site .av-profile-inline .av-media { width:88px; }
.comp-site .av-review__link .av-media { align-self:start; }
.comp-site .av-facts dd a { overflow-wrap:anywhere; }
.comp-site .comp-cover, .comp-site .vc-no-image { min-width:0; }
@media(max-width:760px){.comp-site .av-summary > .av-media { width:min(100%,260px);margin-inline:auto; }.comp-site .av-prose .av-cta h2 { font-size:1.5rem; }}
/* Real review titles are much longer than the comp samples. Keep entry points compact. */
.comp-site .comp-article-heading .av-title { font-size:clamp(1.5rem,2.4vw,2rem); }
.vc-social-links { margin-bottom:var(--av-space-8); }
.comp-profile-details .av-section-head { margin-bottom:var(--av-space-4); }
.comp-profile-details .av-section-head .av-heading { margin-bottom:0; }
.vc-profile-providers { align-self:start; }
.comp-hero-copy .av-title { font-size:clamp(1.4rem,2.5vw,2rem); }
.comp-hero-copy .av-title a { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; }
.comp-site .av-review h3 { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.comp-review-brief { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.comp-filter-section .av-chip input { position:absolute; width:1px; height:1px; clip-path:inset(50%); overflow:hidden; }
.comp-site .comp-editorial .av-heading { font-size:clamp(1.4rem,2.5vw,2rem); display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; }
@media(max-width:760px){.comp-review-brief { display:none; }}
/* Featured jackets retain their source aspect ratio, without a fixed-height frame. */
.comp-site .comp-hero .av-media--wide:has(img) { display:block; aspect-ratio:auto; }
.comp-site .comp-hero .av-media--wide img { width:100%; height:auto; }
.vc-lightbox-controls { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:16px; }
.vc-lightbox > img { max-height:calc(100dvh - 220px); }
.vc-measurements { white-space:nowrap; font-variant-numeric:tabular-nums; }
@media(max-width:380px){.vc-lightbox-controls .av-button { padding-inline:12px; }.vc-measurements { font-size:.8125rem; }}

.vc-source-note { font-size:var(--av-text-xs); margin-top:var(--av-space-4); }
.av-prose > h2:is(#gallery, #movie) { font-size:clamp(1.375rem, 1.125rem + 1vw, 1.875rem); }

.av-sample-player { width:100%; max-width:720px; aspect-ratio:16/9; background:#111; }
.av-sample-player iframe { display:block; width:100%; height:100%; border:0; }
