@charset "utf-8";
/* CSS Document */
/* CSS Document © 2026 ENVINTO */
/* @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap');
@font-face { font-family: 'Brittany Signature'; src: url('../fonts/BrittanySignatureRegular.eot'); src: url('../fonts/BrittanySignatureRegular.eot?#iefix') format('embedded-opentype'), url('../fonts/BrittanySignatureRegular.woff2') format('woff2'), url('../fonts/BrittanySignatureRegular.woff') format('woff'), url('../fonts/BrittanySignatureRegular.ttf') format('truetype'), url('../fonts/BrittanySignatureRegular.svg#BrittanySignatureRegular') format('svg'); font-weight: normal; font-style: normal; font-display: swap; } */



::-moz-selection{ background:#7b7d7f; color:var(--global); text-shadow:none;}
::selection { background:#7b7d7f; color:var(--global); text-shadow:none;}
*, *:before, *:after{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; margin: 0; padding: 0;}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, textarea, input { margin:0; padding:0; border:0; font-size:100%; font:inherit; vertical-align:baseline; outline:none; font-family: "Roboto", sans-serif;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body {color:#000000; background: #ffffff; -webkit-text-size-adjust: none; text-size-adjust: none; -webkit-font-smoothing: antialiased; -moz-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow:hidden; overflow-y: scroll; scroll-behavior: smooth;}
:root { --primary: #2f0602; --secondary:#ef7c00; --global:#ffffff;}
a {text-decoration:none; transition:all 0.25s ease-out 0s; outline: none; box-shadow: none; font-family: "Roboto", sans-serif;}
a:hover{text-decoration: none;}
h1, h2, h3, h4, h5, h6, h1 span, h2 span, h3 span, h4 span, h5 span, h6 span{font-family: "Roboto", sans-serif;}
p, p span { font-family: "Roboto", sans-serif;}
img { border:0px; max-width: 100%; display: block;}
ol, ul, li{ list-style: none;}
blockquote, q { quotes: none;}
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none;}
table {border-collapse: collapse; border-spacing: 0;}
* {-webkit-appearance: none; appearance: none;}
::-webkit-input-placeholder {color:var(--secondary);}
::-moz-placeholder {color:var(--secondary);}
:-ms-input-placeholder {color:var(--secondary);}
:-moz-placeholder {color:var(--secondary);}
section, header, footer {width: 100%; float: left;}
strong{font-weight: bold;}
.container{max-width: 1400px; margin: 0 auto; padding: 0px 15px;}

.error-page-section {background: var(--primary);}
.error-page-row {max-width: 800px; margin: 50px auto;}
.error-page-col1 h1 {font-size: 40px; color: #000;}
.error-page-col1 h2 {font-size: 40px; font-weight: 700; margin: 0 0 20px; color: #000;}
.error-page-col1 p {font-size: 16px; font-weight: 600; line-height: 1.67; margin: 0 0 22px; color: #000;}
.search-form {width: 100%; display: flex; align-items: center;}
.search-form input {width: 197px; height: 45px; border: 1px solid #000; margin: 0 7px 0 0; padding: 0 10px; color: #000; outline: none; box-shadow: none; display: inline-block; border-radius: 80px;}
.search-form .search-submit {width: auto; height: 45px; display: inline-block; padding: 0 25px; color: #ffff; border: 1px solid #000; background: #000; transition: all 0.25s ease-in-out; border-radius: 80px;}
.search-form .search-submit .screen-reader-text {position: relative !important; display: block; height: auto; width: auto; color: #ffff; clip-path: none; transition: all 0.25s ease-in-out;}
.search-form .search-submit:hover {color: #000; background: none;}
.search-form .search-submit:hover .screen-reader-text {color: #000;}
.search-form input::placeholder {color: #000;}
.search-page-section {padding: 80px 0px; background: #ffff;}
.search-page-row {max-width: 1320px; margin: 0 auto;}
.search-page-row .page-header .page-title {font-size: 40px; margin: 0 0 35px; display: flex; color: #000; font-weight: 500;}
.search-page-card {margin: 0 0 50px;}
.search-page-content {padding: 0; max-width: inherit; width: 100%; text-align: left; flex: 1 0 0;}
.search-page-content h3 {font-size: 32px; color: #000; font-weight: 500; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 1px solid var(--primary);}
.search-page-content p {font-size: 16px; font-weight: 500; line-height: 1.67; margin: 0 0 22px; color: #000;}
.search-btn1 {padding: 12px 24px; background-color: #000; border-radius: 80px; color: #ffffff; border: 1px solid #000; transition: 0.3s all ease-in-out; font-size: 16px; font-weight: 400; display: inline-block; margin: 10px auto 0;}
.search-btn1:hover {background-color: #ffffff; color: #000;}



.defualt-page-section {padding: 60px 0; background: #fff;}
.content-wrap h2 {font-size: 46px; font-weight: 500; color: var(--primary); margin: 0 0 20px;}
.content-wrap p {font-size: 16px; color: var(--secondary); line-height: 1.56; margin: 0 0 20px;}
.content-wrap ul {width: 100%; margin: 0 0 20px;}
.content-wrap ul li {font-size: 16px; line-height: 1.56; color: var(--primary); padding-left: 10px; position: relative;}
.content-wrap ul li:before {content: "\2022"; position: absolute; left: 0; top: 0;}
.content-wrap ol {width: 100%; float: none; counter-reset: my-awesome-counter; margin: 0 auto 28px; position: relative;}
.content-wrap ol li {font-size: 16px; line-height: 1.56; color: var(--primary); padding-left: 20px; position: relative; counter-increment: step-counter;}
.content-wrap ol li:before {content: counter(step-counter) '.'; margin-right: 0px; position: absolute; left: -4px; top: 0;}
.content-wrap p a, .content-wrap ul li a, .content-wrap ol li a{color:var(--primary);}
.content-wrap p a:hover, .content-wrap ul li a:hover, .content-wrap ol li a:hover{color: #000000;}



.whatsup-icon {position: fixed; bottom: 10px; right: 20px; z-index: 9999; background: #fff; padding: 15px; border-radius: 11px; box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;}
.whatsup-icon img {width: 50px; height: 50px;}
.whatsup-icon h3{font-size: 12px; text-align: center; color: var(--primary); margin: 0 0 10px;}
.slick-prev, .slick-next{display: none !important;}
.slick-dotted.slick-slider{margin-bottom: 0px;}

/* ==========================================================================
   TEMPLE DESIGN SYSTEM - TOPHEADER & MAIN HEADER (SINGLE LINE PSEUDO ELEMENT METHOD)
   ========================================================================== */
:root { --primary: #2b0503; --primary-dark: #190302; --primary-light: #3e0906; --secondary: #ef7c00; --global: #ffffff; --temple-gold: #dfa634; --temple-gold-light: #f7d678; --temple-gold-dark: #b87b14; --temple-gold-gradient: linear-gradient(135deg, #f7d77a 0%, #e0a32d 50%, #b87710 100%); --temple-gold-gradient-hover: linear-gradient(135deg, #ffe18b 0%, #ebb13e 50%, #c98518 100%); --gold-glow: 0 4px 20px rgba(224, 163, 45, 0.42); --header-bg: #2b0503; --topbar-bg: #1c0301; --font-serif: 'Cinzel', 'Marcellus', Georgia, serif; --font-display: 'Marcellus', 'Cinzel', Georgia, serif; --font-malayalam: 'Noto Sans Malayalam', sans-serif; --font-sans: 'Roboto', 'Noto Sans', sans-serif; }
.top-header-bar { width: 100%; float: none; background: var(--primary); border-bottom: 1px solid rgba(223, 166, 52, 0.18); padding: 8px 0; font-size: 13.5px; position: relative; z-index: 1002; transition: all 0.3s ease; }
.top-header-inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
.top-header-left { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.top-link { display: inline-flex; align-items: center; gap: 7px; color: #e4d7c7; font-size: 13.5px; font-weight: 500; letter-spacing: 0.3px; transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1); text-decoration: none; }
.top-link i { color: var(--temple-gold); font-size: 13px; transition: transform 0.25s ease, color 0.25s ease; }
.top-link:hover { color: #ffffff; text-shadow: 0 0 10px rgba(247, 214, 120, 0.45); }
.top-link:hover i { color: var(--temple-gold-light); transform: scale(1.18); }
.top-sep { color: rgba(223, 166, 52, 0.55); font-size: 11px; user-select: none; }
.top-header-right { display: flex; align-items: center; }
.lang-switcher { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; line-height: 1; }
.lang-btn { background: none; border: none; padding: 2px 4px; color: #c9bea9; font-size: 13px; font-weight: 600; cursor: pointer; transition: all 0.25s ease; outline: none; line-height: 1; display: inline-flex; align-items: center; border-radius: 4px; }
.lang-btn.active { color: #ffd875; font-weight: 700; text-shadow: 0 0 8px rgba(247, 214, 120, 0.45); }
.lang-btn:hover { color: var(--temple-gold-light); }
.lang-btn.ml-font { font-family: var(--font-malayalam) !important; font-size: 11px !important; font-weight: 500; line-height: 1; position: relative; top: -0.5px; }
.lang-pipe { color: rgba(223, 166, 52, 0.45); font-size: 11px; user-select: none; margin: 0 1px; }
.ml-font { font-family: var(--font-malayalam) !important; font-size: 11px; line-height: 1.3; }
.lang-txt { display: inline-block; }
body.lang-ml .lang-txt { font-size: 0 !important; line-height: 0; }
body.lang-ml .lang-txt::after { content: attr(data-ml); font-size: 13px; font-family: var(--font-malayalam) !important; font-weight: 500; letter-spacing: 0; line-height: 1.25; display: inline-block; vertical-align: middle; }
body.lang-ml .btn-book-pooja .lang-txt::after { font-size: 13.5px; font-weight: 600; }
body.lang-ml .temple-title .lang-txt::after { font-size: 18px; font-family: var(--font-malayalam) !important; font-weight: 700; letter-spacing: 0.5px; }
body.lang-ml .temple-subtitle .lang-txt::after { font-size: 10.5px; font-family: var(--font-malayalam) !important; }
body.lang-ml .view-all-link .lang-txt::after { font-size: 12px; }
body.lang-ml .darshan-card h5 .lang-txt::after { font-size: 13px; }
.header-wrap { width: 100%; float: none; background: var(--header-bg); background: linear-gradient(180deg, #2f0603 0%, #240502 100%); border-bottom: 1px solid rgba(223, 166, 52, 0.25); box-shadow: 0 6px 24px rgba(0, 0, 0, 0.35); position: relative; z-index: 1000; transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1); }
.header-container { display: flex; align-items: center; justify-content: space-between; padding: 14px 0; transition: padding 0.3s ease; }
.header-wrap.sticky { position: fixed; top: 0; left: 0; width: 100%; background: rgba(36, 5, 3, 0.96); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); box-shadow: 0 8px 30px rgba(0, 0, 0, 0.55), 0 1px 0 rgba(223, 166, 52, 0.3); animation: slideDownHeader 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
.header-wrap.sticky .header-container { padding: 9px 0; }
@keyframes slideDownHeader { from { transform: translateY(-100%); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
.temple-brand { display: inline-flex; align-items: center; gap: 14px; text-decoration: none; color: inherit; transition: transform 0.25s ease; }
.temple-brand:hover { transform: translateY(-1px); }
.temple-logo-wrap { position: relative; width: 54px; height: 54px; border-radius: 50%; padding: 2px; background: var(--temple-gold-gradient); box-shadow: 0 0 16px rgba(223, 166, 52, 0.35); display: flex; align-items: center; justify-content: center; overflow: hidden; flex-shrink: 0; transition: box-shadow 0.3s ease, transform 0.3s ease; }
.temple-brand:hover .temple-logo-wrap { box-shadow: 0 0 22px rgba(247, 214, 120, 0.65); transform: rotate(3deg) scale(1.04); }
.temple-logo { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; display: block; }
.temple-name-box { display: flex; flex-direction: column; justify-content: center; }
.temple-title { font-family: var(--font-serif); font-size: 21px; font-weight: 800; letter-spacing: 1.2px; line-height: 1.15; background: linear-gradient(135deg, #fff5d8 0%, #ffd064 45%, #e09e25 80%, #ffd875 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.5)); transition: filter 0.3s ease; }
.temple-brand:hover .temple-title { filter: drop-shadow(0 2px 10px rgba(247, 214, 120, 0.45)); }
.temple-subtitle { font-family: var(--font-malayalam), var(--font-sans); font-size: 11px; font-weight: 500; color: #dfcaa8; letter-spacing: 0.5px; margin-top: 2px; opacity: 0.9; line-height: 1.3; }
.main-nav { display: flex; align-items: center; }
.nav-menu { display: flex; align-items: center; list-style: none; margin: 0; padding: 0; gap: 8px; }
.nav-item { position: relative; }
.nav-link { display: inline-flex; align-items: center; gap: 5px; padding: 10px 14px; color: #f7eee2; font-size: 15.5px; font-weight: 500; letter-spacing: 0.3px; text-decoration: none; position: relative; transition: all 0.25s ease; border-radius: 6px; }
.nav-link::after { content: ''; position: absolute; bottom: 3px; left: 50%; width: 0; height: 2px; background: var(--temple-gold-gradient); box-shadow: 0 0 8px rgba(247, 214, 120, 0.6); border-radius: 2px; transform: translateX(-50%); transition: width 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
.nav-link:hover { color: var(--temple-gold-light); background: rgba(255, 255, 255, 0.04); }
.nav-link:hover::after, .nav-item.active .nav-link::after { width: 75%; }
.nav-item.active .nav-link { color: #ffd875; font-weight: 600; text-shadow: 0 0 10px rgba(223, 166, 52, 0.35); }
.nav-arrow { font-size: 10px; transition: transform 0.25s ease; color: var(--temple-gold); }
.nav-item:hover .nav-arrow { transform: rotate(180deg); }
.dropdown-menu-custom { position: absolute; top: 100%; left: 0; min-width: 240px; background: rgba(36, 5, 3, 0.98); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(223, 166, 52, 0.28); border-radius: 12px; box-shadow: 0 14px 35px rgba(0, 0, 0, 0.65), 0 0 20px rgba(223, 166, 52, 0.15); padding: 10px 0; margin-top: 12px; opacity: 0; visibility: hidden; transform: translateY(12px); transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1); z-index: 1010; list-style: none; }
.dropdown-menu-custom::before { content: ''; position: absolute; top: -12px; left: 0; width: 100%; height: 12px; }
.nav-item.has-dropdown:hover .dropdown-menu-custom { opacity: 1; visibility: visible; transform: translateY(0); }
.dropdown-menu-custom li { padding: 0 8px; }
.dropdown-menu-custom a { display: block; padding: 10px 16px; color: #ebdcd0; font-size: 14px; font-weight: 500; text-decoration: none; border-radius: 8px; transition: all 0.22s ease; }
.dropdown-menu-custom a:hover { color: #ffffff; background: linear-gradient(90deg, rgba(223, 166, 52, 0.25) 0%, rgba(223, 166, 52, 0.05) 100%); padding-left: 20px; text-shadow: 0 0 8px rgba(247, 214, 120, 0.4); }
.dropdown-divider-custom { height: 1px; background: rgba(223, 166, 52, 0.2); margin: 6px 14px; }
.dropdown-menu-custom a.view-all-link { color: var(--temple-gold-light); font-weight: 600; font-size: 13.5px; }
.dropdown-menu-custom a.view-all-link:hover { color: #ffd875; }
.header-actions { display: flex; align-items: center; gap: 15px; }
.btn-book-pooja { display: inline-flex; align-items: center; justify-content: center; position: relative; background: var(--temple-gold-gradient); color: #240402 !important; font-family: var(--font-sans); font-size: 15px; font-weight: 700; letter-spacing: 0.4px; padding: 12px 28px; border-radius: 999px; border: 1px solid rgba(255, 235, 179, 0.75); box-shadow: 0 4px 18px rgba(224, 163, 45, 0.42), inset 0 1px 1px rgba(255, 255, 255, 0.7); text-decoration: none; cursor: pointer; overflow: hidden; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); white-space: nowrap; }
.btn-book-pooja::before { content: ''; position: absolute; top: 0; left: -100%; width: 60%; height: 100%; background: linear-gradient(120deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.45) 50%, rgba(255, 255, 255, 0) 100%); transform: skewX(-25deg); transition: left 0.6s ease; }
.btn-book-pooja:hover { background: var(--temple-gold-gradient-hover); color: #1a0201 !important; transform: translateY(-2px) scale(1.02); box-shadow: 0 7px 25px rgba(224, 163, 45, 0.62), 0 0 15px rgba(247, 214, 120, 0.5), inset 0 1px 1px rgba(255, 255, 255, 0.85); }
.btn-book-pooja:hover::before { left: 140%; }
.btn-book-pooja:active { transform: translateY(0) scale(0.99); }
.burger-toggle { display: none; flex-direction: column; justify-content: space-between; width: 42px; height: 42px; background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(223, 166, 52, 0.3); border-radius: 8px; padding: 11px 9px; cursor: pointer; z-index: 1005; transition: all 0.25s ease; outline: none; text-decoration: none; }
.burger-toggle:hover { background: rgba(223, 166, 52, 0.15); border-color: var(--temple-gold); }
.burger-line { display: block; width: 100%; height: 2.5px; background: var(--temple-gold-light); border-radius: 2px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); transform-origin: center; }
.burger-toggle.active .burger-line.top { transform: translateY(7.5px) rotate(45deg); background: #ffffff; }
.burger-toggle.active .burger-line.middle { opacity: 0; transform: translateX(-10px); }
.burger-toggle.active .burger-line.bottom { transform: translateY(-7.5px) rotate(-45deg); background: #ffffff; }
.overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(10, 1, 1, 0.75); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); z-index: 9999; transition: opacity 0.3s ease; }
.overlay.show { display: block; opacity: 1; }
.mobile-drawer { position: fixed; top: 0; right: -320px; width: 310px; max-width: 85vw; height: 100%; background: #230402; background: linear-gradient(180deg, #2b0503 0%, #1c0301 100%); border-left: 1px solid rgba(223, 166, 52, 0.3); box-shadow: -10px 0 35px rgba(0, 0, 0, 0.7); display: flex; flex-direction: column; overflow-y: auto; padding: 22px 20px; transition: right 0.35s cubic-bezier(0.16, 1, 0.3, 1); z-index: 10000; }
.overlay.show .mobile-drawer { right: 0; }
.mobile-drawer-header { display: flex; align-items: center; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid rgba(223, 166, 52, 0.2); }
.mobile-brand { display: flex; align-items: center; gap: 12px; }
.mobile-logo { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; border: 2px solid var(--temple-gold); }
.mobile-brand-text h4 { font-family: var(--font-serif); font-size: 16px; font-weight: 700; color: var(--temple-gold-light); margin: 0; }
.mobile-brand-text p { font-size: 11px; color: #c9bea9; margin: 0; }
.mobile-close-btn { background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(223, 166, 52, 0.25); color: var(--temple-gold-light); width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 16px; transition: all 0.2s ease; text-decoration: none; }
.mobile-close-btn:hover { background: var(--temple-gold); color: #240402; }
.mobile-lang-box { display: flex; align-items: center; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid rgba(223, 166, 52, 0.15); font-size: 13px; color: #dfcaa8; }
.mobile-lang-switch { display: flex; gap: 6px; }
.mobile-lang-btn { background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(223, 166, 52, 0.25); color: #d1c5b4; padding: 4px 10px; border-radius: 20px; font-size: 12px; cursor: pointer; transition: all 0.2s ease; }
.mobile-lang-btn.active { background: var(--temple-gold); color: #240402; font-weight: 700; }
.mobile-nav-list { list-style: none; padding: 16px 0; margin: 0; flex: 1; }
.mobile-nav-list li { margin-bottom: 4px; }
.mobile-nav-link { display: flex; align-items: center; gap: 14px; padding: 12px 14px; color: #eeddcc; font-size: 15px; font-weight: 500; text-decoration: none; border-radius: 8px; transition: all 0.2s ease; }
.mobile-nav-link i { color: var(--temple-gold); width: 18px; text-align: center; font-size: 14px; }
.mobile-nav-link:hover, .mobile-nav-link.active { background: rgba(223, 166, 52, 0.15); color: var(--temple-gold-light); transform: translateX(4px); }
.mobile-cta-box { padding: 14px 0; border-top: 1px solid rgba(223, 166, 52, 0.15); }
.mobile-drawer-footer { padding-top: 12px; border-top: 1px solid rgba(223, 166, 52, 0.15); display: flex; flex-direction: column; gap: 10px; }
.mobile-contact-item { display: flex; align-items: center; gap: 10px; font-size: 13px; color: #cbbeaa; }
.mobile-contact-item i { color: var(--temple-gold); font-size: 13px; width: 16px; }
.mobile-contact-item a { color: #cbbeaa; text-decoration: none; transition: color 0.2s ease; }
.mobile-contact-item a:hover { color: var(--temple-gold-light); }
.pooja-modal { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(14, 2, 2, 0.85); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); z-index: 10020; overflow-y: auto; padding: 30px 15px; }
.pooja-modal.show { display: flex; align-items: center; justify-content: center; }
.pooja-modal-card { width: 100%; max-width: 580px; background: linear-gradient(180deg, #2e0603 0%, #1e0302 100%); border: 1px solid rgba(223, 166, 52, 0.35); border-radius: 18px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.75), 0 0 30px rgba(223, 166, 52, 0.2); padding: 32px; position: relative; animation: modalScaleIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
@keyframes modalScaleIn { from { opacity: 0; transform: scale(0.92) translateY(20px); } to { opacity: 1; transform: scale(1) translateY(0); } }
.pooja-modal-close { position: absolute; top: 20px; right: 20px; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(223, 166, 52, 0.3); color: var(--temple-gold-light); width: 36px; height: 36px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 16px; transition: all 0.2s ease; }
.pooja-modal-close:hover { background: var(--temple-gold); color: #240402; transform: rotate(90deg); }
.pooja-modal-header { text-align: center; margin-bottom: 24px; }
.pooja-modal-header .modal-icon { font-size: 32px; color: var(--temple-gold); margin-bottom: 8px; display: inline-block; filter: drop-shadow(0 0 10px rgba(247, 214, 120, 0.5)); }
.pooja-modal-header h3 { font-family: var(--font-serif); font-size: 24px; color: #ffffff; margin-bottom: 6px; }
.pooja-modal-header p { color: #d1c1a9; font-size: 13.5px; }
.pooja-form .form-group { margin-bottom: 16px; }
.pooja-form label { display: block; font-size: 13px; font-weight: 500; color: var(--temple-gold-light); margin-bottom: 6px; }
.pooja-form input, .pooja-form select, .pooja-form textarea { width: 100%; background: rgba(15, 2, 2, 0.7); border: 1px solid rgba(223, 166, 52, 0.3); border-radius: 10px; padding: 11px 14px; color: #ffffff; font-size: 14px; transition: all 0.25s ease; outline: none; }
.pooja-form input:focus, .pooja-form select:focus, .pooja-form textarea:focus { border-color: var(--temple-gold); box-shadow: 0 0 12px rgba(223, 166, 52, 0.35); background: rgba(22, 3, 3, 0.9); }
.pooja-form input::placeholder, .pooja-form textarea::placeholder { color: rgba(255, 255, 255, 0.4); }
.pooja-form select option { background: #230402; color: #ffffff; }
.pooja-modal-btn { width: 100%; margin-top: 10px; padding: 13px; font-size: 16px; }



.home-sec { width: 100%; float: none; clear: both; position: relative; }
.home-sec h1, .home-sec h2, .home-sec h3, .home-sec h4 { font-family: var(--font-display); }
.container-narrow { max-width: 1200px; margin: 0 auto; padding: 0 15px; }
.btn-gold { display: inline-flex; align-items: center; justify-content: center; background: var(--temple-gold-gradient); color: #240402 !important; font-size: 14.5px; font-weight: 700; padding: 11px 24px; border-radius: 999px; border: 1px solid rgba(255, 235, 179, 0.75); box-shadow: 0 4px 16px rgba(224, 163, 45, 0.35); cursor: pointer; transition: all 0.28s ease; text-decoration: none; }
.btn-gold:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(224, 163, 45, 0.55); }
.btn-gold.sm { padding: 8px 18px; font-size: 13px; }
.btn-ghost { display: inline-flex; align-items: center; justify-content: center; background: transparent; color: var(--temple-gold-light) !important; font-size: 14.5px; font-weight: 600; padding: 11px 24px; border-radius: 999px; border: 1px solid rgba(223, 166, 52, 0.55); transition: all 0.28s ease; }
.btn-ghost:hover { background: rgba(223, 166, 52, 0.14); border-color: var(--temple-gold-light); }
.text-link { display: inline-block; font-size: 13.5px; font-weight: 600; color: var(--temple-gold-dark); position: relative; padding-bottom: 2px; }
.text-link::after { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: currentColor; transform: scaleX(0.35); transform-origin: left; transition: transform 0.3s ease; }
.text-link:hover::after { transform: scaleX(1); }
.ph { position: relative; width: 100%; background: repeating-linear-gradient(135deg, var(--cream-deep) 0 10px, #f3e6cc 10px 20px); border: 1px solid var(--line); border-radius: 50px; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.ph::before { content: attr(data-label); font-size: 12px; color: var(--ink-soft); background: rgba(247, 237, 218, 0.92); padding: 4px 10px; border-radius: 4px; }
.ph img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }



.hero-sec { background: radial-gradient(circle at 80% 20%, #4a0d08 0%, var(--primary) 55%, var(--primary-dark) 100%); padding: 56px 0 120px; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: 1.15fr 0.85fr; gap:30px; align-items: center; }
.hero-eyebrow { font-size: 12.5px; font-weight: 500; color: var(--temple-gold); letter-spacing: 0.6px; margin-bottom: 14px; display: block; }
.hero-title { font-size: clamp(38px, 5.2vw, 64px); font-weight: 600; line-height: 1.04; color: #fff5e4; margin-bottom: 20px; }
.hero-text { font-size: 16px; line-height: 1.7; color: #dccbb4; max-width: 460px; margin-bottom: 28px; }
.hero-btns { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-arch { position: relative; width: 100%; max-width: 600px; margin-left: auto; aspect-ratio: 4 / 4; border-radius: 999px ; border: 1px solid rgba(223, 166, 52, 0.5); background: linear-gradient(180deg, #4b0e09 0%, #330805 100%); overflow: hidden; display: flex; align-items: center; justify-content: center; }
.hero-arch::before { content: ''; position: absolute; inset: 10px; border-radius: 999px 999px 8px 8px; border: 1px solid rgba(247, 214, 120, 0.22); pointer-events: none; }
.hero-arch::after { content: attr(data-label); position: relative; font-size: 12px; color: #d9c4a2; text-align: center; padding: 0 20px; }
.hero-arch img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; top: 50%;left: 50%;transform: translate(-50%,-50%);}


.quick-sec {z-index: 5;background-color: #fbf6ec;padding:20px 0px;}
.quick-bar { background: #fff; border-radius: 20px; box-shadow: 0 16px 40px rgba(43, 5, 3, 0.22); display: flex; align-items: center; justify-content: space-between; padding: 20px; overflow-x: auto; scrollbar-width: none;gap: 20px;margin-top: -50px;}
.quick-bar::-webkit-scrollbar { display: none; }
.quick-link { flex: 1 0 auto; text-align: center; padding: 14px; font-size: 15px; font-weight: 500; color: var(--ink); position: relative; white-space: nowrap; transition: color 0.25s ease; border: 1px solid var(--primary);border-radius:10px;background-color: var(--primary);color: var(--temple-gold-light);}
.quick-link::after { content: ''; position: absolute; right: 0; top: 30%; height: 40%; width: 1px; background: var(--line); }
.quick-link:last-child::after { display: none; }
.quick-link:hover { color: var(--temple-gold-dark); }


.about-sec { background: linear-gradient(180deg, #fbf6ec 0%, #f6efe2 100%); padding: 60px 0 70px; }
.about-grid { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 42px; align-items: center; }
.about-visual { position: relative; }
.about-img { position: relative; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 24px; box-shadow: 0 24px 52px rgba(41, 16, 10, 0.18); border: 1px solid rgba(126, 77, 16, 0.15); }
.about-img img { width: 100%; height: 100%; object-fit: cover; display: block; object-position:top center; }
.about-quote { position: absolute; left: 22px; right: 22px; bottom: -22px; background: rgba(35, 16, 12, 0.9); color: #f7f0e5; padding: 18px 20px; border-radius: 16px; box-shadow: 0 16px 30px rgba(17, 6, 3, 0.24); border: 1px solid rgba(232, 191, 103, 0.18); }
.about-quote i { display: inline-block; font-size: 18px; color: var(--temple-gold); margin-bottom: 10px; }
.about-quote p { font-size: 22px; line-height: 1.6; margin: 0 0 8px; color: #f5e8cf; }
.about-quote span { font-size: 12px; font-weight: 600; letter-spacing: 0.04em; color: var(--temple-gold-light); }
.about-tag { font-size: 12.5px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--temple-gold-dark); margin-bottom: 12px; display: block; }
.about-title { font-size: 50px; font-weight: 700; line-height: 1.1; color: var(--ink); margin-bottom: 18px; }
.about-text { font-size: 15px; line-height: 1.8; color: var(--ink-soft); margin-bottom: 14px; max-width: 560px; }
.about-highlights { display: grid; gap: 14px; margin: 22px 0 28px; }
.about-highlight { display: flex; align-items: center; gap: 14px; background: rgba(255, 255, 255, 0.7); border: 1px solid rgba(126, 77, 16, 0.08); border-radius: 16px; padding: 16px 18px; }
.about-highlight i { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; border-radius: 12px; background: linear-gradient(135deg, #f4ddb0, #e4b968); color: var(--primary); font-size: 18px; }
.about-highlight strong { display: block; font-size: 18px; font-weight: 700; color: var(--ink); }
.about-highlight span { display: block; font-size: 12.5px; color: var(--ink-soft); margin-top: 2px; }
.about-cta { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.about-cta .text-link { margin-right: 0; }
.about-stats { display: flex; flex-wrap: wrap; gap: 36px; margin-bottom: 24px; }
.about-stat strong { display: block; font-family: var(--font-display); font-size: 34px; font-weight: 700; line-height: 1; color: var(--temple-gold-dark); }
.about-stat span { display: block; font-size: 12.5px; color: var(--ink-soft); margin-top: 6px; }


.history-sec{position:relative;background:linear-gradient(180deg,#efe2bd 0%,#e5d29d 100%);padding:60px 0;}
.history-header,.history-grid,.history-bottom{position:relative;z-index:1;}
.history-header{position:relative;margin-bottom:10px;padding-bottom:18px;}
.history-header::after{content:"";display:block;width:220px;height:2px;background:linear-gradient(90deg,rgba(117,75,26,0.95),rgba(117,75,26,0.18));margin-top:18px;border-radius:999px;}
.history-tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--temple-gold-dark);margin-bottom:14px;}
.history-title{font-size:50px;line-height:1.05;font-weight:600;color:var(--ink);margin:0;letter-spacing:-0.05em;}
.history-grid{display:grid;grid-template-columns:0.9fr 1fr;gap:30px;align-items:center;}
.history-visual{position:relative;padding:10px 10px 22px;}
.history-image-wrap{position:relative;overflow:hidden;border-radius:20px;border:1px solid rgba(118,83,39,0.25);box-shadow:0 20px 38px rgba(80,44,5,0.16);background:#e8d6a0;}
.history-image-wrap::before{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,0.3);border-radius:14px;z-index:1;pointer-events:none;}
.history-image-wrap img{display:block;width:100%;height:100%;height:500px;object-fit:cover;}
.history-card{position:absolute;left:24px;right:24px;bottom:-10px;background:rgba(38,20,12,0.9);color:#f5ebdc;padding:18px 20px;border-radius:14px;box-shadow:0 18px 30px rgba(24,11,5,0.18);border:1px solid rgba(232,196,108,0.18);}
.history-card i{display:inline-block;font-size:18px;color:var(--temple-gold);margin-bottom:8px;}
.history-card p{margin:0;font-size:14px;line-height:1.6;color:#f7ebd5;}
.history-copy{max-width:650px;}
.history-copy p{font-size:17px;line-height:1.8;color:var(--ink-soft);margin:0 0 18px;}
.history-copy p:last-of-type{margin-bottom:0;}
.history-facts{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:16px;margin-top:28px;}
.history-fact{background:rgb(255,255,255);border:1px solid rgba(118,83,39,0.12);border-radius:14px;padding:16px 14px;}
.history-fact-number{display:block;font-size:clamp(20px,2vw,28px);font-weight:700;color:var(--temple-gold-dark);line-height:1.1;}
.history-fact-label{display:block;margin-top:6px;font-size:12px;color:var(--ink-soft);line-height:1.4;}
.history-bottom{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.heritage-pill{display:inline-flex;align-items:center;background:transparent;border:none;border-bottom:1px solid rgba(117,75,26,0.35);padding:0 0 6px;color:var(--ink);font-size:13px;font-weight:600;letter-spacing:0.02em;}





.seek-sec{background:linear-gradient(180deg,#fbf6ec 0%,#f6efe2 100%);padding:72px 0 84px;position:relative;}
.seek-sec::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(87,56,26,0.02),rgba(87,56,26,0.04),rgba(87,56,26,0.02));pointer-events:none;}
.seek-head{position:relative;z-index:1;text-align:left;margin-bottom:28px;padding-bottom:16px;}
.seek-head::after{content:"";display:block;width:170px;height:2px;background:linear-gradient(90deg,rgba(123,85,28,0.9),rgba(123,85,28,0.18));margin-top:14px;border-radius:999px;}
.seek-title{font-size:clamp(28px,3.2vw,44px);font-weight:700;color:var(--ink);margin-bottom:6px;letter-spacing:-0.04em;}
.seek-sub{font-size:15px;color:var(--ink-soft);margin:0;}
.seek-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.seek-card{background:rgba(255,255,255,0.46);border:1px solid rgba(118,83,39,0.08);border-radius:18px;padding:24px 22px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;position:relative;overflow:hidden;transition:transform 0.28s ease,box-shadow 0.28s ease,border-color 0.28s ease;box-shadow:0 12px 24px rgba(58,35,12,0.05);}
.seek-card::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,var(--temple-gold),transparent 65%);opacity:0.95;}
.seek-card:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(58,35,12,0.1);border-color:rgba(118,83,39,0.16);}
.seek-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:2px;border-radius:50%;border:1px solid rgba(184,123,20,0.24);background:linear-gradient(135deg,#fff8e9,#f2dfb6);color:var(--temple-gold-dark);font-size:19px;transition:transform 0.25s ease,background 0.25s ease,color 0.25s ease;}
.seek-card:hover .seek-icon{transform:translateY(-2px);background:var(--temple-gold-gradient);color:var(--primary);}
.seek-card .seek-icon{background:var(--temple-gold-gradient);border-color:var(--temple-gold-dark);color:var(--primary-dark);}
.seek-card:hover .seek-icon{background:var(--temple-gold-gradient-hover);border-color:var(--temple-gold-dark);color:var(--primary-dark);}
.seek-card h3{font-size:22px;font-weight:700;color:#7e2114;margin:0;line-height:1.2;}
.seek-card p{font-size:14px;line-height:1.7;color:var(--ink-soft);flex:1;margin:0;}
.seek-card .text-link{display:inline-flex;align-items:center;width:fit-content;font-size:13px;font-weight:600;color:var(--ink);border-bottom:1px solid rgba(123,85,28,0.35);padding-bottom:4px;}





.legend-sec { background: #fff3bd; padding: 0; overflow: hidden; }
.legend-feature { display: grid; grid-template-columns: 1fr 1fr; min-height: 520px; }
.legend-visual { position: relative; min-height:600px; overflow: hidden; background: #6a2713;max-height: 600px; }
.legend-visual img { display: block; width: 100%; height: 100%; min-height: 600px; object-fit: cover; object-position: center; max-height: 600px;}
.legend-image-caption { position: absolute; left: 28px; bottom: 28px; display: inline-flex; align-items: center; gap: 10px; padding: 11px 16px; border: 1px solid rgba(255,255,255,0.35); border-radius: 999px; background: rgba(42,19,10,0.72); color: #fff4dc; font-size: 13px; font-weight: 600; backdrop-filter: blur(8px); }
.legend-image-caption i { color: var(--temple-gold-light); }
.legend-content { align-self: center; max-width: 760px; padding:40px;}
.legend-tag { display: inline-block; margin-bottom: 15px; color: var(--temple-gold-dark); font-size: 12px; font-weight: 700; letter-spacing: 0.13em; text-transform: uppercase; }
.legend-title { position: relative; margin: 0 0 28px; padding-bottom: 20px; color: var(--ink); font-size: clamp(32px, 3.4vw, 52px); font-weight: 700; line-height: 1.12; }
.legend-title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 100px; height: 2px; border-radius: 2px; background: var(--temple-gold-dark); }
.legend-text { margin: 0 0 15px; color: var(--ink-soft); font-size: 15px; line-height: 1.85; }
.legend-highlights { display: flex; flex-wrap: wrap; gap: 10px 18px; margin: 24px 0 28px; }
.legend-highlights span { display: inline-flex; align-items: center; gap: 8px; color: var(--ink); font-size: 12.5px; font-weight: 600; }
.legend-highlights i { color: var(--temple-gold-dark); }
.legend-button { display: inline-flex; align-items: center; gap: 12px; padding: 12px 20px; border-radius: 999px; background: var(--primary); color: #fff !important; font-size: 13px; font-weight: 700; box-shadow: 0 8px 18px rgba(130,66,21,0.16); transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease; }
.legend-button:hover { transform: translateY(-2px); background: var(--primary); box-shadow: 0 12px 22px rgba(130,66,21,0.22); }
.legend-button i { transition: transform 0.25s ease; }
.legend-button:hover i { transform: translateX(3px); }




.offer-sec { position: relative; overflow: hidden; background: linear-gradient(145deg, #2b0503 0%, #1b0302 72%, #310805 100%); padding: 76px 0 68px; }
.offer-sec::before { content: ''; position: absolute; width: 430px; height: 430px; top: -230px; right: -100px; border: 1px solid rgba(223,166,52,0.12); border-radius: 50%; box-shadow: 0 0 0 34px rgba(223,166,52,0.025), 0 0 0 70px rgba(223,166,52,0.02); pointer-events: none; }
.offer-heading { position: relative; z-index: 1; display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 34px; }
.offer-tag { display: block; color: var(--temple-gold-light); font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 10px; }
.offer-title { position: relative; display: inline-block; font-size: clamp(30px, 3.4vw, 44px); font-weight: 700; color: #fff5e4; margin: 0 0 12px; padding-bottom: 14px; }
.offer-title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 86px; height: 2px; background: var(--temple-gold-gradient); }
.offer-sub { max-width: 580px; font-size: 14px; line-height: 1.7; color: #cdb99c; margin: 0; }
.offer-help-link { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; color: var(--temple-gold-light); font-size: 13px; font-weight: 600; text-decoration: none; padding-bottom: 5px; border-bottom: 1px solid rgba(247,214,120,0.45); transition: color 0.2s ease, gap 0.2s ease; }
.offer-help-link:hover { color: #fff5e4; gap: 14px; }
.offer-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.offer-card { min-width: 0; min-height: 300px; background: linear-gradient(155deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025)); border: 1px solid rgba(223,166,52,0.22); border-radius: 14px; padding: 24px 20px 20px; display: flex; flex-direction: column; align-items: flex-start; position: relative; overflow: hidden; transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease; }
.offer-card::before { content: ''; position: absolute; inset: 0 auto auto 20px; width: 42px; height: 2px; background: var(--temple-gold-gradient); }
.offer-card:hover { transform: translateY(-5px); border-color: rgba(247,214,120,0.6); background: linear-gradient(155deg, rgba(255,255,255,0.11), rgba(255,255,255,0.035)); box-shadow: 0 18px 34px rgba(0,0,0,0.2); }
.offer-card-index { position: absolute; top: 20px; right: 20px; color: rgba(247,214,120,0.62); font-family: var(--font-display); font-size: 14px; font-weight: 700; }
.offer-icon { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin-bottom: 22px; border: 1px solid rgba(247,214,120,0.35); border-radius: 50%; background: rgba(223,166,52,0.1); color: var(--temple-gold-light); font-size: 18px; }
.offer-category { color: #d3b88a; font-size: 10px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 8px; }
.offer-card h3 { color: #fff5e4; font-size: 19px; font-weight: 700; line-height: 1.25; margin: 0 0 10px; }
.offer-card p { color: #cdb99c; font-size: 12.5px; line-height: 1.65; margin: 0 0 20px; }
.offer-book-link { display: inline-flex; align-items: center; gap: 10px; margin-top: auto; color: var(--temple-gold-light); font-size: 12.5px; font-weight: 700; text-decoration: none; transition: gap 0.2s ease, color 0.2s ease; }
.offer-book-link:hover { color: #fff5e4; gap: 14px; }
.offer-more { text-align: center; margin-top: 30px; }

@media (max-width: 991px) {
    .offer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 575px) {
    .offer-sec { padding: 56px 0 52px; }
    .offer-heading { align-items: flex-start; flex-direction: column; gap: 16px; margin-bottom: 26px; }
    .offer-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
    .offer-card { min-height: 260px; }
}

/* ===== 7. FESTIVAL BANNER ===== */
.fest-sec { background: #fff; padding: 36px 0; }
.fest-bar { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; background: linear-gradient(135deg, #f7d77a 0%, #e8b13e 55%, #cf931f 100%); border-radius: 10px; padding: 16px 22px; box-shadow: 0 10px 28px rgba(224, 163, 45, 0.3); position: relative; overflow: hidden; }
.fest-bar::before { content: ''; position: absolute; top: 0; left: -40%; width: 30%; height: 100%; background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.45), transparent); transform: skewX(-25deg); animation: festShine 5.5s ease-in-out 1s infinite; }
@keyframes festShine { 0%, 60% { left: -40%; } 100% { left: 130%; } }
.fest-info small { display: block; font-size: 11.5px; font-weight: 600; color: #5a2a05; margin-bottom: 2px; }
.fest-info strong { font-family: var(--font-display); font-size: clamp(18px, 2.4vw, 26px); font-weight: 700; color: var(--ink); }
.fest-btn { background: var(--primary); color: var(--temple-gold-light) !important; font-size: 13.5px; font-weight: 600; padding: 10px 20px; border-radius: 999px; position: relative; transition: background 0.25s ease; }
.fest-btn:hover { background: #4a0d08; }

/* ===== 8. PLAN YOUR VISIT ===== */
.visit-sec { background: linear-gradient(180deg, #fff 0%, #fbf6ec 100%); padding:60px 0px; }
.visit-heading { max-width: 700px; margin-bottom: 30px; }
.visit-tag { display: block; color: var(--temple-gold-dark); font-size: 11.5px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 10px; }
.visit-title { position: relative; font-size: clamp(30px, 3.4vw, 44px); font-weight: 700; color: var(--ink); margin: 0 0 12px; padding-bottom: 15px; }
.visit-title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 90px; height: 2px; background: var(--temple-gold-dark); }
.visit-intro { color: var(--ink-soft); font-size: 15px; line-height: 1.7; margin: 0; }
.visit-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; align-items: stretch; }
.visit-content { min-width: 0; background: #fff; border: 1px solid rgba(118,83,39,0.12); border-radius: 18px; padding: 26px; box-shadow: 0 14px 34px rgba(43,5,3,0.06); }
.visit-contact-details { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-bottom: 20px; }
.visit-contact-item { display: flex; align-items: center; gap:5px; min-width: 0; color: inherit; text-decoration: none; }
.visit-contact-icon { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; flex: 0 0 34px; border-radius: 50%; background: #fbf1d8; color: var(--temple-gold-dark); }
.visit-contact-item small { display: block; color: var(--ink-soft); font-size: 10px; margin-bottom: 3px; }
.visit-contact-item strong { display: block; color: var(--ink); font-size: 10.5px; font-weight: 600; line-height: 1.4; overflow-wrap: break-word; font-size: 13px; }
.visit-form { border-top: 1px solid var(--line); padding-top: 20px; }
.visit-form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }
.visit-field { min-width: 0; margin-bottom: 14px; }
.visit-field label { display: block; color: var(--ink); font-size: 12px; font-weight: 600; margin-bottom: 6px; }
.visit-field input, .visit-field textarea { display: block; width: 100%; border: 1px solid #e8dfd1; border-radius: 8px; background: #fffdfa; padding: 11px 12px; color: var(--ink); font: inherit; font-size: 13px; outline: none; transition: border-color 0.2s ease, box-shadow 0.2s ease; }
.visit-field input:focus, .visit-field textarea:focus { border-color: var(--temple-gold-dark); box-shadow: 0 0 0 3px rgba(184,123,20,0.12); }
.visit-field textarea { min-height: 90px; resize: vertical; }
.visit-submit { display: inline-flex; align-items: center; gap: 12px; border: 0; border-radius: 999px; padding: 12px 20px; background: var(--temple-gold-gradient); color: #2b1605; font-size: 13px; font-weight: 700; cursor: pointer; transition: transform 0.2s ease, box-shadow 0.2s ease; text-decoration: none; }
.visit-submit:hover { transform: translateY(-2px); box-shadow: var(--gold-glow); }
.visit-form-note { display: block; margin: 10px 0 0; color: var(--ink-soft); font-size: 10.5px; }
.visit-map-panel { min-width: 0; min-height: 100%; display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid rgba(118,83,39,0.12); border-radius: 18px; box-shadow: 0 14px 34px rgba(43,5,3,0.08); }
.visit-map-heading { display: flex; align-items: center; justify-content: space-between;padding:20px;}
.visit-map-heading .visit-tag { margin-bottom: 4px; }
.visit-map-heading h3 { margin: 0; color: var(--ink); font-size: 20px; font-weight: 700; }
.visit-map-heading > a { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: #fbf1d8; color: var(--temple-gold-dark); }
.visit-map { width: 100%; min-height: 340px; flex: 1; background: #f1eadc; }
.visit-map iframe { display: block; width: 100%; height: 100%; border: 0; }
.visit-map-footer { display: flex; align-items: center; gap: 9px; padding: 14px 20px; color: var(--ink-soft); font-size: 12px; }
.visit-map-footer i { color: var(--temple-gold-dark); }





/* ===== 9. BLOG ===== */
.blog-sec { background: #fff; padding: 20px 0 80px; }
.blog-title { font-size: clamp(28px, 3.4vw, 38px); font-weight: 600; color: var(--ink); margin-bottom: 28px; }
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.blog-img { aspect-ratio: 16 / 10; margin-bottom: 14px; }
.blog-tag { display: block; font-size: 11.5px; font-weight: 600; color: var(--temple-gold-dark); margin-bottom: 4px; }
.blog-card h3 { font-size: 21px; font-weight: 700; line-height: 1.2; color: var(--ink); margin-bottom: 8px; transition: color 0.25s ease; }
.blog-card:hover h3 { color: #8a1d12; }

/* ===== 10. FOOTER ===== */
.site-footer { position: relative; overflow: hidden; background: linear-gradient(145deg, #2b0503 0%, #190302 75%); border-top: 1px solid rgba(223,166,52,0.3); padding: 58px 0 0; color: #cdb99c; }
.site-footer::before { content: ''; position: absolute; width: 280px; height: 280px; top: -190px; left: 10%; border: 1px solid rgba(223,166,52,0.12); border-radius: 50%; box-shadow: 0 0 0 28px rgba(223,166,52,0.025), 0 0 0 58px rgba(223,166,52,0.02); pointer-events: none; }
.footer-grid { position: relative; display: grid; grid-template-columns: minmax(240px, 1.5fr) repeat(2, minmax(140px, 0.8fr)) minmax(210px, 1.2fr); gap: 38px; padding-bottom: 42px; }
.footer-brand-link { display: inline-flex; align-items: center; gap: 13px; margin-bottom: 18px; text-decoration: none; }
.footer-brand-link img { display: block; width: 60px; height: 60px; object-fit: cover; border: 2px solid rgba(247,214,120,0.75); border-radius: 50%; background: var(--primary); }
.footer-brand-link span { display: flex; flex-direction: column; gap: 3px; }
.footer-brand-link strong { color: var(--temple-gold-light); font-family: var(--font-display); font-size: 19px; line-height: 1.1; letter-spacing: 0.05em; }
.footer-brand-link small { color: #d3b88a; font-size: 10px; font-weight: 700; letter-spacing: 0.2em; }
.footer-brand p { max-width: 340px; margin: 0 0 17px; font-size: 13px; line-height: 1.75; color: #cdb99c; }
.footer-directions { display: inline-flex; align-items: center; gap: 8px; color: var(--temple-gold-light); font-size: 12px; font-weight: 600; text-decoration: none; }
.footer-directions:hover { color: #fff5e4; }
.footer-col h4 { position: relative; color: var(--temple-gold-light); font-size: 13px; font-weight: 700; letter-spacing: 0.06em; margin: 7px 0 20px; padding-bottom: 11px; }
.footer-col h4::after { content: ''; position: absolute; left: 0; bottom: 0; width: 32px; height: 1px; background: var(--temple-gold); }
.footer-col ul { list-style: none; margin: 0; padding: 0; }
.footer-col li { margin: 0 0 11px; color: #cdb99c; font-size: 12.5px; line-height: 1.55; }
.footer-col a { color: #cdb99c; font-size: 12.5px; text-decoration: none; transition: color 0.2s ease; }
.footer-col a:hover { color: #fff; }
.footer-contact li { display: flex; align-items: flex-start; gap: 10px; }
.footer-contact li > i { flex: 0 0 14px; margin-top: 3px; color: var(--temple-gold); text-align: center; }
.footer-contact-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 4px; color: var(--temple-gold-light) !important; font-weight: 700; }
.footer-contact-link i { transition: transform 0.2s ease; }
.footer-contact-link:hover i { transform: translateX(3px); }
.footer-bottom { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid rgba(223,166,52,0.18); padding: 17px 0; font-size: 11.5px; color: #a8957b; }
.footer-bottom a { display: inline-flex; align-items: center; gap: 8px; color: #cdb99c; text-decoration: none; transition: color 0.2s ease; }
.footer-bottom a:hover { color: var(--temple-gold-light); }


.home-sec h1,.home-sec h2,.home-sec h3,.home-sec h4{font-family:var(--font-display);}
.hero-title{font-size:clamp(42px,5.2vw,68px);font-weight:700;line-height:1.08;}
.about-title,.history-title,.seek-title,.legend-title,.offer-title,.visit-title,.blog-title{font-size:clamp(32px,3.8vw,48px);font-weight:700;line-height:1.14;letter-spacing:0.01em;font-family:var(--font-display);}
.seek-card h3,.offer-card h3,.legend-card h3,.blog-card h3,.visit-map-heading h3{font-size:clamp(18px,1.8vw,22px);font-weight:700;line-height:1.25;}
.hero-text,.about-text,.history-copy p,.seek-sub,.seek-card p,.legend-text,.offer-sub,.offer-card p,.visit-intro,.blog-card p{font-family:var(--font-sans);font-size:15px;font-weight:400;line-height:1.75;}
.about-tag,.history-tag,.legend-tag,.offer-tag,.visit-tag,.blog-tag{font-size:11px;font-weight:700;letter-spacing:0.12em;}

/* POOJAS PAGE HERO */
.pooja-page { display: block; width: 100%; }
.pooja-page section { float: none; }
.pooja-hero { position: relative; display: flex; align-items: center; min-height: 520px; overflow: hidden; background: #210402; isolation: isolate; }
.pooja-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(28,4,2,0.97) 0%, rgba(35,5,3,0.9) 47%, rgba(35,5,3,0.35) 100%), linear-gradient(0deg, rgba(22,3,2,0.45), transparent 58%); }
.pooja-hero::after { content: ""; position: absolute; inset: 18px; z-index: -1; border: 1px solid rgba(247,214,120,0.2); pointer-events: none; }
.pooja-hero-image { position: absolute; inset: 0 0 0 32%; z-index: -2; overflow: hidden; }
.pooja-hero-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; opacity: 0.8; }
.pooja-hero-inner { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 72px; padding-bottom: 66px; }
.pooja-hero-copy { max-width: 720px; }
.pooja-eyebrow,.pooja-kicker { display: inline-flex; align-items: center; gap: 10px; color: var(--temple-gold-light); font-size: 11px; font-weight: 700; letter-spacing: 0.15em; line-height: 1.5; text-transform: uppercase; }
.pooja-eyebrow::before,.pooja-kicker::before { content: ""; display: inline-block; width: 27px; height: 1px; background: var(--temple-gold); }
.pooja-hero h1 { margin: 20px 0 16px; color: #fff5e4; font-family: var(--font-display); font-size: clamp(42px,5.2vw,68px); font-weight: 700; letter-spacing: -0.035em; line-height: 1.08; }
.pooja-hero h1 span { color: var(--temple-gold-light); }
.pooja-hero-copy > p { max-width: 590px; color: #e6d7c3; font-size: 15px; line-height: 1.8; }
.pooja-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 26px; }
.pooja-button { display: inline-flex; align-items: center; justify-content: center; gap: 11px; min-height: 46px; padding: 0 21px; border: 1px solid rgba(255,235,179,0.7); border-radius: 999px; background: var(--temple-gold-gradient); color: #2b1605; font-size: 12px; font-weight: 700; transition: transform 0.25s ease, box-shadow 0.25s ease; }
.pooja-button:hover { color: #2b1605; transform: translateY(-2px); box-shadow: var(--gold-glow); }
.pooja-hero-contact { display: inline-flex; align-items: center; gap: 9px; color: #f5e7d2; font-size: 12px; font-weight: 600; transition: color 0.2s ease; }
.pooja-hero-contact:hover { color: var(--temple-gold-light); }
.pooja-breadcrumb { display: flex; align-items: center; gap: 10px; margin-top: 36px; color: #c9b89d; font-size: 10px; letter-spacing: 0.04em; }
.pooja-breadcrumb a { color: #e6d7c3; }
.pooja-breadcrumb a:hover { color: var(--temple-gold-light); }
.pooja-breadcrumb i { color: var(--temple-gold); font-size: 8px; }
.pooja-hero-seal { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 140px; height: 140px; margin: 90px 7% 0 0; border: 1px solid rgba(247,214,120,0.5); border-radius: 50%; background: rgba(31,4,2,0.45); color: var(--temple-gold-light); box-shadow: 0 0 0 8px rgba(247,214,120,0.06), inset 0 0 25px rgba(247,214,120,0.07); }
.pooja-hero-seal::before { content: ""; position: absolute; width: 160px; height: 160px; border: 1px solid rgba(247,214,120,0.2); border-radius: 50%; }
.pooja-hero-seal i { margin-bottom: 9px; font-size: 28px; }
.pooja-hero-seal span { max-width: 90px; font-size: 8px; font-weight: 700; letter-spacing: 0.12em; line-height: 1.6; text-align: center; text-transform: uppercase; }

/* POOJAS INTRO */
.pooja-intro { position: relative; padding: 76px 0 82px; background: linear-gradient(180deg,#fffdfa 0%,#fbf6ec 100%); }
.pooja-intro-grid { display: grid; grid-template-columns: minmax(0,0.95fr) minmax(0,1fr); align-items: center; gap: clamp(38px,6vw,78px); }
.pooja-intro-image { position: relative; padding: 0 18px 20px 0; }
.pooja-intro-image::before { content: ""; position: absolute; inset: 18px 0 0 18px; border: 1px solid rgba(184,123,20,0.35); border-radius: 14px; }
.pooja-intro-image img { position: relative; display: block; width: 100%; height: 370px; border-radius: 13px; object-fit: cover; object-position: center 40%; box-shadow: 0 18px 38px rgba(43,5,3,0.13); }
.pooja-intro-image > span { position: absolute; right: 0; bottom: 0; display: inline-flex; align-items: center; gap: 9px; padding: 13px 17px; border: 1px solid rgba(232,191,103,0.2); border-radius: 10px; background: #2b100b; color: #f5e8cf; font-size: 10px; font-weight: 600; }
.pooja-intro-image > span i { color: var(--temple-gold-light); }
.pooja-intro-copy { max-width: 620px; }
.pooja-intro-copy .pooja-kicker,.pooja-section-heading .pooja-kicker,.pooja-more-copy .pooja-kicker { color: var(--temple-gold-dark); }
.pooja-intro-copy h2,.pooja-section-heading h2,.pooja-more-copy h2 { margin: 14px 0 16px; color: var(--ink); font-family: var(--font-display); font-size: clamp(31px,3.7vw,44px); font-weight: 700; letter-spacing: -0.03em; line-height: 1.15; }
.pooja-intro-copy > p,.pooja-more-copy > p { margin: 0 0 13px; color: var(--ink-soft); font-size: 13px; line-height: 1.8; }
.pooja-text-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 8px; padding-bottom: 4px; border-bottom: 1px solid rgba(123,85,28,0.35); color: var(--ink); font-size: 12px; font-weight: 700; transition: gap 0.2s ease, color 0.2s ease; }
.pooja-text-link:hover { gap: 13px; color: var(--temple-gold-dark); }

/* MAIN OFFERINGS */
.pooja-offerings { position: relative; overflow: hidden; padding: 74px 0 72px; background: linear-gradient(145deg,#2b0503 0%,#1b0302 72%,#310805 100%); }
.pooja-offerings::before { content: ""; position: absolute; top: -220px; right: -80px; width: 390px; height: 390px; border: 1px solid rgba(223,166,52,0.12); border-radius: 50%; box-shadow: 0 0 0 30px rgba(223,166,52,0.025),0 0 0 62px rgba(223,166,52,0.02); pointer-events: none; }
.pooja-offerings::after { content: ""; position: absolute; bottom: -180px; left: -90px; width: 310px; height: 310px; border: 1px solid rgba(223,166,52,0.1); border-radius: 50%; box-shadow: 0 0 0 27px rgba(223,166,52,0.02); pointer-events: none; }
.pooja-section-heading { position: relative; z-index: 1; max-width: 670px; margin: 0 auto 32px; text-align: center; }
.pooja-section-heading .pooja-kicker { justify-content: center; }
.pooja-section-heading h2 { margin: 11px 0 8px; color: #fff5e4; }
.pooja-section-heading > p { margin: 0; color: #cdb99c; font-size: 12px; line-height: 1.7; }
.pooja-card-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; }
.pooja-offering-card { position: relative; display: flex; min-width: 0; min-height: 276px; flex-direction: column; align-items: flex-start; overflow: hidden; padding: 22px 18px 19px; border: 1px solid rgba(223,166,52,0.22); border-radius: 13px; background: linear-gradient(155deg,rgba(255,255,255,0.075),rgba(255,255,255,0.025)); transition: transform 0.25s ease,border-color 0.25s ease,box-shadow 0.25s ease; }
.pooja-offering-card::before { content: ""; position: absolute; top: 0; left: 18px; width: 38px; height: 2px; background: var(--temple-gold-gradient); }
.pooja-offering-card::after { content: ""; position: absolute; right: -26px; bottom: -32px; width: 90px; height: 90px; border: 1px solid rgba(247,214,120,0.09); border-radius: 50%; pointer-events: none; }
.pooja-offering-card:hover { transform: translateY(-4px); border-color: rgba(247,214,120,0.52); box-shadow: 0 16px 30px rgba(0,0,0,0.2); }
.pooja-card-index { position: absolute; top: 18px; right: 18px; color: rgba(247,214,120,0.6); font-family: var(--font-display); font-size: 11px; font-weight: 700; }
.pooja-card-icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 18px; border: 1px solid rgba(247,214,120,0.32); border-radius: 50%; background: rgba(223,166,52,0.1); color: var(--temple-gold-light); font-size: 16px; }
.pooja-card-type { margin-bottom: 7px; color: #d3b88a; font-size: 9px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; }
.pooja-offering-card h3 { margin: 0 0 9px; color: #fff5e4; font-family: var(--font-display); font-size: 17px; font-weight: 700; line-height: 1.3; }
.pooja-offering-card p { margin: 0 0 16px; color: #cdb99c; font-size: 11px; line-height: 1.7; }
.pooja-card-link { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; color: var(--temple-gold-light); font-size: 10px; font-weight: 700; transition: gap 0.2s ease,color 0.2s ease; }
.pooja-card-link:hover { gap: 12px; color: #fff5e4; }
.pooja-offerings-note { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 8px; margin: 22px 0 0; color: #cdb99c; font-size: 10px; line-height: 1.6; text-align: center; }
.pooja-offerings-note i { color: var(--temple-gold-light); }

/* OTHER OFFERINGS */
.pooja-more { padding: 76px 0 82px; background: #f3ead9; }
.pooja-more-grid { display: grid; grid-template-columns: minmax(0,0.8fr) minmax(0,1.2fr); align-items: center; gap: clamp(38px,6vw,78px); }
.pooja-more-copy { max-width: 460px; }
.pooja-more-copy h2 { margin-bottom: 12px; }
.pooja-more-list { display: grid; gap: 9px; }
.pooja-more-item { display: grid; grid-template-columns: 42px minmax(0,1fr) 18px; align-items: center; gap: 13px; padding: 13px 15px; border: 1px solid rgba(118,83,39,0.12); border-radius: 11px; background: rgba(255,253,248,0.83); transition: transform 0.22s ease,border-color 0.22s ease,box-shadow 0.22s ease; }
.pooja-more-item:hover { transform: translateX(3px); border-color: rgba(184,123,20,0.3); box-shadow: 0 8px 18px rgba(43,5,3,0.06); }
.pooja-more-item > span { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: #f3e5c4; color: var(--temple-gold-dark); font-size: 14px; }
.pooja-more-item h3 { margin: 0 0 3px; color: var(--ink); font-size: 13px; font-weight: 700; }
.pooja-more-item p { margin: 0; color: var(--ink-soft); font-size: 10px; line-height: 1.5; }
.pooja-more-arrow { color: var(--temple-gold-dark); font-size: 11px; }

/* POOJA CONTACT CTA */
.pooja-visit { padding: 8px 0 72px; background: #f3ead9; }
.pooja-visit-panel { position: relative; display: grid; grid-template-columns: 62px minmax(0,1fr) auto; align-items: center; gap: 23px; overflow: hidden; padding: 30px 34px; border: 1px solid rgba(223,166,52,0.24); border-radius: 14px; background: linear-gradient(115deg,#2b0503,#421108 70%,#2b0503); box-shadow: 0 17px 38px rgba(43,5,3,0.12); }
.pooja-visit-panel::before { content: ""; position: absolute; top: -100px; right: 18%; width: 220px; height: 220px; border: 1px solid rgba(247,214,120,0.14); border-radius: 50%; box-shadow: 0 0 0 23px rgba(247,214,120,0.025); pointer-events: none; }
.pooja-visit-icon { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 58px; height: 58px; border: 1px solid rgba(247,214,120,0.36); border-radius: 50%; background: rgba(223,166,52,0.1); color: var(--temple-gold-light); font-size: 20px; }
.pooja-visit-copy { position: relative; max-width: 600px; }
.pooja-visit-copy h2 { margin: 8px 0 6px; color: #fff4e1; font-family: var(--font-display); font-size: clamp(23px,2.7vw,32px); font-weight: 700; line-height: 1.2; }
.pooja-visit-copy > p { margin: 0; color: #dfcdb3; font-size: 11px; line-height: 1.7; }
.pooja-visit-actions { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.pooja-visit-phone { display: inline-flex; align-items: center; gap: 8px; color: #f3e5ce; font-size: 11px; font-weight: 600; }
.pooja-visit-phone:hover { color: var(--temple-gold-light); }
@media (max-width: 991px) { .pooja-hero-image { left: 20%; } .pooja-hero-seal { width: 115px; height: 115px; margin-right: 4%; } .pooja-hero-seal::before { width: 133px; height: 133px; } .pooja-intro-grid,.pooja-more-grid { gap: 35px; } .pooja-intro-image img { height: 340px; } .pooja-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .pooja-offering-card { min-height: 245px; } .pooja-visit-panel { grid-template-columns: 55px minmax(0,1fr); padding: 27px; } .pooja-visit-icon { width: 52px; height: 52px; } .pooja-visit-actions { grid-column: 2; flex-direction: row; align-items: center; flex-wrap: wrap; } }
@media (max-width: 767px) { .pooja-hero { min-height: 485px; } .pooja-hero::before { background: linear-gradient(90deg,rgba(28,4,2,0.97),rgba(35,5,3,0.78)),linear-gradient(0deg,rgba(22,3,2,0.45),transparent 55%); } .pooja-hero-image { left: 0; opacity: 0.75; } .pooja-hero-inner { padding-top: 60px; padding-bottom: 50px; } .pooja-hero-seal { display: none; } .pooja-intro-grid,.pooja-more-grid { grid-template-columns: minmax(0,1fr); gap: 35px; } .pooja-intro-image { width: min(100%,560px); margin: 0 auto; } .pooja-intro-copy,.pooja-more-copy { max-width: 660px; } .pooja-intro { padding: 60px 0 64px; } .pooja-more { padding: 60px 0 68px; } .pooja-visit { padding-bottom: 58px; } .pooja-visit-panel { grid-template-columns: 50px minmax(0,1fr); gap: 17px; padding: 24px; } .pooja-visit-icon { width: 48px; height: 48px; font-size: 17px; } .pooja-visit-actions { grid-column: 2; } }
@media (max-width: 575px) { .pooja-hero { min-height: 465px; } .pooja-hero::after { inset: 9px; } .pooja-hero-inner { padding-top: 48px; padding-bottom: 40px; } .pooja-eyebrow,.pooja-kicker { font-size: 9px; letter-spacing: 0.11em; } .pooja-hero h1 { margin: 15px 0 13px; font-size: clamp(37px,10.5vw,47px); } .pooja-hero-copy > p { font-size: 13px; } .pooja-hero-actions { gap: 15px; margin-top: 20px; } .pooja-button { min-height: 42px; padding: 0 16px; font-size: 10px; } .pooja-breadcrumb { margin-top: 28px; } .pooja-intro { padding: 48px 0 52px; } .pooja-intro-image { padding-right: 12px; padding-bottom: 16px; } .pooja-intro-image::before { inset: 14px 0 0 14px; } .pooja-intro-image img { height: 310px; } .pooja-intro-image > span { padding: 11px 12px; font-size: 9px; } .pooja-intro-copy h2,.pooja-section-heading h2,.pooja-more-copy h2 { font-size: 31px; } .pooja-intro-copy > p,.pooja-more-copy > p { font-size: 12px; } .pooja-offerings { padding: 52px 0 50px; } .pooja-section-heading { margin-bottom: 24px; } .pooja-section-heading > p { font-size: 11px; } .pooja-card-grid { grid-template-columns: minmax(0,1fr); gap: 10px; } .pooja-offering-card { min-height: 0; padding: 20px 18px 18px; } .pooja-card-icon { margin-bottom: 13px; } .pooja-offering-card p { font-size: 11px; } .pooja-card-link { margin-top: 2px; } .pooja-offerings-note { align-items: flex-start; justify-content: flex-start; text-align: left; } .pooja-more { padding: 50px 0 56px; } .pooja-more-grid { gap: 25px; } .pooja-more-item { grid-template-columns: 38px minmax(0,1fr) 14px; gap: 10px; padding: 11px; } .pooja-more-item > span { width: 36px; height: 36px; } .pooja-more-item h3 { font-size: 12px; } .pooja-more-item p { font-size: 9px; } .pooja-visit { padding: 0 0 48px; } .pooja-visit-panel { grid-template-columns: minmax(0,1fr); gap: 14px; padding: 21px; } .pooja-visit-actions { grid-column: 1; flex-direction: column; align-items: flex-start; } .pooja-visit-copy h2 { font-size: 25px; } }





.about-hero { position: relative; display: flex; align-items: center; overflow: hidden; background: #210402; isolation: isolate; }
.about-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(28, 4, 2, 0.97) 0%, rgba(35, 5, 3, 0.91) 42%, rgba(35, 5, 3, 0.42) 100%), linear-gradient(0deg, rgba(22, 3, 2, 0.45), transparent 55%); }
.about-hero-image { position: absolute; inset: 0 0 0 35%; z-index: -2; overflow: hidden; }
.about-hero-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; opacity: 0.82; }
.about-hero-inner { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 85px; padding-bottom: 85px; }
.about-hero-copy { max-width: 700px; }
.about-eyebrow,.about-kicker { display: inline-flex; align-items: center; gap: 10px; color: var(--temple-gold-light); font-size: 11px; font-weight: 700; letter-spacing: 0.16em; line-height: 1.5; text-transform: uppercase; }
.about-eyebrow::before,.about-kicker::before { content: ""; display: inline-block; width: 28px; height: 1px; background: var(--temple-gold); }
.about-hero h1 { max-width: 680px; margin: 20px 0 18px; color: #fff6e6; font-family: var(--font-display); font-size: clamp(42px, 5.3vw, 72px); font-weight: 700; letter-spacing: -0.035em; line-height: 1.08; }
.about-hero-copy > p { max-width: 590px; color: #e6d7c3; font-size: 16px; line-height: 1.8; }
.about-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 28px; }
.about-button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 48px; padding: 0 22px; border: 1px solid rgba(255, 235, 179, 0.7); border-radius: 999px; background: var(--temple-gold-gradient); color: #2b1605; font-size: 13px; font-weight: 700; transition: transform 0.25s ease, box-shadow 0.25s ease; }
.about-button:hover { color: #2b1605; transform: translateY(-2px); box-shadow: var(--gold-glow); }
.about-hero-link { display: inline-flex; align-items: center; gap: 9px; color: #f5e7d2; font-size: 13px; font-weight: 600; transition: color 0.2s ease, gap 0.2s ease; }
.about-hero-link:hover { gap: 13px; color: var(--temple-gold-light); }
.about-breadcrumb { display: flex; align-items: center; gap: 11px; margin-top: 44px; color: #c9b89d; font-size: 11px; letter-spacing: 0.04em; }
.about-breadcrumb a { color: #e6d7c3; }
.about-breadcrumb a:hover { color: var(--temple-gold-light); }
.about-breadcrumb i { color: var(--temple-gold); font-size: 8px; }
.about-hero-mark { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 400px; height: 400px; margin: 0px 8% 0 0; border: 1px solid rgba(247, 214, 120, 0.52); border-radius: 50%; color: var(--temple-gold-light); background: rgba(31, 4, 2, 0.4); box-shadow: 0 0 0 9px rgba(247, 214, 120, 0.07), inset 0 0 30px rgba(247, 214, 120, 0.08); }
.about-hero-mark::before { content: ""; position: absolute; width:320px; height: 320px; border: 1px solid rgba(247, 214, 120, 0.23); border-radius: 50%; }
.about-hero-mark span { font-family: var(--font-malayalam); font-size:30px; }
.about-hero-mark i { margin: 7px 0; font-size: 60px; }
.about-hero-mark small { font-size: 18px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; }

/* ABOUT STORY */
.about-story { position: relative; padding:60px 0px; background: linear-gradient(180deg, #fffdfa 0%, #fbf6ec 100%); }
.about-story::before { content: ""; position: absolute; top: 0; right: 0; width: 35%; height: 100%; background: linear-gradient(90deg, transparent, rgba(223, 166, 52, 0.045)); pointer-events: none; }
.about-story-grid { position: relative; display: grid; grid-template-columns:0.8fr 1.2fr; align-items: center; gap:60px; }
.about-story-visual { position: relative;padding: 0 24px 24px 0; }
.about-story-visual::before { content: ""; position: absolute; top: 24px; right: 0; bottom: 0; left: 24px; border: 5px solid rgba(184, 123, 20, 0.38); border-radius: 18px; }
.about-story-visual > img { position: relative; display: block; width: 100%; height: 620px; object-fit: cover; object-position: center; border-radius: 16px; box-shadow: 0 24px 50px rgba(43, 5, 3, 0.16); }
.about-image-note { position: absolute; right: 0; bottom: 0; z-index: 1; display: flex; align-items: center; gap: 12px; max-width: 85%; padding: 17px 20px; border: 1px solid rgba(232, 191, 103, 0.22); border-radius: 12px; background: rgba(35, 16, 12, 0.94); color: #f5e8cf; box-shadow: 0 14px 28px rgba(17, 6, 3, 0.2); font-size: 12px; line-height: 1.5; }
.about-image-note i { color: var(--temple-gold-light); font-size: 17px; }
.about-visual-seal { position: absolute; top: 20px; left: -22px; display: inline-flex; align-items: center; justify-content: center; width: 70px; height: 70px; border: 1px solid rgba(184, 123, 20, 0.35); border-radius: 50%; background: #fffaf0; color: var(--temple-gold-dark); box-shadow: 0 8px 20px rgba(43, 5, 3, 0.12); font-size: 30px; }

.about-story-copy .about-kicker,.about-section-heading .about-kicker,.about-guide-copy .about-kicker,.about-visit-copy .about-kicker { color: var(--temple-gold-dark); }
.about-story-copy h2,.about-section-heading h2,.about-guide-copy h2,.about-visit-copy h2 { margin: 16px 0 20px; color: var(--ink); font-family: var(--font-display); font-size: clamp(34px, 4vw, 50px); font-weight: 700; letter-spacing: -0.035em; line-height: 1.13; }
.about-story-copy > p,.about-guide-copy > p { margin: 0 0 16px; color: var(--ink-soft); font-size: 15px; line-height: 1.85; }
.about-story-signature { display: flex; align-items: center; gap: 14px; margin-top: 26px; padding-top: 22px; border-top: 1px solid rgba(118, 83, 39, 0.15); }
.about-signature-icon { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; flex: 0 0 46px; border-radius: 50%; background: #f3e5c4; color: var(--temple-gold-dark); font-size: 17px; }
.about-story-signature strong,.about-story-signature small { display: block; }
.about-story-signature strong { color: var(--ink); font-size: 13px; font-weight: 700; }
.about-story-signature small { margin-top: 4px; color: var(--ink-soft); font-size: 11px; }

/* SACRED TRADITIONS */
.about-traditions { position: relative; overflow: hidden; padding:60px 0px; background: #f2e7d0; }
.about-traditions::before { content: ""; position: absolute; top: -190px; right: -80px; width: 430px; height: 430px; border: 1px solid rgba(184, 123, 20, 0.12); border-radius: 50%; box-shadow: 0 0 0 32px rgba(184, 123, 20, 0.035), 0 0 0 66px rgba(184, 123, 20, 0.025); pointer-events: none; }
.about-section-heading { position: relative; max-width: 720px; margin: 0 auto 42px; text-align: center; }
.about-section-heading .about-kicker { justify-content: center; }
.about-section-heading h2 { margin-bottom: 12px; }
.about-section-heading > p { max-width: 580px; margin: 0 auto; color: var(--ink-soft); font-size: 14px; line-height: 1.75; }
.about-tradition-grid { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.about-tradition-card { position: relative; min-height: 260px; overflow: hidden; padding: 30px 28px 27px; border: 1px solid rgba(118, 83, 39, 0.13); border-radius: 14px; background: rgba(255, 253, 248, 0.77); box-shadow: 0 14px 30px rgba(43, 5, 3, 0.055); transition: transform 0.25s ease, box-shadow 0.25s ease; }
.about-tradition-card::before { content: ""; position: absolute; top: 0; left: 28px; width: 42px; height: 2px; background: var(--temple-gold-gradient); }
.about-tradition-card::after { content: ""; position: absolute; right: -26px; bottom: -34px; width: 100px; height: 100px; border: 1px solid rgba(184, 123, 20, 0.12); border-radius: 50%; box-shadow: 0 0 0 14px rgba(184, 123, 20, 0.025); }
.about-tradition-card:hover { transform: translateY(-5px); box-shadow: 0 20px 38px rgba(43, 5, 3, 0.1); }
.about-card-icon { display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; margin-bottom: 20px; border: 1px solid rgba(184, 123, 20, 0.28); border-radius: 50%; background: linear-gradient(135deg, #fff8e9, #f1dfb8); color: var(--temple-gold-dark); font-size: 19px; }
.about-card-number { position: absolute; top: 34px; right: 28px; color: rgba(184, 123, 20, 0.52); font-family: var(--font-display); font-size: 13px; font-weight: 700; letter-spacing: 0.08em; }
.about-tradition-card h3 { margin: 0 0 10px; color: #54200e; font-family: var(--font-display); font-size: 21px; font-weight: 700; }
.about-tradition-card p { max-width: 330px; margin: 0; color: var(--ink-soft); font-size: 13px; line-height: 1.75; }

/* SPIRITUAL GUIDE */
.about-guide { padding:60px 0; background: #fffdfa; }
.about-guide-grid { display: grid; grid-template-columns:1.1fr 0.9fr; align-items: center; gap:60px; }
.about-guide-copy { max-width: 600px; }
.about-guide-copy h2 { max-width: 560px; }
.about-text-link { display: inline-flex; align-items: center; gap: 10px; margin-top: 12px; padding-bottom: 5px; border-bottom: 1px solid rgba(123, 85, 28, 0.35); color: var(--ink); font-size: 13px; font-weight: 700; transition: gap 0.2s ease, color 0.2s ease; }
.about-text-link:hover { gap: 14px; color: var(--temple-gold-dark); }
.about-guide-portrait { position: relative; margin: 0; padding: 12px 12px 35px; border: 1px solid rgba(118, 83, 39, 0.18); border-radius: 18px; background: #f7efdf; }
.about-guide-portrait::before { content: ""; position: absolute; top: 0; right: 0; width: 100px; height: 100px; border-top: 2px solid var(--temple-gold); border-right: 2px solid var(--temple-gold); border-radius: 0 16px 0 0; pointer-events: none; }
.about-guide-portrait > img { display: block; width: 100%; height: 440px; border-radius: 12px; object-fit: cover; object-position: center 32%; }
.about-guide-portrait figcaption { position: absolute; right: 28px; bottom: 0; left: 28px; display: flex; align-items: flex-start; gap: 13px; padding: 17px 20px; border: 1px solid rgba(232, 191, 103, 0.2); border-radius: 12px; background: #2b100b; color: #f6e8d0; box-shadow: 0 14px 30px rgba(43, 5, 3, 0.18); font-family: var(--font-display); font-size: 14px; line-height: 1.55; }
.about-guide-portrait figcaption i { flex: 0 0 auto; margin-top: 3px; color: var(--temple-gold-light); }

/* VISIT CTA */
.about-visit { padding: 20px 0 90px; background: #fffdfa; }
.about-visit-panel { position: relative; display: grid; grid-template-columns: 76px minmax(0, 1fr) auto; align-items: center; gap: 28px; overflow: hidden; padding: 38px 44px; border: 1px solid rgba(223, 166, 52, 0.24); border-radius: 16px; background: linear-gradient(115deg, #2b0503, #421108 70%, #2b0503); box-shadow: 0 20px 45px rgba(43, 5, 3, 0.13); }
.about-visit-panel::before { content: ""; position: absolute; top: -100px; right: 20%; width: 230px; height: 230px; border: 1px solid rgba(247, 214, 120, 0.15); border-radius: 50%; box-shadow: 0 0 0 24px rgba(247, 214, 120, 0.025), 0 0 0 50px rgba(247, 214, 120, 0.018); }
.about-visit-symbol { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 68px; height: 68px; border: 1px solid rgba(247, 214, 120, 0.38); border-radius: 50%; background: rgba(223, 166, 52, 0.12); color: var(--temple-gold-light); font-size: 24px; }
.about-visit-copy { position: relative; max-width: 610px; }
.about-visit-copy .about-kicker { color: var(--temple-gold-light); }
.about-visit-copy h2 { margin: 10px 0 8px; color: #fff4e1; font-size: clamp(25px, 3vw, 35px); }
.about-visit-copy > p { margin: 0; color: #dfcdb3; font-size: 13px; line-height: 1.7; }
.about-visit-address { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; color: var(--temple-gold-light); font-size: 12px; font-weight: 600; }
.about-visit-actions { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.about-visit-contact { display: inline-flex; align-items: center; gap: 9px; color: #f3e5ce; font-size: 12px; font-weight: 600; }
.about-visit-contact:hover { color: var(--temple-gold-light); }

/* POOJA CATALOGUE PAGE */
.pooja-page-title { position: relative; overflow: hidden; padding: 18px 0 30px; border-bottom: 1px solid rgba(184,123,20,0.22); background: linear-gradient(135deg,#f7edda 0%,#fffdfa 50%,#efe1c0 100%); text-align: center; }
.pooja-page-title::before { content: ""; position: absolute; top: -105px; left: calc(50% - 170px); width: 340px; height: 340px; border: 1px solid rgba(184,123,20,0.13); border-radius: 50%; box-shadow: 0 0 0 20px rgba(184,123,20,0.025),0 0 0 44px rgba(184,123,20,0.02); pointer-events: none; }
.pooja-page-title .container { position: relative; }
.pooja-page-title .pooja-breadcrumb { justify-content: center; margin: 0 0 18px; color: var(--ink-soft); }
.pooja-page-title .pooja-breadcrumb a { color: var(--ink); }
.pooja-page-title .pooja-breadcrumb i { color: var(--temple-gold-dark); }
.pooja-page-title .pooja-breadcrumb span { color: var(--temple-gold-dark); }
.pooja-title-ornament { display: flex; align-items: center; justify-content: center; gap: 12px; color: var(--temple-gold-dark); font-size: 15px; }
.pooja-title-ornament::before,.pooja-title-ornament::after { content: ""; width: 43px; height: 1px; background: linear-gradient(90deg,transparent,var(--temple-gold-dark)); }
.pooja-title-ornament::after { transform: rotate(180deg); }
.pooja-page-title h1 { margin: 8px 0 5px; color: var(--primary); font-family: var(--font-display); font-size: clamp(32px,4vw,47px); font-weight: 700; line-height: 1.15; }
.pooja-page-title p { margin: 0; color: var(--ink-soft); font-size: 13px; line-height: 1.6; }
.pooja-catalogue { padding: 34px 0 46px; background: #fbf8f1; }
.pooja-catalogue-heading { max-width: 700px; margin: 0 auto 24px; text-align: center; }
.pooja-catalogue-heading .pooja-kicker { color: var(--temple-gold-dark); }
.pooja-catalogue-heading .pooja-kicker::before { background: var(--temple-gold-dark); }
.pooja-catalogue-heading h2 { margin: 8px 0 5px; color: var(--ink); font-family: var(--font-display); font-size: clamp(25px,3vw,34px); font-weight: 700; line-height: 1.2; }
.pooja-catalogue-heading > p { margin: 0; color: var(--ink-soft); font-size: 12px; line-height: 1.65; }
.pooja-catalogue-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.pooja-catalogue-card { position: relative; display: flex; min-width: 0; min-height: 210px; flex-direction: column; align-items: flex-start; overflow: hidden; padding: 17px 17px 15px; border: 1px solid rgba(118,83,39,0.15); border-radius: 12px; background: #fff; box-shadow: 0 7px 18px rgba(43,5,3,0.045); transition: transform 0.22s ease,border-color 0.22s ease,box-shadow 0.22s ease; scroll-margin-top: 110px; }
.pooja-catalogue-card::before { content: ""; position: absolute; top: 0; left: 17px; width: 34px; height: 2px; background: var(--temple-gold-gradient); }
.pooja-catalogue-card::after { content: ""; position: absolute; top: -31px; right: -31px; width: 76px; height: 76px; border: 1px solid rgba(184,123,20,0.1); border-radius: 50%; pointer-events: none; }
.pooja-catalogue-card:hover { transform: translateY(-3px); border-color: rgba(184,123,20,0.42); box-shadow: 0 13px 25px rgba(43,5,3,0.09); }
.pooja-catalogue-icon { display: inline-flex; align-items: center; justify-content: center; width: 37px; height: 37px; margin-bottom: 11px; border: 1px solid rgba(184,123,20,0.22); border-radius: 50%; background: #fbf1d8; color: var(--temple-gold-dark); font-size: 14px; }
.pooja-catalogue-card h3 { min-height: 60px; margin: 0 0 8px; color: var(--ink); font-family: var(--font-display); font-size: 18px; font-weight: 700; line-height: 1.3; }
.pooja-catalogue-price { margin: auto 0 10px; color: var(--primary); font-family: var(--font-display); font-size:22px; font-weight: 800; line-height: 1.2; }
.pooja-book-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 34px; width: 100%; padding: 0 12px; border: 1px solid rgba(184,123,20,0.25); border-radius: 6px; background: linear-gradient(135deg,#f7d77a,#e0a32d 58%,#b87710); color: #2b1605; font-size: 10px; font-weight: 700; transition: filter 0.2s ease,transform 0.2s ease; }
.pooja-book-button:hover { transform: translateY(-1px); filter: brightness(1.06); color: #2b1605; }
.pooja-catalogue-note { display: flex; align-items: flex-start; justify-content: center; gap: 8px; max-width: 900px; margin: 20px auto 0; color: #6f5b41; font-size: 10px; line-height: 1.65; text-align: center; }
.pooja-catalogue-note i { flex: 0 0 auto; margin-top: 2px; color: var(--temple-gold-dark); }
.pooja-page-title { min-height: 300px; display: flex; align-items: center; padding: 38px 0; border-bottom: 1px solid rgba(223,166,52,0.28); background: #210402; isolation: isolate; }
.pooja-page-title::before { z-index: -1; top: 50%; left: auto; right: 9%; width: 250px; height: 250px; border-color: rgba(247,214,120,0.2); box-shadow: 0 0 0 20px rgba(247,214,120,0.035),0 0 0 44px rgba(247,214,120,0.025); transform: translateY(-50%); }
.pooja-title-banner-image { position: absolute; inset: 0; z-index: -2; overflow: hidden; }
.pooja-title-banner-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(28,4,2,0.94),rgba(35,5,3,0.76) 54%,rgba(35,5,3,0.5)),linear-gradient(0deg,rgba(22,3,2,0.28),transparent 65%); }
.pooja-title-banner-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 38%; opacity: 0.8; }
.pooja-page-title .container { width: 100%; }
.pooja-page-title .pooja-breadcrumb { color: #d7c6ad; }
.pooja-page-title .pooja-breadcrumb a { color: #f3e5ce; }
.pooja-page-title .pooja-breadcrumb i,.pooja-page-title .pooja-breadcrumb span { color: var(--temple-gold-light); }
.pooja-title-ornament { color: var(--temple-gold-light); }
.pooja-title-ornament::before,.pooja-title-ornament::after { background: linear-gradient(90deg,transparent,var(--temple-gold-light)); }
.pooja-page-title h1 { color: #fff5e4; text-shadow: 0 3px 18px rgba(0,0,0,0.3); }
.pooja-page-title p { color: #f0dfc5; }
.pooja-catalogue { padding: 30px 0 38px; background: linear-gradient(180deg,#f7efdf 0%,#f1e5cc 100%); }
.pooja-catalogue-heading { margin-bottom: 20px; }
.pooja-catalogue-card { min-height: 190px; padding: 15px 16px 14px; border-color: rgba(184,123,20,0.25); background: #fff7e7; box-shadow: 0 6px 16px rgba(43,5,3,0.055); }
.pooja-catalogue-card:hover { border-color: rgba(184,123,20,0.55); background: #fff7e7; box-shadow: 0 12px 24px rgba(43,5,3,0.1); }
.pooja-catalogue-icon { background: #f3e4c4; border-color: rgba(184,123,20,0.32); color: #8c5410; }
.pooja-catalogue-price { color: #51200f; }
.pooja-book-button { border-color: #3e0906; background: #3e0906; color: #f7d678; }
.pooja-book-button:hover { border-color: #54200e; background: #54200e; color: #ffe7a0; filter: none; }
.pooja-catalogue-note { margin-top: 16px; }

/* POOJAS INFORMATION SECTIONS */
.pooja-story-section,.pooja-vazhipadu-section { padding: 65px 0; background: #fffdfa; }
.pooja-solutions-section { padding: 65px 0; background: linear-gradient(180deg,#f3ead9,#f7efdf); }
.pooja-story-grid,.pooja-solutions-grid,.pooja-vazhipadu-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: clamp(36px,6vw,75px); }
.pooja-solutions-grid { grid-template-columns: minmax(0,1fr) minmax(0,0.9fr); }
.pooja-story-image,.pooja-solutions-image,.pooja-vazhipadu-image { position: relative; min-width: 0; padding: 0 16px 18px 0; }
.pooja-solutions-image { padding: 0 0 18px 16px; }
.pooja-story-image::before,.pooja-solutions-image::before,.pooja-vazhipadu-image::before { content: ""; position: absolute; inset: 16px 0 0 16px; border: 3px solid rgba(184,123,20,0.33); border-radius: 13px; }
.pooja-solutions-image::before { inset: 16px 16px 0 0; }
.pooja-story-image img,.pooja-solutions-image img,.pooja-vazhipadu-image img { position: relative; display: block; width: 100%; height: 350px; border-radius: 12px; object-fit: cover; object-position: center; box-shadow: 0 16px 32px rgba(43,5,3,0.12); }
.pooja-story-image img { object-position: center 50%; }
.pooja-solutions-image img { object-position: center 30%; }
.pooja-image-caption { position: absolute; right: 0; bottom: 0; z-index: 1; display: inline-flex; align-items: center; gap: 9px; max-width: 90%; padding: 12px 15px; border: 1px solid rgba(232,191,103,0.2); border-radius: 9px; background: #2b100b; color: #f5e8cf; font-size: 10px; font-weight: 600; }
.pooja-solutions-image .pooja-image-caption { right: 16px; }
.pooja-image-caption i { color: var(--temple-gold-light); }
.pooja-story-copy,.pooja-solutions-copy,.pooja-vazhipadu-copy { max-width: 600px; }
.pooja-story-copy .pooja-kicker,.pooja-solutions-copy .pooja-kicker,.pooja-vazhipadu-copy .pooja-kicker { color: var(--temple-gold-dark); }
.pooja-story-copy .pooja-kicker::before,.pooja-solutions-copy .pooja-kicker::before,.pooja-vazhipadu-copy .pooja-kicker::before { background: var(--temple-gold-dark); }
.pooja-story-copy h2,.pooja-solutions-copy h2,.pooja-vazhipadu-copy h2 { margin: 12px 0 14px; color: var(--ink); font-family: var(--font-display); font-size: clamp(29px,3.2vw,40px); font-weight: 700; letter-spacing: -0.025em; line-height: 1.17; }
.pooja-story-copy > p,.pooja-solutions-copy > p,.pooja-vazhipadu-copy > p { margin: 0 0 12px; color: var(--ink-soft); font-size: 12px; line-height: 1.8; }
.pooja-story-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 6px; padding-bottom: 4px; border-bottom: 1px solid rgba(123,85,28,0.35); color: var(--ink); font-size: 11px; font-weight: 700; transition: gap 0.2s ease,color 0.2s ease; }
.pooja-story-link:hover { gap: 13px; color: var(--temple-gold-dark); }
.pooja-visit { padding: 0 0 65px; background: #fffdfa; }




/* FESTIVALS PAGE */
.festival-page { display: block; width: 100%; }
.festival-page-banner { position: relative; display: flex; min-height: 300px; align-items: center; overflow: hidden; padding: 38px 0; border-bottom: 1px solid rgba(223,166,52,0.28); background: #210402; isolation: isolate; text-align: center; }
.festival-page-banner::before { content: ""; position: absolute; top: 50%; right: 9%; z-index: -1; width: 250px; height: 250px; border: 1px solid rgba(247,214,120,0.2); border-radius: 50%; box-shadow: 0 0 0 20px rgba(247,214,120,0.035),0 0 0 44px rgba(247,214,120,0.025); pointer-events: none; transform: translateY(-50%); }
.festival-banner-image { position: absolute; inset: 0; z-index: -2; overflow: hidden; }
.festival-banner-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(28,4,2,0.94),rgba(35,5,3,0.76) 54%,rgba(35,5,3,0.5)),linear-gradient(0deg,rgba(22,3,2,0.28),transparent 65%); }
.festival-banner-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 38%; opacity: 0.8; }
.festival-page-banner .container { position: relative; width: 100%; }
.festival-breadcrumb { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 0 0 18px; color: #d7c6ad; font-size: 10px; letter-spacing: 0.04em; }
.festival-breadcrumb a { color: #f3e5ce; }
.festival-breadcrumb a:hover { color: var(--temple-gold-light); }
.festival-breadcrumb i,.festival-breadcrumb span { color: var(--temple-gold-light); }
.festival-breadcrumb i { font-size: 8px; }
.festival-title-ornament { display: flex; align-items: center; justify-content: center; gap: 12px; color: var(--temple-gold-light); font-size: 15px; }
.festival-title-ornament::before,.festival-title-ornament::after { content: ""; width: 43px; height: 1px; background: linear-gradient(90deg,transparent,var(--temple-gold-light)); }
.festival-title-ornament::after { transform: rotate(180deg); }
.festival-page-banner h1 { margin: 8px 0 5px; color: #fff5e4; font-family: var(--font-display); font-size: clamp(32px,4vw,47px); font-weight: 700; line-height: 1.15; text-shadow: 0 3px 18px rgba(0,0,0,0.3); }
.festival-page-banner .container > p { margin: 0; color: #f0dfc5; font-size: 13px; line-height: 1.6; }
.festival-intro { padding: 50px 0 36px; background: #fbf8f1; }
.festival-intro-inner { max-width: 810px; text-align: center; }
.festival-kicker { display: inline-flex; align-items: center; gap: 9px; color: var(--temple-gold-dark); font-size: 10px; font-weight: 700; letter-spacing: 0.13em; line-height: 1.5; text-transform: uppercase; }
.festival-kicker::before { content: ""; display: inline-block; width: 24px; height: 1px; background: var(--temple-gold-dark); }
.festival-intro h2 { margin: 10px 0; color: var(--ink); font-family: var(--font-display); font-size: clamp(27px,3.3vw,39px); font-weight: 700; line-height: 1.16; }
.festival-intro p { max-width: 710px; margin: 0 auto; color: var(--ink-soft); font-size: 12px; line-height: 1.8; }
.festival-list { padding: 14px 0 55px; background: #fbf8f1; }
.festival-feature-card { display: grid; grid-template-columns: minmax(0,0.95fr) minmax(0,1fr); align-items: center; gap: clamp(32px,5vw,66px); margin: 0 0 30px; padding: 22px; border: 1px solid rgba(184,123,20,0.16); border-radius: 16px; background: #fffdfa; box-shadow: 0 12px 30px rgba(43,5,3,0.055); }
.festival-feature-card:last-of-type { margin-bottom: 0; }
.festival-feature-reverse .festival-feature-image { order: 2; }
.festival-feature-reverse .festival-feature-copy { order: 1; }
.festival-feature-image { position: relative; min-width: 0; padding: 0 14px 16px 0; }
.festival-feature-image::before { content: ""; position: absolute; inset: 15px 0 0 15px; border: 3px solid rgba(184,123,20,0.34); border-radius: 12px; }
.festival-feature-image img { position: relative; display: block; width: 100%; height: 300px; border-radius: 11px; object-fit: cover; object-position: center; box-shadow: 0 14px 30px rgba(43,5,3,0.13); }
.festival-image-tag { position: absolute; right: 0; bottom: 0; z-index: 1; display: inline-flex; align-items: center; gap: 8px; max-width: 90%; padding: 11px 14px; border: 1px solid rgba(232,191,103,0.2); border-radius: 9px; background: #2b100b; color: #f5e8cf; font-size: 9px; font-weight: 600; }
.festival-image-tag i { color: var(--temple-gold-light); }
.festival-feature-copy { max-width: 610px; padding: 8px 3px; }
.festival-feature-copy h2 { margin: 10px 0 12px; color: var(--ink); font-family: var(--font-display); font-size: clamp(26px,3vw,37px); font-weight: 700; letter-spacing: -0.025em; line-height: 1.17; }
.festival-feature-copy > p { margin: 0 0 11px; color: var(--ink-soft); font-size: 12px; line-height: 1.8; }
.festival-detail-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 5px; padding-bottom: 4px; border-bottom: 1px solid rgba(123,85,28,0.35); color: var(--ink); font-size: 10px; font-weight: 700; transition: gap 0.2s ease,color 0.2s ease; }
.festival-detail-link:hover { gap: 13px; color: var(--temple-gold-dark); }
.festival-source-note { display: flex; align-items: flex-start; gap: 8px; max-width: 900px; margin: 22px auto 0; color: #6f5b41; font-size: 10px; line-height: 1.65; }
.festival-source-note i { flex: 0 0 auto; margin-top: 2px; color: var(--temple-gold-dark); }
.festival-cta { padding: 0 0 65px; background: #fbf8f1; }
.festival-cta-panel { position: relative; display: grid; grid-template-columns: 62px minmax(0,1fr) auto; align-items: center; gap: 23px; overflow: hidden; padding: 30px 34px; border: 1px solid rgba(223,166,52,0.24); border-radius: 14px; background: linear-gradient(115deg,#2b0503,#421108 70%,#2b0503); box-shadow: 0 17px 38px rgba(43,5,3,0.12); }
.festival-cta-panel::before { content: ""; position: absolute; top: -100px; right: 18%; width: 220px; height: 220px; border: 1px solid rgba(247,214,120,0.14); border-radius: 50%; box-shadow: 0 0 0 23px rgba(247,214,120,0.025); pointer-events: none; }
.festival-cta-icon { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 58px; height: 58px; border: 1px solid rgba(247,214,120,0.36); border-radius: 50%; background: rgba(223,166,52,0.1); color: var(--temple-gold-light); font-size: 20px; }
.festival-cta-copy { position: relative; max-width: 600px; }
.festival-cta-copy .festival-kicker { color: var(--temple-gold-light); }
.festival-cta-copy .festival-kicker::before { background: var(--temple-gold); }
.festival-cta-copy h2 { margin: 8px 0 6px; color: #fff4e1; font-family: var(--font-display); font-size: clamp(23px,2.7vw,32px); font-weight: 700; line-height: 1.2; }
.festival-cta-copy > p { margin: 0; color: #dfcdb3; font-size: 11px; line-height: 1.7; }
.festival-cta-actions { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.festival-cta-button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 42px; padding: 0 16px; border: 1px solid rgba(255,235,179,0.7); border-radius: 999px; background: var(--temple-gold-gradient); color: #2b1605; font-size: 10px; font-weight: 700; transition: transform 0.2s ease,box-shadow 0.2s ease; }
.festival-cta-button:hover { color: #2b1605; transform: translateY(-2px); box-shadow: var(--gold-glow); }
.festival-cta-phone { display: inline-flex; align-items: center; gap: 8px; color: #f3e5ce; font-size: 11px; font-weight: 600; }
.festival-cta-phone:hover { color: var(--temple-gold-light); }
.festivals-page-body .footer-grid { grid-template-columns: minmax(220px,1.3fr) repeat(2,minmax(125px,0.8fr)) minmax(195px,1.1fr); gap: 28px; }








/* GALLERY PAGE */
.gallery-page { display: block; width: 100%; }
.gallery-page-banner { position: relative; display: flex; min-height: 300px; align-items: center; overflow: hidden; padding: 38px 0; border-bottom: 1px solid rgba(223,166,52,0.28); background: #210402; isolation: isolate; text-align: center; }
.gallery-page-banner::before { content: ""; position: absolute; top: 50%; right: 9%; z-index: -1; width: 250px; height: 250px; border: 1px solid rgba(247,214,120,0.2); border-radius: 50%; box-shadow: 0 0 0 20px rgba(247,214,120,0.035),0 0 0 44px rgba(247,214,120,0.025); pointer-events: none; transform: translateY(-50%); }
.gallery-banner-image { position: absolute; inset: 0; z-index: -2; overflow: hidden; }
.gallery-banner-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(28,4,2,0.94),rgba(35,5,3,0.76) 54%,rgba(35,5,3,0.5)),linear-gradient(0deg,rgba(22,3,2,0.28),transparent 65%); }
.gallery-banner-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 38%; opacity: 0.8; }
.gallery-page-banner .container { position: relative; width: 100%; }
.gallery-breadcrumb { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 0 0 18px; color: #d7c6ad; font-size: 10px; letter-spacing: 0.04em; }
.gallery-breadcrumb a { color: #f3e5ce; }
.gallery-breadcrumb a:hover { color: var(--temple-gold-light); }
.gallery-breadcrumb i,.gallery-breadcrumb span { color: var(--temple-gold-light); }
.gallery-breadcrumb i { font-size: 8px; }
.gallery-title-ornament { display: flex; align-items: center; justify-content: center; gap: 12px; color: var(--temple-gold-light); font-size: 15px; }
.gallery-title-ornament::before,.gallery-title-ornament::after { content: ""; width: 43px; height: 1px; background: linear-gradient(90deg,transparent,var(--temple-gold-light)); }
.gallery-title-ornament::after { transform: rotate(180deg); }
.gallery-page-banner h1 { margin: 8px 0 5px; color: #fff5e4; font-family: var(--font-display); font-size: clamp(32px,4vw,47px); font-weight: 700; line-height: 1.15; text-shadow: 0 3px 18px rgba(0,0,0,0.3); }
.gallery-collection { padding: 38px 0 62px; background: #fbf8f1; }
.gallery-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.gallery-card { min-width: 0; overflow: hidden; border: 1px solid rgba(184,123,20,0.18); border-radius: 12px; background: #fffdfa; box-shadow: 0 12px 30px rgba(43,5,3,0.06); }
.gallery-image-button { position: relative; display: block; width: 100%; overflow: hidden; padding: 0; border: 0; background: #2b100b; cursor: zoom-in; }
.gallery-image-button img { display: block; width: 100%; height: 245px; object-fit: cover; object-position: center; transition: transform 0.45s ease; }
.gallery-image-button:hover img { transform: scale(1.035); }
.gallery-image-button:focus-visible { outline: 3px solid var(--temple-gold-light); outline-offset: -4px; }
.gallery-page-body .footer-grid { grid-template-columns: minmax(220px,1.3fr) repeat(2,minmax(125px,0.8fr)) minmax(195px,1.1fr); gap: 28px; }





/* CONTACT PAGE */
.contact-page { display: block; width: 100%; }
.contact-page-banner { position: relative; display: flex; min-height: 300px; align-items: center; overflow: hidden; padding: 38px 0; border-bottom: 1px solid rgba(223,166,52,0.28); background: #210402; isolation: isolate; text-align: center; }
.contact-page-banner::before { content: ""; position: absolute; top: 50%; right: 9%; z-index: -1; width: 250px; height: 250px; border: 1px solid rgba(247,214,120,0.2); border-radius: 50%; box-shadow: 0 0 0 20px rgba(247,214,120,0.035),0 0 0 44px rgba(247,214,120,0.025); pointer-events: none; transform: translateY(-50%); }
.contact-banner-image { position: absolute; inset: 0; z-index: -2; overflow: hidden; }
.contact-banner-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(28,4,2,0.94),rgba(35,5,3,0.76) 54%,rgba(35,5,3,0.5)),linear-gradient(0deg,rgba(22,3,2,0.28),transparent 65%); }
.contact-banner-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 38%; opacity: 0.8; }
.contact-page-banner .container { position: relative; width: 100%; }
.contact-breadcrumb { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 0 0 18px; color: #d7c6ad; font-size: 10px; letter-spacing: 0.04em; }
.contact-breadcrumb a { color: #f3e5ce; }
.contact-breadcrumb a:hover { color: var(--temple-gold-light); }
.contact-breadcrumb i,.contact-breadcrumb span { color: var(--temple-gold-light); }
.contact-breadcrumb i { font-size: 8px; }
.contact-title-ornament { display: flex; align-items: center; justify-content: center; gap: 12px; color: var(--temple-gold-light); font-size: 15px; }
.contact-title-ornament::before,.contact-title-ornament::after { content: ""; width: 43px; height: 1px; background: linear-gradient(90deg,transparent,var(--temple-gold-light)); }
.contact-title-ornament::after { transform: rotate(180deg); }
.contact-page-banner h1 { margin: 8px 0 5px; color: #fff5e4; font-family: var(--font-display); font-size: clamp(32px,4vw,47px); font-weight: 700; line-height: 1.15; text-shadow: 0 3px 18px rgba(0,0,0,0.3); }
.contact-page-banner .container > p { margin: 0; color: #f0dfc5; font-size: 13px; line-height: 1.6; }
.contact-main { padding: 48px 0 64px; background: linear-gradient(180deg,#fbf8f1 0%,#f7efdf 100%); }
.contact-intro { max-width: 720px; margin: 0 auto 30px; text-align: center; }
.contact-kicker { display: inline-flex; align-items: center; gap: 9px; color: var(--temple-gold-dark); font-size: 10px; font-weight: 700; letter-spacing: 0.13em; line-height: 1.5; text-transform: uppercase; }
.contact-kicker::before { content: ""; display: inline-block; width: 24px; height: 1px; background: var(--temple-gold-dark); }
.contact-intro h2 { margin: 10px 0; color: var(--ink); font-family: var(--font-display); font-size: clamp(28px,3.3vw,39px); font-weight: 700; line-height: 1.16; }
.contact-intro > p { margin: 0; color: var(--ink-soft); font-size: 12px; line-height: 1.8; }
.contact-page-grid { display: grid; grid-template-columns: minmax(0,1.02fr) minmax(0,0.98fr); align-items: stretch; gap: 24px; }
.contact-page-form-panel,.contact-page-map-panel { min-width: 0; overflow: hidden; border: 1px solid rgba(118,83,39,0.13); border-radius: 15px; background: #fffdfa; box-shadow: 0 12px 30px rgba(43,5,3,0.06); }
.contact-page-form-panel { padding: 25px 26px 23px; }
.contact-page-panel-heading { display: flex; align-items: center; gap: 13px; padding-bottom: 18px; border-bottom: 1px solid rgba(118,83,39,0.12); }
.contact-page-icon { display: inline-flex; flex: 0 0 45px; align-items: center; justify-content: center; width: 45px; height: 45px; border: 1px solid rgba(184,123,20,0.19); border-radius: 50%; background: #fbf1d8; color: var(--temple-gold-dark); font-size: 16px; }
.contact-page-panel-heading h3,.contact-map-heading h3 { margin: 0 0 4px; color: var(--ink); font-family: var(--font-display); font-size: 20px; font-weight: 700; line-height: 1.25; }
.contact-page-panel-heading p,.contact-map-heading p { margin: 0; color: var(--ink-soft); font-size: 11px; line-height: 1.6; }
.contact-page-methods { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding: 17px 0; border-bottom: 1px solid rgba(118,83,39,0.12); }
.contact-page-method { display: flex; align-items: center; gap: 9px; min-width: 0; color: inherit; }
.contact-page-method:hover strong { color: var(--temple-gold-dark); }
.contact-method-icon { display: inline-flex; flex: 0 0 34px; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; background: #f7efdf; color: var(--temple-gold-dark); font-size: 12px; }
.contact-page-method small { display: block; margin-bottom: 3px; color: var(--ink-soft); font-size: 9px; }
.contact-page-method strong { display: block; color: var(--ink); font-size: 10px; font-weight: 600; line-height: 1.4; overflow-wrap: anywhere; transition: color 0.2s ease; }
.contact-page-form { border-top: 0; padding-top: 18px; }
.contact-page-form .visit-form-row { gap: 12px; }
.contact-page-form .visit-field { margin-bottom: 12px; }
.contact-page-form .visit-field label { font-size: 11px; }
.contact-page-form .visit-field input,.contact-page-form .visit-field textarea { padding: 10px 11px; font-size: 12px; }
.contact-page-form .visit-field textarea { min-height: 105px; }
.contact-page-form .visit-submit { font-family: inherit; }
.contact-form-note { display: block; margin-top: 9px; color: var(--ink-soft); font-size: 9px; line-height: 1.5; }
.contact-page-map-panel { display: flex; flex-direction: column; }
.contact-map-heading { display: flex; align-items: center; gap: 13px; padding: 22px 23px; }
.contact-map-heading .contact-kicker { margin-bottom: 5px; font-size: 9px; }
.contact-map-heading h3 { margin-bottom: 4px; font-size: 21px; }
.contact-page-map { position: relative; flex: 1; min-height: 380px; background: #f1eadc; }
.contact-page-map iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
.contact-directions-link { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px; border-top: 1px solid rgba(118,83,39,0.12); color: var(--ink); font-size: 10px; font-weight: 700; }
.contact-directions-link i { color: var(--temple-gold-dark); }
.contact-directions-link:hover { color: var(--temple-gold-dark); }
.contact-page-body .footer-grid { grid-template-columns: minmax(220px,1.3fr) repeat(2,minmax(125px,0.8fr)) minmax(195px,1.1fr); gap: 28px; }




.gallery-lightbox { position: fixed; inset: 0; width: min(94vw,1100px); max-width: none; height: fit-content; max-height: 92vh; margin: auto; overflow: hidden; padding: 48px 18px 18px; border: 1px solid rgba(247,214,120,0.35); border-radius: 12px; background: #1c0301; color: #fff5e4; box-shadow: 0 20px 70px rgba(0,0,0,0.4); }
.gallery-lightbox:not([open]) { display: none; }
.gallery-lightbox[open] { display: flex; align-items: center; justify-content: center; }
.gallery-lightbox::backdrop { background: rgba(14,2,1,0.88); }
.gallery-lightbox > img { display: block; width: auto; max-width: 100%; height: auto; max-height: calc(92vh - 78px); margin: auto; border-radius: 6px; object-fit: contain; }
.gallery-lightbox-close { position: absolute; top: 8px; right: 8px; z-index: 1; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1px solid rgba(247,214,120,0.45); border-radius: 50%; background: #2b0503; color: var(--temple-gold-light); cursor: pointer; font-size: 16px; }
.gallery-lightbox-close:focus-visible { outline: 2px solid #fff5e4; outline-offset: 3px; }
