@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500;600;700&family=Manrope:wght@300;400;500;600&family=Parisienne&display=swap";:root{--ink:#292624;--muted:#756c67;--paper:#f5f1ed;--sand:#e6d9d0;--wine:#693e3e;--rose:#c79589;--line:#cabcb3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Manrope,Arial,sans-serif;font-weight:300}button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.page{background:var(--paper);overflow:hidden}.welcome-screen{z-index:50;color:#fff;touch-action:none;background:#211918;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.welcome-photo{filter:saturate(.78);background:linear-gradient(90deg,#1b1515c7,#1b151522),url(/upscaled1.webp) 50% 24%/cover no-repeat;position:absolute;inset:0}.welcome-glow{filter:blur(45px);background:#d1a79b22;border-radius:50%;width:60vw;height:60vw;position:absolute}.welcome-content{text-align:center;width:min(90%,560px);padding:48px 25px;position:relative}.overline{letter-spacing:.35em;text-transform:uppercase;font-size:10px}.welcome-date{letter-spacing:.4em;margin:25px 0 0;font:400 15px Cormorant Garamond,serif}.welcome-line{background:#fff6;width:100px;height:1px;margin:34px auto}.nav{z-index:5;color:#fff;justify-content:space-between;align-items:center;height:92px;padding:0 6vw;display:flex;position:absolute;top:0;left:0;right:0}.logo,.footer-logo{letter-spacing:.09em;font-family:Cormorant Garamond,serif;font-size:26px}.logo span,.footer-logo .heart{color:#c59589}.nav .logo,.nav nav a{text-shadow:0 1px 2px #17100d,0 0 12px #17100d99}.nav nav{letter-spacing:.18em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);background:#1b1513b0;border-radius:100px;gap:28px;margin-left:90px;padding:13px 26px;font-size:10px;display:flex;box-shadow:0 4px 18px #120c0a66}.nav nav a{opacity:.88;transition:all .2s}.nav nav a:hover{opacity:1}.hero{color:#fff;background:#352b2a;align-items:center;height:100svh;min-height:680px;display:flex;position:relative}.hero-backdrop{background:linear-gradient(90deg,#1c1414 0%,#2d24238c 44%,#2d242322 100%);position:absolute;inset:0}.hero-frame{position:absolute;inset:0 0 0 43%;overflow:hidden}.hero-frame img{object-fit:cover;object-position:center 19%;filter:saturate(.72);width:100%;height:100%;display:block}.hero-frame-shade{background:linear-gradient(90deg,#211817 0%,#0000 26%,#21181714 80%,#21181744);position:absolute;inset:0}.hero-content{width:52%;margin-top:27px;padding-left:9vw;position:relative}.hero h1{letter-spacing:-.05em;white-space:nowrap;margin:32px 0 25px;font:400 clamp(60px,8.5vw,126px)/.82 Cormorant Garamond,serif}.hero h1 em{color:#d0a39a;vertical-align:middle;margin:0 .12em;font-family:Parisienne,cursive;font-size:.48em;font-style:normal}.ornament{align-items:center;gap:16px;display:flex}.ornament span{background:#fff8;width:64px;height:1px}.heart{width:19px;height:19px;display:block}.date{letter-spacing:.42em;margin:22px 0;font:400 16px Cormorant Garamond,serif}.date b{color:#d3a79e;margin:0 4px;font-weight:300}.hero-note{max-width:480px;margin-top:38px;font:300 18px/1.5 Cormorant Garamond,serif}.down{letter-spacing:.2em;text-transform:uppercase;opacity:.8;align-items:center;gap:12px;width:max-content;margin-top:55px;font-size:9px;display:flex}.down b{font-size:21px;font-weight:300}.hero-side{letter-spacing:.2em;text-transform:uppercase;opacity:.75;font-size:9px;position:absolute;bottom:30px;left:9vw}.hero-side span{color:#d1a59c;margin:0 8px}.leaf{color:#d0b4aa;opacity:.6;width:180px;position:absolute}.leaf-one{bottom:-25px;left:-15px;transform:rotate(18deg)}.leaf-two{opacity:.26;top:120px;right:2%;transform:scaleX(-1)rotate(17deg)}.section{padding:125px 10vw}.section-tag{color:#9a827a;letter-spacing:.34em;text-transform:uppercase;margin-bottom:27px;font-size:10px}.story{background:var(--paper)}.story-grid{grid-template-columns:1fr 1.03fr;align-items:center;gap:9vw;max-width:1100px;margin:auto;display:grid}.story-photo{order:2;position:relative}.story-photo img{object-fit:cover;object-position:center 28%;filter:saturate(.78);width:100%;height:570px;display:block}.photo-caption{color:#fff;letter-spacing:.08em;font:italic 17px Cormorant Garamond,serif;position:absolute;bottom:20px;left:23px}.story-copy{order:1;position:relative}.quote-mark{color:#cda99f;height:35px;font:100px/0 Cormorant Garamond,serif}.story h2,.rsvp h2{letter-spacing:-.03em;margin:20px 0 34px;font:400 clamp(43px,5vw,72px)/.91 Cormorant Garamond,serif}.story h2 i,.rsvp h2 i,.section-title i,.place h2 i{color:#8c5e59;font-style:italic}.story-copy>p{color:var(--muted);max-width:400px;font-size:14px;line-height:1.9}.signature{color:#7b6963;margin-top:38px;font:17px/1.5 Cormorant Garamond,serif}.signature strong{color:var(--wine);font:24px Parisienne,cursive}.details{background:var(--sand);padding-top:110px;padding-bottom:130px}.details .section-tag{text-align:center}.section-title{text-align:center;margin:0 0 65px;font:400 clamp(42px,5vw,70px)/.9 Cormorant Garamond,serif}.cards{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1060px;margin:auto;display:grid}.cards article{background:#f5f1ed;min-height:365px;padding:30px;position:relative}.cards .dark-card{background:var(--wine);color:#f7eee9}.num{opacity:.55;font:13px Cormorant Garamond,serif;position:absolute;top:24px;right:24px}.icon{margin:12px 0 43px;font:27px Cormorant Garamond,serif}.cards small{letter-spacing:.25em;text-transform:uppercase;color:#9a827a;font-size:9px}.cards h3{margin:17px 0 24px;font:400 39px/.85 Cormorant Garamond,serif}.cards h3 i{color:#9d716a;font-style:italic}.dark-card h3 i{color:#dfb7a9}.cards p{color:#81776f;font-size:12px;line-height:1.7}.dark-card p{color:#d9c4bd}.cards a{letter-spacing:.12em;text-transform:uppercase;color:#dfb7a9;font-size:10px;position:absolute;bottom:27px}.place{background:#eee7e1;grid-template-columns:.82fr 1.18fr;align-items:center;gap:7vw;display:grid}.place-copy{max-width:430px}.place h2{margin:15px 0 27px;font:400 clamp(45px,5vw,72px)/.9 Cormorant Garamond,serif}.place-copy>p{color:var(--muted);font-size:14px;line-height:1.9}address{color:#6f5954;margin:28px 0;font:400 17px/1.65 Cormorant Garamond,serif}address span{color:#9b837a;font-size:13px}.map-button{color:var(--wine);letter-spacing:.15em;text-transform:uppercase;border:1px solid #ad9188;align-items:center;gap:35px;padding:14px 17px;font-size:10px;display:inline-flex}.map-button b{font-size:17px;font-weight:300}.map-card{background:#d1cbc1;height:480px;position:relative;overflow:hidden;box-shadow:18px 18px #dfd3c9}.map-card iframe{filter:saturate(.6)sepia(.1);border:0;width:100%;height:100%}.map-pin{color:var(--ink);background:#f7f1ec;padding:12px 18px 12px 45px;position:absolute;bottom:25px;left:25px;box-shadow:0 6px 20px #44352b26}.map-pin span{color:var(--wine);font-size:21px;position:absolute;top:15px;left:16px}.map-pin b,.map-pin small{display:block}.map-pin b{font:400 19px Cormorant Garamond,serif}.map-pin small{color:var(--muted);margin-top:3px;font-size:9px}.quote{background:var(--paper);justify-content:center;align-items:center;gap:35px;padding:105px 10vw;display:flex}.quote p{text-align:center;color:#6f5954;margin:0;font:400 27px/1.25 Cormorant Garamond,serif}.quote i{color:#9c6f67}.line{background:#cbb9af;flex:1;max-width:110px;height:1px}.rsvp{background:var(--paper);padding:110px 8vw}.rsvp-box{text-align:center;background:#d9c4b8;flex-direction:column;justify-content:center;align-items:center;max-width:1100px;min-height:475px;margin:auto;display:flex;position:relative;overflow:hidden}.rsvp-box .section-tag{color:#805d56}.rsvp h2{margin:17px 0 20px}.rsvp p{color:#7c625c;font-size:13px;line-height:1.8}.rsvp-leaf{color:#b78e83;opacity:.35;bottom:-43px;left:-35px;transform:rotate(15deg)}.button{background:var(--wine);color:#fff;letter-spacing:.16em;text-transform:uppercase;border:0;margin-top:20px;padding:16px 25px;font-size:10px;transition:transform .2s,background .2s}.button:hover{background:#4a2c2d;transform:translateY(-2px)}.button b{margin-left:18px;font-size:17px;font-weight:300}footer{color:#eaded8;background:#302625;justify-content:space-between;align-items:center;padding:35px 7vw 42px;display:flex}footer p,footer small{letter-spacing:.18em;text-transform:uppercase;color:#c3aaa1;font-size:10px}.footer-logo{align-items:center;gap:8px;display:flex}.footer-logo .heart{width:17px}.modal-bg{z-index:20;background:#2c2020aa;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#f4f0eb;width:min(510px,100%);padding:52px 50px 45px;position:relative;box-shadow:0 20px 80px #281a1a55}.close{color:#806963;background:0 0;border:0;font-size:27px;font-weight:200;position:absolute;top:13px;right:19px}.modal h2{margin:12px 0 30px;font:400 54px/.9 Cormorant Garamond,serif}.modal form{gap:16px;display:grid}.modal label{letter-spacing:.15em;text-transform:uppercase;color:#806963;gap:7px;font-size:10px;display:grid}.modal label small{letter-spacing:0;text-transform:none;font-size:9px;display:inline}.modal input,.modal select,.modal textarea{color:var(--ink);resize:vertical;background:0 0;border:0;border-bottom:1px solid #cdbdb5;outline:0;padding:9px 0;font:14px Manrope,sans-serif}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--wine)}.success{text-align:center;padding:28px 0}.success>.heart{color:#af766b;width:37px;height:37px;margin:0 auto 20px}.success h2{margin-bottom:15px}.success p{color:#806963;font:18px/1.5 Cormorant Garamond,serif}.text-button{color:var(--wine);text-transform:uppercase;letter-spacing:.2em;background:0 0;border:0;margin-top:20px;font-size:10px}@media (width<=760px){.nav{height:68px;padding:0 18px}.nav nav{display:none}.logo{font-size:23px}.hero{background:#2d2322;flex-direction:column;align-items:stretch;height:auto;min-height:0;padding-top:68px;display:flex}.hero-frame{order:1;width:100%;height:62vh;min-height:390px;max-height:620px;position:relative;inset:auto}.hero-frame img{object-position:center 23%}.hero-frame-shade{background:linear-gradient(#2d232200 65%,#2d2322 100%)}.hero-backdrop{background:#2d2322}.hero-content{text-align:center;order:2;width:100%;margin:0;padding:46px 22px 64px}.hero h1{white-space:normal;margin:22px 0;font-size:clamp(56px,17vw,84px)}.hero-content .ornament{justify-content:center}.hero-note{max-width:340px;margin:30px auto 0;font-size:17px}.down{margin:38px auto 0}.hero-side{text-align:center;order:3;padding:0 0 22px;font-size:8px;position:static}.leaf-two{display:none}.leaf-one{width:130px}.section{padding:76px 21px}.section-tag{letter-spacing:.27em;font-size:9px}.story-grid{flex-direction:column;gap:47px;display:flex}.story-copy{order:1;padding:0 6px}.story-photo{order:2;width:100%}.story-photo img{aspect-ratio:3/4;object-position:center 27%;height:auto}.story h2{margin-bottom:28px;font-size:clamp(48px,14vw,66px)}.story-copy>p{font-size:13px}.details{padding-top:75px;padding-bottom:82px}.section-title{margin-bottom:42px;font-size:clamp(42px,13vw,61px)}.cards{grid-template-columns:1fr;gap:12px}.cards article{min-height:270px;padding:25px}.cards .icon{margin:8px 0 27px}.cards h3{font-size:38px}.cards a{bottom:23px}.place{flex-direction:column;align-items:stretch;gap:42px;display:flex}.place h2{font-size:58px}.place-copy{max-width:none}.map-card{width:100%;height:380px;box-shadow:10px 10px #dfd3c9}.map-pin{bottom:15px;left:15px}.quote{gap:12px;padding:70px 20px}.quote p{font-size:21px}.line{max-width:24px}.rsvp{padding:72px 21px}.rsvp-box{min-height:470px;padding:25px 18px}.rsvp h2{font-size:54px}footer{text-align:center;flex-direction:column;gap:18px;padding:34px 20px}.modal{padding:46px 25px 32px}}@media (prefers-reduced-motion:no-preference){.hero-content>*{animation:.8s both rise}.hero-content .overline{animation-delay:.1s}.hero-content h1{animation-delay:.2s}.hero-content .ornament{animation-delay:.35s}.hero-content .date{animation-delay:.45s}.hero-content .hero-note{animation-delay:.55s}@keyframes rise{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}}.welcome-screen{will-change:opacity,transform;transition:opacity .82s cubic-bezier(.22,.75,.2,1),transform .82s cubic-bezier(.22,.75,.2,1)}.welcome-screen.leaving{opacity:0;pointer-events:none;transform:scale(1.035)}.welcome-screen.leaving .welcome-content{opacity:0;transition:transform .72s,opacity .58s;transform:translateY(-18px)}.welcome-screen.leaving .welcome-photo{transition:transform 1s;transform:scale(1.04)}.welcome-photo{transition:transform .9s}.hero-frame img,.story-photo img{content-visibility:auto}.welcome-names{letter-spacing:.015em;margin:20px 0 16px;font:400 clamp(46px,12vw,96px)/1.02 Cormorant Garamond,serif}.envelope{aspect-ratio:10/7;cursor:pointer;perspective:700px;background:0 0;border:0;width:min(230px,56vw);margin:38px auto 18px;padding:0;animation:3s ease-in-out infinite envFloat;display:block;position:relative}.envelope:active{transform:scale(.97)}.env-body{background:linear-gradient(150deg,#ecd8cb 0%,#d6b9a8 100%);border-radius:8px;position:absolute;inset:0;box-shadow:0 24px 55px #0e080780}.env-letter{color:#a4685f;z-index:1;background:#f7f0ea;border-radius:4px;place-items:center;transition:transform .6s cubic-bezier(.34,1.35,.45,1);display:grid;position:absolute;inset:13% 9% 17%}.env-letter .heart{width:26px;height:26px}.env-flap{clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;z-index:2;background:linear-gradient(#e6cab9,#cdab98);border-radius:8px 8px 0 0;width:100%;height:62%;transition:transform .65s cubic-bezier(.42,.05,.18,1);position:absolute;top:0;left:0}.env-flap:after{content:"♥";color:#8f5a52;font-size:22px;position:absolute;bottom:16%;left:50%;transform:translate(-50%)}.welcome-screen.leaving .envelope{animation:none}.welcome-screen.leaving .env-flap{transform:rotateX(176deg)}.welcome-screen.leaving .env-letter{transform:translateY(-32%)}.env-hint{letter-spacing:.24em;text-transform:uppercase;opacity:.75;margin:0;font-size:10px}@keyframes envFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (width<=760px){.welcome-names{font-size:clamp(50px,16vw,74px)}.envelope{margin:32px auto 16px}}.music{color:#fff;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 2px #17100d;-webkit-backdrop-filter:blur(10px);background:#1b1513c4;border:1px solid #ffffff59;border-radius:100px;align-items:center;gap:10px;padding:10px 16px;font-size:10px;transition:background .2s;display:flex;box-shadow:0 4px 18px #120c0a80,inset 0 0 0 1px #ffffff14}.music:hover{background:#2a1f1bdd}.music-bars{align-items:center;gap:2px;height:14px;display:flex}.music-bars i{background:currentColor;width:2px;height:7px;display:block}.music-bars i:nth-child(2){height:13px}.music-bars i:nth-child(3){height:9px}.music-bars i:nth-child(4){height:5px}.music-bars.playing i{animation:.7s ease-in-out infinite alternate bars}.music-bars.playing i:nth-child(2){animation-delay:.15s}.music-bars.playing i:nth-child(3){animation-delay:.3s}.music-bars.playing i:nth-child(4){animation-delay:.45s}@keyframes bars{to{height:4px}}@media (width<=760px){.music{padding:9px 11px}.music .music-label{display:none}}.form-error{color:#b04a42;background:#b04a421a;border-radius:10px;margin:4px 0 0;padding:10px 14px;font-size:12px;line-height:1.5}.button:disabled{opacity:.6;cursor:wait;transform:none}
