:root{--serif:"Cormorant Garamond","Bodoni 72","Didot",Georgia,serif;--sans:Inter,"Helvetica Neue",Arial,sans-serif;--ink:#1a1a1a;--muted:#666;--line:#dedede}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}:focus-visible{outline:3px solid #a9782a;outline-offset:6px}.skip-link{position:absolute;left:1rem;top:-100px;padding:.75rem;background:#fff;z-index:5}.skip-link:focus{top:1rem}.gallery-header{height:108px;background:#111;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,64px);gap:24px}.gallery-brand{width:190px;flex-shrink:0}.gallery-brand img{width:100%;height:86px;object-fit:contain}.back-link{font-size:.875rem;letter-spacing:.035em}.back-link span{margin-left:.6rem}main{max-width:1560px;margin:auto;padding:0 clamp(20px,4vw,64px)}.gallery-intro{padding:56px 0 42px}.eyebrow{font-size:.75rem;letter-spacing:.19em;margin:0 0 20px;color:var(--muted)}.intro-line{display:flex;align-items:end;justify-content:space-between;gap:24px}.intro-line h1{font-family:var(--serif);font-size:clamp(3.6rem,7vw,6.25rem);font-weight:400;letter-spacing:-.055em;line-height:1;margin:0}.intro-line h1 span{color:#777}.intro-line p{color:var(--muted);margin:0 0 4px;line-height:1.65}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 28px;padding-bottom:80px}.gallery-card{display:block;min-width:0}.gallery-photo{aspect-ratio:4/3;overflow:hidden;background:#eee}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease,opacity .35s ease}.gallery-caption{padding:19px 0 0}.gallery-caption h2{font:400 clamp(1.7rem,2.25vw,2.2rem)/1.15 var(--serif);letter-spacing:-.025em;margin:0 0 9px;overflow-wrap:anywhere}.gallery-meta{margin:0;color:var(--muted);font-size:.8125rem}.gallery-meta span{padding:0 7px;color:#999}.gallery-cta{display:inline-flex;align-items:center;gap:12px;font-size:.875rem;margin-top:18px;border-bottom:1px solid #ccc;padding-bottom:3px}.gallery-cta span{display:inline-block;transition:transform .25s ease}.gallery-footer{border-top:1px solid var(--line);padding:28px clamp(20px,4vw,64px);display:flex;justify-content:space-between;gap:20px;font-size:.8125rem;color:var(--muted)}.gallery-empty{grid-column:1/-1;padding:60px 0 100px;border-top:1px solid var(--line)}.gallery-empty h2{font:400 2.4rem var(--serif);margin:0 0 12px}.gallery-empty p{color:var(--muted)}@media(hover:hover){.gallery-card:hover img{transform:scale(1.035);opacity:.94}.gallery-card:hover .gallery-cta span{transform:translateX(5px)}.back-link:hover{opacity:.75}}@media(max-width:1099px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}.gallery-caption h2{font-size:2rem}.gallery-footer>span:nth-child(2){display:none}}@media(max-width:639px){.gallery-header{height:88px}.gallery-brand{width:142px}.gallery-brand img{height:72px}.back-link{font-size:.8125rem}.gallery-intro{padding:36px 0 30px}.eyebrow{font-size:.75rem;letter-spacing:.12em}.intro-line{display:block}.intro-line p{margin:18px 0 0;font-size:1rem}.desktop-break{display:none}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 3px;padding-bottom:50px}.gallery-photo{aspect-ratio:4/3}.gallery-caption h2{font-size:2rem}.gallery-footer{flex-wrap:wrap;font-size:.8125rem;padding-top:24px;padding-bottom:24px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:639px){main{padding-inline:3px}.gallery-intro{padding-inline:17px}.gallery-caption{padding:10px 4px 0}.gallery-caption h2{font-size:1rem;line-height:1.25;margin-bottom:6px}.gallery-meta{font-size:.75rem;overflow-wrap:anywhere}.gallery-meta span{padding:0 2px}.gallery-meta time{display:block}.gallery-cta{font-size:.75rem;gap:4px;margin-top:10px}.gallery-empty{padding-inline:17px}}

/* RKM partnership introduction and venue slideshow. */
.rkm-introduction{background:#111;color:#fff;text-align:center;padding:34px 24px 58px}
.rkm-logos{display:flex;justify-content:center;align-items:center;gap:clamp(22px,4vw,60px);margin:0 auto 26px;max-width:630px}
.rkm-logos img{object-fit:contain;min-width:0;width:40%;height:145px}
.rkm-logos .rkm-madad-logo{width:34%;height:145px}
.rkm-logos>span{font-size:1.7rem;font-weight:300;color:#aaa}


.rkm-introduction>p{max-width:740px;margin:0 auto;color:#ccc;font-size:1rem;line-height:1.8}
.rkm-cover{position:relative;background:#171717;overflow:hidden}
.rkm-slides{position:relative;width:100%;height:clamp(360px,50vw,760px)}
.rkm-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;opacity:0;transition:opacity 1.4s ease}
.rkm-slide.is-active{opacity:1}



@media(max-width:639px){.rkm-introduction{padding:20px 22px 36px}.rkm-logos{gap:22px;margin-bottom:22px}.rkm-logos img,.rkm-logos .rkm-madad-logo{height:90px}.rkm-logos img{width:44%}.rkm-logos .rkm-madad-logo{width:36%}.rkm-slides{height:auto;aspect-ratio:4/3}}

/* Display the clean monochrome logo in white without a visible background. */
.rkm-logos .rkm-madad-logo{filter:invert(1) contrast(3);mix-blend-mode:screen}

/* Compact, readable phone layout. */
@media(max-width:639px){
 .gallery-header{height:76px;padding-inline:20px;gap:16px}
 .gallery-brand{width:128px}.gallery-brand img{height:64px}
 .back-link{font-size:.875rem}
 .rkm-introduction{padding:12px 24px 32px}
 .rkm-logos{max-width:360px;gap:18px;margin-bottom:16px}
 .rkm-logos img{width:43%;height:98px}
 .rkm-logos .rkm-madad-logo{width:40%;height:98px}
 .rkm-logos>span{font-size:1.25rem}
 .rkm-introduction>p{max-width:420px;font-size:1rem;line-height:1.75;text-wrap:pretty}
 .rkm-slides{height:auto;aspect-ratio:4/3}
 main{padding-inline:16px}
 .gallery-intro{padding:32px 0 26px}
 .eyebrow{font-size:.75rem;letter-spacing:.1em;margin-bottom:14px}
 .intro-line h1{font-size:3.5rem}
 .intro-line p{margin-top:12px}
 .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px;padding-bottom:40px}
 .gallery-caption{padding:12px 0 0}
 .gallery-caption h2{font-size:1.4rem;line-height:1.2;margin-bottom:8px}
 .gallery-meta{font-size:.875rem;line-height:1.5}
 .gallery-meta span{display:none}
 .gallery-meta time{display:block}
 .gallery-cta{font-size:.875rem;gap:7px;margin-top:12px;padding-block:5px}
 .gallery-footer{padding:22px 16px;gap:10px 18px;font-size:.875rem}
 .gallery-empty{padding:36px 0 50px}
}

.pin-page{min-height:100svh;display:grid;place-items:center;background:#111;color:#fff;padding:32px 20px}
.pin-panel{width:100%;max-width:420px;padding:0;text-align:center;margin:auto}
.pin-logo{width:190px;height:100px;object-fit:contain;margin:0 auto 22px}
.pin-eyebrow{font-size:.75rem;letter-spacing:.18em;color:#aaa;margin:0 0 18px}
.pin-panel h1{font:400 clamp(2.6rem,8vw,3.5rem)/1.1 var(--serif);margin:0 0 16px}
.pin-description{color:#bbb;font-size:1rem;margin:0 0 30px}
.pin-panel form{text-align:left}.pin-panel label{display:block;font-size:.875rem;margin-bottom:8px;color:#ddd}
.pin-panel input[type=password]{width:100%;min-height:58px;background:#1c1c1c;border:1px solid #666;border-radius:0;color:#fff;font:24px var(--sans);letter-spacing:.5em;text-align:center;padding:12px}
.pin-panel button{width:100%;min-height:52px;margin-top:16px;background:#fff;color:#111;border:0;font:500 1rem var(--sans);cursor:pointer}
.pin-error{color:#ffb8b8;font-size:.875rem;line-height:1.5;margin:12px 0 0}
.pin-home{display:inline-block;margin-top:26px;font-size:.875rem;color:#bbb;padding:8px}

/* Both partner logos on the PIN screen. */
.pin-partners{display:flex;align-items:center;justify-content:center;gap:24px;width:100%;margin:0 auto 30px}
.pin-partners img{display:block;min-width:0;object-fit:contain;width:43%;height:112px}
.pin-partners .pin-madad{width:40%;filter:invert(1) contrast(3);mix-blend-mode:screen}
.pin-partners>span{flex-shrink:0;font-size:1.3rem;color:#aaa}
@media(max-width:639px){.pin-partners{gap:16px;margin-bottom:24px}.pin-partners img{height:96px}}
