*{box-sizing:border-box}:root{--navy:#26384c;--cream:#fff8ef;--beige:#f1dfc9;--gold:#c9964d;--blue:#74889a;--ink:#3f4349}html{scroll-behavior:smooth}body{margin:0;background:#f6eadc;color:var(--ink);font-family:Montserrat,sans-serif;overflow-x:hidden}body.locked{overflow:hidden}img{width:100%;display:block}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.intro{position:fixed;inset:0;z-index:1000;background:radial-gradient(circle at 50% 40%,#42566b,#172536 68%);display:grid;place-items:center;text-align:center;color:white;overflow:hidden;transition:1.2s}.intro.out{opacity:0;visibility:hidden;transform:scale(1.04)}.intro-copy{z-index:3}.intro-copy>span,.count>span,.parents-copy>span,.details header>span,.wish-copy>span,.gallery header>span,.wishbox>span,.rsvpbox>span,.modal span{font-size:9px;letter-spacing:.3em}.intro h1{font:400 70px "Cormorant Garamond";color:#e1b873;margin:10px}.intro p{font:italic 22px "Cormorant Garamond";margin:0}.intro strong{display:block;font:400 clamp(90px,14vw,170px)/.8 "Cormorant Garamond";color:#f3ddbb}.intro button,.wishbox button,.rsvpbox button{border:1px solid #d3a35e;background:transparent;color:inherit;padding:15px 25px;margin-top:25px;font-size:8px;letter-spacing:.17em;cursor:pointer}.moon{position:absolute;width:330px;height:330px;border-radius:50%;background:#f2d4a1;box-shadow:0 0 80px #ffdca177;left:8%;top:18%}.moon i{position:absolute;width:330px;height:330px;border-radius:50%;background:#26394e;left:80px;top:-35px}.star{position:absolute;background:#f5d79b;border-radius:50%;box-shadow:0 0 8px #ffe3a7;animation:twinkle 1.5s ease-in-out infinite alternate}@keyframes twinkle{to{opacity:.2;transform:scale(.6)}}.site{opacity:0;transition:1s}.site.ready{opacity:1}.progress{position:fixed;top:0;left:0;height:3px;width:0;background:#d3a052;z-index:100}.music{position:fixed;right:18px;bottom:18px;z-index:90;width:44px;height:44px;border-radius:50%;border:1px solid #d5a257;background:#26384ddd;color:#f2cc8e}.hero{height:100svh;min-height:720px;position:relative;overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover;animation:zoom 18s ease-in-out infinite alternate}@keyframes zoom{to{transform:scale(1.07)}}.hero-wash{position:absolute;inset:0;background:linear-gradient(90deg,#fff4e8e7 0,#fff4e8a9 45%,transparent 70%),linear-gradient(0deg,#f5e4d0a6,transparent 45%)}nav{position:absolute;z-index:3;left:0;right:0;padding:25px 5vw;display:flex;justify-content:space-between}nav strong{font:400 19px "Cormorant Garamond";letter-spacing:.15em;color:#b27c37}nav div{display:flex;gap:28px}nav a{font-size:8px;letter-spacing:.18em;text-transform:uppercase}.hero-copy{position:absolute;z-index:2;left:7vw;top:23%;width:48%;text-align:center}.hero-copy>span{font-size:9px;letter-spacing:.25em;color:#a16f37}.hero-copy>p{font:400 42px Sacramento;margin:10px}.hero-copy h1{font:400 clamp(95px,13vw,175px)/.7 "Cormorant Garamond";color:#c58d43;margin:12px}.hero-copy h2{font:400 19px "Cormorant Garamond";letter-spacing:.16em;text-transform:uppercase}.hero-copy i{display:block;font:400 12px "Cormorant Garamond";margin:20px}.hero-copy a{display:inline-block;background:var(--navy);color:white;padding:15px 24px;font-size:8px;letter-spacing:.17em;margin-top:10px}.panel{margin:10px 3.5%;border:1px solid #dfc6a7;border-radius:18px;background:#fff8ef;box-shadow:0 6px 24px #8f735014}.count{text-align:center;padding:55px 5vw}.clock{display:flex;justify-content:center;margin-top:30px}.clock div{width:180px;border-right:1px solid #dec6aa}.clock div:last-child{border:0}.clock b{display:block;font:400 70px "Cormorant Garamond";color:#34485b}.clock small{font-size:7px;letter-spacing:.18em}.parents{display:grid;grid-template-columns:.8fr 1.4fr .8fr;align-items:center;padding:35px 6vw;text-align:center}.parents-photo img{height:260px;object-fit:cover;border-radius:50%;border:5px solid white;box-shadow:0 8px 25px #8f735033}.parents-copy{padding:25px}.parents-copy h2{font:400 55px Sacramento;color:#c78c42;margin:10px}.parents-copy p{font:400 15px/1.8 "Cormorant Garamond"}.baby-art img{height:260px;object-fit:cover;border-radius:120px}.details{padding:65px 5vw;text-align:center}.details h2,.gallery h2{font:400 48px "Cormorant Garamond";margin:10px;color:#4b4b4d}.cards{display:grid;grid-template-columns:repeat(5,1fr);max-width:1200px;margin:45px auto 30px}.cards article{padding:25px 18px;border-right:1px solid #dfc6a7}.cards article:last-child{border:0}.cards i{font-style:normal;font-size:27px;color:#c89046}.cards small{display:block;font-size:7px;letter-spacing:.18em;margin:12px}.cards b{display:block;font:400 52px "Cormorant Garamond";color:#3e4650}.cards b.place{font-size:26px}.cards p{font-size:9px;line-height:1.6}.swatches{display:flex;justify-content:center;gap:7px}.swatches u{width:20px;height:20px;border-radius:50%;background:#dfc6a7}.swatches u:nth-child(2){background:#758899}.swatches u:nth-child(3){background:#c99a58}.map{font-size:8px;letter-spacing:.18em;border-bottom:1px solid #c5904b;padding-bottom:7px}.wish-banner{min-height:390px;background:linear-gradient(120deg,#26394e,#3e5368);color:white;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden}.wish-copy h2{font:400 57px/.9 "Cormorant Garamond";margin:15px}.wish-copy h2 em{color:#e3bd80}.cloud{position:absolute;width:350px;height:110px;background:#fff4;border-radius:50%;filter:blur(18px)}.c1{left:-80px;bottom:20px}.c2{right:-90px;top:40px}.gallery{padding:65px 2vw;text-align:center}.gallery h2 em{color:#c78b43}.grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-top:40px}.photo{border:0;padding:0;height:245px;overflow:hidden;cursor:pointer;background:#eee}.photo img{height:100%;object-fit:cover;transition:.7s}.photo:hover img{transform:scale(1.06)}.interaction{display:grid;grid-template-columns:.7fr 1.3fr;gap:10px;margin:10px 3.5% 0}.interaction article{border:1px solid #dfc6a7;border-radius:18px;padding:55px;text-align:center;background:#fff8ef}.interaction h2{font:400 43px "Cormorant Garamond";color:#b77f3d}.interaction p{font:400 15px/1.7 "Cormorant Garamond"}.interaction button{background:var(--navy);color:white;border-color:var(--navy)}footer{text-align:center;padding:65px;background:#26384b;color:white;margin-top:10px}footer strong{display:block;font:400 65px Sacramento;color:#e1b778}footer span,footer small{display:block;font-size:8px;letter-spacing:.2em;margin-top:10px}.modal{position:fixed;inset:0;z-index:1100;background:#18283bdc;backdrop-filter:blur(7px);display:grid;place-items:center;opacity:0;visibility:hidden;transition:.3s}.modal.open{opacity:1;visibility:visible}.modal form{position:relative;width:min(530px,92vw);background:#fff8ef;padding:45px;border-radius:18px}.close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:34px}.modal h2{font:400 45px "Cormorant Garamond";color:#b47c3a}.modal label{display:block;font-size:8px;letter-spacing:.13em;margin-top:16px}.modal input,.modal select,.modal textarea{width:100%;border:1px solid #dfc6a7;background:white;padding:12px;margin-top:7px}.modal textarea{height:90px}.send{width:100%;border:0;background:#293d52;color:white;padding:15px;margin-top:20px;font-size:8px;letter-spacing:.16em}.thanks{display:none;text-align:center;font:400 30px Sacramento;color:#b77d3a}.modal form.sent>*:not(.close):not(.thanks){display:none}.modal form.sent .thanks{display:block}.lightbox{position:fixed;inset:0;z-index:1200;background:#142233ef;display:grid;place-items:center;opacity:0;visibility:hidden;transition:.3s}.lightbox.open{opacity:1;visibility:visible}.lightbox img{width:auto;max-width:88vw;max-height:86vh}.lightbox button{position:absolute;right:25px;top:15px;border:0;background:none;color:white;font-size:40px}.reveal{opacity:0;transform:translateY(30px);transition:.9s}.reveal.visible{opacity:1;transform:none}@media(max-width:800px){nav div{display:none}.hero-copy{left:20px;right:20px;width:auto;top:24%}.hero-copy h1{font-size:25vw}.hero-copy>p{font-size:35px}.clock div{width:25%}.clock b{font-size:12vw}.parents{grid-template-columns:1fr}.parents-photo,.baby-art{max-width:300px;margin:auto}.cards{grid-template-columns:1fr 1fr}.cards article:nth-child(2),.cards article:nth-child(4){border-right:0}.cards article:last-child{grid-column:1/3}.grid{grid-template-columns:1fr 1fr}.photo{height:270px}.interaction{grid-template-columns:1fr}.interaction article{padding:45px 25px}}