/* Refinement layer for the Entertainment / Film / TV / Celebrity cluster
   (2026-08-24). The approved People-style center, ribbon, and masthead stay
   in entertainment-pop.css untouched; this layer only carries the v2.1
   mandate: sticky nav with a compact wordmark, the vertical Cover Story unit,
   Coming soon for empty desks, and the article/author/utility chrome. The
   palette is mirrored at the .layout- level so pages without the .pop-
   wrappers (author, 404, utilities) keep the sector colors. */
.layout-entertainment-pop { --ink: #111; --line: #d8d8d8; --muted: #6b6b6b; --warm: #f3f3f3; --accent: var(--vuga-color-accent, #c8102e); --sector-accent: var(--vuga-color-accent, #c8102e); --marker: #ffe93b; }

/* The screen-reader homepage H1 needs a local rule: the base bundle is not
   loaded by every entertainment page. */
.layout-entertainment-pop .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* 🔒 ent-17 (user, 2026-09-07): wordmark row on top with an ink rule, then
   the menu row shares the 1180px body width — links flush with the body's
   left edge, search lens at its right edge. The menu row is the sticky
   element and, once stuck, leads with a compact wordmark before the caps
   menu. No date bar, no desktop burger, no taglines. */
.layout-entertainment-pop .pop-masthead-top { position: static; display: flex; align-items: center; gap: 1rem; min-height: 0; padding: 1.4rem 1.25rem 1rem; width: min(1180px, 100%); margin-inline: auto; border-bottom: 3px solid var(--ink); }
.layout-entertainment-pop .pop-masthead-top .sector-menu { display: none; }
.layout-entertainment-pop .pop-masthead-top .sector-brand { text-align: left; }
.layout-entertainment-pop .pop-masthead-top .sector-brand strong { font: 900 clamp(2rem, 4.5vw, 3.4rem)/0.95 'Libre Franklin', sans-serif; letter-spacing: -.05em; }
.layout-entertainment-pop .pop-menu-row { position: sticky; top: 0; z-index: 40; background: #fff; display: flex; align-items: center; gap: 1.25rem; width: min(1180px, 100%); margin-inline: auto; padding: 0 1.25rem; min-height: 52px; border-bottom: 1px solid var(--line); }
.layout-entertainment-pop .pop-menu-row .pop-menu-logo { display: none; align-items: center; padding-right: 1rem; margin-right: .15rem; border-right: 1px solid var(--line); }
.layout-entertainment-pop .pop-menu-row .pop-menu-logo strong { font: 900 1.05rem/1 'Libre Franklin', sans-serif; letter-spacing: -.03em; text-transform: uppercase; }
.layout-entertainment-pop .pop-menu-row .pop-menu-logo strong:after { content: '.'; color: var(--sector-accent); }
.pop-scrolled .layout-entertainment-pop .pop-menu-row .pop-menu-logo { display: inline-flex; }
.layout-entertainment-pop .pop-menu-row .sector-nav { position: static; border-block: 0; flex: 1 1 auto; min-width: 0; overflow: visible; font: 800 12px/1 'Libre Franklin', sans-serif; }
.layout-entertainment-pop .pop-menu-row .sector-nav > div { gap: 1.25rem; padding: 0; }
.layout-entertainment-pop .pop-menu-row .sector-nav a { text-transform: uppercase; letter-spacing: .08em; white-space: nowrap; }
.layout-entertainment-pop .pop-menu-row .sector-actions { margin-left: auto; flex: 0 0 auto; }
@media (max-width: 760px) {
  .layout-entertainment-pop .pop-masthead-top .sector-menu { display: inline-flex; }
  .layout-entertainment-pop .pop-menu-row { gap: .9rem; }
  .layout-entertainment-pop .pop-menu-row .sector-nav > div { gap: .9rem; overflow-x: auto; }
}

/* 🔒 Cover Story sidebar unit (the only homepage addition): vertical 3:4
   cover, up to two text lines, closing link; Coming soon while empty. */
.layout-entertainment-pop .pop-cs-side { margin-top: 2rem; border-top: 3px solid var(--ink); padding-top: 1.6rem; }
.layout-entertainment-pop .pop-cs-side h2 { font: 900 .95rem/1 'Libre Franklin', sans-serif; letter-spacing: .12em; text-transform: uppercase; margin: 0; }
.layout-entertainment-pop .pop-cs-side > p { color: var(--muted); margin: .6rem 0 0; line-height: 1.5; }
.layout-entertainment-pop .pop-cs-side > a { color: var(--sector-accent); font: 800 11px/1.2 'Libre Franklin', sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.layout-entertainment-pop .pop-cs-feature { display: block; margin-top: 1rem; }
.layout-entertainment-pop .pop-cs-feature .sector-media { aspect-ratio: 3 / 4; }
.layout-entertainment-pop .pop-cs-feature h3 { font: 800 1.3rem/1.05 'Libre Franklin', sans-serif; margin: .6rem 0 .3rem; }
.layout-entertainment-pop .pop-cs-feature p { margin: .4rem 0 0; color: #3f3f3f; line-height: 1.45; }
.layout-entertainment-pop .pop-cs-more { display: block; padding: 1rem 0; border-top: 1px solid var(--line); }
.layout-entertainment-pop .pop-cs-more h4 { font: 800 1.05rem/1.15 'Libre Franklin', sans-serif; margin: .35rem 0 0; }
.layout-entertainment-pop .pop-cs-all { display: block; margin-top: .9rem; padding-top: .9rem; border-top: 1px solid var(--line); }

/* 🔒 Empty approved rubrics publish a Coming soon card instead of a bare
   grid. */
.layout-entertainment-pop .pop-coming-soon { margin-top: 3rem; padding: 2rem 1.6rem; border: 3px dashed var(--line); background: var(--warm); }
.layout-entertainment-pop .pop-coming-soon .pop-kicker { margin-top: 0; }
.layout-entertainment-pop .pop-coming-soon .pop-coming-title { margin: .5rem 0 0; font: 900 clamp(2rem, 5vw, 3.2rem)/.9 'Libre Franklin', sans-serif; letter-spacing: -.03em; text-transform: uppercase; }
.layout-entertainment-pop .pop-coming-soon p { margin: .6rem 0 1rem; color: #3f3f3f; line-height: 1.5; }
.layout-entertainment-pop .pop-coming-soon a { color: var(--sector-accent); font: 800 11px/1.2 'Libre Franklin', sans-serif; letter-spacing: .1em; text-transform: uppercase; }

/* 🔒 Cover Story category pages keep portrait art portrait: a 3:4 magazine
   grid instead of the horizontal roster. */
.layout-entertainment-pop .pop-category-grid--portrait { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem 1.4rem; }
.layout-entertainment-pop .pop-category-grid--portrait .pop-category-lead { grid-column: span 2; display: block; }
.layout-entertainment-pop .pop-category-grid--portrait .pop-category-lead > a { display: block; }
.layout-entertainment-pop .pop-category-grid--portrait .sector-media { aspect-ratio: 3 / 4; }
.layout-entertainment-pop .pop-category-grid--portrait .pop-category-lead h2 { font-size: clamp(1.6rem, 3vw, 2.4rem); }

/* 🔒 Article chrome: caps crumb with an accent Home, ink rule under the
   byline, and the share row in the sector voice. */
.layout-entertainment-pop .pop-crumb { font: 800 11px/1.2 'Libre Franklin', sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-bottom: 1rem; }
.layout-entertainment-pop .pop-crumb a:first-child { color: var(--sector-accent); }
.layout-entertainment-pop .pop-article header .pop-meta { border-bottom: 3px solid var(--ink); padding-bottom: 1.1rem; }
.layout-entertainment-pop .pop-share { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; margin: 1.1rem 0 0; }
.layout-entertainment-pop .pop-share > span { font: 800 11px/1.2 'Libre Franklin', sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-right: .2rem; }
.layout-entertainment-pop .pop-share a { border: 2px solid var(--ink); background: #fff; padding: .5rem .75rem; font: 800 11px/1 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: var(--ink); }
.layout-entertainment-pop .pop-share a:hover { background: var(--marker); }

/* Author page in the sector voice: caps Author label, heavy name over an
   ink rule, square photo tile, card grid below. */
.layout-entertainment-pop .pop-crumb { margin-bottom: 1.2rem; }
.layout-entertainment-pop .sector-author-page { border-bottom: 3px solid var(--ink); }
.layout-entertainment-pop .sector-author-page-photo { border-radius: 0; border: 3px solid var(--ink); box-shadow: 8px -8px 0 -3px var(--warm), 8px -8px 0 0 var(--ink); }
.layout-entertainment-pop .sector-author-page .sector-kicker { font: 800 11px/1.2 'Libre Franklin', sans-serif; letter-spacing: .14em; }
.layout-entertainment-pop .sector-author-page h1 { font: 900 clamp(2.6rem, 6vw, 4.6rem)/.9 'Libre Franklin', sans-serif; letter-spacing: -.04em; }
.layout-entertainment-pop .sector-author-title { color: var(--sector-accent); }
.layout-entertainment-pop .sector-author-articles .sector-section-head { border-bottom: 3px solid var(--ink); }

/* Utility pages wear the sector header: caps crumb, heavy Libre Franklin
   heading over an ink rule; contact shares the same title treatment. */
.layout-entertainment-pop .sector-utility-wrap .sector-crumb, .layout-entertainment-pop .sector-utility .sector-crumb { font: 800 11px/1.2 'Libre Franklin', sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.layout-entertainment-pop .sector-utility .sector-crumb a, .layout-entertainment-pop .pop-crumb a { color: var(--sector-accent); }
.layout-entertainment-pop .sector-utility > h1 { font: 900 clamp(2.6rem, 6vw, 4.6rem)/.9 'Libre Franklin', sans-serif; letter-spacing: -.04em; text-transform: uppercase; border-bottom: 3px solid var(--ink); padding-bottom: 1.1rem; }
.layout-entertainment-pop .sector-utility #contact-page-title { font: 900 clamp(2.6rem, 6vw, 4.6rem)/.9 'Libre Franklin', sans-serif; letter-spacing: -.04em; text-transform: uppercase; border-bottom: 3px solid var(--ink); padding-bottom: 1.1rem; }

@media (max-width: 900px) {
  .layout-entertainment-pop .pop-category-grid--portrait { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .layout-entertainment-pop .pop-category-grid--portrait .pop-category-lead { grid-column: 1 / -1; }
}

/* ---- 2026-09-05 canon alignment (user: width + type scale + card bylines) ---- */
/* Uniform site width: utility pages, article pages and data pages share the
   homepage container width (1200px) instead of the legacy 960/1060 squeeze. */
.layout-entertainment-pop .sector-utility-wrap { width: min(1200px, 100%); }
.layout-entertainment-pop .pop-article { max-width: 1200px; }
.layout-entertainment-pop .pop-article > header { max-width: 840px; }

/* Compact headline canon: utility h1, contact title and category h1 share the
   network scale (clamp to ~3.2rem) instead of the oversized 4.6/9rem display. */
.layout-entertainment-pop .sector-utility > h1,
.layout-entertainment-pop .sector-utility #contact-page-title { font: 900 clamp(2.1rem, 5vw, 3.2rem)/1.05 'Libre Franklin', sans-serif; letter-spacing: -.02em; }
.layout-entertainment-pop .pop-category > header h1 { font: 900 clamp(2.1rem, 5vw, 3.2rem)/1.05 'Libre Franklin', sans-serif; letter-spacing: -.02em; text-transform: uppercase; }

/* Card byline canon: author on its own line, publish date (and category when
   present) on the line below, small muted interface type. */
.pop-byline { margin-top: .6rem; }
.pop-byline b { display: block; font: 800 11px/1.3 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #111; }
.pop-byline time { display: block; font: 600 10px/1.4 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #777; margin-top: .15rem; }

/* ---- 2026-09-05 wave 1b (revised): one shared content width = the nav/footer
   container (1180px, centered). The homepage header menu is the reference:
   every page starts and ends where the menu starts and ends. */
.layout-entertainment-pop .pop-home,
.layout-entertainment-pop .pop-category { max-width: 1180px; margin-left: auto; margin-right: auto; }
.layout-entertainment-pop .sector-utility-wrap { width: min(1180px, 100%); margin: 0 auto; }
.layout-entertainment-pop .data-main { width: min(1180px, 100%); }

/* ---- wave 1c: THE canon gate. Base sector-publication.css squeezes
   .sector-utility to width:min(760px,100%) — the same bug the arts/business/
   education clusters fixed with their layout-scoped width:100% override.
   Utility content now fills the shared 1180px container. */
.layout-entertainment-pop .sector-utility { width: 100%; max-width: none; margin: 0; }
.layout-entertainment-pop .sector-utility--about > .sector-about-body,
.layout-entertainment-pop .sector-utility--about > .about-team,
.layout-entertainment-pop .sector-utility--about > .about-network { width: 100%; margin-inline: 0; }

/* ---- wave 2: card meta stack — category (brand accent) → author → date,
     annotation below. About team: 4 per row, circle photo on top, name
     under it, only the photo links to the author page. */
.pop-byline .pop-cat { display: block; font: 800 11px/1.3 'Libre Franklin', sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--sector-accent); margin-bottom: .2rem; }
.pop-byline b { display: block; font: 800 11px/1.3 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #111; }
.pop-byline time { display: block; font: 600 10px/1.4 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #777; margin-top: .15rem; }

/* About team grid: 4 columns, round photo up top, name below, same avatar
   size (96px circle). Only the photo is a link to the author page. */
.layout-entertainment-pop .team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.6rem 1rem; list-style: none; padding: 0; margin: 0; text-align: center; }
.layout-entertainment-pop .team-member a { display: block; text-decoration: none; }
.layout-entertainment-pop .team-member img { border-radius: 50%; width: 96px; height: 96px; object-fit: cover; margin: 0 auto; }
.layout-entertainment-pop .team-member .name { display: block; margin-top: .5rem; font-weight: 700; color: #111; text-decoration: none; }
.layout-entertainment-pop .team-member .title, .layout-entertainment-pop .team-member .line { font-size: .8rem; color: #777; }
@media (max-width: 760px) { .layout-entertainment-pop .team-grid { grid-template-columns: repeat(2, 1fr); } }

/* ---- wave 2b: category pagination buttons (Prev/Next) ---- */
.layout-entertainment-pop .category-pagination-link { display: inline-block; font: 800 12px/1 'Libre Franklin', sans-serif; letter-spacing: .1em; text-transform: uppercase; border: 2px solid #111; padding: .8rem 1.4rem; margin: 0 .4rem; text-decoration: none; color: #111; }
.layout-entertainment-pop .category-pagination-link[rel="next"] { background: var(--sector-accent); }

/* ---- 2026-09-06 wave 3: no breadcrumb on author/about/data (removed in
   markup); author name, bio, about body and data title read smaller. */
.layout-entertainment-pop .sector-author-page-content h1 { font-size: clamp(1.5rem, 3vw, 2rem) !important; }
.layout-entertainment-pop .sector-author-bio { font-size: .92rem !important; }
.layout-entertainment-pop .sector-about-body { font-size: .95rem !important; }
.layout-entertainment-pop .sector-about-body h1, .layout-entertainment-pop .sector-utility > h1 { font-size: clamp(1.6rem, 4vw, 2.2rem) !important; }
.layout-entertainment-pop .data-main h1 { font-size: clamp(1.6rem, 4vw, 2.2rem) !important; }

/* ---- wave 3: Cover Story is strictly vertical (3:4) everywhere —
   home sidebar feature, its empty placeholder, the cover-story category
   grid, and the cover-story article hero. */
.layout-entertainment-pop .pop-cs-feature .sector-media { aspect-ratio: 3/4; }
.layout-entertainment-pop .pop-cs-placeholder { aspect-ratio: 3/4; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .6rem; border: 3px solid #111; padding: 1.2rem; text-align: center; }
.layout-entertainment-pop .pop-cs-placeholder span { font: 900 12px/1 'Libre Franklin', sans-serif; letter-spacing: .14em; text-transform: uppercase; background: var(--marker); padding: .2rem .5rem; }
.layout-entertainment-pop .pop-cs-placeholder p { font: 600 12px/1.4 'Libre Franklin', sans-serif; color: #555; margin: 0; }
.layout-entertainment-pop .pop-category-grid--portrait .sector-media { aspect-ratio: 3/4; }
.layout-entertainment-pop .pop-category-grid--portrait .pop-category-lead .sector-media { aspect-ratio: 3/4; }
.layout-entertainment-pop .pop-article-hero--portrait { max-width: 560px; margin-left: 12px; }
.layout-entertainment-pop .pop-article-hero--portrait .sector-media { aspect-ratio: 3/4; }

/* ---- 2026-09-07 ent-14: the article rail carries a text "More to read"
     list under THE TAKE, so the right column no longer empties out for the
     length of a long story. */
.pop-rail-more { margin-top: 1.6rem; border-top: 3px solid var(--ink); padding-top: 1.1rem; }
.pop-rail-more h2 { font: 900 .95rem/1 'Libre Franklin', sans-serif; letter-spacing: .12em; text-transform: uppercase; margin: 0; }
.pop-rail-more > a { display: block; padding: .85rem 0; border-bottom: 1px solid var(--line); text-decoration: none; }
.pop-rail-more > a:last-child { border-bottom: 0; }
.pop-rail-more > a span { display: block; font: 800 10px/1.2 'Libre Franklin', sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--sector-accent); }
.pop-rail-more > a h3 { font: 800 1rem/1.2 'Libre Franklin', sans-serif; margin: .25rem 0 .2rem; color: #111; }
.pop-rail-more > a time { font: 600 10px/1.3 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #777; }
.pop-rail-more > a:hover h3 { text-decoration: underline; }

/* ent-14: the whole rail (THE TAKE + More to read) travels with the reader
   instead of emptying the column after the first screen. */
.layout-entertainment-pop .pop-reading { align-items: start; }
.layout-entertainment-pop .pop-reading > aside { position: sticky; top: 5.5rem; }
.layout-entertainment-pop .pop-take { position: static; }

/* ---- 2026-09-07 ent-18: three-column top band (1 : 2 : 1) and the global
     homepage card canon — accent category, title, annotation, author, date. */
.pop-top3 { display: grid; grid-template-columns: 1fr 2fr 1fr; gap: 2.5rem 2rem; align-items: start; }
.pop-col { display: grid; gap: 1.4rem; }
.pop-col-head { font: 900 .95rem/1 'Libre Franklin', sans-serif; letter-spacing: .12em; text-transform: uppercase; margin: 0; padding-bottom: .6rem; border-bottom: 3px solid var(--ink); }
.pop-col-head a { color: inherit; text-decoration: none; }
.pop-col-latest .pop-card + .pop-card { border-top: 1px solid var(--line); padding-top: 1.2rem; }
.pop-card .pop-cat { display: block; font: 800 11px/1.2 'Libre Franklin', sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--sector-accent); margin-bottom: .3rem; }
.pop-card h3, .pop-just-in h3, .pop-latest h3 { font: 800 1.2rem/1.12 'Libre Franklin', sans-serif; margin: 0 0 .35rem; }
.pop-card h3 a { color: #111; text-decoration: none; }
.pop-card h3 a:hover { text-decoration: underline; }
.pop-ex { margin: 0 0 .55rem; font-size: .92rem; line-height: 1.45; color: #3f3f3f; }
.pop-card-byline b { display: block; font: 800 11px/1.3 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #111; }
.pop-card-byline time { display: block; font: 600 10px/1.4 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #777; margin-top: .15rem; }
.pop-card-fig { padding: 1rem; margin: 0 10px 10px 0; }
.pop-card-fig h3 { font-size: clamp(1.5rem, 2.6vw, 2.1rem); }
.pop-card-media { display: block; margin-bottom: .8rem; }
.pop-card-media .sector-media { aspect-ratio: 16/9; }
.pop-col-mix .pop-card + .pop-card { border-top: 1px solid var(--line); padding-top: 1rem; }
.pop-latest .pop-card { margin: 0 10px 10px 0; padding: 1rem; }
.pop-latest .pop-card-media { margin-bottom: .6rem; }
.pop-just-in article + article { border-top: 1px solid var(--line); padding-top: 1.2rem; margin-top: 1.2rem; }
.pop-cs-feature .pop-card-media .sector-media { aspect-ratio: 3/4; }
.pop-cs-more .pop-card-byline { margin-top: .2rem; }
@media (max-width: 1020px) { .pop-top3 { grid-template-columns: 1fr 1fr; } .pop-col-cat1 { grid-column: 1 / -1; order: -1; } }
@media (max-width: 760px) { .pop-top3 { grid-template-columns: 1fr; } .pop-col-cat1 { order: 0; } }

/* ---- 2026-09-07 ent-20: column refinements — photo thumbs in Latest with
     a yellow-highlighted head, three illustrated stories in the center, and
     a black-framed spotlight card (yellow marker title, no annotation) atop
     In Rotation. */
.pop-col-head .pop-marker span { font: inherit; }
.pop-col-latest .pop-col-head { margin-bottom: .4rem; }
.pop-col-latest .pop-card-thumb + .pop-card-thumb { border-top: 1px solid var(--line); padding-top: 1.2rem; }
.pop-card-thumb .pop-card-thumb-media { display: block; margin-bottom: .6rem; }
.pop-card-thumb .pop-card-thumb-media .sector-media { aspect-ratio: 16/9; }
.pop-card-thumb h3 { font-size: 1.15rem; }
.pop-card-fig h3 { font-size: clamp(1.15rem, 1.8vw, 1.45rem); }
.pop-spotlight { border: 3px solid #111; padding: 1.3rem 1.2rem; margin: 0 10px 12px 0; position: relative; }
.pop-spotlight > a { display: block; text-decoration: none; position: relative; }
.pop-spotlight h3 { font: 900 clamp(1.25rem, 1.8vw, 1.6rem)/1.1 'Libre Franklin', sans-serif; letter-spacing: -.03em; margin: .2rem 0 .8rem; }
.pop-spotlight h3 .pop-marker span { color: #111; }
.pop-spotlight > a > b { font: 800 11px/1.3 'Libre Franklin', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #111; }
.pop-spot-dot { position: absolute; right: -.4rem; bottom: 1.6rem; width: 34px; height: 34px; border-radius: 50%; background: var(--sector-accent); color: #fff; font: 900 20px/34px 'Libre Franklin', sans-serif; text-align: center; }

/* ---- 2026-09-07 ent-22: band revisions — photo cards in the horizontal
     category band (4-up), three category desks under a smaller mast, and
     the rail's rotating pair with media on top. */
.pop-just-in h2 { display: flex; align-items: center; gap: .9rem; }
.pop-band-cat { font: 800 15px/1 'Libre Franklin', sans-serif; letter-spacing: .18em; text-transform: uppercase; color: #fff; }
.pop-band-cat:hover { color: var(--marker); }
.pop-just-in > div { grid-template-columns: repeat(4, 1fr); gap: 2rem 1.5rem; }
.pop-band-card .pop-card-media { margin-bottom: .6rem; }
.pop-band-card .pop-card-media .sector-media { aspect-ratio: 16/9; }
.pop-band-card h3 { font-size: 1.1rem; }
.pop-band-card .pop-ex { font-size: .85rem; }
.pop-latest > header h2 { font-size: clamp(1.8rem, 3.4vw, 3rem); }
.pop-desks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem 2rem; }
.pop-desk { display: grid; gap: 1.2rem; align-content: start; }
.pop-desk .pop-card-fig { padding: 0; margin: 0; border: 0; background: transparent; }
.pop-desk .pop-card-fig .pop-card-media .sector-media { aspect-ratio: 16/9; }
.pop-desk .pop-card-fig h3 { font-size: 1.1rem; }
@media (max-width: 1020px) { .pop-just-in > div, .pop-desks { grid-template-columns: 1fr 1fr; } }
@media (max-width: 760px) { .pop-just-in > div, .pop-desks { grid-template-columns: 1fr; } }
/* Guard: if a story ships without an image, its media anchor collapses. */
.pop-card-media:not(:has(img)) { display: none; }

/* ---- 2026-09-07 ent-24: category page — compact accent-underlined name,
     one short description, and a uniform 3x2 photo grid. */
.layout-entertainment-pop .pop-category > header h1 { font: 900 clamp(1.6rem, 3.4vw, 2.4rem)/1.1 'Libre Franklin', sans-serif; letter-spacing: -.02em; text-transform: uppercase; margin: 1.6rem 0 0; }
.layout-entertainment-pop .pop-category .pop-cat-underline { display: inline-block; border-bottom: 4px solid var(--sector-accent); padding-bottom: .35rem; }
.layout-entertainment-pop .pop-category .pop-category-bar { display: none; }
.layout-entertainment-pop .pop-category .pop-cat-desc { max-width: 760px; font-size: 1rem; line-height: 1.55; color: #3f3f3f; margin: 1rem 0 0; }
.layout-entertainment-pop .pop-category-grid { grid-template-columns: repeat(3, 1fr); gap: 2.4rem 2rem; margin-top: 2.6rem; }
.layout-entertainment-pop .pop-category-grid .pop-card-fig { padding: 0; margin: 0; border: 0; background: transparent; }
.layout-entertainment-pop .pop-category-grid .pop-card-byline { margin-top: .55rem; }
.layout-entertainment-pop .pop-category-grid .pop-card-byline time { margin-top: .2rem; }
@media (max-width: 1020px) { .layout-entertainment-pop .pop-category-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 760px) { .layout-entertainment-pop .pop-category-grid { grid-template-columns: 1fr; } }
