/* Integration for generated catalogue, legal pages and layouts beyond the mockups.
   The supplied signalart.css remains unchanged. */
html{scroll-padding-top:96px}
body{overflow-x:clip}
main{min-height:50vh}
.sa-grid>*{min-width:0}
.sa-title-large{font-size:var(--sa-fs-d2)}
.sa-film{padding-top:var(--sa-s7);scroll-margin-top:96px}
.sa-reading-surface{padding-block:var(--sa-section);margin-top:var(--sa-s8)}
.sa-reading-toggle{margin-bottom:24px}
.sa-facts-col{align-self:start;position:sticky;top:96px}
.sa-quote-wrap{margin-top:var(--sa-s9);max-width:1100px}
.sa-closer>div:first-child{grid-column:1/span 4}
.sa-closer>.sa-longread{grid-column:6/span 7}
.sa-closer h2,.sa-release-sections h2{font:400 var(--sa-fs-d3)/1.08 var(--sa-font-display);color:var(--sa-ink);text-wrap:balance;margin-bottom:var(--sa-s6)}
.sa-release-sections>section,.sa-release-sections>ul,.sa-release-sections>.sa-eyebrow{margin-top:var(--sa-section)}
.sa-release-sections>.sa-eyebrow{font:600 var(--sa-fs-label)/1.3 var(--sa-font-text);margin-bottom:24px}
.sa-release-sections>.sa-eyebrow+.sa-chips{margin-top:0}
.sa-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sa-col-gap);margin-block:32px}
.reading-credit,.sa-discovery-note{font-size:var(--sa-fs-small);color:var(--sa-ink-muted)}
.sa-discovery-note{margin-top:var(--sa-s9);max-width:66ch}
.sa-discovery-copy{max-width:none}
.sa-discovery-copy>p,.sa-discovery-copy>h2,.sa-discovery-copy>h3{max-width:66ch}
.sa-discovery-copy>ul:not(.sa-grid),.sa-discovery-copy>ol{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:0 48px}
.sa-discovery-copy>ul:not(.sa-grid)>li,.sa-discovery-copy>ol>li{padding:16px 0;border-bottom:1px solid var(--sa-line)}
.sa-discovery-copy li a,.sa-longread>ul>li>a{display:inline-flex;align-items:center;min-height:44px}
.sa-programme-grid{margin-top:48px;row-gap:64px}
.sa-programme-grid .sa-label{margin-top:24px}
.sa-programme-grid>li>p{font-size:var(--sa-fs-small);color:var(--sa-ink-muted);margin-top:12px}
.sa-section>.sa-section__title{margin-bottom:var(--sa-s7)}
.sa-longread>ul{padding-left:20px;list-style:disc}
.sa-longread .sa-link-list{margin-top:24px}
.sa-faq>.sa-longread h2{font-size:clamp(2rem,1.7rem + 1vw,2.8rem)}
.related-reading{margin-top:var(--sa-s9)}
.related-reading ul{display:flex;flex-wrap:wrap;gap:8px 24px}
.related-reading li a{display:inline-flex;align-items:center;min-height:44px}
.sa-faq>.related-reading{grid-column:1/-1}
.sa-tiles{grid-auto-rows:auto}
.sa-tile .sa-img{position:absolute;inset:0;background:none;overflow:visible;height:100%;aspect-ratio:auto}
.sa-tile .sa-img img{z-index:auto}
.sa-reading-surface[data-reading="paper"]{--sa-ink:var(--sa-paper-ink);--sa-ink-body:var(--sa-paper-ink);--sa-ink-muted:var(--sa-paper-muted);--sa-line:#cfc5b8;--sa-rose:var(--sa-paper-rose)}
.sa-reading-surface[data-reading="paper"] .sa-reading-toggle{color:var(--sa-paper-ink)}
.sa-release-hero__title{overflow-wrap:anywhere}
.sa-release-hero__sub:empty{display:none}
.sa-facts a,.sa-longread a{overflow-wrap:anywhere}
.sa-release-hero__media img{max-width:none}
/* Existing root templates share the new shell and typography. */
.container{width:100%;max-width:var(--sa-max);margin-inline:auto;padding-inline:var(--sa-gutter)}
.catalog-hero,.legal,.page-hero{padding-block:var(--sa-s9) var(--sa-s7)}
.catalog-hero h1,.page-hero h1,.legal h1{font:400 var(--sa-fs-d2)/1.05 var(--sa-font-display);color:var(--sa-ink);margin-bottom:24px}
.eyebrow,.catalog-label{font-size:var(--sa-fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--sa-ink-muted)}
.lead{font-size:var(--sa-fs-lede)}
.toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:24px;margin-block:24px}
.toolbar input,.toolbar select,input[type="search"],select{min-height:48px;padding:10px 16px;border:1px solid var(--sa-line-strong);border-radius:6px;background:var(--sa-bg-1);color:var(--sa-ink);font:inherit;max-width:100%}
.toolbar label{display:grid;gap:8px}
.chips,#chips{display:flex;flex-wrap:wrap;gap:8px;margin-block:24px}
.chip,.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 18px;border:1px solid var(--sa-line-strong);border-radius:999px;background:transparent;color:var(--sa-ink);font:500 var(--sa-fs-small) var(--sa-font-text);text-decoration:none;cursor:pointer}
.chip.active,.button.primary{background:var(--sa-ink);color:var(--sa-bg)}
.catalog-grid,#catalogGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px var(--sa-col-gap);margin-block:32px}
.legal{max-width:850px}.legal h2{font:400 2rem/1.2 var(--sa-font-display);margin-top:48px}.legal p{margin-top:20px}
.sa-index{margin-top:32px}
@media(min-width:1024px){.sa-discovery-copy>.sa-section{max-width:none}.sa-discovery-copy>.sa-section>p{max-width:66ch}}
@media(max-width:1023px){.sa-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-grid,#catalogGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.sa-related-grid,.catalog-grid,#catalogGrid{grid-template-columns:1fr}.sa-facts>div{grid-template-columns:96px minmax(0,1fr)}.sa-tracklist a{grid-template-columns:1.5rem 4rem minmax(0,1fr)}.sa-footer__links{gap:0 20px}}
.sa-tile__title{text-shadow:0 2px 18px #000}
.sa-section>.sa-programmes{margin-top:32px}
.sa-programme .sa-img{width:100%}
.sa-programme-grid>.sa-ll-item,.sa-section>.sa-programme-grid{max-width:none}
.sa-longread .sa-programme-grid{max-width:none}
@media(max-width:1023px){
 .sa-nav:not([data-enhanced]) .sa-nav__inner{flex-wrap:wrap}
 .sa-nav:not([data-enhanced]) .sa-nav__links{display:flex;position:static;width:100%;padding-inline:0}
 .sa-nav:not([data-enhanced]) .sa-nav__toggle{display:none}
}
/* Keep the existing category descriptions readable below the gallery tiles. */
.sa-category-entry{grid-column:span 3;min-width:0}
.sa-category-entry--wide{grid-column:span 6;aspect-ratio:auto;min-height:0;overflow:visible;background:none}
.sa-category-entry>.sa-tile{width:100%;grid-column:auto}
.sa-category-entry>.sa-tile--wide{aspect-ratio:16/9;min-height:0}
.sa-tile::before{z-index:0}
.sa-tile__body{z-index:1}
.sa-tile img{z-index:auto}
.sa-category-description{position:static;width:auto;height:auto;overflow:visible;clip-path:none;font-size:var(--sa-fs-small);color:var(--sa-ink-muted);line-height:1.6;margin-top:20px}
@media(max-width:1023px){.sa-category-entry{grid-column:span 6}.sa-category-entry--wide{grid-column:1/-1}}
@media(max-width:559px){.sa-category-entry{grid-column:1/-1}}

.sa-facts dd a{display:inline-flex;align-items:center;min-height:44px}
/* Crop the retained cover around its measured face; keep the image undistorted. */
.sa-img.sa-face-portrait img{position:absolute;max-width:none;width:var(--portrait-width);height:var(--portrait-height);left:var(--portrait-left);top:var(--portrait-top);object-fit:fill;transform:none!important}
.sa-programme-grid .sa-face-portrait{aspect-ratio:4/5}
.sa-longread,.sa-discovery-copy,.sa-longread>*{min-width:0;overflow-wrap:anywhere}
.sa-intro__title{overflow-wrap:anywhere;hyphens:none}

/* Collection artwork: titles remain readable outside the images. */
.sa-collection-grid,.sa-collection-releases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 28px;list-style:none;padding:0;margin:40px 0 64px}
.sa-collection-grid>li,.sa-collection-releases>li{min-width:0}
.sa-collection-card{display:block;color:inherit;text-decoration:none}
.sa-collection-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--sa-bg-raised,#171310)}
.sa-collection-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;transition:transform .4s ease}
.sa-collection-card:hover .sa-collection-media img{transform:scale(1.025)}
.sa-collection-card>div:last-child{padding-top:20px}
.sa-collection-card .sa-card__title{margin:0 0 12px;font-size:clamp(25px,2.5vw,36px);line-height:1.1}
.sa-collection-card .sa-card__desc{margin:0 0 12px;line-height:1.6}
.sa-collection-card .sa-card__meta{margin:0}
.sa-collection-intro{max-width:66ch;color:var(--sa-ink-muted);line-height:1.7}
.sa-collection-hero{margin:0 0 48px}
.sa-collection-hero .sa-collection-media{aspect-ratio:16/7;max-height:580px}
.sa-tile>.sa-collection-media{position:absolute;inset:0;aspect-ratio:auto;height:100%;z-index:-1}
.sa-collection-releases .sa-card{height:100%}
@media(max-width:1023px){.sa-collection-grid,.sa-collection-releases{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}}
@media(max-width:599px){.sa-collection-grid,.sa-collection-releases{grid-template-columns:minmax(0,1fr);gap:36px}.sa-collection-hero .sa-collection-media{aspect-ratio:16/9}.sa-collection-card .sa-card__title{font-size:30px}}
@media(prefers-reduced-motion:reduce){.sa-collection-media img{transition:none}.sa-collection-card:hover .sa-collection-media img{transform:none}}
