:root{--cream:#f8f3e9;--paper:#f4ebdb;--gold:#a77b42;--deep:#49242d;--wine:#622f37;--ink:#3a3230;--muted:#756b63;--line:#d8c5a7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}::selection{background:#e1c9ac;color:#43232b}.grain{position:fixed;inset:0;pointer-events:none;z-index:40;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E")}.entrance{position:fixed;inset:0;z-index:100;display:grid;place-items:center;overflow:hidden;color:#fff1dc;text-align:center;background:#562b32;transition:visibility 0s 1.35s}.entrance.done{visibility:hidden}.door{position:absolute;top:0;bottom:0;width:50.5%;background:radial-gradient(ellipse at 50% 40%,#74434a 0%,#562b32 55%,#3e1d27 100%);transition:transform 1.4s cubic-bezier(.7,0,.2,1);box-shadow:inset 0 0 0 12px #6b3d3e,inset 0 0 0 14px rgba(233,190,124,.38)}.door:before{content:"";position:absolute;inset:28px;border:1px solid rgba(223,185,130,.4);border-radius:110px 110px 3px 3px}.door-left{left:0;border-right:1px solid #b48d58}.door-right{right:0;border-left:1px solid #b48d58}.entrance.done .door-left{transform:translateX(-110%)}.entrance.done .door-right{transform:translateX(110%)}.entrance-content{position:relative;z-index:3;max-width:90vw;transition:opacity .45s ease,transform .65s ease}.entrance.done .entrance-content{opacity:0;transform:scale(1.12)}.overline,.eyebrow{font-size:10px;letter-spacing:.3em;font-weight:700}.overline.light{color:#eed9b4}.entrance-ornament{font-size:34px;color:#e3b879;margin:6vh 0 2vh}.entrance-subtitle{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(20px,3vw,27px);font-style:italic;color:#ead4b9}.entrance-names{font:500 clamp(52px,8vw,112px)/.9 'Cormorant Garamond',Georgia,serif;margin:16px 0 26px;letter-spacing:-.055em}.entrance-names span{display:block;font-style:italic;font-size:.51em;line-height:1.25;color:#e5bd82}.entrance-location{font-size:11px;letter-spacing:.3em;margin:24px 0 7vh}.seal-button{border:0;display:flex;align-items:center;gap:17px;background:transparent;color:#ffefd7;font-size:11px;letter-spacing:.19em;margin:auto}.seal-button:hover .seal-circle{transform:rotate(30deg) scale(1.08)}.seal-circle{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#d9ab6c;color:#562b32;font:600 31px 'Cormorant Garamond',serif;outline:1px solid #e7c590;outline-offset:4px;transition:transform .4s}.entrance-note{font:italic 22px 'Cormorant Garamond',serif;color:#d8b69a;margin-top:7vh}.topbar{position:absolute;z-index:12;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:25px clamp(20px,5vw,75px);color:var(--deep)}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:9px;font-weight:700;letter-spacing:.19em}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--gold);border-radius:50%;font:600 23px 'Cormorant Garamond',serif}.nav-link{font-size:10px;letter-spacing:.16em;text-decoration:none;font-weight:700;border-bottom:1px solid var(--gold);padding-bottom:7px}.hero{min-height:790px;min-height:100svh;position:relative;display:grid;place-items:center;padding:95px 22px 0;text-align:center;overflow:hidden;background:radial-gradient(ellipse at center 44%,#fcf9f2 0%,#f4ebdb 70%,#e9d9c1 150%)}.hero:before,.hero:after{content:"";position:absolute;width:28vw;max-width:420px;aspect-ratio:1;border:1px solid rgba(177,133,74,.18);border-radius:50%;top:20%;pointer-events:none}.hero:before{left:-17vw}.hero:after{right:-17vw}.hero-frame{width:100%;min-height:calc(100svh - 95px);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:60px 0 170px}.hero-side{position:absolute;top:12%;bottom:13%;width:1px;background:linear-gradient(transparent,var(--line),transparent)}.hero-side-left{left:2%}.hero-side-right{right:2%}.hero .overline{color:var(--gold);font-size:10px}.tiny-rule{font-size:20px;color:var(--gold);margin:27px 0 8px}.hero-prefix{font:italic clamp(22px,3.3vw,32px) 'Cormorant Garamond',serif;color:#675a52;margin:0}.hero-names{font:500 clamp(78px,12vw,172px)/.79 'Cormorant Garamond',Georgia,serif;color:var(--deep);letter-spacing:-.075em;margin:21px 0 22px;position:relative;z-index:1}.hero-names span{display:block}.hero-names em{display:block;font-size:.55em;font-weight:400;line-height:1.05;color:var(--gold);letter-spacing:0}.hero-tagline{font:italic clamp(22px,3vw,31px)/1.25 'Cormorant Garamond',serif;color:#70574d;margin:8px 0 10px}.date-divider{display:flex;align-items:center;gap:15px;color:var(--gold);margin:12px 0}.date-divider i{display:block;height:1px;width:65px;background:var(--line)}.date-label{font-size:10px;letter-spacing:.34em;font-weight:700;color:var(--gold);margin:12px 0}.hero-date{font:600 clamp(24px,4vw,35px) 'Cormorant Garamond',serif;color:var(--deep);margin:0}.hero-city{font-size:11px;letter-spacing:.28em;font-weight:600;margin:14px 0;color:#66524b}.hero-city span{padding:0 10px;color:var(--gold)}.scroll-link{margin-top:31px;font-size:9px;letter-spacing:.18em;font-weight:700;text-decoration:none;color:var(--wine);border-bottom:1px solid #b49a7d;padding-bottom:8px;z-index:2}.scroll-link span{font-size:16px;margin-left:7px}.palace{position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);width:min(100%,1150px);color:#bb9872;opacity:.5;pointer-events:none;line-height:0}.palace svg{width:100%;height:auto}.intro-section{padding:135px 25px 145px;text-align:center;max-width:800px;margin:auto}.section-flourish{color:var(--gold);font-size:32px}.eyebrow{color:var(--gold);margin:20px 0 25px}.intro-section h2,.countdown-section h2,.destination-section h2,.film-heading h2{font:500 clamp(43px,6vw,75px)/1.05 'Cormorant Garamond',serif;letter-spacing:-.035em;color:var(--deep);margin:15px 0 33px}.intro-section h2 em,.countdown-section h2 em,.destination-section h2 em,.film-heading h2 em{font-weight:400;color:var(--gold)}.section-body{font:400 clamp(20px,2.3vw,25px)/1.5 'Cormorant Garamond',serif;color:#66564e;max-width:610px;margin:20px auto}.section-body strong{font-weight:700;color:var(--deep)}.signature{font:italic 23px 'Cormorant Garamond',serif;margin-top:50px;color:var(--muted)}.signature-name{font:600 30px 'Cormorant Garamond',serif;color:var(--deep);margin:0}.signature-family{font-size:10px;letter-spacing:.22em;color:var(--gold);font-weight:700;margin-top:17px}.film-section{background:var(--wine);color:#f7eada;padding:112px 22px 124px}.film-heading{text-align:center}.film-heading .eyebrow{color:#e5bd87}.film-heading h2{color:#fff3e5;margin:12px 0}.film-heading>p:last-child{font:italic 24px 'Cormorant Garamond',serif;color:#e8cfbf}.film-frame{max-width:990px;margin:50px auto 0;aspect-ratio:16/9;border:1px solid rgba(232,195,147,.5);padding:9px;box-shadow:0 30px 70px #27121c55}.film-placeholder{height:100%;background:radial-gradient(ellipse at 50% 35%,#854e54,#48272f 72%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;position:relative;overflow:hidden}.film-placeholder:before,.film-placeholder:after{content:"";position:absolute;width:45%;aspect-ratio:1;border:1px solid #d6ac7c44;border-radius:50%}.film-placeholder:before{left:-24%;top:-42%}.film-placeholder:after{right:-24%;bottom:-42%}.film-mandala{font-size:42px;color:#e4bd86}.film-small{font-size:10px;letter-spacing:.28em;color:#edd7bc;margin:20px 0 0}.film-title{font:500 clamp(40px,6vw,79px)/.95 'Cormorant Garamond',serif;margin:16px 0 30px;color:#fff3e6}.film-title em{color:#e6bd87}.film-play{display:flex;align-items:center;gap:13px;padding:14px 21px;border:1px solid #e9caa5;background:transparent;color:#f8e6d0;font-size:10px;letter-spacing:.15em;font-weight:700;position:relative;z-index:1}.film-play:hover{background:#ffffff12}.film-play span{font-size:16px}.film-note{font-size:11px;color:#d9b9a6;margin-top:18px}.film-frame iframe,.film-frame video{width:100%;height:100%;display:block;border:0;background:black}.countdown-section{text-align:center;padding:125px 20px 135px;background:#f9f3e9}.countdown{display:flex;justify-content:center;align-items:flex-start;gap:clamp(10px,2vw,30px);margin:60px 0 20px}.count-cell{display:flex;flex-direction:column;min-width:clamp(55px,12vw,115px)}.count-cell strong{font:500 clamp(43px,7vw,80px) 'Cormorant Garamond',serif;color:var(--deep);font-variant-numeric:tabular-nums}.count-cell span{font-size:9px;letter-spacing:.17em;color:var(--gold);font-weight:700}.count-colon{font:400 clamp(29px,5vw,58px) 'Cormorant Garamond',serif;color:#b49c81}.countdown-note{color:#776a60;font:italic 23px 'Cormorant Garamond',serif}.calendar-button{margin-top:32px;background:var(--wine);color:#fff2df;border:1px solid var(--wine);padding:18px 25px;letter-spacing:.16em;font-size:11px;font-weight:700;transition:background .2s}.calendar-button:not(:disabled):hover{background:#42232b}.calendar-button:disabled{opacity:.48;cursor:not-allowed}.calendar-button span{margin:0 6px}.calendar-hint{font-size:11px;color:#837971}.destination-section{min-height:480px;display:grid;place-items:center;text-align:center;padding:85px 20px;background:linear-gradient(#44242bcf,#44242be0),radial-gradient(ellipse at 65% 0%,#b48b58 0%,#552c34 70%);color:#faecdd}.destination-inner{max-width:600px}.destination-section .eyebrow{color:#e8bb85}.destination-section h2{color:#fff2e4}.destination-section p:not(.eyebrow):not(.destination-caps){font:400 25px/1.4 'Cormorant Garamond',serif;color:#f0d9c6}.destination-caps{letter-spacing:.25em;font-size:10px;margin:35px 0}.destination-section a{font-size:10px;letter-spacing:.16em;display:inline-block;padding-bottom:9px;border-bottom:1px solid #c99d72;text-decoration:none}.destination-section a span{margin-left:7px}footer{padding:100px 20px 35px;text-align:center;background:#f5ecdc}footer .eyebrow{font-size:9px}.footer-names{font:500 clamp(55px,8vw,95px) 'Cormorant Garamond',serif;color:var(--deep);margin:10px 0}.footer-names span{font-style:italic;color:var(--gold)}.footer-heart{color:var(--gold);font-size:24px}footer>p:not(.footer-names):not(.eyebrow){font:21px 'Cormorant Garamond',serif;color:#756357}.footer-family{font-family:'DM Sans',sans-serif!important;font-size:10px!important;letter-spacing:.2em;font-weight:700!important;color:var(--wine)!important;margin-top:34px}.footer-contact a{text-decoration:none}.footer-contact span{padding:0 12px}.footer-credit{margin-top:80px!important;font-family:'DM Sans',sans-serif!important;font-size:9px!important;letter-spacing:.14em!important;color:#9e8b76!important}.toast{position:fixed;z-index:120;bottom:26px;left:50%;transform:translate(-50%,20px);max-width:calc(100vw - 32px);background:#4a2930;color:#fff5e5;padding:14px 21px;font-size:13px;text-align:center;border:1px solid #cda875;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s}.toast.show{opacity:1;transform:translate(-50%,0)}.reveal{animation:rise-in .85s both}@keyframes rise-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero .reveal:nth-child(5){animation-delay:.12s}.hero .reveal:nth-child(6){animation-delay:.24s}.hero .reveal:nth-child(7){animation-delay:.34s}@media (max-width:600px){.topbar{padding:19px}.brand{font-size:8px;letter-spacing:.12em}.nav-link{font-size:8px}.hero{min-height:760px}.hero-frame{min-height:calc(100svh - 100px);padding:50px 0 110px}.hero-names{font-size:clamp(68px,19vw,116px)}.hero .overline{font-size:8px;letter-spacing:.2em}.hero-city{font-size:10px}.hero-tagline{font-size:23px}.scroll-link{font-size:8px}.palace{width:820px;max-width:none;bottom:-3px}.intro-section{padding:90px 24px 100px}.intro-section h2{font-size:48px}.film-section{padding:80px 12px 90px}.film-frame{padding:5px;margin-top:30px;aspect-ratio:4/5}.film-title{font-size:51px}.film-note{font-size:10px}.film-placeholder:before{top:-15%}.film-placeholder:after{bottom:-15%}.countdown-section{padding:90px 15px 100px}.countdown-section h2{font-size:48px}.countdown{gap:6px}.count-cell{min-width:58px}.count-cell strong{font-size:46px}.count-colon{font-size:31px}.count-cell span{font-size:8px;letter-spacing:.05em}.entrance-names{font-size:clamp(57px,15vw,90px)}.entrance-location{margin-bottom:55px}.door:before{inset:12px;border-radius:85px 85px 3px 3px}.destination-section h2{font-size:50px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
