:root{--red:#a92936;--deep:#641d28;--cream:#fffaf1;--gold:#d89b3d;--ink:#30252a;--muted:#77686b;--line:#eadfd4}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#f7ead7,#f9d9c9 50%,#e6d9f2);color:var(--ink);font-family:'DM Sans',sans-serif}.shell{max-width:1180px;margin:auto;padding:28px 18px 48px}.hero{text-align:center;padding:38px 16px 34px;background:radial-gradient(circle at 50% -50%,#d55055 0,#a92936 44%,#7a202d 100%);color:#fff;border-radius:24px;box-shadow:0 12px 30px #7226322b}.ornament{font-size:26px;color:#ffd27b}.eyebrow,.section-kicker{font-size:11px;letter-spacing:2px;font-weight:700;margin:14px 0 10px;color:#ffd27b}.eyebrow{font-size:14px}.hero h1{font:700 clamp(38px,6vw,64px) 'Playfair Display',serif;margin:0}.subtitle{font-size:16px;margin:12px auto 22px;color:#ffe9d7}.date-pill{display:inline-flex;gap:12px;align-items:center;border:1px solid #ffffff66;border-radius:99px;padding:9px 16px;font-size:12px;font-weight:700;letter-spacing:1px}.date-pill i{font-style:normal;color:#ffd27b}.calendar-card{margin-top:24px;background:var(--cream);border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 8px 25px #5831260d}.calendar-toolbar{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding:0 2px 20px;margin-bottom:18px}.section-kicker{color:var(--red);margin:0 0 5px}.calendar-toolbar h2{font:700 30px 'Playfair Display',serif;margin:0}.legend{font-size:12px;color:var(--muted);display:flex;gap:7px;align-items:center}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-left:14px}.required{background:var(--gold)}.open{background:#9dbb8d}.date-tabs{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 16px}.date-tab{flex:0 0 82px;border:0;border-radius:16px;padding:12px 8px;background:linear-gradient(145deg,#f4b45d,#ea755a);color:#fff;cursor:pointer;box-shadow:0 5px 12px #b75c4540;display:flex;flex-direction:column;align-items:center;gap:3px;transition:.2s}.date-tab:nth-child(3n){background:linear-gradient(145deg,#8bc8ad,#4ca5a0)}.date-tab:nth-child(3n+2){background:linear-gradient(145deg,#b7a0e5,#7675c5)}.date-tab span{font-size:10px;text-transform:uppercase;font-weight:700}.date-tab strong{font-size:24px}.date-tab small{font-size:10px}.date-tab:hover,.date-tab.selected{transform:translateY(-4px) scale(1.03);outline:3px solid #ffd27b;outline-offset:2px}.day-panel{background:#fff;border-radius:18px;padding:22px;min-height:220px}.selected-date{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding-bottom:18px}.big-date{width:62px;height:62px;border-radius:18px;background:linear-gradient(145deg,var(--red),#e35b4c);color:#fff;display:grid;place-items:center;font:700 29px 'Playfair Display',serif}.selected-date p{margin:0;color:var(--red);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.selected-date h3{margin:4px 0 0;font:700 23px 'Playfair Display',serif}.event-list{display:grid;gap:10px;margin-top:16px}.event-card{display:flex;align-items:center;gap:15px;border-radius:13px;padding:14px 16px;background:linear-gradient(100deg,#fff7ec,#fff);border:1px solid #f0dfce}.time-badge{flex:0 0 88px;color:var(--red);font-weight:700;font-size:12px}.event-copy{flex:1}.event-copy h4{margin:0;font-size:15px}.event-copy p{margin:4px 0 0;color:var(--muted);font-size:12px}.nominate{background:var(--red);color:#fff;text-decoration:none;border-radius:99px;padding:8px 13px;font-size:11px;font-weight:700}.event-card .open-label{margin:0;color:#6a8d5d}.calendar-grid{display:none}footer{text-align:center;color:var(--muted);font:600 15px 'Playfair Display',serif;margin-top:28px}footer span{color:var(--red);margin-left:8px}@media(max-width:760px){.shell{padding:12px 10px 30px}.calendar-card{padding:14px 10px}.calendar-toolbar{align-items:start;gap:12px;flex-direction:column}.legend{flex-wrap:wrap}.date-tabs{gap:7px}.date-tab{flex-basis:70px;padding:10px 5px}.day-panel{padding:16px 12px}.event-card{align-items:flex-start;flex-wrap:wrap}.time-badge{flex-basis:72px}.event-copy{min-width:calc(100% - 90px)}.nominate{margin-left:87px;margin-top:-4px}.selected-date h3{font-size:20px}}
.hero{position:relative;overflow:hidden;background-image:linear-gradient(90deg,#53132688,#7b1c3c33),url('/ganeshotsav-header.png');background-size:cover;background-position:center;color:#fff}.eyebrow{font-size:18px;letter-spacing:2.5px;text-shadow:0 2px 8px #3b0c24}.hero h1{font-size:clamp(42px,7vw,72px);text-shadow:0 3px 12px #3b0c2466}.subtitle{font-size:20px;font-weight:700;letter-spacing:.5px;text-shadow:0 2px 8px #3b0c24}
.hero{min-height:390px;background-position:72% center}.subtitle{font-size:16px}.date-tabs{flex-wrap:wrap;overflow:visible}.event-card{min-width:0}body{overflow-x:hidden}@media(max-width:600px){.hero{min-height:330px;background-position:68% center;padding:30px 12px 26px}.eyebrow{font-size:16px}.hero h1{font-size:clamp(36px,11vw,56px)}.date-tabs{justify-content:center}.date-tab{flex-basis:calc(25% - 6px);min-width:62px}.event-card{width:100%}}
.date-tabs{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:7px;overflow:hidden;padding:4px 0 16px}.date-tab{min-width:0;width:100%;flex-basis:auto;padding:10px 3px}.date-tab strong{font-size:21px}.date-tab span{font-size:9px}.date-tab small{font-size:9px}.subtitle{font-size:clamp(20px,3vw,22px)}@media(max-width:600px){.date-tabs{grid-template-columns:repeat(12,minmax(0,1fr));gap:2px;padding-bottom:12px}.date-tab{border-radius:10px;padding:7px 1px}.date-tab strong{font-size:clamp(12px,4vw,18px)}.date-tab span,.date-tab small{font-size:clamp(6px,1.7vw,9px)}.subtitle{font-size:20px}}
.date-tabs{grid-template-columns:repeat(12,minmax(0,1fr))}@media(max-width:600px){.date-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:4px 3px 16px}.date-tab{min-height:74px;border-radius:15px;padding:9px 4px}.date-tab strong{font-size:24px}.date-tab span{font-size:10px}.date-tab small{font-size:10px}}
.page-background-contrast{display:none}body{background:#fff7e8;background-image:radial-gradient(circle at 8% 18%,#f8dca566 0,transparent 28%),radial-gradient(circle at 92% 72%,#d9c8f066 0,transparent 30%),linear-gradient(135deg,#fffaf0 0%,#fff1df 52%,#f5edff 100%)}
.hero h1{font-family:'Cinzel',serif;font-weight:700;letter-spacing:.02em;background:linear-gradient(100deg,#ffe29a 8%,#fff4c7 48%,#f7a6b8 92%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 3px 7px #3b0c2477)}
