*{box-sizing:border-box}
:root{--maroon:#641d2d;--maroon-dark:#3b111d;--red:#8c3544;--gold:#e8b85e;--cream:#fbf7f0;--paper:#fffdf9;--ink:#2d2425;--muted:#74696a;--line:#eadfd7;--teal:#245c58}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.65}
a{color:inherit;text-decoration:none}
.container{width:min(1140px,calc(100% - 40px));margin:0 auto}
.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:15px;top:15px;background:#fff;padding:10px;z-index:1000}
.topbar{background:var(--maroon-dark);color:#f7e9d1;font-size:12px;letter-spacing:.04em}
.topbar-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(100,29,45,.08)}
.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:11px;color:var(--maroon)}
.brand-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid #d7b66f;border-radius:50%;font-size:25px;color:var(--gold);background:var(--maroon)}
.brand-text{display:flex;flex-direction:column;line-height:1.18}.brand-text strong{font-family:"Playfair Display",serif;font-size:18px;letter-spacing:.01em}.brand-text small{font-size:11px;letter-spacing:.15em;text-transform:uppercase;margin-top:5px;color:#8c6c66}
.nav-links{display:flex;align-items:center;gap:31px;font-size:13px;font-weight:600;color:#5f5051}
.nav-links>a:not(.nav-cta):hover,.nav-links>a.active{color:var(--maroon)}
.nav-cta{background:var(--maroon);color:#fff!important;padding:12px 18px;border-radius:3px}
.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--maroon);margin:5px}
.hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#f8eee1 0%,#fff9ef 54%,#f2dfc8 100%);min-height:570px}
.hero-pattern{position:absolute;inset:0;opacity:.16;background-image:radial-gradient(#bd8d58 .8px,transparent .8px);background-size:18px 18px;mask-image:linear-gradient(90deg,#000,transparent 70%)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px;padding-top:68px;padding-bottom:66px;min-height:500px}
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--maroon);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;margin:0 0 18px}
.eyebrow span{width:27px;height:1px;background:var(--gold)}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:"Playfair Display",Georgia,serif;font-weight:600;letter-spacing:-.035em}
h1{font-size:clamp(43px,5vw,67px);line-height:1.08;max-width:620px;margin-bottom:22px;color:var(--maroon-dark)}
h1 em,h2 em{font-weight:500;color:#a65d3f}
.hero-lede{max-width:530px;font-size:16px;line-height:1.85;color:#6d5a56;margin-bottom:29px}
.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 20px;border:0;border-radius:3px;font:700 12px "DM Sans",sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b111d20}
.button-gold{background:var(--maroon);color:white}
.button-gold span,.button-maroon span{font-size:17px}
.text-link{font-size:13px;font-weight:700;color:var(--maroon)}.text-link span{margin-left:8px}
.hero-note{display:flex;align-items:center;gap:12px;margin-top:42px;font-size:11px;color:#806b62;letter-spacing:.03em}.note-icon{color:#b88138;font-size:20px}
.hero-art{height:auto;min-height:370px;max-width:450px;width:100%;justify-self:center;position:relative;display:grid;place-items:center}
.hero-durga{display:block;width:100%;max-width:450px;height:auto;object-fit:contain;filter:drop-shadow(0 12px 22px #5a2b2218)}
.art-caption{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;background:#fffaf0e8;padding:12px 19px;border:1px solid #e6cda7;box-shadow:0 8px 24px #5a2b2212;white-space:nowrap;z-index:2}
.art-caption>span{font-size:24px;color:var(--maroon)}.art-caption div{display:flex;flex-direction:column;line-height:1.2}.art-caption strong{font-family:"Playfair Display",serif;color:var(--maroon);font-size:17px}.art-caption small{font-size:9px;letter-spacing:.08em;color:#806b62;margin-top:5px}
.spark{position:absolute;color:#b7783d;pointer-events:none}.spark-a{left:13%;top:28%;font-size:30px}.spark-b{right:8%;top:36%;font-size:23px}.spark-c{right:19%;bottom:24%;font-size:32px}
.hero-bottom{background:var(--maroon);color:#f5e2c2;font-size:11px;letter-spacing:.07em}
.hero-bottom-inner{display:flex;align-items:center;gap:16px;min-height:45px}.bottom-line{height:1px;background:#e8b85e66;flex:1}
.section-pad{padding:88px 0}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
h2{font-size:clamp(33px,3.5vw,46px);line-height:1.16;color:var(--maroon-dark);margin-bottom:0}
.intro-copy{max-width:560px;color:var(--muted);font-size:14px;line-height:1.9}
.under-link{display:inline-block;color:var(--maroon);font-size:12px;font-weight:700;border-bottom:1px solid #d9b77c;padding-bottom:7px;margin-top:7px}.under-link span{margin-left:16px}
.events{background:var(--cream)}
.section-top{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:37px}
.section-description{max-width:370px;color:var(--muted);font-size:13px;line-height:1.85;margin-bottom:3px}
.event-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.event-card{background:white;border:1px solid #eee2d7;padding:30px 27px 27px;min-height:280px;transition:transform .2s,box-shadow .2s}
.event-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px #4a20200d}
.event-card.featured{background:var(--maroon);color:white;border-color:var(--maroon)}
.event-icon{width:52px;height:52px;display:grid;place-items:center;background:#f8eee1;border-radius:50%;font-size:24px;margin-bottom:22px}
.featured .event-icon{background:#ffffff1c}
.card-number{font-size:9px;letter-spacing:.15em;color:#a87948;font-weight:700;margin-bottom:9px}.featured .card-number{color:#e8b85e}
.event-card h3{font-family:"Playfair Display",serif;font-size:23px;margin-bottom:12px;color:var(--maroon-dark)}
.featured h3{color:#fff}
.event-card>p:not(.card-number){font-size:12px;line-height:1.85;color:var(--muted);margin-bottom:20px}
.featured>p:not(.card-number){color:#ead8d7}
.event-card>a{display:inline-flex;gap:12px;font-size:11px;font-weight:700;color:var(--maroon)}
.featured>a{color:#f5d28d}
.quote-band{background:#efe1d0;padding:39px 0}
.quote-inner{display:flex;align-items:center;gap:23px;max-width:870px}
.quote-mark{font-family:Georgia,serif;font-size:80px;line-height:.8;color:#c58b48}
.quote-inner p{font-family:"Playfair Display",serif;font-size:clamp(20px,2.6vw,29px);color:var(--maroon-dark);margin:0 0 8px}
.quote-inner small{font-size:9px;font-weight:700;letter-spacing:.15em;color:#946d5d;text-transform:uppercase}
.quote-om{margin-left:auto;color:#c58b48;font-size:42px}
.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:17px}
.gallery-tile{position:relative;min-height:220px;background:#eee0d0;overflow:hidden}
.tile-art{height:220px;display:grid;place-items:center;position:relative;overflow:hidden}
.tile-art span{font-size:72px;position:relative;z-index:2}
.tile-lamp{background:radial-gradient(circle at 50% 43%,#f5cf80 0,#d99854 19%,#8b3e3c 20%,#4a202b 68%,#2d1520 100%)}
.tile-music{background:linear-gradient(135deg,#e3c9a4,#9f654b 50%,#6c3540)}
.tile-music span{font-family:Georgia,serif;font-size:120px;color:#fff0d5}
.tile-lotus{background:radial-gradient(circle at center,#f7e9cc,#d6b58d 52%,#b17863)}
.tile-lotus span{font-size:120px;color:#923b4b}
.tile-label{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#211016d9);color:white;padding:34px 20px 17px;display:flex;flex-direction:column}
.tile-label small{font-size:9px;letter-spacing:.15em;color:#f1c878}.tile-label strong{font-family:"Playfair Display",serif;font-size:18px}
.gallery-note{font-size:11px;color:#897d78;margin:17px 0 0}
.contact-section{background:#f8eee1}
.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:start}
.contact-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:460px;margin-top:20px;line-height:1.9}
.contact-details{display:grid;gap:18px;margin-top:32px}
.contact-detail{display:flex;align-items:center;gap:14px}.detail-icon{width:43px;height:43px;display:grid;place-items:center;border:1px solid #dfc5a9;color:var(--maroon);font-size:18px;background:#fff8ef}
.contact-detail div{display:flex;flex-direction:column;gap:3px}.contact-detail small{font-size:9px;letter-spacing:.15em;color:#9b7b6a;font-weight:700}.contact-detail strong{font-size:12px;color:var(--maroon-dark)}
.contact-form{background:white;padding:32px;border:1px solid #eddfd1;box-shadow:0 15px 40px #4a20200b}
.contact-form h3{font-family:"Playfair Display",serif;font-size:25px;color:var(--maroon-dark);margin-bottom:6px}
.contact-form>p{font-size:12px;color:var(--muted);line-height:1.7}
.contact-form label{display:block;font-size:11px;font-weight:700;color:#594749;margin:15px 0 6px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:12px 13px;border:1px solid #e7ddd5;background:#fffdfa;font:12px "DM Sans",sans-serif;color:var(--ink);border-radius:2px}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid #c79b5b66;border-color:#b9874b}
.contact-form textarea{resize:vertical}.button-maroon{background:var(--maroon);color:white;margin-top:18px;width:100%}
.contact-form .form-note{font-size:10px;color:#968784;margin:12px 0 0}.form-status{font-size:12px;color:var(--maroon);margin-bottom:0}
.site-footer{background:var(--maroon-dark);color:#f7e9d8}
.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:32px;padding-bottom:32px}
.brand-footer{color:white}.brand-footer .brand-text small{color:#d5b9a9}.brand-footer .brand-mark{background:transparent}
.footer-main>p{font-size:11px;color:#d5b9a9;margin:0}
.back-top{font-size:11px;color:#f2cc86}
.footer-bottom{border-top:1px solid #ffffff1c;font-size:10px;color:#c9aaa0}
.footer-bottom .container{display:flex;justify-content:space-between;gap:20px;padding-top:15px;padding-bottom:15px}
/* Gallery photographs and videos */
.gallery-media {
  display: block;
  width: 100%;
  height: 220px;
  object-fit: cover;
  background: #2d1520;
  border: 0;
}

/* Keep the large gallery tile consistent with the other tiles */
.gallery-tile.tile-large .gallery-media {
  height: 220px;
}

/* Make the photo link fill its gallery tile */
.gallery-tile > a {
  display: block;
  overflow: hidden;
}

.gallery-tile > a .gallery-media {
  transition: transform 0.3s ease;
}

.gallery-tile > a:hover .gallery-media {
  transform: scale(1.04);
}

/* Keep the text label visible below the media */
.gallery-tile .tile-label {
  position: relative;
  background: #641d2d;
  padding: 14px 20px 17px;
}

/* Responsive gallery on smaller screens */
@media (max-width: 800px) {
  .gallery-media,
  .gallery-tile.tile-large .gallery-media {
    height: 200px;
  }
}

@media (max-width: 480px) {
  .gallery-media,
  .gallery-tile.tile-large .gallery-media {
    height: 220px;
  }
}
.zoomable-image {
    cursor: pointer;
}

/* Dark background behind the enlarged picture */
.image-zoom-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.85);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    opacity: 0;
    transition: opacity 0.3s ease;
}

/* Enlarged picture */
.image-zoom-overlay img {
    max-width: 90vw;
    max-height: 90vh;
    width: auto;
    height: auto;
    object-fit: contain;
    transform: scale(0.8);
    transition: transform 0.3s ease;
}

.image-zoom-overlay.show {
    opacity: 1;
}

.image-zoom-overlay.show img {
    transform: scale(1);
}
@media(max-width:800px){.topbar-note{display:none}.nav-wrap{height:72px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;padding:18px 25px 24px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links a{padding:12px 0}.nav-links .nav-cta{text-align:center;margin-top:8px;padding:12px}.hero-grid{grid-template-columns:1fr;gap:15px;padding-top:56px;padding-bottom:45px}.hero-copy{text-align:center}.hero-copy .eyebrow,.hero-actions,.hero-note{justify-content:center}.hero-lede{margin-left:auto;margin-right:auto}.hero-art{min-height:0;width:min(100%,400px)}.hero-bottom-inner{font-size:10px}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.section-pad{padding:65px 0}.section-top{align-items:start;flex-direction:column;gap:15px}.event-cards{grid-template-columns:1fr}.event-card{min-height:0}.gallery-grid{grid-template-columns:1fr 1fr}.tile-large{grid-column:span 2}.gallery-tile,.tile-art{min-height:190px;height:190px}.contact-grid{gap:35px}.footer-main{flex-wrap:wrap}.footer-main>p{order:3;width:100%}}
@media(max-width:480px){.container{width:min(100% - 28px,1140px)}h1{font-size:43px}.hero-art{transform:none;margin:0 auto}.hero-note{align-items:flex-start;text-align:left;max-width:300px;margin:28px auto 0}.hero-bottom-inner span:last-child{max-width:240px}.gallery-grid{grid-template-columns:1fr}.tile-large{grid-column:auto}.gallery-tile,.tile-art{height:210px}.contact-form{padding:23px}.footer-bottom .container{flex-direction:column;gap:6px}.quote-om{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
