@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,600&family=Noto+Sans+Telugu:wght@400;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,500;1,700&family=Yatra+One&display=swap";:root{--cream:#f9ede8;--mauve:#c17070;--burgundy:#6b1a1a;--deep-maroon:#3d0a0a;--temple-gold:#c8960c;--gold-light:#e8c060;--gold-dark:#7a5500;--saree-teal:#1b6b5a;--sherwani-navy:#1a2b5a;--saree-orange:#d4671a;--lotus-pink:#d4607a;--tulsi-green:#4a7a3a;--turmeric:#e8a000;--kumkum:#c0282e;--jasmine-white:#fdf8f0;--sandal:#d4a574}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{background:var(--cream);color:var(--deep-maroon);background-image:repeating-linear-gradient(135deg,#c1707008 0 8px,#0000 8px 18px);font-family:Cormorant Garamond,serif;font-size:18px;line-height:1.9}a{color:inherit}p,h1,h2,h3,h4,h5{margin:0}img,canvas,iframe{max-width:100%}section[id]{scroll-margin-top:84px}.site-shell{position:relative;overflow-x:hidden}.telugu{color:var(--burgundy);font-family:Noto Sans Telugu,sans-serif;font-style:normal}.section{padding:100px 28px 86px;position:relative}.section-heading{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-bottom:28px;display:flex}.section-heading h3{color:var(--burgundy);letter-spacing:.02em;font-family:Playfair Display,serif;font-size:clamp(2rem,3.8vw,2.8rem);font-style:italic}.section-heading .light{color:var(--jasmine-white)}.section-heading p{font-size:1.12rem}.gold-shimmer{background:linear-gradient(90deg, var(--gold-dark), var(--gold-light), var(--gold-dark));color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:3s ease-in-out infinite shimmer}@keyframes shimmer{0%,to{background-position:0%}50%{background-position:100%}}.top-nav{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#3d0a0af7;border-bottom:1px solid #c8960c2e;width:100%;transition:background-color .4s;position:fixed;top:0;left:0}.top-nav.is-solid{background:#3d0a0a}.nav-row{grid-template-columns:auto 1fr auto 1fr auto auto;align-items:center;gap:14px;max-width:1400px;min-height:64px;margin:0 auto;padding:6px 20px;display:grid}.deepam{width:42px;height:42px}.deepam.mirrored{transform:scaleX(-1)}.nav-title{color:var(--gold-light);text-align:center;font-family:Playfair Display,serif;font-size:20px;font-style:italic;font-weight:600;line-height:1}.desktop-links{letter-spacing:.12em;text-transform:uppercase;color:var(--mauve);justify-content:center;align-items:center;gap:10px;font-family:Cormorant Garamond,serif;font-size:13px;display:flex}.desktop-links a{padding-bottom:4px;text-decoration:none;position:relative}.desktop-links a:after{content:"";background:var(--gold-light);width:0;height:1px;transition:width .3s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.desktop-links a:hover{color:var(--gold-light)}.desktop-links a:hover:after{width:100%}.nav-toggle{display:none}.hamburger{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:34px;height:28px;display:none}.hamburger span{background:var(--temple-gold);width:24px;height:2px;display:block}.mobile-menu{display:none}@media (hover:hover) and (pointer:fine){body{cursor:none}}@media (hover:none),(pointer:coarse){body{cursor:auto}#cursor-dot,#cursor-ring{display:none}}.hero-section{background:var(--deep-maroon);width:100%;height:100vh;min-height:680px;position:relative}.hero-canvas{position:absolute;inset:0}.hero-overlay{z-index:10;text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:120px 20px 80px;display:flex;position:absolute;inset:0}.hero-blessing{letter-spacing:.3em;color:var(--mauve);text-transform:uppercase;font-family:Cormorant Garamond,serif;font-size:15px;font-style:italic}.hero-name{font-family:Playfair Display,serif;font-size:clamp(38px,6vw,72px);font-style:italic;line-height:1}.hero-name.bride{color:var(--jasmine-white)}.hero-weds{letter-spacing:.2em;color:var(--mauve);text-transform:lowercase;font-family:Cormorant Garamond,serif;font-size:22px;font-style:italic}.hero-time{color:var(--gold-light);letter-spacing:.15em;font-family:Cormorant Garamond,serif;font-size:18px}.hero-venue{color:var(--mauve);font-size:16px;font-style:italic}.marquee-wrap{background:var(--burgundy);white-space:nowrap;border-top:1px solid #c8960c66;border-bottom:1px solid #c8960c66;overflow:hidden}.marquee-track{color:var(--jasmine-white);letter-spacing:.2em;text-transform:uppercase;padding:12px 0;font-family:Cormorant Garamond,serif;font-size:14px;animation:28s linear infinite marquee;display:inline-block}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.events-section{background:var(--cream)}.garland{transform-origin:top;width:min(1100px,96%);margin:0 auto 24px;animation:4s ease-in-out infinite alternate garlandSway;display:block}@keyframes garlandSway{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}.kolam-band{width:min(1100px,96%);height:auto;margin:4px auto 30px;display:block}.event-grid{grid-template-columns:repeat(3,1fr);gap:28px;width:min(1100px,100%);margin:0 auto;padding:0 16px 40px;display:grid}.event-card{border:1.5px solid var(--temple-gold);background:linear-gradient(160deg, #fff8f2, var(--cream));border-radius:6px;padding:36px 32px;transition:transform .4s cubic-bezier(.25,.46,.45,.94),box-shadow .4s;position:relative;overflow:hidden}.event-card:hover{transform:translateY(-8px);box-shadow:0 24px 64px #6b1a1a26,0 0 0 1px #c8960c4d}.card-corner{width:18px;height:18px;position:absolute}.card-corner.tl{top:8px;left:8px}.card-corner.tr{top:8px;right:8px}.card-corner.bl{bottom:8px;left:8px}.card-corner.br{bottom:8px;right:8px}.leaf{opacity:.2;width:30px;height:80px;position:absolute;top:24px}.leaf.left{left:2px}.leaf.right{right:2px;transform:scaleX(-1)}.event-illustration{width:80px;height:80px;margin:0 auto 14px;display:block}.event-title{text-align:center;color:var(--burgundy);font-size:26px;font-weight:700;line-height:1.2}.event-title.pelli{font-size:28px}.event-sub{text-align:center;color:var(--mauve);font-family:Playfair Display,serif;font-size:16px;font-style:italic}.event-note{text-align:center;color:var(--mauve);letter-spacing:.1em;font-size:14px}.event-card hr{border:0;border-top:1px solid var(--mauve);width:60px;margin:12px auto}.event-card hr.pink{border-top-color:var(--lotus-pink)}.event-card hr.gold{border-top-color:var(--temple-gold)}.event-date{text-align:center;color:var(--burgundy);font-family:Playfair Display,serif;font-size:18px}.event-time{text-align:center;color:var(--temple-gold);font-size:16px;font-style:italic}.event-time-main{text-align:center;margin-top:2px;font-family:Playfair Display,serif;font-size:24px;font-weight:700}.event-lunch{text-align:center;color:var(--kumkum);font-size:15px;font-style:italic;font-weight:600}.event-place-title{text-align:center;color:var(--burgundy);margin-top:8px;font-family:Playfair Display,serif;font-size:15px}.event-place{text-align:center;color:var(--deep-maroon);font-size:14px;line-height:1.5}.attend-block{text-align:center;margin-top:18px}.attend-counter{margin-bottom:10px}.count-number{color:var(--temple-gold);font-family:Playfair Display,serif;font-size:28px;font-weight:700}.count-label{color:var(--burgundy);font-size:14px;font-style:italic}.attend-btn{border:1.5px solid var(--temple-gold);background:var(--deep-maroon);color:var(--gold-light);cursor:pointer;border-radius:32px;padding:11px 28px;font-family:Cormorant Garamond,serif;font-size:16px;transition:all .25s}.attend-btn:hover{background:var(--temple-gold);color:var(--deep-maroon);transform:scale(1.03)}.attend-btn.confirmed,.attend-btn:disabled{background:var(--temple-gold);color:var(--deep-maroon);border-color:var(--gold-dark);cursor:default;transform:none}.couple-section{background:var(--deep-maroon)}.couple-grid{grid-template-columns:1fr auto 1fr;align-items:center;gap:48px;width:min(1100px,100%);margin:12px auto 0;display:grid}.person-card{text-align:center}.portrait-bg{background:var(--deep-maroon);width:min(280px,90%);margin:0 auto}.person-image{mix-blend-mode:screen;width:100%;display:block}.person-card h4{color:var(--jasmine-white);margin-top:8px;font-family:Playfair Display,serif;font-size:28px;font-style:italic}.person-card p{color:var(--gold-light);font-size:16px;line-height:1.8}.monogram-column{flex-direction:column;align-items:center;gap:10px;display:flex}.monogram-column .telugu{color:var(--temple-gold);font-size:20px}.vertical-line{background:linear-gradient(to bottom, var(--temple-gold), transparent);width:1px;height:120px}.how-we-met{max-width:780px;color:var(--gold-light);text-align:center;margin:28px auto 0;font-style:italic}.venue-section{background:var(--cream)}.venue-grid{grid-template-columns:1fr 1fr;gap:40px;width:min(960px,100%);margin:0 auto;display:grid}.venue-canvas{border:1.5px solid var(--temple-gold);background:#ead8c0;border-radius:8px;min-height:400px;overflow:hidden}.venue-details h4{color:var(--burgundy);font-family:Playfair Display,serif;font-size:32px;font-style:italic}.venue-details .place{color:var(--deep-maroon);font-size:16px}.venue-details .date{color:var(--burgundy);margin-top:12px;font-family:Playfair Display,serif;font-size:18px}.venue-details .time{color:var(--temple-gold);margin-bottom:8px;font-size:16px;font-style:italic}.venue-details details{border-bottom:1px solid #6b1a1a26;padding:2px 0}.venue-details summary{color:var(--burgundy);cursor:pointer;padding:12px 0;font-family:Playfair Display,serif;font-size:15px;list-style:none}.venue-details summary::marker{display:none}.venue-details summary::-webkit-details-marker{display:none}.venue-details summary:before{content:"▸";margin-right:8px;transition:transform .2s;display:inline-block}.venue-details details[open] summary:before{transform:rotate(90deg)}.venue-details details p{color:var(--deep-maroon);padding:0 0 14px 16px;font-size:15px;line-height:1.7}.map-wrap{border:1.5px solid var(--temple-gold);max-width:960px;height:300px;margin:32px auto 0;overflow:hidden}.map-wrap iframe{width:100%;height:100%}.rsvp-section{background:var(--deep-maroon);overflow:hidden}.rsvp-deadline{color:var(--mauve);font-size:16px;font-style:italic}.wedding-motion-stage{background:radial-gradient(circle at 15% 20%,#d4671a40,#0000 45%),radial-gradient(circle at 80% 10%,#4a7a3a33,#0000 42%),linear-gradient(145deg,#6b1a1a73,#3d0a0adb);border:1.5px solid #c8960c80;border-radius:16px;width:min(900px,100%);margin:34px auto 0;padding:24px;position:relative;box-shadow:0 22px 50px #00000047,inset 0 0 30px #e8c06014}.wedding-photo-frame{aspect-ratio:16/10;background:#2e0d0d;border:2px solid #e8c060ad;border-radius:14px;width:min(760px,100%);margin:0 auto;position:relative;overflow:hidden}.wedding-moving-photo{object-fit:cover;object-position:center;transform-origin:50%;will-change:transform;filter:saturate(1.06)contrast(1.03);width:100%;height:100%}.photo-light-sweep{pointer-events:none;mix-blend-mode:screen;background:linear-gradient(115deg,#0000 32%,#fff1c90f 44%,#fff1c96b 50%,#fff1c90d 58%,#0000 72%);animation:6.5s linear infinite photoSweep;position:absolute;inset:-35%}@keyframes photoSweep{0%{transform:translate(-36%)rotate(8deg)}to{transform:translate(36%)rotate(8deg)}}.motion-orb{opacity:.24;filter:blur(.4px);pointer-events:none;background:radial-gradient(circle at 30% 30%,#fff0cdb3,#d4671a26);border-radius:50%;position:absolute}.motion-orb.orb-1{width:120px;height:120px;top:6%;left:8%}.motion-orb.orb-2{width:86px;height:86px;top:18%;right:9%}.motion-orb.orb-3{width:96px;height:96px;bottom:14%;right:14%}.motion-petal{background:radial-gradient(circle at 35% 35%, #ffe3eb 0%, var(--lotus-pink) 70%);opacity:.45;pointer-events:none;border-radius:70%;width:10px;height:10px;position:absolute;bottom:24px}.motion-caption{text-align:center;color:var(--jasmine-white);margin-top:14px;font-size:18px;font-style:italic;line-height:1.65}.footer{background:var(--deep-maroon);text-align:center;border-top:2px solid #c8960c4d;place-items:center;gap:8px;padding:60px 40px;display:grid}.footer-leaves{justify-content:space-between;width:min(420px,100%);display:flex}.footer-leaves svg{width:120px;height:120px}.footer-leaves svg:last-child{transform:scaleX(-1)}.saptapadi{width:140px}.footer-bless{color:var(--gold-light);letter-spacing:.3em;margin-bottom:12px;font-size:16px;font-style:italic}.footer h4{font-family:Playfair Display,serif;font-size:28px;font-style:italic}.footer-weds{color:var(--mauve);font-size:16px;font-style:italic}.footer-time{color:var(--gold-light);font-size:16px}.footer-place{color:var(--mauve);font-size:16px}.footer-telugu{color:var(--temple-gold);font-size:18px}.footer-note{color:var(--mauve);opacity:.7;margin-top:8px;font-size:14px;font-style:italic}.flower-overlay{pointer-events:none;z-index:100;position:fixed;inset:0}#cursor-dot,#cursor-ring{pointer-events:none;z-index:1200;position:fixed;transform:translate(-50%,-50%)}#cursor-dot{background:var(--temple-gold);border-radius:50%;width:10px;height:10px}#cursor-ring{border:1px solid var(--gold-light);border-radius:50%;width:28px;height:28px}.splash{z-index:2000;background:var(--deep-maroon);transform-origin:top;place-items:center;display:grid;position:fixed;inset:0}.splash-inner{place-items:center;gap:8px;display:grid}.splash-blessing{color:var(--gold-light);letter-spacing:.25em;text-transform:uppercase;font-size:14px;font-style:italic}@keyframes flicker{0%,to{opacity:1;transform:scaleY(1)scaleX(1)}20%{opacity:.88;transform:scaleY(1.18)scaleX(.88)}40%{opacity:1;transform:scaleY(.92)scaleX(1.08)}60%{opacity:.92;transform:scaleY(1.12)scaleX(.92)}80%{opacity:1;transform:scaleY(.96)scaleX(1.04)}}.flame{transform-origin:bottom;animation:.9s ease-in-out infinite flicker}@media (width<=1023px){.nav-row{grid-template-columns:auto 1fr auto 1fr auto;gap:8px;padding:8px 10px}.nav-title{font-size:16px}.desktop-links{letter-spacing:.08em;gap:6px;font-size:11px}.section{padding:88px 22px 74px}.event-grid{grid-template-columns:repeat(2,1fr)}.couple-grid{grid-template-columns:1fr;gap:28px}.vertical-line{height:66px}.venue-grid{gap:24px}}@media (width<=767px){.desktop-links,.nav-title,.deepam{display:none}.nav-row{grid-template-columns:1fr auto;padding:12px 16px}.hamburger{justify-self:end;display:flex}.mobile-menu{background:#3d0a0afa;border-top:1px solid #c8960c38;max-height:0;transition:max-height .35s;display:block;overflow:hidden}.mobile-menu a{color:var(--mauve);text-align:center;letter-spacing:.1em;text-transform:uppercase;padding:0;font-size:13px;text-decoration:none;transition:padding .35s;display:block}.nav-toggle:checked~.mobile-menu{max-height:340px}.nav-toggle:checked~.mobile-menu a{padding:10px 8px}.hero-section{height:50vh;min-height:500px}.hero-overlay{gap:7px;padding:84px 14px 44px}.hero-blessing{letter-spacing:.2em;font-size:13px}.hero-time{font-size:15px}.marquee-track{letter-spacing:.12em;font-size:12px}.section{padding:78px 16px 70px}.section-heading p{font-size:1rem}.event-grid{grid-template-columns:1fr;padding:0}.event-card{padding:28px 20px}.attend-btn{width:100%}.attend-counter{text-align:center}.person-image{max-width:220px;margin:0 auto}.venue-grid{grid-template-columns:1fr}.venue-canvas{min-height:320px}.map-wrap{height:260px}#cursor-dot,#cursor-ring{display:none}}@media (width<=480px){.hero-name{font-size:38px}.section-heading h3{font-size:1.9rem}.wedding-motion-stage{padding:16px}.motion-caption{font-size:15px}.footer{padding:52px 18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
