/* A photographic journal of the mandir, extending its established identity. */
:root{--muted:#655952;--line:#ded2c5;--gold:#a77a40}
html{scroll-padding-top:28px}
.shell{width:min(1320px,calc(100% - 96px))}
.header-inner{min-height:112px}.community-logo{width:88px;height:88px}
.brand-name{font-size:25px}.brand-name small{font-size:10px;letter-spacing:1.1px}
.navigation{gap:28px}.navigation a{font-size:14px}
.eyebrow{font-size:12px;letter-spacing:2px}.lead{font-size:19px;line-height:1.65}
.button{font-size:15px;min-height:54px;padding:14px 24px;border-radius:2px}
.text-link{font-size:15px}.button-row{gap:22px}.info-note,.form-hint,.privacy-note{font-size:14px}
.hero{grid-template-columns:minmax(0,.92fr) minmax(0,1.18fr);gap:64px;padding-block:66px 74px}
.hero h1{font-size:clamp(48px,4.7vw,72px);line-height:1.06;letter-spacing:-.048em}
.hero-copy{padding-block:18px}.hero-welcome{font-size:16px;max-width:39ch}
.hero-copy .lead{max-width:35ch}.hero .location-line{font-size:13px;margin-top:31px;flex-wrap:wrap}
.hero-photo{padding:0;border:0;border-radius:0;position:relative}
.hero-photo:before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid #b99b784d;z-index:-1}
.hero-photo img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:2px;background:var(--soft)}
.hours-grid{padding-block:30px;gap:30px}.hours-item h3{font-size:14px}.hours-item>span,.eyebrow.light{font-size:12px}.light-link{font-size:14px}
.welcome-section{gap:85px;padding-block:100px}.welcome-copy h2{font-size:clamp(38px,4vw,56px)}
.welcome-copy p:not(.eyebrow){font-size:17px;line-height:1.8}.community-welcome img{max-height:650px}
.welcome-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}
.welcome-mosaic img{width:100%;height:auto;object-fit:contain;border-radius:2px}
.welcome-mosaic figure:nth-child(2){margin-top:90px}
.darshan-section{background:#42202a;color:var(--paper);padding-block:74px 80px;overflow:hidden}
.darshan-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}
.darshan-heading .eyebrow{color:#e2bd8b;margin-bottom:15px}.darshan-heading h2{font-size:clamp(38px,4vw,56px)}
.darshan-heading p:not(.eyebrow){font-size:16px;color:#eaded8;max-width:34ch;margin-top:22px}
.darshan-heading .text-link{color:#fff4e3;border-color:#aa837a;flex-shrink:0}
.darshan-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:center}
.darshan-images a{display:block}.darshan-images img{width:100%;height:auto;max-height:590px;object-fit:contain;background:#32191f;border-radius:2px}
.darshan-images a:nth-child(2){padding-block:32px}
.home-community{padding-block:95px}.photo-section-heading{margin-bottom:34px}
.photo-section-heading h2{font-size:clamp(36px,3.5vw,49px)}
.community-teasers{gap:26px}.community-teaser img{aspect-ratio:auto;height:auto;max-height:380px;background:none}
.community-teaser h3{font-size:27px;line-height:1.2;margin-top:20px}.community-teaser p{font-size:16px}
.support-section{padding:44px 48px;background:#efe5d7;margin-bottom:90px}.support-section h2{font-size:41px}.support-section p:not(.eyebrow){font-size:16px}
.photo-page-heading{display:grid;grid-template-columns:1.2fr .75fr;gap:70px;align-items:center;padding-block:56px 52px}
.photo-page-heading .page-heading{padding:0;max-width:none}.photo-page-heading figure{margin:0}
.photo-page-heading img{width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:2px}
.photo-page-heading .page-heading h1{font-size:clamp(44px,4.6vw,65px)}
.photo-page-heading .lead{font-size:18px}.visit-note{gap:45px}.visit-note p{font-size:16px}
.puja-detail p,.puja-short,.seva-card p,.request-intro p,.giving-intro p{font-size:16px}
.visit-welcome{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:48px;padding-block:42px 76px;border-top:1px solid var(--line)}
.visit-welcome img{width:100%;max-height:430px;object-fit:contain}.visit-welcome h2{font-size:39px;margin-bottom:22px}.visit-welcome p{color:var(--muted);margin-bottom:16px}
.donation-story .wide-photo img{height:auto;object-fit:contain}.donation-story p,.external-note,.donation-questions p{font-size:16px}
.gallery-heading{max-width:1050px;padding-bottom:34px}.gallery-heading h1{font-size:clamp(47px,5vw,72px)}
.gallery-heading .lead{max-width:57ch}.photo-context{font-size:15px;max-width:64ch}
.gallery-browse{border-top:1px solid var(--line);padding-top:24px;margin-bottom:30px}
.photo-filters{gap:9px;margin:0 0 18px}.photo-filters button{font-size:14px;padding:11px 19px;border-radius:2px;min-height:46px}
#photo-count{font-size:14px;margin:0;color:var(--muted)}
.photo-grid{display:block;columns:3;column-gap:22px;margin-bottom:85px}
.photo-card{break-inside:avoid;display:inline-block;width:100%;vertical-align:top;margin-bottom:22px;scroll-margin-top:28px}
.photo-card[hidden]{display:none}.photo-open{border:0;background:transparent;overflow:hidden;border-radius:2px}
.photo-open img{width:100%;height:auto;aspect-ratio:auto;max-height:none;object-fit:contain;transition:filter .25s}
.photo-open:hover img{filter:brightness(1.035)}
.photo-open .enlarge{width:35px;height:35px;display:grid;place-items:center;padding:0;border-radius:50%;background:#fcf9f2ed;color:var(--wine);font-size:20px;right:10px;bottom:10px;box-shadow:none;opacity:0;transition:opacity .2s}
.photo-open:hover .enlarge,.photo-open:focus-visible .enlarge{opacity:1}
#photo-dialog{width:min(1260px,calc(100vw - 32px));max-height:calc(100dvh - 32px);border-radius:3px;background:#211b1b;color:var(--paper)}
#photo-dialog::backdrop{background:#160f12ed}.viewer-toolbar{border-color:#ffffff26;padding:10px 18px}
.viewer-toolbar button,.viewer-controls button{background:transparent;border-color:#ffffff40;color:var(--paper);font-size:14px}
.viewer-toolbar button:hover,.viewer-controls button:hover{background:#ffffff12}.viewer-image{background:#211b1b}
#photo-dialog img{height:72dvh;width:100%;object-fit:contain}.viewer-caption{padding:12px 18px;border-top:1px solid #ffffff26}
.site-footer{background:#f6f0e6}.footer-main{padding-block:50px 40px}.footer-logo{width:128px;height:128px}
.footer-main h2,.footer-bottom{font-size:12px}.footer-main p,.footer-main address,.footer-main>div>a:not(.footer-title){font-size:14px}
@media(min-width:761px) and (max-width:1100px){.navigation{gap:12px}.navigation .nav-donate{padding:11px 14px}.header-inner{gap:18px}.hero{gap:35px}.brand-name{font-size:18px}.brand-name small{font-size:9px;letter-spacing:.3px}.community-logo{width:68px;height:68px}.photo-page-heading{gap:38px}}
@media(max-width:1000px){.photo-grid{columns:2}.welcome-section{gap:46px}.darshan-images{gap:16px}.darshan-heading{align-items:start}.hero{gap:36px}}
@media(max-width:760px){
 .shell{width:calc(100% - 40px)}.header-inner{min-height:92px}.community-logo{width:76px;height:76px}.brand-name{font-size:20px}
 .mobile-actions{gap:8px}.mobile-donate{min-height:46px;padding:10px 18px;font-size:15px}.navigation{gap:4px}
 .hero{grid-template-columns:1fr;gap:28px;padding-block:35px 44px}.hero-copy{padding:0}.hero h1{font-size:clamp(36px,9.6vw,52px)!important;margin-bottom:20px}
 .hero .eyebrow{font-size:11px;letter-spacing:1.5px;margin-bottom:21px}.hero .lead{font-size:18px}.hero-welcome{font-size:16px;margin-top:12px}
 .hero .button-row{gap:19px;margin-top:22px}.hero .location-line{margin-top:24px;font-size:12px;gap:6px}.hero-photo:before{inset:10px -8px -10px 8px}
 .hero-photo img{border-radius:2px!important;aspect-ratio:auto}.button{padding:13px 18px;font-size:14px}.text-link{font-size:14px;gap:13px}
 .hours-grid{padding-block:29px;gap:24px}.hours-item h3{font-size:13px}.hours-intro h2{font-size:30px}.hours-item p{font-size:20px}
 .welcome-section{padding-block:60px;gap:30px}.welcome-copy h2{font-size:38px}.welcome-copy p:not(.eyebrow){font-size:16px}
 .welcome-mosaic{gap:12px}.welcome-mosaic figure:nth-child(2){margin-top:55px}
 .darshan-section{padding-block:48px}.darshan-heading{display:block;margin-bottom:28px}.darshan-heading h2{font-size:39px}.darshan-heading .text-link{margin-top:19px}
 .darshan-images{gap:10px}.darshan-images a:nth-child(2){padding-block:18px}
 .home-community{padding-block:58px}.photo-section-heading h2{font-size:37px}.community-teasers{grid-template-columns:1fr;gap:34px}
 .community-teaser{display:grid;grid-template-columns:1.15fr 1fr;gap:18px;align-items:center}.community-teaser img{max-height:280px}.community-teaser h3{font-size:25px;margin:0}
 .support-section{padding:30px 25px;margin-bottom:55px}.support-section h2{font-size:34px}.support-section p:not(.eyebrow){font-size:16px}
 .photo-page-heading{grid-template-columns:1fr;gap:28px;padding-block:36px}.photo-page-heading .page-heading h1{font-size:45px}.photo-page-heading img{max-height:360px}
 .photo-page-heading .lead{font-size:16px}.visit-welcome{grid-template-columns:1fr;gap:24px;padding-block:35px 50px}.visit-welcome img{max-height:380px}.visit-welcome h2{font-size:34px}
 .gallery-heading h1{font-size:47px}.gallery-heading .lead{font-size:17px}.photo-grid{column-gap:12px;margin-bottom:55px}.photo-card{margin-bottom:12px}
 .photo-filters{gap:8px}.photo-filters button{font-size:13px;padding:9px 12px}.gallery-browse{padding-top:20px;margin-bottom:22px}
 .photo-open .enlarge{opacity:1;width:28px;height:28px;font-size:17px;bottom:7px;right:7px}
 #photo-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}#photo-dialog img{height:67dvh}.viewer-toolbar{padding:8px 12px}.viewer-caption{padding:10px 12px}
 .footer-main{padding-block:35px}.footer-logo{width:110px;height:110px}
}
@media(max-width:360px){.shell{width:calc(100% - 32px)}.hero h1{font-size:38px!important}.hero .button-row{gap:12px}.hero .button{padding:12px 14px}.gallery-heading h1{font-size:40px}.photo-grid{columns:1}.community-teaser{grid-template-columns:1fr}.community-teaser h3{margin-top:0}.darshan-images{gap:7px}.brand{min-width:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.contact-options{display:flex;align-items:center;gap:12px 25px;flex-wrap:wrap;margin-top:14px}.phone-language{font-family:var(--sans);font-size:14px;letter-spacing:0}.english-panel{padding:32px;background:#f1eade;border:1px solid var(--line);border-radius:3px;scroll-margin-top:25px}.english-panel h2{font-size:38px;margin-bottom:20px}.english-panel .eyebrow{margin-bottom:15px}.enquiry-intro{color:var(--muted);font-size:16px;line-height:1.7;margin-bottom:24px}.enquiry-form{padding:0;border:0;background:transparent}.enquiry-form .form-hint{font-size:14px;line-height:1.7;margin:0 0 19px}.enquiry-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}.copy-enquiry{border:0;border-bottom:1px solid #bda69f;background:transparent;color:var(--wine);min-height:44px;font-size:14px;cursor:pointer;padding:8px 0}.enquiry-status{font-size:14px;color:var(--wine);border-left:3px solid var(--wine);padding:10px 14px;margin-top:20px}.email-fallback{font-size:14px;margin-top:23px;color:var(--muted)}.email-fallback a{display:block;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;color:var(--wine)}.copy-preview{margin-top:20px}.copy-preview[hidden],.enquiry-status[hidden],.copy-enquiry[hidden]{display:none}.hindi-contact{padding-bottom:5px}.hindi-note{margin-top:17px}.contact-details .hindi-contact p{font-size:16px}.contact-details .hindi-contact .eyebrow{font-size:12px;margin-bottom:14px}
@media(max-width:760px){.english-panel{padding:26px 20px}.english-panel h2{font-size:33px}.enquiry-form{padding:0}.enquiry-actions .button{width:100%}.contact-options{gap:8px 22px}.contact-layout{gap:34px}}
