:root{--cream:#f5f0e8;--paper:#fbf8f2;--ink:#262820;--muted:#77766c;--rust:#a74932;--rose:#d7a08d;--sage:#78826a;--line:#ded8cb;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}.topline{background:linear-gradient(90deg,var(--rust),#d7a08d,#b39462,var(--sage));height:6px}.nav{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f5f0e8ed;border-bottom:1px solid #ded8cb99;justify-content:space-between;align-items:center;height:76px;padding:0 5.5%;display:flex;position:sticky;top:0}.monogram{font:italic 25px var(--serif);letter-spacing:-1px}.monogram span{color:var(--rust);padding:0 5px}.navlinks{letter-spacing:1.1px;text-transform:uppercase;align-items:center;gap:32px;font-size:11px;display:flex}.navlinks a:not(.nav-rsvp){color:#68685f}.navlinks a:hover{color:var(--rust)}.nav-rsvp{border:1px solid var(--rust);color:var(--rust);border-radius:2px;padding:11px 19px}.menu-btn{color:var(--ink);background:0 0;border:0;font-size:24px;display:none}.hero{grid-template-columns:.92fr 1.08fr;align-items:center;gap:5%;max-width:1600px;min-height:calc(100svh - 82px);margin:auto;padding:50px 5.5% 45px;display:grid;overflow:hidden}.hero-copy{padding:20px 0 20px 5%}.eyebrow{letter-spacing:2.5px;text-transform:uppercase;color:var(--rust);font-size:10px;font-weight:600}.hero h1{font:400 clamp(62px,8vw,120px)/.95 var(--serif);letter-spacing:-5px;margin:24px 0 22px}.hero h1 em{color:var(--rust);font-weight:400}.hero-sub{color:var(--muted);max-width:370px;font-size:14px;line-height:1.8}.hero-date{color:#46473f;letter-spacing:1px;text-transform:uppercase;align-items:center;gap:16px;margin-top:33px;font-size:12px;display:flex}.hero-date:before{content:"";background:var(--rust);width:35px;height:1px}.hero-actions{gap:12px;margin-top:29px;display:flex}.btn{background:var(--rust);color:#fff;text-transform:uppercase;letter-spacing:1.3px;border:1px solid var(--rust);justify-content:center;align-items:center;padding:15px 23px;font-size:10px;transition:all .2s;display:inline-flex}.btn:hover{background:#873c2a;transform:translateY(-2px)}.btn-outline{color:var(--ink);border-color:var(--line);background:0 0}.btn-outline:hover{background:var(--paper)}.hero-art{justify-content:center;align-items:center;height:min(690px,77vh);min-height:460px;display:flex;position:relative}.sun{aspect-ratio:1;opacity:.75;background:#e6c9a1;border-radius:50%;width:min(38vw,490px);position:absolute;top:7%;right:12%}.arch{background:linear-gradient(#cbb49a 0%,#e7d9c3 46%,#7d846c 46.3%,#a2a084 70%,#777860 100%);border:1px solid #a88b68;border-bottom:0;border-radius:48% 48% 0 0;width:72%;height:93%;position:absolute;bottom:-4%;overflow:hidden;box-shadow:inset 0 0 0 12px #f5f0e8,inset 0 0 0 13px #a88b68}.arch:before{content:"";background:linear-gradient(#0000,#555c49aa 100%),repeating-linear-gradient(90deg,#0000 0 18%,#e9ddcb55 18.2% 18.5%,#0000 18.7% 37%);position:absolute;inset:45% 0 0}.arch:after{content:"";background:#8a765f;border-radius:50% 50% 0 0;width:77%;height:40%;position:absolute;bottom:-8%;left:12%;box-shadow:0 -10px 0 -7px #d2b994}.arch-inner{z-index:1;background:linear-gradient(#d1b99b,#927f6a 75%,#555b4b);border:1px solid #eddbbd;border-radius:48% 48% 0 0;width:45%;height:46%;position:absolute;top:27%;left:50%;transform:translate(-50%)}.arch-inner:after{content:"";opacity:.7;background:repeating-linear-gradient(90deg,#d8c7a1 0 2px,#0000 2px 25%);height:28%;position:absolute;bottom:0;left:0;right:0}.figure{z-index:2;width:21%;height:29%;position:absolute;bottom:8%;left:42%}.figure .head{aspect-ratio:1;background:#594137;border-radius:50%;width:25%;position:absolute;top:0;left:38%}.figure .body{background:#a94736;border-radius:48% 48% 8% 8%;width:84%;height:79%;position:absolute;bottom:0;left:8%}.figure.br{height:25%;bottom:9%;left:56%}.figure.br .body{background:#3f493b}.little-flower{color:#b65841;font-size:24px;position:absolute}.flower1{bottom:15%;left:8%}.flower2{color:#7d8067;top:28%;right:5%}.art-label{font:italic 13px var(--serif);color:#666356;writing-mode:vertical-rl;letter-spacing:1.6px;position:absolute}.art-label.left{bottom:19%;left:3%}.art-label.right{top:21%;right:1%}.scroll-hint{letter-spacing:1.7px;text-transform:uppercase;color:#77766c;writing-mode:vertical-rl;font-size:9px;position:absolute;bottom:0;right:14%}.scroll-hint:after{content:"";background:var(--rust);width:1px;height:32px;margin:12px auto 0}.intro{background:var(--paper);text-align:center;padding:105px 7%;position:relative}.intro .eyebrow{margin-bottom:24px}.intro h2,.section-title{font:400 clamp(37px,5vw,64px)/1.12 var(--serif);letter-spacing:-1.5px;max-width:800px;margin:0 auto}.intro h2 em{color:var(--rust)}.intro p{max-width:535px;color:var(--muted);margin:23px auto 0;font-size:14px;line-height:1.9}.ornament{font:26px var(--serif);color:#b9a17a;margin-top:32px}.details{max-width:1400px;margin:auto;padding:100px 7%}.section-head{justify-content:space-between;align-items:end;margin-bottom:43px;display:flex}.section-head .eyebrow{margin-bottom:15px}.section-title{margin:0}.section-note{font:italic 15px var(--serif);color:var(--muted);max-width:210px;line-height:1.6}.event-grid{border:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.event{background:var(--paper);border-right:1px solid var(--line);min-height:285px;padding:32px 30px 34px;position:relative}.event:last-child{border:0}.event-no{font:italic 13px var(--serif);color:var(--rust)}.event-icon{margin:24px 0 11px;font-size:24px}.event h3{font:400 27px var(--serif);margin:0 0 10px}.event time{letter-spacing:1.3px;text-transform:uppercase;color:var(--rust);font-size:10px}.event p{color:var(--muted);margin:15px 0 0;font-size:12px;line-height:1.7}.event .dress{letter-spacing:.8px;text-transform:uppercase;color:#77766c;margin-top:18px;font-size:10px}.countdown-wrap{color:var(--paper);background:#353b30;justify-content:space-between;align-items:center;gap:30px;padding:74px 7%;display:flex}.countdown-wrap .eyebrow{color:#d5b793}.countdown-wrap h2{font:400 clamp(32px,4vw,52px) var(--serif);margin:13px 0 0}.countdown{gap:clamp(15px,4vw,55px);display:flex}.count-unit{text-align:center;min-width:48px}.count-unit strong{font:400 clamp(30px,4vw,48px) var(--serif);display:block}.count-unit span{letter-spacing:1.5px;text-transform:uppercase;color:#c4c4b7;font-size:9px}.story{background:var(--paper);grid-template-columns:1fr 1fr;min-height:510px;display:grid}.story-art{background:#cfbea4;min-height:430px;position:relative;overflow:hidden}.story-art .big-sun{background:#ead7b7;border-radius:50%;width:290px;height:290px;position:absolute;top:12%;left:24%}.story-art .hill{background:#85866d;border-radius:50% 50% 0 0;width:125%;height:57%;position:absolute;bottom:-15%;left:-13%;transform:rotate(-8deg)}.story-art .hill.two{background:#656b55;bottom:-25%;left:10%;transform:rotate(8deg)}.story-art .arch-small{background:linear-gradient(#ba9e7c,#7a7863 70%);border:1px solid #f4e7d1;border-bottom:0;border-radius:50% 50% 0 0;width:36%;height:72%;position:absolute;bottom:0;left:33%;box-shadow:inset 0 0 0 8px #cfbea4,inset 0 0 0 9px #e7d8c1}.story-copy{align-self:center;padding:80px 12%}.story-copy h2{font:400 47px/1.12 var(--serif);margin:18px 0}.story-copy h2 em{color:var(--rust)}.story-copy p{color:var(--muted);max-width:440px;font-size:13px;line-height:1.9}.story-copy .signature{font:italic 21px var(--serif);color:var(--rust);margin-top:25px}.travel{max-width:1400px;margin:auto;padding:100px 7%}.travel-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:42px;display:grid}.travel-card{background:var(--paper);border:1px solid var(--line);min-height:178px;padding:30px}.travel-card .eyebrow{font-size:9px}.travel-card h3{font:400 24px var(--serif);margin:12px 0 7px}.travel-card p{color:var(--muted);margin:0;font-size:12px;line-height:1.8}.travel-card a{color:var(--rust);border-bottom:1px solid #d8b7a7;padding-bottom:2px}.faq{background:#ebe5da;padding:75px 7% 100px}.faq-inner{max-width:850px;margin:auto}.faq .section-title{margin-bottom:30px}.qa{border-top:1px solid #cfc8bc}.qa:last-child{border-bottom:1px solid #cfc8bc}.qa summary{cursor:pointer;font:400 19px var(--serif);justify-content:space-between;padding:20px 0;list-style:none;display:flex}.qa summary::-webkit-details-marker{display:none}.qa summary:after{content:"+";color:var(--rust);font:22px var(--sans)}.qa[open] summary:after{content:"−"}.qa p{color:var(--muted);margin:0 30px 21px 0;font-size:13px;line-height:1.8}.rsvp{text-align:center;background:var(--rust);color:#fff7ed;padding:95px 7%;position:relative;overflow:hidden}.rsvp:before,.rsvp:after{content:"✳";color:#ffffff1c;font:180px var(--serif);position:absolute;top:20px;left:4%}.rsvp:after{inset:auto 5% -25px auto}.rsvp .eyebrow{color:#eed0b9}.rsvp h2{font:400 clamp(42px,6vw,70px) var(--serif);margin:17px 0}.rsvp p{color:#f0d9cd;max-width:430px;margin:0 auto 27px;font-size:13px;line-height:1.8}.rsvp .btn{color:var(--rust);background:#f5f0e8;border-color:#f5f0e8}.rsvp .btn:hover{background:#fff}.rsvp-deadline{letter-spacing:1px;text-transform:uppercase;margin-top:20px!important;font-size:10px!important}footer{letter-spacing:.8px;color:var(--muted);justify-content:space-between;align-items:center;padding:34px 7%;font-size:10px;display:flex}footer .monogram{color:var(--ink)}footer .heart{color:var(--rust)}.modal{z-index:30;background:#20231dcc;justify-content:center;align-items:center;padding:18px;display:none;position:fixed;inset:0}.modal.show{display:flex}.modal-card{background:var(--paper);width:min(100%,480px);max-height:92svh;padding:36px;position:relative;overflow:auto}.close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:24px;position:absolute;top:12px;right:17px}.modal-card h2{font:400 37px var(--serif);margin:8px 0}.modal-card>p{color:var(--muted);font-size:12px;line-height:1.6}.field{margin:17px 0;display:block}.field span{text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:7px;font-size:9px;display:block}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;font:13px var(--sans);color:var(--ink);background:#fffdf9;border-radius:0;padding:12px}.field textarea{resize:vertical;min-height:70px}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.modal .btn{cursor:pointer;width:100%}.form-note{margin-top:13px!important;font-size:10px!important}.toast{color:#fff;opacity:0;z-index:40;pointer-events:none;background:#30372d;padding:13px 20px;font-size:12px;transition:all .25s;position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px)}.toast.on{opacity:1;transform:translate(-50%)}@media (width<=800px){.nav{height:66px;padding:0 6%}.navlinks{gap:18px;font-size:9px}.hero{grid-template-columns:1fr .95fr;gap:0;min-height:700px;padding:26px 6% 46px}.hero-copy{padding-left:0}.hero h1{letter-spacing:-4px;font-size:clamp(65px,11vw,90px)}.hero-art{height:560px;min-height:0}.event{padding:25px 21px}.story-copy{padding:60px 10%}.countdown-wrap{padding:62px 6%}}@media (width<=600px){html{scroll-padding-top:66px}.nav{height:62px;padding:0 5%}.monogram{font-size:23px}.menu-btn{display:block}.navlinks{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:18px 5% 22px;display:none;position:absolute;top:61px;left:0;right:0;box-shadow:0 12px 18px #0000000d}.navlinks.open{display:flex}.navlinks a:not(.nav-rsvp){border-bottom:1px solid var(--line);padding:13px 0;font-size:10px}.navlinks .nav-rsvp{text-align:center;margin-top:13px}.hero{flex-direction:column;align-items:stretch;gap:8px;min-height:0;padding:51px 7% 36px;display:flex}.hero-copy{padding:0}.hero h1{letter-spacing:-4px;margin:19px 0 15px;font-size:clamp(70px,18vw,106px)}.hero-sub{max-width:315px;font-size:13px}.hero-date{margin-top:21px;font-size:10px}.hero-actions{margin-top:21px}.btn{padding:14px 17px;font-size:9px}.hero-art{height:410px;margin:4px 0 0}.sun{width:72vw;top:3%;right:8%}.arch{width:74%;height:99%}.art-label.left{bottom:14%;left:1%}.art-label.right{top:17%;right:0}.scroll-hint{display:none}.intro{padding:75px 8%}.intro h2,.section-title{font-size:43px}.intro p{font-size:13px}.details{padding:72px 7%}.section-head{margin-bottom:28px;display:block}.section-note{margin-top:13px}.event-grid{grid-template-columns:1fr}.event{border-right:0;min-height:0;padding:23px 24px 26px;border-bottom:1px solid var(--line)!important}.event:last-child{border-bottom:0!important}.event-icon{margin:14px 0 6px}.event h3{font-size:25px}.event p{margin-top:9px}.countdown-wrap{padding:48px 7%;display:block}.countdown-wrap h2{font-size:34px}.countdown{justify-content:space-between;gap:8px;margin-top:28px}.count-unit{min-width:0}.count-unit strong{font-size:36px}.count-unit span{font-size:8px}.story{grid-template-columns:1fr}.story-art{min-height:330px}.story-copy{padding:52px 8% 58px}.story-copy h2{font-size:42px}.travel{padding:72px 7%}.travel-grid{grid-template-columns:1fr;margin-top:27px}.travel-card{min-height:0;padding:24px}.faq{padding:67px 7% 75px}.faq .section-title{font-size:40px}.qa summary{font-size:17px}.rsvp{padding:75px 8%}.rsvp h2{font-size:49px}footer{padding:24px 6%;font-size:9px}footer .monogram{font-size:20px}.field-row{grid-template-columns:1fr;gap:0}.modal-card{padding:30px 24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.welcome-gate{z-index:1000;isolation:isolate;background:radial-gradient(#fffdf7 0,#f4ede1 48%,#e8dfcf 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.gate-backdrop{opacity:.45;background-color:#0000;background-image:linear-gradient(90deg,#a7493208 1px,#0000 1px),linear-gradient(#a7493208 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:36px 36px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.gate-light{aspect-ratio:1;filter:blur(58px);opacity:.26;background:#edc77c;border-radius:50%;width:42vmin;position:absolute;transform:scale(.7)}.gate-copy{z-index:4;text-align:center;width:90%;color:var(--ink);position:absolute;top:7.5%}.gate-monogram{font:italic 25px var(--serif);letter-spacing:1px;margin-bottom:23px}.gate-monogram span{color:var(--rust);padding:0 4px}.gate-copy .eyebrow{font-size:9px}.gate-copy h2{font:400 clamp(38px,6vw,68px)/1.08 var(--serif);letter-spacing:-1.6px;margin:10px 0 7px}.gate-copy h2 em{color:var(--rust);font-weight:400}.gate-date{letter-spacing:1.7px;text-transform:uppercase;color:#77766c;margin:0;font-size:10px}.gate-frame{perspective:1500px;width:min(62vw,700px);height:55%;max-height:570px;position:absolute;top:41%}.gate-arch{transform-style:preserve-3d;background:linear-gradient(#d7bb88,#c5a773);border:1px solid #b18f59;border-bottom:0;border-radius:49% 49% 0 0/35% 35% 0 0;position:absolute;inset:0 0 -7px;overflow:hidden;box-shadow:0 0 0 9px #f5f0e8,0 0 0 10px #b18f59,0 25px 65px #39312322}.gate-arch:before{content:"";z-index:3;pointer-events:none;border:1px solid #e6cf9d;border-bottom:0;border-radius:49% 49% 0 0/35% 35% 0 0;position:absolute;inset:12px 12px 0}.gate-arch>.gate-light{z-index:0;opacity:.5;top:25%;left:50%;transform:translate(-50%)scale(.45)}.gate-door{z-index:2;width:50%;transform-style:preserve-3d;backface-visibility:visible;background-color:#48513c;background-image:radial-gradient(at 50% 45%,#ffffff0a 0 2px,#0000 2.5px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px),linear-gradient(#636a4e 0,#46503d 45%,#394333 100%);background-size:22px 22px,28px 100%,100% 100%;position:absolute;top:12%;bottom:0;box-shadow:inset 0 0 26px #20291e66}.gate-door-left{transform-origin:0;border-right:1px solid #ddc486;left:0}.gate-door-right{transform-origin:100%;border-left:1px solid #ddc486;right:0}.door-inset{border:1px solid #c6a96c66;position:absolute;inset:15px 11px 12px;box-shadow:inset 0 0 0 5px #ffffff08,inset 0 0 0 6px #c6a96c44}.door-rosette{font:clamp(32px,5vw,54px) var(--serif);color:#e7cc92;text-shadow:0 1px #453c2a;position:absolute;top:26%;left:50%;transform:translate(-50%,-50%)}.door-lines{border-left:1px solid #dcc58c3b;border-right:1px solid #dcc58c3b;position:absolute;inset:0 18%}.door-inset:after{content:"✦";color:#e5c787;font-size:18px;position:absolute;bottom:9%;left:50%;transform:translate(-50%)}.door-handle{background:#edcf89;border-radius:50%;width:8px;height:8px;position:absolute;top:55%;box-shadow:0 0 0 4px #9f7942,0 0 12px #fff3c3}.gate-door-left .door-handle{right:13px}.gate-door-right .door-handle{left:13px}.gate-marigold{z-index:4;color:#b58439;font:21px var(--serif);position:absolute;top:48%}.gate-knock{color:var(--ink);cursor:pointer;background:#fffaf2cc;border:1px solid #c9b58f;align-items:center;gap:12px;margin:19px auto 0;padding:11px 19px;transition:background .2s,transform .2s;display:flex;box-shadow:0 8px 24px #5d4c3010}.gate-knock:hover{background:#fffdf8;transform:translateY(-2px)}.knock-icon{color:var(--rust);font-size:17px}.gate-instruction{letter-spacing:1.2px;text-transform:uppercase;font-size:10px}.knock-dots{gap:4px;margin-left:5px;display:flex}.knock-dots i{background:#b58b4a;border-radius:50%;width:4px;height:4px}.gate-skip{z-index:5;color:#77766c;font:10px var(--sans);letter-spacing:1px;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:10px;position:absolute;bottom:3.2%}.gate-skip:hover{color:var(--rust)}@media (width<=600px){.gate-copy{top:7%}.gate-monogram{margin-bottom:19px;font-size:22px}.gate-copy h2{margin:9px 0 7px;font-size:clamp(37px,10vw,48px)}.gate-date{font-size:9px}.gate-frame{width:78vw;height:46%;max-height:none;top:42%}.gate-door{top:11%}.door-inset{inset:11px 8px 9px}.gate-marigold{font-size:17px}.gate-marigold-left{left:-24px}.gate-marigold-right{right:-24px}.gate-knock{margin-top:16px;padding:10px 14px}.gate-skip{bottom:2.5%}}@media (height<=650px){.gate-copy{top:4%}.gate-monogram{margin-bottom:10px}.gate-copy h2{font-size:clamp(34px,5vw,52px)}.gate-knock{margin-top:10px}.gate-frame{height:50%;top:43%}.gate-skip{bottom:1%}}@media (prefers-reduced-motion:reduce){.welcome-gate{display:none}}.gate-frame{perspective:1800px;width:100%;height:100%;max-height:none;inset:0}.gate-arch{box-shadow:none;background:linear-gradient(135deg,#3c4635 0%,#4e5943 48%,#364031 100%);border:0;border-radius:0;inset:0}.gate-arch:before{border:1px solid #d8bd7a99;border-radius:0;inset:14px}.gate-arch>.gate-light{top:38%;left:50%;transform:translate(-50%)scale(.45)}.gate-door{background-color:#48513c;background-image:radial-gradient(at 50% 45%,#ffffff0a 0 2px,#0000 2.5px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px),linear-gradient(#62694e 0,#46503d 45%,#394333 100%);background-size:25px 25px,34px 100%,100% 100%;width:50%;top:0;bottom:0}.door-inset{inset:24px 18px}.door-rosette{top:34%}.door-handle{width:10px;height:10px;top:56%}.gate-copy{background:linear-gradient(#f5f0e8f5 0%,#f5f0e8e8 72%,#f5f0e800 100%);padding:3.5vh 0 18px;top:0}.gate-monogram{margin-bottom:15px}.gate-copy h2{margin:7px 0}.gate-knock{margin-top:12px}.gate-marigold-left{left:24px}.gate-marigold-right{right:24px}@media (width<=600px){.gate-frame{width:100%;height:100%;inset:0}.gate-door{top:0}.door-inset{inset:16px 10px}.gate-copy{padding-top:4vh;top:0}.gate-marigold-left{left:14px}.gate-marigold-right{right:14px}}@media (height<=650px){.gate-frame{height:100%;inset:0}.gate-copy{padding-top:2vh;top:0}}.gate-copy{pointer-events:none;background:0 0;padding:0;top:50%;transform:translateY(-50%)}.gate-knock{pointer-events:auto;color:#f7e8c5;box-shadow:none;font:italic clamp(18px,3vw,25px) var(--serif);letter-spacing:.3px;text-transform:none;text-shadow:0 2px 14px #1118;background:0 0;border:0;margin:0 auto;padding:14px 18px}.gate-skip{display:none}@media (width<=600px){.gate-copy{padding:0;top:50%}.gate-knock{padding:16px;font-size:20px}}.gate-copy{pointer-events:none;z-index:6;background:0 0;width:auto;padding:0;position:absolute;top:0;left:50%;transform:translate(-50%)}.hanger-group{transform-origin:50% 0;flex-direction:column;align-items:center;animation:5.5s ease-in-out infinite alternate hanger-sway;display:flex}.hanger-cord{background:linear-gradient(#e6ce96,#b18f59);width:1px;height:52px;display:block;position:relative}.hanger-cord:before{content:"";border:1px solid #c8a96b;border-bottom:0;border-radius:50% 50% 0 0;width:28px;height:39px;position:absolute;top:-2px;left:50%;transform:translate(-50%)}.hanger-note{background:linear-gradient(135deg,#fffaf0,#f2e7cf);border:1px solid #c8aa70;justify-content:center;align-items:center;width:clamp(220px,30vw,270px);min-height:112px;padding:20px 22px 17px;display:flex;position:relative;box-shadow:0 12px 34px #171c142b,inset 0 0 0 5px #fff8e8}.hanger-note:before{content:"";background:#5b6248;border:1px solid #c8aa70;border-top:0;border-radius:0 0 22px 22px;width:38px;height:17px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.gate-knock{pointer-events:auto;color:#3f4938;box-shadow:none;font:italic 19px var(--serif);letter-spacing:.1px;text-shadow:none;cursor:pointer;background:0 0;border:0;margin:0;padding:12px 5px;transition:color .2s,transform .2s}.gate-knock:hover{color:var(--rust);background:0 0;transform:translateY(-1px)}.gate-instruction{font:inherit;letter-spacing:inherit;text-transform:none}@keyframes hanger-sway{0%{transform:rotate(-1deg)}to{transform:rotate(1deg)}}@media (width<=600px){.gate-copy{padding:0;top:0}.hanger-cord{height:41px}.hanger-cord:before{height:32px}.hanger-note{width:218px;min-height:100px;padding:17px 18px}.gate-knock{font-size:18px}}@media (prefers-reduced-motion:reduce){.hanger-group{animation:none}}.hanger-group{animation:2.8s cubic-bezier(.45,0,.55,1) both hanger-settle,4.6s ease-in-out 2.8s infinite alternate hanger-loop}.hanger-cord{height:39px}.hanger-cord:before{width:22px;height:29px;left:50%}.hanger-note{width:clamp(185px,23vw,210px);min-height:88px;padding:14px 16px;box-shadow:0 10px 28px #171c142b,inset 0 0 0 4px #fff8e8}.hanger-note:before{width:32px;height:14px}.gate-knock{font-size:16px}@keyframes hanger-settle{0%{transform:rotate(-7deg)}28%{transform:rotate(5deg)}52%{transform:rotate(-3deg)}73%{transform:rotate(1.8deg)}88%{transform:rotate(-.8deg)}to{transform:rotate(0)}}@keyframes hanger-loop{0%{transform:rotate(-2.6deg)}to{transform:rotate(2.6deg)}}@media (width<=600px){.hanger-cord{height:33px}.hanger-cord:before{height:25px}.hanger-note{width:176px;min-height:78px;padding:12px 13px}.hanger-note:before{width:29px;height:13px}.gate-knock{font-size:15px}}@media (prefers-reduced-motion:reduce){.hanger-group{animation:none}}.welcome-gate,.gate-arch{background:0 0}.celebration-timeline{max-width:1040px;margin:48px auto 0;padding:8px 0 20px;position:relative}.timeline-track{background:var(--line);width:1px;position:absolute;top:20px;bottom:34px;left:50%;overflow:hidden;transform:translate(-50%)}.timeline-progress{background:linear-gradient(180deg,#b89b66,var(--rust));transform-origin:top;position:absolute;inset:0;transform:scaleY(0)}.timeline-item{grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr);align-items:center;min-height:190px;display:grid;position:relative}.timeline-card{background:var(--paper);border:1px solid var(--line);grid-area:1/1;justify-self:end;width:min(100%,390px);padding:24px 27px;position:relative;box-shadow:0 12px 32px #39312308}.timeline-card:after{content:"";background:#c4ad7c;width:32px;height:1px;position:absolute;top:50%;right:-32px}.timeline-marker{z-index:2;background:var(--paper);width:38px;height:38px;color:var(--rust);font:italic 12px var(--serif);box-shadow:0 0 0 7px var(--cream);border:1px solid #b89b66;border-radius:50%;grid-area:1/2;justify-self:center;place-items:center;display:grid;position:relative}.timeline-kicker{letter-spacing:1.5px;text-transform:uppercase;color:var(--rust);font-size:9px}.timeline-card h3{font:400 28px var(--serif);margin:9px 0 3px}.timeline-time{letter-spacing:1.2px;text-transform:uppercase;color:#5b624b;font-size:10px}.timeline-card p{color:var(--muted);margin:12px 0 7px;font-size:12px;line-height:1.75}.timeline-map{letter-spacing:.6px;color:var(--rust);border-bottom:1px solid #d8b7a7;padding-bottom:2px;font-size:10px}.timeline-item:nth-child(2n) .timeline-card{text-align:left;grid-column:3;justify-self:start}.timeline-item:nth-child(2n) .timeline-card:after{left:-32px;right:auto}@media (width<=700px){.celebration-timeline{margin:32px 0 0;padding:0}.timeline-track{top:18px;bottom:22px;left:20px;transform:none}.timeline-item{grid-template-columns:42px minmax(0,1fr);min-height:0;padding:0 0 24px}.timeline-card,.timeline-item:nth-child(2n) .timeline-card{text-align:left;grid-area:1/2;justify-self:stretch;width:100%;padding:20px 19px}.timeline-marker{width:30px;height:30px;box-shadow:0 0 0 5px var(--cream);grid-area:1/1;font-size:10px}.timeline-card:after,.timeline-item:nth-child(2n) .timeline-card:after{width:12px;top:34px;left:-12px;right:auto}.timeline-card h3{font-size:25px}.timeline-card p{font-size:12px}}.details{background:var(--cream);max-width:none;margin:0;padding:0}.event-screen{isolation:isolate;text-align:center;place-items:center;min-height:calc(100svh - 76px);padding:58px 7% 66px;transition:background-color .55s,color .55s;display:grid;position:relative;overflow:hidden}.event-screen:before{content:"";opacity:.16;pointer-events:none;z-index:2;border:1px solid;position:absolute;inset:14px}.event-screen-copy{z-index:3;width:min(760px,88vw);margin:0 auto;position:relative}.event-chapter{letter-spacing:2.4px;text-transform:uppercase;opacity:.72;font-size:9px}.event-date{font:italic 16px var(--serif);opacity:.82;margin-top:22px}.event-screen h2{font:400 clamp(66px,12vw,138px)/.95 var(--serif);letter-spacing:-4px;margin:13px 0}.event-time{letter-spacing:2px;text-transform:uppercase;font-size:12px}.event-divider{opacity:.45;background:currentColor;width:46px;height:1px;margin:24px auto}.event-screen-copy p{max-width:420px;margin:0 auto 13px;font-size:13px;line-height:1.8}.event-screen-copy>a{letter-spacing:.8px;text-transform:uppercase;border-bottom:1px solid;padding-bottom:3px;font-size:10px;display:inline-block}.event-next{letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;opacity:.72;font-size:9px;position:absolute;bottom:-42px;left:50%;transform:translate(-50%)}.event-next span{margin-top:5px;font-size:16px;animation:1.3s ease-in-out infinite alternate event-arrow;display:block}.event-art{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.theme-haldi{color:#533c14;background:#f1cb50}.haldi-sun{aspect-ratio:1;background:radial-gradient(circle,#ffed9caa 0,#ffdf6b55 55%,#0000 72%);border-radius:50%;width:min(68vw,600px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.flower-rain{position:absolute;inset:0;overflow:hidden}.flower-rain span{top:-12%;left:var(--petal-left,50%);font-size:var(--petal-size,24px);color:#fff0a1;opacity:0;filter:drop-shadow(0 3px 2px #9b6e2430);will-change:transform,opacity;position:absolute}.theme-haldi.is-active .flower-rain span{animation:haldi-flower-fall var(--petal-duration,8s) linear var(--petal-delay,0s) infinite}.flower-rain span:first-child{--petal-left:4%;--petal-delay:-2s;--petal-size:20px;--petal-duration:7.5s}.flower-rain span:nth-child(2){--petal-left:12%;--petal-delay:-6s;--petal-size:30px;--petal-duration:9s}.flower-rain span:nth-child(3){--petal-left:19%;--petal-delay:-3s;--petal-size:18px;--petal-duration:8s}.flower-rain span:nth-child(4){--petal-left:27%;--petal-delay:-7s;--petal-size:27px;--petal-duration:10s}.flower-rain span:nth-child(5){--petal-left:35%;--petal-delay:-1s;--petal-size:22px;--petal-duration:7s}.flower-rain span:nth-child(6){--petal-left:43%;--petal-delay:-5s;--petal-size:32px;--petal-duration:9.5s}.flower-rain span:nth-child(7){--petal-left:51%;--petal-delay:-3s;--petal-size:19px;--petal-duration:7.8s}.flower-rain span:nth-child(8){--petal-left:59%;--petal-delay:-8s;--petal-size:26px;--petal-duration:10s}.flower-rain span:nth-child(9){--petal-left:67%;--petal-delay:-2.5s;--petal-size:18px;--petal-duration:7.2s}.flower-rain span:nth-child(10){--petal-left:74%;--petal-delay:-6.5s;--petal-size:31px;--petal-duration:9s}.flower-rain span:nth-child(11){--petal-left:82%;--petal-delay:-4s;--petal-size:21px;--petal-duration:8.4s}.flower-rain span:nth-child(12){--petal-left:91%;--petal-delay:-1.5s;--petal-size:28px;--petal-duration:9.8s}.flower-rain span:nth-child(13){--petal-left:7%;--petal-delay:-5.5s;--petal-size:23px;--petal-duration:8.8s}.flower-rain span:nth-child(14){--petal-left:31%;--petal-delay:-2.8s;--petal-size:17px;--petal-duration:7s}.flower-rain span:nth-child(15){--petal-left:71%;--petal-delay:-7.2s;--petal-size:24px;--petal-duration:9.2s}.flower-rain span:nth-child(16){--petal-left:96%;--petal-delay:-3.8s;--petal-size:20px;--petal-duration:8s}@keyframes haldi-flower-fall{0%{opacity:0;transform:translateY(-4vh)rotate(0)}10%{opacity:.88}85%{opacity:.7}to{opacity:0;transform:translate(42px,112vh)rotate(340deg)}}.theme-mehendi{color:#f4e8c9;background:#344f3e}.mehendi-mandala{aspect-ratio:1;color:#d6bc7b55;width:min(76vw,720px);font:clamp(180px,34vw,400px) var(--serif);border:1px solid #d6bc7b33;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mehendi-mandala:before,.mehendi-mandala:after{content:"";border:1px solid #d6bc7b35;border-radius:50%;position:absolute;inset:9%;box-shadow:0 0 0 24px #ffffff04,0 0 0 25px #d6bc7b26}.mehendi-mandala:after{border-radius:12%;inset:19%;transform:rotate(45deg)}.mehendi-vines span{color:#b8c1894d;font:clamp(44px,8vw,100px) var(--serif);animation:5s ease-in-out infinite alternate vine-breathe;position:absolute}.mehendi-vines span:first-child{top:12%;left:8%;transform:rotate(25deg)}.mehendi-vines span:nth-child(2){top:18%;right:8%;transform:rotate(145deg)}.mehendi-vines span:nth-child(3){bottom:10%;left:9%;transform:rotate(-35deg)}.mehendi-vines span:nth-child(4){bottom:14%;right:8%;transform:rotate(205deg)}.theme-sangeet{color:#f4e8cd;background:#22233e}.sangeet-orb{aspect-ratio:1;background:radial-gradient(circle at 50% 42%,#f9db9160,#9a639a29 45%,#0000 72%);border-radius:50%;width:min(60vw,520px);animation:5s ease-in-out infinite alternate orb-glow;position:absolute;top:10%;left:50%;transform:translate(-50%)}.star-field{color:#f1d58e45;letter-spacing:3vw;white-space:pre-wrap;font-size:clamp(20px,4vw,48px);line-height:3;animation:2.6s ease-in-out infinite alternate star-twinkle;position:absolute;inset:6% 0}.sangeet-floor{background:radial-gradient(at top,#d4a85835,#0000 65%);height:60%;position:absolute;bottom:-38%;left:-10%;right:-10%;transform:perspective(500px)rotateX(60deg)}.theme-baraat{color:#4e291a;background:#d96c3f}.baraat-glow{background:radial-gradient(circle,#ffc75e88 0,#ffb54e35 43%,#0000 70%);border-radius:50%;width:74vw;max-width:750px;height:74vw;max-height:750px;animation:4s ease-in-out infinite alternate orb-glow;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.baraat-lights{border-top:1px solid #ffe3a45c;justify-content:space-around;width:110%;height:70px;display:flex;position:absolute;top:16%;left:-5%;transform:rotate(-8deg)}.baraat-lights i{background:#ffebae;border-radius:50% 50% 45% 45%;width:14px;height:20px;animation:1.8s ease-in-out infinite alternate baraat-light;box-shadow:0 0 20px 7px #ffe2a277}.baraat-lights i:nth-child(2n){margin-top:24px;animation-delay:-.8s}.theme-wedding{color:#493829;background:#f0e2cf}.wedding-halo{aspect-ratio:1;background:radial-gradient(circle,#fff9e5 0,#ead4a655 50%,#0000 72%);border-radius:50%;width:min(70vw,650px);position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.wedding-arch{border:1px solid #bd9d6744;border-bottom:0;border-radius:50% 50% 0 0;width:min(48vw,390px);height:60%;position:absolute;bottom:-30%;left:50%;transform:translate(-50%)}.wedding-arch:before{content:"";border:1px solid #bd9d6733;border-bottom:0;border-radius:50% 50% 0 0;position:absolute;inset:18px 18px 0}.wedding-petals{color:#fffdf5aa;white-space:nowrap;width:100%;font-size:clamp(26px,6vw,68px);animation:18s linear infinite wedding-drift;position:absolute;top:9%;left:0}@keyframes vine-breathe{0%{opacity:.45}to{opacity:.85}}@keyframes star-twinkle{0%{opacity:.35;transform:translateY(0)}to{opacity:.8;transform:translateY(-12px)}}@keyframes orb-glow{0%{opacity:.6;scale:.94}to{opacity:1;scale:1.08}}@keyframes baraat-light{0%{opacity:.5;transform:scale(.8)}to{opacity:1;transform:scale(1.12)}}@keyframes wedding-drift{0%{transform:translate(-6%)}to{transform:translate(6%)}}body[data-event-theme=haldi] .nav{background:#f1cb50ee;border-color:#d4ad3e88}body[data-event-theme=mehendi] .nav{color:#f4e8c9;background:#344f3eee;border-color:#f4e8c955}body[data-event-theme=mehendi] .navlinks a:not(.nav-rsvp),body[data-event-theme=mehendi] .monogram{color:#f4e8c9}body[data-event-theme=sangeet] .nav{color:#f4e8c9;background:#22233eee;border-color:#f4e8c955}body[data-event-theme=sangeet] .navlinks a:not(.nav-rsvp),body[data-event-theme=sangeet] .monogram{color:#f4e8c9}body[data-event-theme=baraat] .nav{background:#d96c3fee;border-color:#8f432a88}body[data-event-theme=wedding] .nav{background:#f0e2cfee;border-color:#bd9d6788}@media (width<=800px){.event-screen{min-height:calc(100svh - 66px)}}@media (width<=600px){.event-screen{min-height:calc(100svh - 62px);padding:48px 8% 62px}.event-screen:before{inset:9px}.event-screen h2{letter-spacing:-2px;font-size:clamp(60px,17vw,94px)}.event-date{margin-top:18px;font-size:14px}.event-screen-copy p{font-size:12px}.event-divider{margin:20px auto}.event-next{bottom:-38px}.star-field{letter-spacing:4vw}.baraat-lights{top:14%}.wedding-arch{width:64vw}}@media (prefers-reduced-motion:reduce){.event-screen,.event-art *{transition:none!important;animation:none!important}}.flower-shower{z-index:50;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}.shower-flower{top:-90px;left:var(--shower-left);font-size:var(--shower-size);color:var(--shower-flower);opacity:0;filter:drop-shadow(0 3px 4px #2b241522);will-change:transform,opacity;transform-origin:50%;line-height:1;position:absolute}.shower-flower:first-child{--shower-left:2%;--shower-size:29px}.shower-flower:nth-child(2){--shower-left:7%;--shower-size:20px}.shower-flower:nth-child(3){--shower-left:12%;--shower-size:34px}.shower-flower:nth-child(4){--shower-left:17%;--shower-size:22px}.shower-flower:nth-child(5){--shower-left:22%;--shower-size:28px}.shower-flower:nth-child(6){--shower-left:27%;--shower-size:18px}.shower-flower:nth-child(7){--shower-left:32%;--shower-size:32px}.shower-flower:nth-child(8){--shower-left:37%;--shower-size:21px}.shower-flower:nth-child(9){--shower-left:42%;--shower-size:26px}.shower-flower:nth-child(10){--shower-left:47%;--shower-size:35px}.shower-flower:nth-child(11){--shower-left:52%;--shower-size:20px}.shower-flower:nth-child(12){--shower-left:57%;--shower-size:29px}.shower-flower:nth-child(13){--shower-left:62%;--shower-size:18px}.shower-flower:nth-child(14){--shower-left:67%;--shower-size:32px}.shower-flower:nth-child(15){--shower-left:72%;--shower-size:23px}.shower-flower:nth-child(16){--shower-left:77%;--shower-size:28px}.shower-flower:nth-child(17){--shower-left:82%;--shower-size:19px}.shower-flower:nth-child(18){--shower-left:87%;--shower-size:34px}.shower-flower:nth-child(19){--shower-left:92%;--shower-size:22px}.shower-flower:nth-child(20){--shower-left:97%;--shower-size:30px}.shower-flower:nth-child(21){--shower-left:4%;--shower-size:24px}.shower-flower:nth-child(22){--shower-left:35%;--shower-size:19px}.shower-flower:nth-child(23){--shower-left:65%;--shower-size:25px}.shower-flower:nth-child(24){--shower-left:94%;--shower-size:20px}.flower-shower[data-theme=haldi] .shower-flower{--shower-flower:#fff0a2}.flower-shower[data-theme=mehendi] .shower-flower{--shower-flower:#f3c4a0}.flower-shower[data-theme=sangeet] .shower-flower{--shower-flower:#f5df9d}.flower-shower[data-theme=baraat] .shower-flower{--shower-flower:#ffe79b}.flower-shower[data-theme=wedding] .shower-flower{--shower-flower:#fff5e5}.modal{z-index:60}.toast{z-index:70}@media (width<=600px){.shower-flower:nth-child(3n){font-size:28px}.shower-flower:nth-child(4n){font-size:17px}}.topline{display:none}.nav{gap:16px}.language-picker{z-index:2;align-items:center;margin-left:12px;display:flex;position:relative}.language-picker select{appearance:none;border:1px solid var(--line);min-width:52px;color:inherit;font:500 10px var(--sans);letter-spacing:.7px;cursor:pointer;background:0 0;border-radius:2px;padding:8px 10px}.language-picker select:focus-visible{outline:2px solid var(--rust);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body[data-event-theme=mehendi] .language-picker select,body[data-event-theme=sangeet] .language-picker select{color:#f4e8c9;border-color:#f4e8c977}@media (width<=600px){.nav{gap:0}.menu-btn{margin-left:auto;margin-right:10px}.language-picker{margin-left:0}.language-picker select{min-width:48px;padding:7px;font-size:9px}}.language-picker{margin-left:10px}.language-toggle{min-width:82px;height:32px;color:var(--ink);font:500 9px var(--sans);letter-spacing:.45px;cursor:pointer;background:#fffcf6aa;border:1px solid #cbbfaae0;border-radius:999px;justify-content:center;align-items:center;gap:0;padding:3px 5px;transition:border-color .25s,background .25s,box-shadow .25s;display:flex;box-shadow:inset 0 1px #fff8}.language-toggle:hover{border-color:var(--rust);box-shadow:0 3px 12px #6d493012,inset 0 1px #fff8}.language-toggle:focus-visible{outline:2px solid var(--rust);outline-offset:3px}.language-toggle [data-language-option]{text-align:center;opacity:.58;border-radius:999px;min-width:31px;padding:6px 7px;line-height:1;transition:background .25s,color .25s,opacity .25s}.language-toggle [data-language-option].is-active{background:var(--rust);color:#fff9ed;opacity:1}.language-divider{background:#d4c8b6;width:1px;height:13px;transition:opacity .2s}body[data-event-theme=mehendi] .language-toggle,body[data-event-theme=sangeet] .language-toggle{color:#f4e8c9;background:#28362b88;border-color:#f4e8c977}body[data-event-theme=mehendi] .language-toggle [data-language-option].is-active,body[data-event-theme=sangeet] .language-toggle [data-language-option].is-active{color:#182319;background:#c49a5a}body[data-event-theme=mehendi] .language-divider,body[data-event-theme=sangeet] .language-divider{background:#f4e8c977}@media (width<=600px){.menu-btn{margin-left:auto;margin-right:10px}.language-picker{margin-left:0}.language-toggle{min-width:76px;height:30px;font-size:9px}}.language-toggle{min-width:92px}.language-toggle [data-language-option]{min-width:38px;padding-inline:5px}@media (width<=600px){.language-toggle{min-width:90px}.language-picker{order:2;margin-left:auto;margin-right:10px}.menu-btn{order:3;margin-left:0;margin-right:0}}.mobile-tabbar{display:none}@media (width<=600px){body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.mobile-tabbar{z-index:40;min-height:64px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);background:#f8f4edee;border-top:1px solid #d9cfbf;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #30291b0a}.mobile-tabbar a{color:#8d897f;min-width:0;font:500 9px var(--sans);letter-spacing:.15px;flex-direction:column;justify-content:center;align-items:center;gap:4px;text-decoration:none;transition:color .25s,transform .25s;display:flex;position:relative}.mobile-tabbar a svg{fill:none;stroke:currentColor;stroke-width:1.45px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.mobile-tabbar a[aria-current=page]{color:var(--rust)}.mobile-tabbar a[aria-current=page]:before{content:"";background:var(--rust);border-radius:2px;width:23px;height:2px;position:absolute;top:-7px}.mobile-tabbar a[aria-current=page] svg{transform:translateY(-1px)}.mobile-tabbar a:active{transform:scale(.94)}body[data-event-theme=mehendi] .mobile-tabbar,body[data-event-theme=sangeet] .mobile-tabbar{background:#202a25ed;border-color:#f4e8c944}body[data-event-theme=mehendi] .mobile-tabbar a,body[data-event-theme=sangeet] .mobile-tabbar a{color:#d9d0bb}body[data-event-theme=mehendi] .mobile-tabbar a[aria-current=page],body[data-event-theme=sangeet] .mobile-tabbar a[aria-current=page]{color:#e9c47a}body[data-event-theme=mehendi] .mobile-tabbar a[aria-current=page]:before,body[data-event-theme=sangeet] .mobile-tabbar a[aria-current=page]:before{background:#e9c47a}.nav{height:56px}.nav .menu-btn{display:none}.nav .language-picker{order:2;margin-left:auto;margin-right:0}}
