.collection-advert-wide,.secret-circle-advert{display:block;width:100%;margin:0 0 24px;overflow:hidden}
.collection-advert-wide img,.secret-circle-advert img,.festival-campaign-hero>img{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain!important}
.festival-campaign-hero{display:block;padding:0;background:#09090c}
.festival-campaign-hero .range-hero-actions{padding:18px 4%;display:flex;gap:16px;flex-wrap:wrap}
.campaign-accessible{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.campaign-copy-only{display:block!important;min-height:0!important;background:none!important;border:0!important}
.campaign-copy-only>div,.cc-collection-banner.campaign-copy-only{padding:12px 0 24px!important}
.campaign-copy-only h2{font-size:clamp(30px,4vw,58px)!important;line-height:1!important}
.secret-circle-advert{margin:36px auto;max-width:1440px}
[data-hat-collection]{margin:36px 0}
.hat-art.model-preview{position:relative;overflow:hidden;aspect-ratio:3/4;padding:0;background:#111}
.hat-art.model-preview img{position:absolute;top:0;left:0;width:200%!important;max-width:none!important;height:100%!important;object-fit:cover!important}
.hat-art.model-preview.trucker img{left:-100%}
.hat-design-link{display:inline-block;margin-top:12px;color:#d2ee20;text-decoration:underline}
@media(max-width:720px){.collection-advert-wide{margin-bottom:12px}.festival-campaign-hero .range-hero-actions{padding:12px}.campaign-copy-only h2{font-size:30px!important}.secret-circle-advert{margin:22px 0}}

#hero.festival-campaign-hero{padding:0!important;min-height:0!important;height:auto!important;display:block!important;background:#09090c!important;gap:0!important}#hero.festival-campaign-hero::before,#hero.festival-campaign-hero::after{display:none!important;content:none!important}#hero.festival-campaign-hero>img{margin:0!important;inset:auto!important;transform:none!important;position:relative!important;max-width:100%!important}

/* Let the advert introduce each range; keep the catalogue immediately below it. */
#collections-start,.vice-home,#dub-disorder,#range-festival-flags,#range-posters{position:relative}
.collection-advert-wide{margin-bottom:8px}
#collections-start .campaign-copy-only,.vice-home .campaign-copy-only,
#range-festival-flags .campaign-copy-only,#range-posters .campaign-copy-only,
#dub-disorder .showcase-top,#collections-start .editorial-previews-heading,
#collections-start .new-drop-head,.vice-home .new-drop-head{
 position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;
 padding:0!important;margin:0!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;top:0;left:0;
}
#collections-start #new-drop,.vice-home .new-drop{margin:0!important;padding:0!important}
#collections-start .new-drop-tools{display:none!important}
#collections-start .cc-rail-controls,.vice-home .cc-rail-controls,
#dub-disorder .cc-rail-controls,#range-festival-flags .cc-rail-controls,#range-posters .cc-rail-controls{padding:6px 0}
#collections-start #new-drop .new-drop-grid,.vice-home .new-drop-grid{padding-top:4px}
#collections-start .neon-full-links,.vice-home .neon-full-links{padding:14px 0}

/* Compact all advertised ranges, including hats. */
.collection-advert-wide{margin-bottom:8px!important}
#dub-disorder .cc-product-rail,#range-festival-flags .cc-product-rail,#range-posters .cc-product-rail{padding-top:4px}
[data-hat-collection] .hat-heading>div{display:none}
[data-hat-collection] .hat-heading{margin:8px 0;justify-content:flex-end}
[data-hat-collection] .hat-controls{margin:8px 0}

/* Collection discovery: full product artwork first, readable labels underneath.
   Reuse the existing images and links; never crop or darken the garments. */
.collection-discovery .collection-discovery-grid{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;
}
.collection-discovery .collection-discovery-card{
 display:grid;grid-template-rows:minmax(0,1fr) auto;position:relative;
 width:100%;max-width:100%;height:340px;min-height:340px;margin:0;box-sizing:border-box;
 break-inside:avoid;background:#121411;border:1px solid #343a2c;
}
.collection-discovery .collection-discovery-card>img{
 display:block;position:static;inset:auto;width:100%;height:100%;min-height:0;max-width:100%;max-height:100%;
 object-fit:contain;object-position:center;transform:none;filter:none;opacity:1;transition:none;
}
.collection-discovery .collection-discovery-card:hover>img,
.collection-discovery .collection-discovery-card:focus-visible>img{transform:none;filter:none}
.collection-discovery .collection-discovery-card::after{content:none;display:none}
.collection-discovery .collection-discovery-card>span{
 position:static;inset:auto;z-index:auto;display:grid;gap:8px;width:100%;min-width:0;
 box-sizing:border-box;padding:18px 20px 20px;background:#121411;border-top:1px solid #343a2c;
}
.collection-discovery .collection-discovery-card small{font-size:10px;line-height:1.5;color:#c8cec1;letter-spacing:.1em}
.collection-discovery .collection-discovery-card strong{font-size:clamp(22px,2.3vw,34px);line-height:1.08;overflow-wrap:break-word}
.collection-discovery .collection-discovery-card b{font-size:11px;line-height:1.5;margin-top:2px;color:#d7ff00}
.collection-discovery .collection-discovery-card:hover{border-color:#d7ff00}
.collection-discovery .collection-discovery-card:focus-visible{outline:3px solid #d7ff00;outline-offset:-3px}
@media(max-width:900px){.collection-discovery .collection-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-discovery .collection-discovery-card{height:300px;min-height:300px}}
@media(max-width:640px){
 .collection-discovery .collection-discovery-grid{display:flex;gap:12px;align-items:stretch;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
 .collection-discovery .collection-discovery-card{display:grid;flex:0 0 82vw;width:82vw;height:360px;min-height:360px;margin:0;scroll-snap-align:start}
 .collection-discovery .collection-discovery-card>span{padding:15px 16px 18px}
 .collection-discovery .collection-discovery-card strong{font-size:26px}
}
