*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;font-family:Montserrat,Arial,sans-serif}section{padding:120px 0}section>div{width:min(1100px,90%);margin:auto}small{letter-spacing:4px;font-size:8px}.countdown{display:flex;justify-content:center;align-items:end;gap:25px;margin:55px 0}.countdown b{font:50px "Cormorant Garamond",serif;display:block}.countdown small{font-size:7px;letter-spacing:2px;opacity:.65}.countdown i{font-size:25px;font-style:normal}.venuegrid{display:grid!important;grid-template-columns:1fr 1fr;gap:20px}.venuegrid>div{padding:55px;text-align:center;border:1px solid #ccc}.venue h2{font:40px "Cormorant Garamond",serif}.venue a{font-size:8px;letter-spacing:2px;color:var(--accent)}.final{text-align:center;padding:130px 20px!important;background:var(--surface)}.final h2{font:70px "Cormorant Garamond",serif}.final h2 i{font:30px "Great Vibes",cursive;color:var(--accent)}footer{text-align:center;padding:25px;font-size:8px;letter-spacing:3px}.gallery{display:grid!important;grid-template-columns:1.4fr 1fr;grid-auto-rows:270px;gap:15px}.photo{background-size:cover;background-position:center;min-height:200px}.p0{grid-row:span 2}.gallery-empty{min-height:300px;display:grid;place-items:center;text-align:center;border:1px dashed #bbb}.gallery-empty span{font-size:70px}.gallery-empty p{font:28px "Cormorant Garamond"}
#loader{position:fixed;inset:0;background:#faf7f4;z-index:9999;display:grid;place-content:center;text-align:center;gap:10px;transition:.8s}.loader-mark{font:60px "Cormorant Garamond";border:1px solid #a8796d;border-radius:50%;width:90px;height:90px;display:grid;place-items:center;color:#a8796d}.done{opacity:0;pointer-events:none}
body.white-rose{--accent:#a8796d;--surface:#eee5df;background:#faf7f4;color:#352925}.roseNav{position:absolute;z-index:5;top:0;left:0;right:0;padding:25px 5%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:3px;color:#fff}.roseHero{height:100svh;min-height:650px;background-color:#6d5a53;background-position:center;background-size:cover;display:grid;place-items:center;text-align:center;color:#fff;position:relative}.roseHero>div:first-of-type{z-index:2}.roseHero h1{font:500 clamp(70px,12vw,155px) "Cormorant Garamond";line-height:.65;margin:45px 0}.roseHero h1 em{display:block;font:35px "Great Vibes";color:#f2d4cc;margin:25px}.roseHero p{font-size:9px;letter-spacing:4px}.roseHero a{display:grid;place-items:center;width:50px;height:50px;border:1px solid #fff8;border-radius:50%;margin:45px auto;color:#fff;text-decoration:none}.flower,.flower2{position:absolute;font-size:160px;color:#fff;opacity:.75}.flower{left:-25px;top:18%;transform:rotate(-20deg)}.flower2{right:-25px;bottom:12%;transform:rotate(25deg)}.intro{text-align:center}.intro h2{font:500 clamp(55px,8vw,100px) "Cormorant Garamond";line-height:.85}.intro h2 em{font:40px "Great Vibes";color:var(--accent)}.story{background:#eee5df}.story h2,.floral h2,.memories h2{font:55px "Cormorant Garamond"}.story article{display:grid;grid-template-columns:110px 1fr;max-width:700px;margin:auto;padding:25px 0;border-bottom:1px solid #cdbdb5}.story article>b{font:25px "Cormorant Garamond";color:var(--accent)}.story h3,.floral h3{font:25px "Cormorant Garamond";margin:0}.story p,.event p{font-size:11px;color:#766862}.floral .event{display:grid;grid-template-columns:100px 1fr;max-width:800px;margin:auto;padding:25px 0;border-bottom:1px solid #d7c8c0}.floral time{color:var(--accent)}.memories{background:#e8ddd7}
body.royal-black{--accent:#d7b66d;--surface:#15120d;background:#0a0907;color:#e9dfcd}.royalHero{min-height:100svh;display:grid;place-items:center;text-align:center;background-color:#15120d;background-position:center;background-size:cover;position:relative}.frame{position:absolute;inset:35px;border:1px solid #d7b66d88}.frame:before,.frame:after{content:"✦";position:absolute;color:#d7b66d;font-size:28px;background:#0a0907;padding:8px}.frame:before{top:-20px;left:-18px}.frame:after{bottom:-20px;right:-18px}.royalHero>div:last-child{z-index:2}.royalHero h1{font:400 clamp(70px,11vw,150px) "DM Serif Display";margin:45px 0}.royalHero h1 i{font:35px "Great Vibes";color:#d7b66d}.royalHero>b{font:60px "Cormorant Garamond";color:#d7b66d}.royalHero span{font-size:8px;letter-spacing:4px;display:block}.royalHero a{display:inline-block;margin-top:45px;border:1px solid #d7b66d88;padding:15px 25px;font-size:8px;letter-spacing:3px;color:#d7b66d;text-decoration:none}.royal{text-align:center}.royal h2,.royalProg h2{font:55px "DM Serif Display"}.royal .venuegrid{margin-top:50px}.royal .venuegrid>div{background:#15120d;border-color:#4a3b24}.royalProg{background:#15120d;padding:120px 5%}.royalProg h2{font-size:75px}.royalProg .event{display:grid;grid-template-columns:100px 1fr;max-width:800px;padding:25px 0;border-top:1px solid #3c3020}.royalProg h3{font:28px "Cormorant Garamond";margin:0}.royalPhoto{height:80vh;background-color:#15120d;background-position:center;background-size:cover;display:grid;place-items:center}.royalPhoto h2{font:70px "DM Serif Display";border:1px solid #d7b66d99;padding:70px 12vw;background:#0005}
body.editorial{background:#efe7da;color:#2c251f;--accent:#7c5a3b;--surface:#e2d6c4}.ednav{height:70px;padding:0 4%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #c9baa5;font-size:8px;letter-spacing:3px}.edHero{min-height:calc(100svh - 70px);width:90%;max-width:1250px;margin:auto;display:grid;grid-template-columns:100px 1fr 100px;align-items:center}.edHero h1{font:500 clamp(75px,12vw,160px)/.7 "Playfair Display";letter-spacing:-7px}.edHero h1 i{font:40px "Great Vibes";color:var(--accent);letter-spacing:0}.edHero small b{font:80px "Playfair Display";line-height:.7;display:block;margin:20px 0}.edHero>span{text-align:right;font-size:8px;letter-spacing:2px}.edCount{background:#ddd0bc;padding:120px 5%;display:grid;grid-template-columns:1fr 1fr;align-items:center}.edCount h2,.edProg h2{font:65px "Playfair Display"}.edCount .countdown{justify-content:end}.edCollage{display:grid;grid-template-columns:2fr 1fr;gap:30px;width:90%;max-width:1100px;margin:auto;padding:120px 0}.big{height:700px;background:#c8bba8;background-position:center;background-size:cover}.edCollage blockquote{font:45px "Playfair Display";align-self:end;margin:0}.edCollage em{color:var(--accent)}.edProg{padding:120px 5%}.edProg .event{display:grid;grid-template-columns:120px 1fr;max-width:850px;padding:25px 0;border-top:1px solid #b9aa96}.edProg h3{font:28px "Playfair Display";margin:0}
body.garden{background:#edf1e7;color:#253026;--accent:#637b57;--surface:#dce5d5}.gardenHero{min-height:100svh;display:grid;place-items:center;text-align:center;background-color:#52684b;background-position:center;background-size:cover;position:relative;color:#fff}.gardenHero h1{font:400 clamp(80px,13vw,170px) "Great Vibes";margin:45px 0 15px}.gardenHero h1 span{font:35px "Cormorant Garamond";color:#e0ce99}.gardenHero a{display:inline-block;margin-top:40px;border:1px solid #fff8;border-radius:30px;padding:14px 25px;font-size:8px;letter-spacing:3px;color:#fff;text-decoration:none}.leaf{position:absolute;left:0;top:10%;font:180px "Cormorant Garamond";opacity:.45}.gardenWelcome{text-align:center}.gardenWelcome h2{font:60px "Cormorant Garamond";line-height:.85}.gardenWelcome em{font:45px "Great Vibes";color:var(--accent)}.gardenWelcome p{max-width:500px;margin:auto;font-size:12px;color:#687366}.gardenPath{background:#dce5d5}.gardenPath h2{font:65px "Cormorant Garamond"}.gardenPath .event{display:grid;grid-template-columns:100px 1fr;max-width:800px;padding:25px 0;border-left:1px solid #84997a;padding-left:35px}.gardenPath h3{font:28px "Cormorant Garamond";margin:0}
body.sunset{background:#201110;color:#f6e7df;--accent:#ffb16b;--surface:#331a17}.sunsetHero{min-height:100svh;display:grid;place-items:center;text-align:center;background:linear-gradient(140deg,#ed7c53,#3a1716);position:relative;overflow:hidden}.glow{position:absolute;width:60vw;height:60vw;border-radius:50%;background:#ffc47c44;filter:blur(90px);top:-20%;right:-10%}.sunsetHero>div:last-child{z-index:2}.sunsetHero h1{font:300 clamp(70px,12vw,160px) "Manrope";letter-spacing:-7px}.sunsetHero h1 span{font:50px "Great Vibes";color:#ffc17f}.sunsetHero b{font-size:9px;letter-spacing:3px}.sunsetHero a{display:block;margin-top:45px;font-size:8px;letter-spacing:4px;color:#fff;text-decoration:none}.sunsetWelcome,.sunsetProg{padding:120px 5%}.sunsetWelcome h2,.sunsetProg h2{font:300 70px "Manrope";letter-spacing:-4px}.sunsetWelcome .venuegrid{margin-top:90px}.sunsetWelcome .venuegrid>div{background:#331a17;border-color:#61352c;border-radius:28px}.sunsetProg .event{display:flex;gap:30px;max-width:800px;padding:25px 0;border-bottom:1px solid #63352d}.sunsetProg h3{font:28px "Manrope";margin:0}.sunsetPhoto{min-height:80vh;background-color:#331a17;background-position:center;background-size:cover;display:grid;place-items:center}.sunsetPhoto h2{font:70px "Manrope";background:#160b0bcc;padding:60px 12vw}
body.midnight{background:#050c16;color:#e9eef6;--accent:#d7bf7c;--surface:#0b1726}.nightHero{min-height:100svh;position:relative;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 20%,#315a85,#050c16 65%);overflow:hidden}.nightHero canvas{position:absolute;inset:0;width:100%;height:100%}.nightHero>div:last-child{z-index:2}.nightHero h1{font:400 clamp(70px,12vw,155px) "Playfair Display"}.nightHero h1 i{font:35px "Great Vibes";color:#d7bf7c}.nightHero a{display:inline-block;margin-top:50px;border:1px solid #d7bf7c88;padding:14px 25px;font-size:8px;letter-spacing:3px;color:#d7bf7c;text-decoration:none}.nightCount{text-align:center}.nightCount h2,.nightProg h2{font:65px "Playfair Display"}.nightCount b{color:#d7bf7c}.nightGrid{background:#07121f;padding:100px 5%}.nightGrid .venuegrid>div{background:#ffffff08;border-color:#ffffff15;backdrop-filter:blur(12px)}.nightProg{padding:120px 5%}.nightProg .event{display:grid;grid-template-columns:120px 1fr;max-width:850px;padding:25px 0;border-bottom:1px solid #23364d}.nightProg h3{font:28px "Playfair Display";margin:0}
#music{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;border:1px solid #ffffff66;background:#111;color:#fff;z-index:1000}
@media(max-width:700px){section{padding:80px 0}.venuegrid,.edCount{grid-template-columns:1fr!important}.edHero{grid-template-columns:50px 1fr 40px}.edHero h1{font-size:65px;letter-spacing:-4px}.gallery{grid-template-columns:1fr!important}.p0{grid-row:span 1}.countdown{gap:7px}.countdown b{font-size:37px}.royalHero h1{font-size:70px}.royalPhoto h2,.sunsetPhoto h2{font-size:50px}.sunsetHero h1{font-size:65px;letter-spacing:-4px}.nightHero h1{font-size:68px}.story article{grid-template-columns:70px 1fr}.floral .event,.royalProg .event,.edProg .event,.gardenPath .event,.nightProg .event{grid-template-columns:80px 1fr}}
