@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,400&display=swap";*{box-sizing:border-box}html,body{color:#9a7441;background:radial-gradient(at 0 0,#d4a5748c 0%,#0000 40%),radial-gradient(at 100% 0,#d4a57480 0%,#0000 45%),radial-gradient(at 0 100%,#d4a57485 0%,#0000 50%),radial-gradient(at 100% 100%,#d4a57473 0%,#0000 55%),linear-gradient(135deg,#f9f0e2 0%,#f3e6d3 50%,#f9f0e2 100%);height:100dvh;min-height:-webkit-fill-available;margin:0;padding:0;font-family:Cormorant Garamond,serif;position:relative;overflow:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle at 20% 30%,#b28a491a 2px,#0000 2px),radial-gradient(circle at 80% 20%,#b28a4914 1.5px,#0000 1.5px),radial-gradient(circle at 40% 70%,#b28a4917 2.5px,#0000 2.5px),radial-gradient(circle at 70% 80%,#b28a4912 1px,#0000 1px),radial-gradient(circle at 10% 90%,#b28a4914 2px,#0000 2px),radial-gradient(circle at 90% 60%,#b28a491a 1.8px,#0000 1.8px);background-position:0 0,40px 30px,80px 60px,120px 90px,160px 120px,200px 150px;background-size:200px 200px,180px 180px,220px 220px,160px 160px,190px 190px,210px 210px;width:100%;height:100%;position:fixed;top:0;left:0}p{margin:0}:root{--gold:#b28a49;--body-text:#9a7441}.loading-screen{z-index:100;background:linear-gradient(135deg,#f9f0e2 0%,#f3e6d3 50%,#f9f0e2 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-content{text-align:center}.loading-spinner{border:3px solid #b28a4933;border-top-color:var(--gold);border-radius:50%;width:50px;height:50px;margin:0 auto 20px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:var(--body-text);margin-bottom:16px;font-family:Cormorant Garamond,serif;font-size:18px}.loading-bar{background:#b28a4933;border-radius:2px;width:200px;height:4px;margin:0 auto;overflow:hidden}.loading-progress{background:var(--gold);height:100%;transition:width .3s}.loading-percent{color:var(--body-text);margin-top:8px;font-family:Cormorant Garamond,serif;font-size:14px}#cover{z-index:50;opacity:1;background:radial-gradient(at 0 0,#d4a5748c 0%,#0000 40%),radial-gradient(at 100% 0,#d4a57480 0%,#0000 45%),radial-gradient(at 0 100%,#d4a57485 0%,#0000 50%),radial-gradient(at 100% 100%,#d4a57473 0%,#0000 55%),linear-gradient(135deg,#f9f0e2 0%,#f3e6d3 50%,#f9f0e2 100%);justify-content:center;align-items:center;padding:0;transition:opacity .8s ease-out;display:flex;position:fixed;inset:0}#cover.fading{opacity:0}.cover-card{width:100vw;height:100vh;margin:0;position:relative}.cover-card img{object-fit:cover;width:100%;height:100%;display:block}.cover-box{text-align:center;width:74%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cover-box .eyebrow{letter-spacing:.15em;text-transform:uppercase;color:var(--body-text);margin:0 0 4px;font-size:clamp(10px,2.8vw,13px)}.cover-box .to-label{margin:14px 0 0;font-size:clamp(12px,3.2vw,15px)}.cover-box .guest-honorific{color:var(--body-text);margin:6px 0 0;font-size:clamp(11px,3vw,14px)}.cover-box .guest-name{color:var(--gold);overflow-wrap:break-word;word-break:break-word;letter-spacing:.02em;margin:4px 0;font-family:Cormorant Garamond,serif;font-size:clamp(20px,5.5vw,26px);font-weight:500;line-height:1.4}.cover-box .guest-pax{margin:0 0 16px;font-size:clamp(11px,3vw,14px)}#openBtn{letter-spacing:.08em;text-transform:uppercase;color:#fffaf0;background:var(--gold);cursor:pointer;border:none;border-radius:30px;padding:10px 24px;font-family:Cormorant Garamond,serif;font-size:clamp(11px,3vw,14px);box-shadow:0 6px 16px #b28a4966}#openBtn:hover{opacity:.9}.scroll-container{scroll-snap-type:y mandatory;scroll-behavior:smooth;z-index:2;-webkit-overflow-scrolling:touch;width:100%;height:100dvh;position:relative;overflow-y:scroll}.scroll-container::-webkit-scrollbar{display:none}.scroll-container{-ms-overflow-style:none;scrollbar-width:none}.scroll-section{box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;justify-content:center;align-items:center;width:100%;height:100dvh;min-height:-webkit-fill-available;padding:40px 24px;display:flex}.section-content{text-align:center;width:100%;max-width:500px;animation:.8s ease-out fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.scroll-indicator{flex-direction:column;align-items:center;gap:8px;margin-top:40px;animation:2s ease-in-out infinite bounce;display:flex}.scroll-indicator span{letter-spacing:.15em;text-transform:uppercase;color:var(--gold);opacity:.8;font-size:12px}.scroll-arrow{border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);opacity:.6;width:20px;height:20px;transform:rotate(45deg)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}.welcome-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-size:clamp(11px,3vw,13px)}.welcome-title{color:var(--gold);letter-spacing:.02em;margin:0 0 24px;font-family:Cormorant Garamond,serif;font-size:clamp(28px,8vw,42px);font-weight:300;line-height:1.3}.welcome-text{color:var(--body-text);font-size:clamp(16px,4vw,20px);line-height:1.6}.welcome-title{font-style:normal}.venue-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-size:clamp(11px,3vw,13px)}.venue-title{color:var(--gold);letter-spacing:.02em;margin:0 0 24px;font-family:Cormorant Garamond,serif;font-size:clamp(22px,6vw,30px);font-weight:400}.venue-image-wrapper{border-radius:12px;width:100%;max-width:320px;margin:0 auto 20px;overflow:hidden;box-shadow:0 8px 24px #00000026}.venue-image{width:100%;height:auto;display:block}.venue-address{color:var(--body-text);margin:0;font-size:clamp(14px,3.5vw,16px);line-height:1.6}.map-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-size:clamp(11px,3vw,13px)}.map-title{color:var(--gold);letter-spacing:.02em;margin:0 0 24px;font-family:Cormorant Garamond,serif;font-size:clamp(22px,6vw,30px);font-weight:400}.map-container{border-radius:12px;width:100%;max-width:400px;margin:0 auto 24px;overflow:hidden;box-shadow:0 8px 24px #00000026}.map-button{letter-spacing:.1em;text-transform:uppercase;background:var(--gold);color:#fff;cursor:pointer;border:none;border-radius:30px;padding:12px 28px;font-family:Cormorant Garamond,serif;font-size:clamp(12px,3vw,14px);transition:opacity .3s,transform .3s}.map-button:hover{opacity:.9;transform:scale(1.02)}.countdown-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-size:clamp(11px,3vw,13px)}.countdown-title{color:var(--gold);letter-spacing:.02em;margin:0 0 24px;font-family:Cormorant Garamond,serif;font-size:clamp(24px,6vw,32px);font-weight:400}.countdown-timer{justify-content:center;gap:clamp(16px,5vw,32px);margin-bottom:24px;display:flex}.countdown-item{flex-direction:column;align-items:center;min-width:60px;display:flex}.countdown-number{color:var(--gold);font-family:Cormorant Garamond,serif;font-size:clamp(28px,8vw,40px);font-weight:300;line-height:1}.countdown-label{letter-spacing:.1em;text-transform:uppercase;color:var(--body-text);margin-top:8px;font-size:clamp(10px,2.5vw,12px)}.countdown-time{color:var(--body-text);letter-spacing:.1em;margin-top:8px;font-size:clamp(14px,4vw,18px)}.countdown-separator{color:var(--gold);opacity:.4;align-self:flex-start;margin-top:4px;font-family:Cormorant Garamond,serif;font-size:clamp(20px,6vw,28px)}.invitation-section{padding:16px}.invitation-content{flex-direction:column;justify-content:center;align-items:center;max-width:100%;height:100%;display:flex}.invitation-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-size:clamp(11px,3vw,13px)}.quote-section .section-content{flex-direction:column;justify-content:center;align-items:center;display:flex}.quote-text{color:var(--body-text);text-align:center;max-width:420px;margin:0;font-size:clamp(15px,4vw,18px);font-style:italic;line-height:1.9}#invite{z-index:10;flex:1;justify-content:center;align-items:center;width:100%;max-height:calc(100dvh - 100px);margin:0;display:flex;position:relative}#invite img{object-fit:contain;clip-path:inset(0 round 12px);border-radius:12px;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 100px);display:block}.animated-section{opacity:0;transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1);transform:translateY(40px)}.animated-section.in-view{opacity:1;transform:translateY(0)}.fade-word{opacity:0;transition:opacity .5s,transform .5s;display:inline-block;transform:translateY(20px)}.fade-word.visible{opacity:1;transform:translateY(0)}.parallax-section{will-change:transform;transition:transform .1s linear}.particles-bg{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.particles-bg:before,.particles-bg:after{content:"";background-image:radial-gradient(2px 2px at 10% 20%,#b28a4966 50%,#0000 50%),radial-gradient(2px 2px at 30% 60%,#b28a494d 50%,#0000 50%),radial-gradient(2px 2px at 50% 30%,#b28a4959 50%,#0000 50%),radial-gradient(2px 2px at 70% 80%,#b28a4940 50%,#0000 50%),radial-gradient(2px 2px at 90% 40%,#b28a4966 50%,#0000 50%),radial-gradient(3px 3px at 20% 70%,#b28a4933 50%,#0000 50%),radial-gradient(3px 3px at 60% 10%,#b28a494d 50%,#0000 50%),radial-gradient(2px 2px at 80%,#b28a4959 50%,#0000 50%);background-size:100% 100%;width:100%;height:100%;animation:20s ease-in-out infinite floatParticles;position:absolute}.particles-bg:after{background-image:radial-gradient(2px 2px at 15% 45%,#b28a494d 50%,#0000 50%),radial-gradient(2px 2px at 35% 25%,#b28a4940 50%,#0000 50%),radial-gradient(2px 2px at 55% 75%,#b28a4966 50%,#0000 50%),radial-gradient(2px 2px at 75% 15%,#b28a494d 50%,#0000 50%),radial-gradient(3px 3px at 85% 65%,#b28a4933 50%,#0000 50%),radial-gradient(2px 2px at 25% 85%,#b28a4959 50%,#0000 50%);animation:25s ease-in-out infinite reverse floatParticles}@keyframes floatParticles{0%,to{opacity:.6;transform:translateY(0)translate(0)}25%{opacity:.8;transform:translateY(-15px)translate(10px)}50%{opacity:.5;transform:translateY(-5px)translate(-5px)}75%{opacity:.7;transform:translateY(-20px)translate(5px)}}#soundToggle{z-index:60;background:var(--gold);color:#fffaf0;cursor:pointer;border:none;border-radius:50%;width:46px;height:46px;font-size:18px;transition:transform .3s,box-shadow .3s;position:fixed;bottom:18px;right:18px;box-shadow:0 4px 12px #00000040}#soundToggle:hover{transform:scale(1.1);box-shadow:0 6px 20px #0000004d}
