/* Local, temporary illustrative media. Provenance: assets/media/manifest.json. */
:root{--media-stage:url('assets/media/derived/hero-light-carousel.webp');--media-table:url('assets/media/derived/hero-table-wide.webp');--media-city:url('assets/media/derived/hero-architecture-wide.webp');--media-floral:url('assets/media/derived/floral-still-life-portrait.webp');--media-theatre:url('assets/media/derived/doorway-light-story.webp');--media-abstract:url('assets/media/derived/gallery-texture-square.webp');--media-food:url('assets/media/derived/food-detail-portrait.webp');--media-music:url('assets/media/derived/music-object-story.webp');--media-door:url('assets/media/derived/doorway-light-story.webp');--media-craft:url('assets/media/derived/hands-craft-portrait.webp');--media-glass:url('assets/media/derived/glass-detail-square.webp');--media-fabric:url('assets/media/derived/fabric-detail-utility.webp');--media-leaf:url('assets/media/derived/leaf-shadow-utility.webp');--media-evening:url('assets/media/derived/city-evening-story.webp');--media-wedding-ceremony:url('assets/media/derived/wedding/wedding-ceremony-hero.webp');--media-wedding-flower:url('assets/media/derived/wedding/wedding-flower-carousel.webp');--media-wedding-table:url('assets/media/derived/wedding/wedding-table-carousel.webp');--media-wedding-lights:url('assets/media/derived/wedding/wedding-lights-carousel.webp');--media-wedding-mandap:url('assets/media/derived/wedding/wedding-mandap-story.webp');--media-wedding-bride:url('assets/media/derived/wedding/wedding-bride-detail-mosaic.webp');--media-wedding-henna:url('assets/media/derived/wedding/wedding-henna-mosaic.webp');--media-wedding-textile:url('assets/media/derived/wedding/wedding-textile-mosaic.webp');--media-wedding-food:url('assets/media/derived/wedding/wedding-food-mosaic.webp')}
.media-illustrative{position:relative;overflow:hidden;background-position:center;background-size:cover}.media-illustrative::after{content:"Illustrative staging media · replace before publication";position:absolute;z-index:2;right:.8rem;bottom:.8rem;max-width:28ch;padding:.35rem .5rem;background:oklch(13% .03 245/.8);color:oklch(96% .008 90/.82);font:600 .58rem/1.25 ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}.media-illustrative>*{position:relative;z-index:3}.media-illustrative::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(135deg,oklch(12% .03 245/.58),transparent 58%,oklch(12% .03 245/.24))}
/* High-impact page treatments retain their existing content and decorative fallback underneath. */
body:has(.hero-art) .hero-art{background-image:linear-gradient(145deg,oklch(15% .03 245/.42),oklch(15% .03 245/.22)),var(--media-wedding-ceremony);background-size:cover;background-position:center}.hero-media-carousel[data-hero-media="1"]{background-image:linear-gradient(145deg,oklch(15% .03 245/.44),oklch(15% .03 245/.22)),var(--media-wedding-table)}.hero-media-carousel[data-hero-media="2"]{background-image:linear-gradient(145deg,oklch(15% .03 245/.48),oklch(15% .03 245/.24)),var(--media-wedding-lights)}body:has(.hero-media-carousel) .hero{background-image:linear-gradient(100deg,oklch(12% .03 245/.96) 0%,oklch(13% .03 245/.76) 48%,oklch(13% .03 245/.28) 100%),var(--media-wedding-mandap)!important;background-size:cover!important;background-position:center!important;transition:background-image .4s ease}.hero:has(.hero-media-carousel[data-hero-media="1"]){background-image:linear-gradient(100deg,oklch(12% .03 245/.96) 0%,oklch(13% .03 245/.76) 48%,oklch(13% .03 245/.28) 100%),var(--media-wedding-table)!important}.hero:has(.hero-media-carousel[data-hero-media="2"]){background-image:linear-gradient(100deg,oklch(12% .03 245/.96) 0%,oklch(13% .03 245/.76) 48%,oklch(13% .03 245/.28) 100%),var(--media-wedding-lights)!important}.hero-media-controls{position:absolute;z-index:3;right:1.25rem;bottom:1.25rem;display:flex;gap:.45rem;padding:.5rem;background:oklch(13% .03 245/.72);border:1px solid oklch(98% .006 90/.22)}.hero-media-controls button{width:1.8rem;height:.3rem;padding:0;border:0;background:oklch(98% .006 90/.35);cursor:pointer}.hero-media-controls button[aria-current="true"]{background:var(--accent)}
body:has(.carousel-art) .carousel-art{background-image:linear-gradient(145deg,oklch(15% .03 245/.38),oklch(15% .03 245/.38)),var(--media-wedding-flower);background-size:cover;background-position:center}.carousel-frame .carousel-slide:nth-of-type(2) .carousel-art{background-image:linear-gradient(145deg,oklch(15% .03 245/.34),oklch(15% .03 245/.3)),var(--media-wedding-table)}.carousel-frame .carousel-slide:nth-of-type(3) .carousel-art{background-image:linear-gradient(145deg,oklch(15% .03 245/.42),oklch(15% .03 245/.32)),var(--media-wedding-lights)}
/* Gallery carousel copy and controls must never inherit a light surface beneath light text. */
.gp-carousel .gp-slide{background-color:var(--midnight-rich,#142033)!important;background-image:radial-gradient(circle at 84% 20%,oklch(68% .13 85/.3),transparent 20rem),linear-gradient(135deg,var(--midnight-rich,#142033),var(--fg,#223044))!important}.gp-carousel .gp-slide[data-tone="warm"]{background-image:radial-gradient(circle at 16% 20%,oklch(74% .12 84/.35),transparent 18rem),linear-gradient(135deg,oklch(25% .045 245),var(--fg,#223044) 66%,oklch(42% .07 80))!important}.gp-carousel .gp-slide[data-tone="light"]{background-image:radial-gradient(circle at 88% 84%,oklch(84% .09 88/.2),transparent 19rem),linear-gradient(135deg,oklch(29% .05 245),var(--midnight-rich,#142033))!important}.gp-carousel .gp-slide h3{color:var(--bg,#fffdf7)!important}.gp-carousel .gp-slide p{color:oklch(96% .008 90/.84)!important}.gp-carousel .gp-carousel__controls{background:var(--midnight-rich,#142033)!important;border-top-color:oklch(98% .006 90/.2)!important}.gp-carousel .gp-carousel__next,.gp-carousel .gp-carousel__tabs button{color:var(--bg,#fffdf7)!important;border-color:oklch(98% .006 90/.42)!important}.gp-carousel .gp-carousel__next:hover{background:var(--bg,#fffdf7)!important;color:var(--midnight-rich,#142033)!important}
body:has([data-od-id="events-hero"]) .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.86),oklch(20% .04 245/.5)),var(--media-city);background-size:cover;background-position:center}
body:has([data-od-id="gallery-hero"]) .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.88),oklch(20% .04 245/.48)),var(--media-stage);background-size:cover;background-position:center}
body:has([data-od-id="collection-hero"]) .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.86),oklch(20% .04 245/.48)),var(--media-stage);background-size:cover;background-position:center}
body:has(.gp-study) .gp-study,body:has(.gp-lightbox__study) .gp-lightbox__study{background-image:linear-gradient(145deg,oklch(13% .03 245/.45),oklch(13% .03 245/.32)),var(--media-wedding-ceremony);background-size:cover;background-position:center}.gp-carousel .gp-slide:nth-of-type(2) .gp-study{background-image:linear-gradient(145deg,oklch(13% .03 245/.38),oklch(13% .03 245/.28)),var(--media-wedding-table)}.gp-carousel .gp-slide:nth-of-type(3) .gp-study{background-image:linear-gradient(145deg,oklch(13% .03 245/.42),oklch(13% .03 245/.3)),var(--media-wedding-lights)}.gp-mosaic .gp-tile:nth-child(1){background-image:linear-gradient(145deg,oklch(13% .03 245/.38),oklch(13% .03 245/.18)),var(--media-wedding-mandap);background-size:cover;background-position:center}.gp-mosaic .gp-tile:nth-child(2){background-image:linear-gradient(145deg,oklch(13% .03 245/.35),oklch(13% .03 245/.2)),var(--media-wedding-bride);background-size:cover;background-position:center}.gp-mosaic .gp-tile:nth-child(3){background-image:linear-gradient(145deg,oklch(13% .03 245/.3),oklch(13% .03 245/.14)),var(--media-wedding-henna);background-size:cover;background-position:center}.gp-mosaic .gp-tile:nth-child(4){background-image:linear-gradient(145deg,oklch(13% .03 245/.36),oklch(13% .03 245/.18)),var(--media-wedding-flower);background-size:cover;background-position:center}.gp-mosaic .gp-tile:nth-child(5){background-image:linear-gradient(145deg,oklch(13% .03 245/.35),oklch(13% .03 245/.2)),var(--media-wedding-lights);background-size:cover;background-position:center}.gp-mosaic .gp-tile:nth-child(6){background-image:linear-gradient(145deg,oklch(13% .03 245/.3),oklch(13% .03 245/.16)),var(--media-wedding-food);background-size:cover;background-position:center}.gp-mosaic .gp-tile:nth-child(7){background-image:linear-gradient(145deg,oklch(13% .03 245/.35),oklch(13% .03 245/.18)),var(--media-wedding-textile);background-size:cover;background-position:center}
body:has(.gallery-extension__story) .gallery-extension__story{background-image:linear-gradient(135deg,oklch(13% .03 245/.83),oklch(20% .04 245/.52)),var(--media-theatre);background-size:cover;background-position:center}
/* Account and contact routes intentionally retain flat, task-focused hero surfaces. */
body:has([data-od-id="private-options-title"]) .hero,body:has([data-od-id="partner-options-title"]) .hero,body:has([data-od-id="volunteer-detail-title"]) .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.86),oklch(20% .04 245/.5)),var(--media-floral);background-size:cover;background-position:center}
/* Editorial and service pages: decorative only; copy remains the source of truth. */
body:has([data-od-id="collection-hero"]) .media,body:has([data-od-id="gallery-recap-story"]) .gallery-extension__story{background-image:linear-gradient(135deg,oklch(13% .03 245/.7),oklch(20% .04 245/.35)),var(--media-theatre);background-size:cover;background-position:center}
body[data-media-route="private-events"] .media{position:relative;overflow:hidden;background-image:linear-gradient(135deg,oklch(13% .03 245/.66),oklch(20% .04 245/.28)),var(--media-food)!important;background-size:cover!important;background-position:center!important}.media>span{position:relative;z-index:1;display:inline-block;max-width:25ch;padding:.55rem .65rem;background:oklch(13% .03 245/.76);color:oklch(96% .008 90/.88)!important;font:.62rem/1.4 ui-monospace,monospace!important;letter-spacing:.07em;text-transform:uppercase}
body:has([data-od-id="private-events-card"]) .partner-card:first-child,body:has([data-od-id="sponsorship-card"]) .partner-card:last-child{background-image:linear-gradient(135deg,oklch(13% .03 245/.86),oklch(20% .04 245/.7)),var(--media-floral);background-size:cover;background-position:center}body:has([data-od-id="private-events-card"]) .partner-card:first-child *,body:has([data-od-id="sponsorship-card"]) .partner-card:last-child *{color:oklch(98% .006 90)!important;text-shadow:0 1px 2px oklch(13% .03 245/.9)}body:has([data-od-id="private-events-card"]) .partner-card:first-child .text-link,body:has([data-od-id="sponsorship-card"]) .partner-card:last-child .text-link{color:var(--accent-soft,#f3cf70)!important;text-decoration-color:currentColor}
body:has([data-od-id="testimonial-section"]) .quote-band{background-image:linear-gradient(110deg,oklch(13% .03 245/.9),oklch(20% .04 245/.52)),var(--media-stage);background-size:cover;background-position:center}
/* Diverse local Pexels staging pack: all placements remain illustrative and replaceable. */
body:has([data-od-id="programming-section"]) .program-card:nth-child(1){background-image:linear-gradient(145deg,oklch(98% .006 90/.78),oklch(98% .006 90/.38)),var(--media-music);background-size:cover;background-position:center}body:has([data-od-id="programming-section"]) .program-card:nth-child(2){background-image:linear-gradient(145deg,oklch(98% .006 90/.8),oklch(98% .006 90/.35)),var(--media-door);background-size:cover;background-position:center}body:has([data-od-id="programming-section"]) .program-card:nth-child(3){background-image:linear-gradient(145deg,oklch(98% .006 90/.8),oklch(98% .006 90/.35)),var(--media-glass);background-size:cover;background-position:center}
body:has([data-od-id="gallery-section"]) .gallery-tile:nth-child(1){background-image:linear-gradient(145deg,oklch(13% .03 245/.5),oklch(13% .03 245/.25)),var(--media-evening);background-size:cover;background-position:center}body:has([data-od-id="gallery-section"]) .gallery-tile:nth-child(2){background-image:linear-gradient(145deg,oklch(13% .03 245/.5),oklch(13% .03 245/.25)),var(--media-glass);background-size:cover;background-position:center}body:has([data-od-id="gallery-section"]) .gallery-tile:nth-child(3){background-image:linear-gradient(145deg,oklch(13% .03 245/.35),oklch(13% .03 245/.18)),var(--media-abstract);background-size:cover;background-position:center}
body:has([data-od-id="private-events-card"]) .partner-card:first-child{background-image:linear-gradient(135deg,oklch(13% .03 245/.92),oklch(20% .04 245/.78)),var(--media-food)!important}body:has([data-od-id="sponsorship-card"]) .partner-card:last-child{background-image:linear-gradient(135deg,oklch(13% .03 245/.92),oklch(20% .04 245/.78)),var(--media-fabric)!important}
body:has([data-od-id="collection-hero"]) .media{background-image:linear-gradient(135deg,oklch(13% .03 245/.48),oklch(20% .04 245/.18)),var(--media-glass)}body:has([data-od-id="gallery-recap-story"]) .gallery-extension__story{background-image:linear-gradient(135deg,oklch(13% .03 245/.7),oklch(20% .04 245/.35)),var(--media-theatre)}
/* Account and contact routes intentionally retain flat, task-focused hero surfaces. */
/* Route-specific hero assignments. They avoid generic shell selectors and keep utility pages intentionally quiet. */
body[data-media-route="about"] .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.86),oklch(20% .04 245/.45)),var(--media-floral);background-size:cover;background-position:center}body[data-media-route="private-events"] .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.84),oklch(20% .04 245/.46)),var(--media-food);background-size:cover;background-position:center}body[data-media-route="sponsorship"] .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.86),oklch(20% .04 245/.48)),var(--media-fabric);background-size:cover;background-position:center}body[data-media-route="volunteer"] .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.86),oklch(20% .04 245/.48)),var(--media-craft);background-size:cover;background-position:center}body[data-media-route="contact"] .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.88),oklch(20% .04 245/.56)),var(--media-leaf);background-size:cover;background-position:center}body[data-media-route="event-detail"] .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.86),oklch(20% .04 245/.46)),var(--media-door);background-size:cover;background-position:center}body[data-media-route="tickets"] .hero,body[data-media-route="attendee-guide"] .hero,body[data-media-route="venue-accessibility"] .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.87),oklch(20% .04 245/.48)),var(--media-theatre);background-size:cover;background-position:center}body[data-media-route="past-events"] .hero{background-image:linear-gradient(120deg,oklch(13% .03 245/.88),oklch(20% .04 245/.46)),var(--media-evening);background-size:cover;background-position:center}
@media(max-width:48rem){body:has(.hero-art) .hero-art{background-position:55% center}body:has([data-od-id="events-hero"]) .hero,body:has([data-od-id="gallery-hero"]) .hero,body:has([data-od-id="collection-hero"]) .hero{background-position:center}.hero-media-controls{right:1rem;bottom:1rem}.gp-carousel .gp-slide{min-height:0!important;padding:1.25rem!important;gap:1.25rem!important}.gp-carousel .gp-slide>div:first-child{padding:1.1rem;background:oklch(13% .03 245/.72);border:1px solid oklch(98% .006 90/.18)}.gp-carousel .gp-slide h3{font-size:clamp(2rem,10vw,3.25rem)!important}.gp-carousel .gp-slide p{margin-bottom:0}.gp-carousel .gp-study{min-height:15rem!important}.media-illustrative::after{font-size:.52rem}}
