:root{--bg:#0f172a;--bg-accent:#0b1222;--text:#e5e7eb;--muted:#94a3b8;--primary:#f472b6;--primary-2:#a78bfa;--ring:rgba(244,114,182,0.35);--card:rgba(255,255,255,0.04);--border:rgba(255,255,255,0.08)}*{box-sizing:border-box}html,body{height:100%}html{scrollbar-gutter:stable both-edges}body{margin:0;background:radial-gradient(60% 50% at 50% 0%,rgba(255,255,255,6%),transparent 60%),linear-gradient(180deg,var(--bg),var(--bg-accent));background-attachment:fixed,fixed;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,helvetica neue,Arial,noto sans,apple color emoji,segoe ui emoji;line-height:1.6;font-size-adjust:.52}.page,.hero,.section,.footer{position:relative;z-index:2}.hearts{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:1;opacity:.45;mix-blend-mode:screen}.hearts span{position:absolute;bottom:-10vh;left:var(--x);color:var(--primary);filter:drop-shadow(0 2px 4px rgba(244,114,182,.35));animation:rise var(--dur,18s)linear infinite;animation-delay:var(--delay,0s);transform:translate3d(0,0,0);will-change:transform,opacity}.hearts span::before{content:'❤';font-size:var(--size,18px)}@keyframes rise{0%{transform:translateY(0)translateX(0)scale(.9);opacity:0}10%{opacity:.9}100%{transform:translateY(-120vh)translateX(var(--drift,0px))scale(1.2);opacity:0}}.container{width:min(1100px,92%);margin:0 auto}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--muted);font-size:.9rem;margin:0 0 .75rem}.muted{color:var(--muted)}.hero{position:relative;padding:6rem 0 5rem;text-align:center}.names{font-family:mea culpa,playfair display,Georgia,serif;font-weight:900;font-size:clamp(2.5rem,6vw,4.5rem);margin:2.5rem 0;line-height:1.1}.names .amp{color:var(--primary);font-weight:700}.date{color:var(--text);font-size:1.2rem;font-weight:800;margin:.25rem 0 .75rem;text-shadow:0 2px 10px rgba(0,0,0,.45)}.venue-name{color:var(--text);font-weight:900;margin-bottom:1.25rem;text-shadow:0 2px 10px rgba(0,0,0,.45)}.cta-row{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1rem;border-radius:999px;border:1px solid var(--border);background:var(--card);color:var(--text);text-decoration:none;font-weight:600;transition:transform .12s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-1px);border-color:var(--ring);box-shadow:0 0 0 6px var(--ring)}.btn.primary{background:linear-gradient(90deg,var(--primary),var(--primary-2));border-color:transparent}.btn.ghost{background:0 0}.countdown{display:grid;grid-template-columns:repeat(4,minmax(80px,1fr));gap:.75rem;width:min(700px,96%);margin:2rem auto 0;text-align:center}.countdown .segment{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1rem}.countdown .num{display:block;font-size:clamp(1.6rem,5vw,2.4rem);font-weight:800;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"lnum" 1}.countdown .label{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.section{padding:3.5rem 0}.details.section{padding-top:5rem}.section-title{font-family:playfair display,Georgia,serif;font-size:clamp(1.6rem,3.5vw,2.1rem);margin:0 0 1.25rem}.sub{margin:0 0 .5rem;color:var(--text);font-weight:700}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.venue-text{color:var(--text);opacity:.92}.chip-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.chip{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:999px;padding:.4rem .75rem;text-decoration:none;cursor:pointer}.chip:hover{border-color:var(--ring);box-shadow:0 0 0 4px var(--ring)}.families-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.families-grid ul{list-style:none;padding:0;margin:0}.families-grid li{padding:.4rem 0;border-bottom:1px dashed var(--border)}.footer{padding:2.5rem 0;color:var(--muted);text-align:center}.om-wrap{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-bottom:.75rem}.ganesha-logo{width:360px;height:auto;display:block;filter:drop-shadow(0 6px 20px rgba(0,0,0,.45))}.om-text{font-weight:700;letter-spacing:.06em;color:var(--text);opacity:.9}@media(max-width:720px){.details-grid,.families-grid{grid-template-columns:1fr}.countdown{grid-template-columns:repeat(2,1fr)}.details.section{padding-top:4rem}}html,body{scroll-snap-type:y mandatory}.page>section,.page>footer{min-block-size:100vh;min-block-size:100svh;scroll-snap-align:start;scroll-snap-stop:always;display:grid;align-content:center}html{scroll-behavior:smooth}.slide{position:relative;isolation:isolate}.slide::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(60% 50% at 50% 0%,rgba(255,255,255,4%),transparent 60%);pointer-events:none}.slide .container{position:relative;z-index:1}.slide-om .ganesha-logo{width:clamp(120px,22vw,220px)}.slide-om .om-text{font-family:noto serif devanagari,playfair display,Georgia,serif;font-weight:800;font-size:clamp(1.2rem,4vw,2.2rem);letter-spacing:.02em;color:#ff4f00;text-shadow:0 6px 30px rgba(255,79,0,.25)}.welcome-title{font-family:playfair display,Georgia,serif;text-align:center;font-weight:900;font-size:clamp(1.8rem,5vw,3rem);background:linear-gradient(90deg,var(--primary),var(--primary-2));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 6px 30px rgba(244,114,182,.2)}.slide-names .names{font-size:clamp(3rem,9vw,6rem)}.slide-names .eyebrow{font-size:.95rem;opacity:.9}.slide-details .date{font-size:clamp(1.1rem,3.2vw,1.6rem)}.slide-details .venue-name{font-size:clamp(1.2rem,3.8vw,1.9rem)}.slide-details .countdown{margin-top:2rem}.slide-footer .container p{font-size:.95rem}.countdown-sticky{position:fixed;left:0;right:0;bottom:0;z-index:10;background:linear-gradient(180deg,rgba(2,6,23,0),rgba(2,6,23,.6) 12%,rgba(2,6,23,.9));backdrop-filter:blur(6px);border-top:1px solid var(--border);padding:.35rem .5rem calc(.35rem + env(safe-area-inset-bottom))}.countdown-sticky-inner{width:min(900px,96%);margin:0 auto;display:grid;grid-template-columns:repeat(4,max-content);gap:.75rem;align-items:center;justify-content:center}.countdown-sticky .piece{display:grid;grid-template-columns:max-content max-content;gap:.35rem;align-items:baseline;background:var(--card);border:1px solid var(--border);padding:.35rem .6rem;border-radius:999px}.countdown-sticky .num{font-weight:800;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"lnum" 1}.countdown-sticky .label{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}@media(max-width:720px){.countdown-sticky-inner{gap:.5rem}.countdown-sticky .piece{padding:.3rem .5rem}}.made-with-love{font-size:.9rem;color:var(--muted);text-align:center;margin-top:2rem}.slide-summary .invitation-card{width:min(900px,92%);margin:0 auto;background:rgba(255,255,255,3%);border:1px solid var(--border);border-radius:18px;padding:clamp(1rem,4vw,2rem);margin-bottom:2rem;box-shadow:0 10px 40px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,255,255,2%);text-align:center}.slide-summary .summary-logo{width:clamp(100px,18vw,160px)}.slide-summary .cta-row{margin-top:.5rem}.slide-summary .date{font-size:clamp(1.1rem,3.2vw,1.5rem);font-weight:800;color:var(--text);text-shadow:0 2px 10px rgba(0,0,0,.45)}.slide-summary .venue-name{font-size:clamp(1.2rem,3.8vw,1.9rem);font-weight:900;text-shadow:0 2px 10px rgba(0,0,0,.45)}