@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Cinzel:wght@400;500;600&display=swap');
@font-face{font-family:Candlescript;src:url('assets/Candlescript.otf') format('opentype');font-display:swap}
:root{--wine:#7e2539;--cream:#fcf4e7;--sage:#425438;--gold:#b48d4a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--wine);font:22px/1.45 'Cormorant Garamond',Georgia,serif}a{color:inherit}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}h1,h2,p{margin:0}h1,h2{font-family:Candlescript,cursive;font-weight:400;line-height:1.2}h1{font-size:76px}h2{font-size:64px}.eyebrow{font:10px/1.8 Cinzel,Georgia,serif;letter-spacing:2px;text-transform:uppercase}.ornament{font-size:30px;color:var(--gold);margin:18px 0}#opening{min-height:100svh;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:14px;background:radial-gradient(ellipse at center,#fffdf6,#eadac0)}.opening-intro{text-align:center}.opening-intro h1{font-size:48px;margin:8px 0}.opening-intro i{font-family:Georgia,serif;font-size:24px}.opening-date{font-size:16px;letter-spacing:1px}.video-wrap{position:relative;aspect-ratio:9/16;width:min(100%,360px,32svh);box-shadow:0 10px 50px #614e3020}video{display:block;width:100%;height:100%;object-fit:contain}#monogram{position:absolute;top:49%;left:50%;width:34%;transform:translate(-50%,-50%);pointer-events:none}#opening.playing #monogram{opacity:0;transition:opacity .6s}#open{background:#fffaf0;border:1px solid #b49461;padding:9px 24px;font-size:16px;letter-spacing:2px;color:#704833;border-radius:3px}#skip{background:none;border:0;color:var(--wine);font-size:15px}#video-message{font-size:14px}nav{height:76px;display:flex;justify-content:space-between;align-items:center;padding:0 5vw;border-bottom:1px solid #b78d4325;background:#fff9ee}nav img{width:75px;height:70px;object-fit:contain;display:block}nav div{display:flex;gap:35px}nav a{text-decoration:none;font:11px Cinzel,serif;letter-spacing:1px}main{width:100%;max-width:none}.scene{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:850px;overflow:hidden}.artwork{background-size:cover;background-position:center;min-height:100%;order:2}.copy{padding:70px 5vw;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;order:1}.blessing{background:#fbf4e6;color:var(--sage)}.blessing .artwork{background-image:url('assets/garden.png');background-position:center bottom;order:1}.blessing .copy{order:2;padding-top:40px;padding-bottom:50px}.mahaveer{height:105px;width:105px;object-fit:contain;margin-bottom:12px}.invocation{font-size:20px;color:var(--wine)}.welcome{font-style:italic;margin-bottom:20px}.blessing h1,.blessing h2{color:var(--wine);font-size:65px;margin:10px 0}.blessing .copy>p:not(.eyebrow){font-size:20px}.grandparents{margin-top:10px;font-style:italic}.with{margin:15px 0 0;font-style:italic}.blessing .ornament{margin:14px 0}.sangeet{background:#4c080d;color:#fff5e6}.sangeet .artwork{background-image:url('assets/celebration.png')}.sangeet .copy{background:radial-gradient(ellipse at center,#7e171b,#3a080d)}.haldi{background:#fbe6d5;color:#783f48}.haldi .artwork{background-image:url('assets/mandap.png');order:1}.haldi .copy{order:2;background:radial-gradient(ellipse at center,#fff6ec,#efd4c5)}.wedding{background:#f9d4a8;color:#172f43}.wedding .artwork{background-image:url('assets/ceremony.png')}.wedding .copy{background:radial-gradient(ellipse at center,#fff1d6,#f5c58e)}.copy h2{margin:22px 0 0}.event-date{font-size:25px;font-style:italic;margin:8px 0 16px}dl{width:100%;max-width:390px;margin:6px auto 0}dl div{display:flex;justify-content:space-between;gap:18px;text-align:left;padding:13px 0;border-bottom:1px solid currentColor}dt{font-style:italic}dd{margin:0;white-space:nowrap;font-weight:600;text-align:right}.theme{margin-top:34px}.theme span{font:10px Cinzel,serif;letter-spacing:2px;text-transform:uppercase}.theme p{font-size:27px;font-style:italic;margin-top:6px}.vidai{margin-top:24px;width:100%}.vidai .event-date{font-size:22px}.countdown-section{text-align:center;padding:64px 16px;background:radial-gradient(ellipse at center,#fffcf4,#f6e6d6)}.countdown-section h2{font-size:48px;margin:12px 0 30px}.scratch-frame{position:relative;width:min(100%,660px);aspect-ratio:1637/970;margin:auto;background:url('assets/scratch-frame.png') center/100% 100% no-repeat}.countdown-inner{position:absolute;inset:22% 16%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.countdown-date{font:25px Cinzel,Georgia,serif;letter-spacing:2px}#countdown{display:flex;gap:14px}#countdown div{display:flex;flex-direction:column;gap:7px;font:9px Cinzel,serif;text-transform:uppercase;letter-spacing:1px}#countdown b{font:32px Cinzel,serif;font-weight:400;min-width:64px;padding:12px 6px;border:1px solid #e7cdb0;border-radius:12px;background:#fcf0dfaa}#scratch{position:absolute;left:17%;top:21%;width:66%;height:59%;border-radius:24px;touch-action:none;cursor:crosshair;transition:opacity .7s}#scratch.revealed{opacity:0;pointer-events:none}.text-button{background:none;border:0;color:var(--wine);font-size:16px;padding:12px;margin-top:22px}.venue{text-align:center;padding:75px 20px;background:#f5ecdc}.venue h2{font-size:52px;margin:18px 0}.venue p:not(.eyebrow){font-size:23px;font-style:italic}.map-button{display:inline-block;margin-top:25px;border:1px solid var(--gold);border-radius:30px;padding:14px 26px;text-decoration:none;font-size:18px;background:#fffbf4}footer{text-align:center;padding:45px 20px;background:#fbf4e7}.footer-logo{width:180px;height:180px;object-fit:contain}footer h2{font-size:47px;margin:20px 0}footer h3{font:13px Cinzel,serif;letter-spacing:3px;margin:25px 0 15px}footer p{line-height:1.65}footer .eyebrow:last-child{margin-top:35px}#music-toggle,#scroll-down{position:fixed;right:20px;border:1px solid #c1a170;color:var(--wine);background:#fffaf0ed;box-shadow:0 4px 18px #0001;z-index:10}#music-toggle{bottom:20px;width:46px;height:46px;border-radius:50%;font-size:25px}#scroll-down{bottom:80px;border-radius:28px;padding:12px 10px;font-size:27px;display:flex;flex-direction:column;align-items:center}#scroll-down span{font:8px Cinzel,serif;letter-spacing:1px}#fireworks{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:100}
@media(min-width:1100px){#opening{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto auto;gap:12px 50px;padding:6vh 12vw}.opening-intro{grid-column:1;grid-row:1/4}.opening-intro h1{font-size:85px}.opening-intro .eyebrow{font-size:12px}.opening-date{font-size:22px}.video-wrap{grid-column:2;grid-row:1;width:min(100%,39svh);justify-self:center;align-self:end}#open,#skip{grid-column:2;justify-self:center}#video-message{position:absolute;bottom:10px;right:12vw}}
@media(max-width:760px){body{font-size:18px}nav{height:64px;padding:0 15px}nav img{width:58px;height:58px}nav div{gap:15px}nav a{font-size:9px;letter-spacing:.5px}.scene{display:block;min-height:0;aspect-ratio:941/1672;background-size:100% 100%;background-position:center}.artwork{display:none}.scene .copy{background:none;padding:23% 10% 0;display:block}.scene h2{font-size:clamp(39px,10vw,65px);margin:8px 0;line-height:1.15}.scene .eyebrow{font-size:8px;letter-spacing:1px}.scene .ornament{margin:10px 0;font-size:22px}.event-date{font-size:clamp(18px,4.6vw,25px);margin:10px 0}dl{max-width:390px}dl div{padding:8px 0;gap:10px;font-size:clamp(17px,4.4vw,23px)}.theme{margin-top:16px}.theme p{font-size:23px}.sangeet{background-image:url('assets/celebration.png')}.haldi{background-image:url('assets/mandap.png')}.haldi .copy{padding-top:58%}.wedding{background-image:url('assets/ceremony.png')}.wedding .copy{padding:5% 8% 0}.wedding .copy h2{font-size:40px;margin:6px 0}.wedding .event-date{font-size:17px;margin:6px 0}.wedding .ornament{margin:5px}.wedding dl div{padding:4px 0;font-size:17px}.vidai{margin-top:12px}.blessing{background-image:url('assets/garden.png');aspect-ratio:auto;min-height:1080px}.blessing .copy{padding:25px 25px 300px}.blessing h1,.blessing h2{font-size:57px;margin:9px 0}.blessing .copy>p:not(.eyebrow){font-size:17px;line-height:1.45}.mahaveer{height:90px;width:90px}.welcome{margin-bottom:15px}.blessing .with{margin-top:12px}.countdown-section{padding:42px 4px}.countdown-section h2{font-size:40px;margin-bottom:15px}.countdown-inner{gap:8px}.countdown-inner .eyebrow{font-size:8px}.countdown-date{font-size:clamp(14px,4vw,23px);letter-spacing:.5px}#countdown{gap:7px}#countdown b{min-width:40px;font-size:22px;padding:7px 4px;border-radius:9px}#countdown div{font-size:7px;letter-spacing:.5px}.venue h2{font-size:39px}.venue p:not(.eyebrow){font-size:19px}footer h2{font-size:37px}#music-toggle,#scroll-down{right:10px}.text-button{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:760px){
 .sangeet .copy{padding:21% 9% 0}.sangeet .copy h2{font-size:42px}.sangeet .theme{margin-top:9px}.sangeet .theme p{font-size:20px;margin-top:2px}.sangeet dl div{padding:5px 0;font-size:16px}.sangeet .ornament{margin:4px 0}
 .haldi .copy{padding:49% 12% 0}.haldi .copy h2{font-size:40px}.haldi .theme{margin-top:9px}.haldi .theme p{font-size:20px;margin-top:2px}.haldi .ornament{margin:3px 0}.haldi .event-date{margin:5px 0}
 .wedding .copy{padding:3% 8% 0}.wedding .copy h2{font-size:36px;margin:3px 0}.wedding .copy .ornament{display:none}.wedding .copy .event-date{font-size:16px;margin:4px 0}.wedding .copy dl{margin-top:0}.wedding .copy dl div{font-size:15px;padding:2px 0}.wedding .vidai{margin-top:5px}.wedding .copy .eyebrow{font-size:7px}
}
/* Full-screen opening and artwork overlays on every screen size. */
#opening{display:block;height:100svh;min-height:100svh;padding:0;overflow:hidden}
.opening-intro{display:none}
#opening .video-wrap{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;box-shadow:none}
#opening video{width:100%;height:100%;object-fit:cover;object-position:center}
#monogram{top:49%;width:clamp(100px,22vw,230px)}
#open,#skip{position:absolute;bottom:7%;left:50%;transform:translateX(-50%);z-index:2;white-space:nowrap;background:#fffaf0ed;border:1px solid #b49461;padding:10px 24px}
#video-message{position:absolute;bottom:2%;left:0;right:0;text-align:center}
.scene{display:block;container-type:inline-size;min-height:0;height:1100px;aspect-ratio:auto;background-size:100% 100%;background-position:center}
.scene .artwork{display:none}
.blessing{background-image:url('assets/garden.png');height:1250px}
.sangeet{background-image:url('assets/celebration.png')}
.haldi{background-image:url('assets/mandap.png')}
.wedding{background-image:url('assets/ceremony.png')}
.scene .copy{display:block;position:absolute;left:50%;transform:translateX(-50%);width:80%;max-width:750px;padding:0;background:none}
.blessing .copy{top:3%;max-width:750px;padding:0}
.sangeet .copy{top:15%}
.haldi .copy{top:30%}
.wedding .copy{top:3%}
.scene .copy h2{font-size:64px;margin:6px 0;line-height:1.1}
.scene .copy .ornament{margin:5px 0;font-size:22px}
.scene .copy .event-date{font-size:25px;margin:8px 0}
.scene .copy dl{max-width:600px;margin:0 auto}
.scene .copy dl div{padding:4px 0;font-size:22px}
.sangeet dl div:last-child{display:block;text-align:center;border:0}
.sangeet dl div:last-child dt{white-space:nowrap}
.sangeet dl div:last-child dd{text-align:center}
.scene .theme{display:flex;justify-content:center;align-items:baseline;gap:8px;margin-top:8px;white-space:nowrap}
.scene .theme span{font-size:11px;letter-spacing:.5px}
.scene .theme p{font-size:22px;margin:0}
.scene .vidai{margin-top:8px}
.wedding .copy .ornament{display:none}
@media(max-width:760px){
 .scene{height:auto;aspect-ratio:941/1672}
 .blessing{height:1080px;aspect-ratio:auto}
 .scene .copy{width:84%}
 .blessing .copy{width:86%}
 .sangeet .copy{top:14%}
 .haldi .copy{top:29%}
 .scene .copy h2{font-size:10cqw;margin:3px 0}
 .scene .copy .eyebrow{font-size:1.8cqw;letter-spacing:.6px}
 .scene .copy .event-date{font-size:4.3cqw;margin:4px 0}
 .scene .copy .ornament{font-size:4cqw;margin:2px 0}
 .scene .copy dl div{font-size:4.2cqw;padding:2px 0;line-height:1.3}
 .scene .theme{gap:5px;margin-top:5px}
 .scene .theme span{font-size:2.4cqw;letter-spacing:0}
 .scene .theme p{font-size:4.4cqw}
 .scene .vidai{margin-top:4px}
 .blessing .copy h1,.blessing .copy h2{font-size:14cqw}
 .wedding .copy h2{font-size:9cqw}
}
