/* Readable type and a full-bleed photographic hero at every viewport size. */
:root{--ink:#342315;--muted:#66584a;--brown:#754421;--cream:#fffaf1;--line:#e7d5b9}
.shell{width:min(1440px,calc(100% - 96px))}
html[lang] body{font-size:18px;line-height:1.85}
html[lang] .header-inner{min-height:100px;gap:22px}
html[lang] .brand{font-size:16px;line-height:1.65}
html[lang] .brand small{font-size:12px}
html[lang] .brand svg{width:42px;height:54px}
html[lang] .site-header nav a{font-size:16px;padding-inline:16px}
html[lang] .language-picker select{font-size:15px;min-height:48px;max-width:150px}
html[lang] .eyebrow{font-size:13px;color:#805929;line-height:1.8}
html[lang] .button{font-size:17px;line-height:1.6;min-height:56px;padding:15px 24px;gap:20px}
html[lang] .text-link,html[lang] .alankaram-content .text-link,html[lang] .footer-top .text-link{font-size:16px;line-height:1.8}
html[lang] .small{font-size:16px;line-height:1.9}
html[lang] .pill{font-size:12px;line-height:1.8;color:#705021;background:#f7e9cc}
.hero{min-height:740px;background:radial-gradient(ellipse at 51% 18%,#b38237 0%,#906029 38%,#6b3e22 100%);color:#fff9e9}
.hero-photo{inset:0 auto 0 0;width:59%;height:100%;background:none;overflow:visible;mask-image:linear-gradient(90deg,#000 0%,#000 54%,#000c 70%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 54%,#000c 70%,transparent 100%)}
.hero-photo::before{content:'';position:absolute;inset:-28px;background:url('deity.jpg') center 44%/cover no-repeat;filter:blur(22px) brightness(.78) saturate(1.14)}
.hero-photo::after{content:'';position:absolute;inset:auto;top:-5%;left:46%;height:110%;width:auto;aspect-ratio:3/4;transform:translateX(-50%);background:url('deity.jpg') center/cover no-repeat;mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 77%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 77%,transparent 100%)}
.hero-pattern{opacity:.7}
.hero-inner{min-height:740px;padding:50px 0 116px}
html[lang] .hero-copy{width:53%;padding:0 0 0 24px}
html[lang] .hero h1{font-size:clamp(46px,4.4vw,72px);line-height:1.12;letter-spacing:-1.2px;text-shadow:0 2px 18px #40200b1a}
html:not(:lang(en)) .hero h1{font-size:clamp(40px,3.45vw,57px);line-height:1.5;letter-spacing:0}
html[lang] .hero .eyebrow{font-size:14px;color:#ffe2a4}
.ornament{font-size:27px;margin:15px 0 22px;color:#f0cf8c}
html[lang] .hero-name{font-size:28px;line-height:1.65;color:#ffe0a5;margin-top:25px}
html[lang] .hero-description{font-size:19px;line-height:1.9;color:#fff0d7;margin-top:15px;max-width:670px}
html[lang] .hero-location{font-size:15px;line-height:1.8;color:#fbe3bc;margin-top:28px}
.hero .actions{gap:16px;margin-top:30px;flex-wrap:wrap}
.gold{background:#f4d895;box-shadow:0 5px 18px #42210c1a;color:#4f2d16}
.ghost{background:#55301826;border-color:#e3c38c;color:#fff6e7}
.floating-grid{margin-top:-76px;gap:28px}
.card{background:#fffefa;border-color:#e6cfa9;padding:32px;box-shadow:0 14px 36px #663d1710;border-radius:12px}
.today-card{border-top:3px solid #c6923a}
.alankaram-card{border-top:3px solid #c6923a}
html[lang] .card-heading h2{font-size:32px;line-height:1.4;color:#653d1c}
html:not(:lang(en)) .card-heading h2{font-size:29px;line-height:1.65}
html[lang] .date-row{font-size:15px;gap:12px;flex-wrap:wrap;color:#6f5a42;padding-bottom:20px}
html[lang] .status{font-size:13px;padding:5px 11px;white-space:normal;background:#f7eaca;color:#71511e}
html[lang] .daily-columns{grid-template-columns:1.15fr 1fr;gap:24px;margin-top:24px}
html[lang] .daily-columns>div+div{padding-left:24px}
html[lang] .daily-columns h3{font-size:16px;line-height:1.8}
html[lang] .panchanga{font-size:15px;line-height:1.9}
.panchanga dt{color:#71604d}.panchanga dd{color:#57422e}
html[lang] .panchanga>div{gap:4px 12px;flex-wrap:wrap;margin-top:8px}
html[lang] .aarti-time{font-size:26px;line-height:1.65}
html[lang] .daily-columns .small{font-size:15px;line-height:1.9;color:#695743}
html[lang] .card-note{font-size:14px;line-height:1.9;color:#74604b;margin-top:22px;padding-top:17px}
html[lang] .alankaram-content{grid-template-columns:38% 1fr;gap:24px}
html[lang] .alankaram-photo{height:260px}
html[lang] .alankaram-content h3{font-size:29px;line-height:1.5}
html[lang] .alankaram-content .small{font-size:16px;line-height:1.9}
html[lang] .section-lead h2,html[lang] .heritage-section .visit-mini h2{font-size:39px;line-height:1.3;color:#653d1c}
html:not(:lang(en)) .section-lead h2,html:not(:lang(en)) .heritage-section .visit-mini h2{font-size:33px;line-height:1.6}
html[lang] .section-lead>p:not(.eyebrow),html[lang] .visit-mini p{font-size:17px;color:#6a5744;line-height:1.95}
.heritage-section{padding-block:72px;gap:44px}.heritage-art{background-color:#eddbb8}.art-caption{background-color:#eddbb8}
html[lang] .art-caption span:first-child{font-size:12px}
html[lang] .art-caption span:last-child{font-size:21px}
.festival-strip,.soft-section{background:linear-gradient(110deg,#f3e1bb,#f9eed7);border-color:#dfc79e}
html[lang] .strip-inner h2{font-size:36px;line-height:1.5}
html[lang] .strip-inner p:not(.eyebrow){font-size:17px;color:#6d553b}
html[lang] .footer-top .brand{font-size:16px}
html[lang] .footer-top .brand small,html[lang] .footer-top p{font-size:14px;color:#6d5744}
html[lang] .footer-bottom{font-size:13px;color:#715d48;flex-wrap:wrap}
html[lang] .intro-copy,html[lang] .story-copy p:not(.eyebrow),html[lang] .narrow p:not(.eyebrow),html[lang] .callout p:not(.eyebrow),html[lang] .announcement p:not(.eyebrow),html[lang] .section-title p:not(.eyebrow),html[lang] .festival-card p,html[lang] .visit-address address,html[lang] .map-copy p:not(.eyebrow),html[lang] .guide-layout>div>p.muted,html[lang] .faq details p{font-size:18px;line-height:1.95;color:#68543f}
html[lang] .gallery-grid figcaption p,html[lang] .story-photo figcaption,html[lang] .festival-foot,html[lang] .notice,html[lang] .breadcrumb,html[lang] .breadcrumb-sep,html[lang] dialog p{font-size:15px;line-height:1.9;color:#715a41}
html[lang] .faq summary,html[lang] .timing-row{font-size:17px;line-height:1.9}
.announcement{flex-wrap:wrap}.announcement .text-link{margin-left:65px}.strip-inner{flex-wrap:wrap}
@media(min-width:1101px) and (max-width:1390px){html[lang] .header-inner{gap:12px}html[lang] .brand{font-size:13px}html[lang] .site-header nav a{font-size:14px;padding-inline:10px}html[lang] .brand small{font-size:11px}}
@media(max-width:1100px){.shell{width:calc(100% - 48px)}html[lang] .header-inner{min-height:90px}html[lang] .brand{font-size:16px}.hero,.hero-inner{min-height:700px}html[lang] .hero-copy{width:56%;padding-left:10px}html[lang] .hero h1{font-size:48px}html:not(:lang(en)) .hero h1{font-size:39px}html[lang] .hero-name{font-size:24px}html[lang] .hero-description{font-size:18px}html[lang] .hero-location{font-size:14px}.hero-photo{width:61%}.floating-grid{grid-template-columns:1fr}.heritage-section{gap:26px}html[lang] .card-heading h2{font-size:31px}.card{padding:28px}.footer-top{flex-wrap:wrap}.footer-top .brand{max-width:none;flex-basis:100%}}
@media(min-width:561px) and (max-width:800px){.hero-inner{padding-top:45px;padding-bottom:105px}html[lang] .hero-copy{width:59%}html[lang] .hero h1{font-size:40px}html:not(:lang(en)) .hero h1{font-size:34px}.hero-photo{width:66%}html[lang] .hero-name{font-size:22px}html[lang] .hero-description{font-size:17px}html[lang] .hero .button{font-size:15px;padding:12px 17px}html[lang] .section-lead h2,html[lang] .heritage-section .visit-mini h2{font-size:32px}.gallery-grid{grid-template-columns:1fr}.gallery-main .photo-open{height:auto;aspect-ratio:3/4}.gallery-details{grid-template-columns:1fr 1fr}.guide-layout{grid-template-columns:1fr}}
@media(max-width:560px){
 .shell{width:calc(100% - 36px)}html[lang] .header-inner{min-height:0;gap:8px;padding-block:12px}html[lang] .brand{font-size:12px}html[lang] .brand svg{width:30px;height:42px}html[lang] .brand small{font-size:11px}.language-picker{margin-left:38px}html[lang] .language-picker select{font-size:14px;min-height:40px}.site-header{position:relative}
 .hero{min-height:0;background:linear-gradient(0deg,#704223 0%,#98632d 65%,#b3843c 100%)}.hero-inner{min-height:0;padding-top:355px;padding-bottom:96px}.hero-photo{width:100%;height:440px;mask-image:linear-gradient(0deg,transparent,#000 35%);-webkit-mask-image:linear-gradient(0deg,transparent,#000 35%)}.hero-photo::before{background-position:center 36%;filter:blur(16px) brightness(.8)}.hero-photo::after{left:50%;height:110%;top:-3%;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
 html[lang] .hero-copy{width:100%;padding:0}html[lang] .hero h1{font-size:43px;line-height:1.15}html:not(:lang(en)) .hero h1{font-size:37px;line-height:1.55}html[lang] .hero .eyebrow{font-size:13px}html[lang] .hero-name{font-size:23px;line-height:1.75}html[lang] .hero-description{font-size:17px;line-height:1.95}html[lang] .hero-location{font-size:13px;line-height:1.9}html[lang] .hero .button{font-size:16px;padding:14px 18px}.hero .actions{gap:12px}
 .floating-grid{margin-top:-45px;gap:24px}.card{padding:24px 20px}html[lang] .card-heading h2{font-size:29px;line-height:1.5}html:not(:lang(en)) .card-heading h2{font-size:26px;line-height:1.65}.small-symbol{flex-shrink:0}html[lang] .eyebrow{font-size:12px}html[lang] .date-row{font-size:14px}html[lang] .status{font-size:12px}html[lang] .daily-columns{grid-template-columns:1fr;gap:18px}html[lang] .daily-columns>div+div{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}html[lang] .daily-columns h3{font-size:16px}html[lang] .panchanga{font-size:15px}html[lang] .panchanga>div{flex-wrap:wrap}html[lang] .panchanga dd{text-align:left}html[lang] .aarti-time{font-size:26px}html[lang] .daily-columns .small{font-size:15px}html[lang] .card-note{font-size:14px}
 html[lang] .alankaram-content{grid-template-columns:1fr;gap:22px}html[lang] .alankaram-photo{height:280px}html[lang] .alankaram-photo img{object-fit:contain}html[lang] .alankaram-content h3{font-size:28px}html[lang] .alankaram-content .small{font-size:16px}html[lang] .alankaram-content .text-link{font-size:16px}html[lang] .pill{font-size:12px}html[lang] .section-lead h2,html[lang] .heritage-section .visit-mini h2{font-size:34px}html:not(:lang(en)) .section-lead h2,html:not(:lang(en)) .heritage-section .visit-mini h2{font-size:29px}html[lang] .section-lead>p:not(.eyebrow),html[lang] .visit-mini p{font-size:17px}.heritage-section{padding-block:48px}
 html[lang] .strip-inner h2{font-size:30px}html[lang] .strip-inner p:not(.eyebrow){font-size:16px}html[lang] .footer-top .brand{font-size:13px}html[lang] .footer-top .brand small{font-size:12px}html[lang] .footer-top p{font-size:14px}html[lang] .footer-bottom{font-size:12px}html[lang] .footer-top .text-link{font-size:15px}
 html[lang] .intro-copy,html[lang] .story-copy p:not(.eyebrow),html[lang] .narrow p:not(.eyebrow),html[lang] .callout p:not(.eyebrow),html[lang] .announcement p:not(.eyebrow),html[lang] .section-title p:not(.eyebrow),html[lang] .festival-card p,html[lang] .visit-address address,html[lang] .map-copy p:not(.eyebrow),html[lang] .guide-layout>div>p.muted,html[lang] .faq details p{font-size:17px}html[lang] .faq summary,html[lang] .timing-row{font-size:16px}.gallery-details{grid-template-columns:1fr}html[lang] .announcement .text-link{margin-left:0}html[lang] .button{font-size:16px}html[lang] .text-link{font-size:16px}
}
