/* Event archive: uncropped photographs, controls separate from image content. */
.event-photo-section{margin:0 0 clamp(48px,7vw,90px);scroll-margin-top:160px}
.event-photo-heading{max-width:750px;margin-bottom:30px}
.event-photo-heading h2{font-size:clamp(34px,4vw,54px);line-height:1.16;margin:12px 0 16px}
.event-photo-heading>p{font-size:16px;line-height:1.8;color:var(--muted);margin:0}
.event-photo-gallery{background:#203c32;color:#faf7ed;border:1px solid #365348;box-shadow:0 20px 55px #18362b0d}
.event-photo-stage{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(260px,1fr)}
.event-photo-open{display:flex;align-items:center;justify-content:center;position:relative;min-width:0;width:100%;height:clamp(400px,43vw,590px);padding:20px 20px 65px;border:0;background:#142b24;cursor:zoom-in;color:#faf7ed}
.event-photo-open>img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.event-photo-enlarge{display:flex;align-items:center;justify-content:center;gap:10px;position:absolute;bottom:0;inset-inline:0;min-height:52px;font-size:13px;line-height:1.5;letter-spacing:.02em;background:#142b24}
.event-photo-enlarge svg{width:18px;height:18px}
.event-photo-story{position:relative;display:flex;flex-direction:column;overflow:hidden;min-width:0;padding:clamp(25px,3vw,45px)}
.event-photo-story .eyebrow{color:#dbc59a;position:relative;font-size:10px;line-height:1.8;letter-spacing:.15em}
.event-photo-story h3{position:relative;font-size:clamp(29px,3.2vw,45px);line-height:1.2;margin:18px 0;color:#faf7ed}
.event-photo-story h3 em{color:#dbc59a;font-weight:400}
.event-photo-story>p{position:relative;font-size:15px;line-height:1.8;color:#e0e6dc;margin:0 0 28px}
.event-photo-ornament{position:absolute;inset-inline-end:-45px;top:-50px;width:190px;height:190px;opacity:.12;pointer-events:none;stroke:#dbc59a}
.event-photo-current{border-top:1px solid #ffffff30;padding-top:20px;margin-top:auto;position:relative}
.event-photo-number{font-family:Georgia,serif;font-size:35px;line-height:1.2;white-space:nowrap;direction:ltr;display:inline-block}
.event-photo-number small{font-family:inherit;font-size:18px;color:#c9d3ca}
.event-photo-current p{font-size:14px;line-height:1.7;color:#f3f0e7;margin:10px 0 18px;min-height:48px;overflow-wrap:anywhere}
.event-photo-controls{display:flex;gap:12px}
.event-photo-controls .icon-button{width:46px;height:46px;min-width:46px;border:1px solid #ffffff60;color:#faf7ed;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%}
.event-photo-controls .icon-button:hover{background:#ffffff18;border-color:#dbc59a}
.event-photo-controls svg{width:20px;height:20px}
[data-event-photo-prev] svg{transform:rotate(180deg)}
html[dir=rtl] [data-event-photo-prev] svg{transform:none}
html[dir=rtl] [data-event-photo-next] svg{transform:rotate(180deg)}
.event-photo-pause span{font-size:18px;line-height:1}
.event-photo-thumbs{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:#af9568 #203c32;padding:20px;scroll-padding-inline:20px;direction:ltr}
.event-photo-thumb{position:relative;flex:0 0 116px;min-height:90px;padding:4px;border:1px solid #ffffff25;background:#142b24;cursor:pointer}
.event-photo-thumb>img{display:block;width:106px;height:80px;object-fit:contain;opacity:.65;transition:opacity .2s}
.event-photo-thumb>span{position:absolute;bottom:4px;inset-inline-end:4px;background:#132b25dd;color:white;font-size:11px;line-height:1.5;padding:2px 7px;pointer-events:none}
.event-photo-thumb[aria-pressed=true]{border:2px solid #dbc59a;padding:3px}
.event-photo-thumb[aria-pressed=true]>img,.event-photo-thumb:hover>img{opacity:1}
.event-photo-gallery button:focus-visible{outline:3px solid #edcf91;outline-offset:-5px}
.detail-dialog:has(.event-photo-viewer){width:min(1220px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.event-photo-viewer .viewer-heading{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding-inline-end:45px}
.event-photo-viewer .viewer-heading h2{font-size:clamp(25px,3vw,36px);line-height:1.25;flex:1;min-width:180px;margin:0}
.event-photo-viewer .viewer-image{background:#142b24;max-height:66dvh;overflow:auto;display:flex;align-items:flex-start;justify-content:center}
.event-photo-viewer .viewer-image>img{width:auto;height:auto;max-width:100%;max-height:66dvh;object-fit:contain;mix-blend-mode:normal}
.event-photo-viewer .viewer-image.zoomed{display:block}
.event-photo-viewer .viewer-image.zoomed>img{max-width:none;max-height:none;width:auto;height:auto;margin:0}
.event-photo-viewer>p{font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.event-photo-viewer .viewer-navigation{direction:ltr}
@media(max-width:900px){.event-photo-stage{grid-template-columns:1fr}.event-photo-open{height:clamp(330px,65vw,570px);padding:16px 16px 60px}.event-photo-story{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 24px;padding:26px}.event-photo-story>.eyebrow,.event-photo-story>h3,.event-photo-story>p{grid-column:1/-1;margin:0}.event-photo-story h3 br{display:none}.event-photo-story>p{max-width:650px}.event-photo-current{grid-column:1;padding-top:16px;margin-top:6px;min-width:0}.event-photo-current p{min-height:0;margin-bottom:0}.event-photo-controls{align-self:end;grid-column:2;padding-bottom:3px}.event-photo-ornament{display:none}}
@media(max-width:540px){.event-photo-heading{margin-bottom:24px}.event-photo-heading>p{font-size:15px}.event-photo-open{height:330px;padding:12px 12px 56px}.event-photo-story{display:block;padding:25px 22px}.event-photo-story h3{font-size:32px;margin:12px 0}.event-photo-story>p{font-size:14px;line-height:1.8;margin-bottom:22px}.event-photo-current p{margin:9px 0 20px}.event-photo-controls{justify-content:flex-start}.event-photo-thumbs{gap:9px;padding:15px}.event-photo-thumb{flex-basis:100px;min-height:80px}.event-photo-thumb>img{width:90px;height:68px}.event-photo-viewer{padding:20px}.event-photo-viewer .viewer-heading{padding-top:30px;gap:12px}.event-photo-viewer .viewer-heading h2{min-width:150px}.event-photo-viewer .viewer-image,.event-photo-viewer .viewer-image>img{max-height:60dvh}}
@media(prefers-reduced-motion:reduce){.event-photo-thumb>img{transition:none}}

/* The children’s photo carousel and video library are separate collections. */
.children-photo-gallery{border-color:#cbd5c4;background:#e6ecdf}
.children-photo-gallery .event-photo-story{background:#f0ecdf;color:#234033}
.children-photo-gallery .event-photo-story .eyebrow{color:#75603a}
.children-photo-gallery .event-photo-story h3{color:#234033;font-size:clamp(29px,2.5vw,36px);line-height:1.28}
.children-photo-gallery .event-photo-story h3 em{color:#87653d}
.children-photo-gallery .event-photo-story>p,.children-photo-gallery .event-photo-current p{color:#425448}
.children-photo-gallery .event-photo-ornament{stroke:#7f9873;opacity:.3}
.children-photo-gallery .event-photo-current{border-color:#23403330}
.children-photo-gallery .event-photo-number small{color:#546b59}
.children-photo-gallery .event-photo-controls .icon-button{color:#234033;border-color:#23403360}
.children-photo-gallery .event-photo-controls .icon-button:hover{background:#dbe3d1;border-color:#234033}
.children-photo-gallery .event-photo-thumbs{scrollbar-color:#637d65 #e6ecdf}
.children-photo-gallery .event-photo-thumb{background:#d3ddc9;border-color:#bcc9b3}
.children-photo-gallery .event-photo-thumb[aria-pressed=true]{border-color:#356146}
.children-photo-gallery button:focus-visible{outline-color:#9c753d}
.children-video-section{margin-bottom:clamp(48px,7vw,90px);scroll-margin-top:160px}
.children-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.children-video-card{min-width:0;border:1px solid #d3d9cd;background:#f6f5ed}
.children-video-open{display:block;text-align:start;width:100%;height:100%;padding:0;border:0;background:none;color:#234033;cursor:pointer}
.children-video-poster{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:300px;background:#19372b;overflow:hidden}
.children-video-poster>img{display:block;width:100%;height:100%;object-fit:contain}
.children-video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;border:1px solid #fff9;background:#19372bdd;color:#fffaf0;font-size:23px;padding-left:4px;box-shadow:0 4px 22px #0003}
.children-video-open:hover .children-video-play{background:#42674c}
.children-video-duration{position:absolute;bottom:12px;inset-inline-end:12px;background:#19372be8;color:white;padding:5px 10px;font-size:12px;line-height:1.5;font-variant-numeric:tabular-nums;direction:ltr}
.children-video-card h3{font-family:var(--font-body,'DM Sans',sans-serif);font-size:17px;line-height:1.6;font-weight:500;margin:20px 22px 8px;overflow-wrap:anywhere}
.children-video-action{display:flex;gap:10px;align-items:center;font-size:13px;line-height:1.5;padding:0 22px 22px;color:#54694f}
.children-video-action svg{width:17px;height:17px}
.children-video-help{font-size:13px;color:#62705e;line-height:1.7;margin-top:20px}
.detail-dialog:has(.children-video-viewer){width:min(860px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.children-video-viewer{padding:32px}
.children-video-viewer h2{font-size:clamp(23px,3vw,32px);line-height:1.4;padding-inline-end:48px;margin:8px 0 22px;overflow-wrap:anywhere}
.children-video-player{display:block;width:100%;height:auto;max-height:70dvh;background:#142b24;object-fit:contain}
@media(max-width:900px){.children-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.children-video-poster{height:280px}}
@media(max-width:540px){.children-video-grid{grid-template-columns:1fr;gap:22px}.children-video-poster{height:340px}.children-video-card h3{font-size:16px}.children-video-viewer{padding:22px}.children-video-viewer h2{font-size:23px;margin-top:32px;padding-inline-end:12px}.children-video-player{max-height:65dvh}}

/* Award photographs retain their full framing beside a quiet bronze accent panel. */
.awards-photo-gallery{border-color:#a48b60}
.awards-photo-gallery .event-photo-story{background:#eee6d5;color:#293f35}
.awards-photo-gallery .event-photo-story .eyebrow{color:#786039}
.awards-photo-gallery .event-photo-story h3{color:#293f35;font-size:clamp(29px,2.7vw,39px);line-height:1.25}
.awards-photo-gallery .event-photo-story h3 em{color:#80623b}
.awards-photo-gallery .event-photo-story>p,.awards-photo-gallery .event-photo-current p{color:#4d574c}
.awards-photo-gallery .event-photo-ornament{stroke:#8b6c3e;opacity:.2}
.awards-photo-gallery .event-photo-current{border-color:#80623b40}
.awards-photo-gallery .event-photo-number small{color:#766340}
.awards-photo-gallery .event-photo-controls .icon-button{color:#293f35;border-color:#80623b70}
.awards-photo-gallery .event-photo-controls .icon-button:hover{background:#ded1b6;border-color:#80623b}
.awards-photo-gallery button:focus-visible{outline-color:#aa7a2f}

/* Ramadan and special days: warm copper details, full photographs and a separate video. */
.ramadan-photo-gallery{border-color:#a77b55}
.ramadan-photo-gallery .event-photo-story{background:#efe3d3;color:#294237}
.ramadan-photo-gallery .event-photo-story .eyebrow{color:#7d5638}
.ramadan-photo-gallery .event-photo-story h3{color:#294237;font-size:clamp(29px,2.7vw,39px);line-height:1.25}
.ramadan-photo-gallery .event-photo-story h3 em{color:#955d35}
.ramadan-photo-gallery .event-photo-story>p,.ramadan-photo-gallery .event-photo-current p{color:#4e574a}
.ramadan-photo-gallery .event-photo-ornament{stroke:#a77443;opacity:.22}
.ramadan-photo-gallery .event-photo-current{border-color:#955d3540}
.ramadan-photo-gallery .event-photo-number small{color:#785b3c}
.ramadan-photo-gallery .event-photo-controls .icon-button{color:#294237;border-color:#955d3570}
.ramadan-photo-gallery .event-photo-controls .icon-button:hover{background:#e1cdb5;border-color:#955d35}
.ramadan-photo-gallery button:focus-visible{outline-color:#a86b2e}
.ramadan-video-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:25px 50px;padding:clamp(22px,4vw,50px);background:#f0e8d9;border:1px solid #d6c5aa}
.ramadan-video-section .event-photo-heading{margin:0}
.ramadan-video-section .children-video-grid{grid-template-columns:minmax(0,1fr)}
.ramadan-video-section .children-video-help{grid-column:1/-1;margin:0}
.ramadan-video-section .children-video-poster{height:350px}
@media(max-width:700px){.ramadan-video-section{grid-template-columns:minmax(0,1fr);gap:25px}.ramadan-video-section .children-video-poster{height:330px}}
