@font-face{font-family:Qamar;src:url('ovo.woff');font-display:swap}@font-face{font-family:QamarScript;src:url('script.woff');font-display:swap}:root{--night:#082b30;--deep:#051f23;--gold:#d2b779;--cream:#f4eee1;--soft:#b8c6c1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}body{margin:0;background:var(--night);color:var(--cream);font:14px/1.8 Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h2{font:clamp(42px,5vw,68px)/1.12 Qamar,Georgia,serif;letter-spacing:-.035em}h2 em{font:1.2em/1 QamarScript,cursive;color:var(--gold);letter-spacing:0}h3{font:25px/1.25 Qamar,Georgia,serif}p{margin-bottom:20px}.eyebrow{font-size:10px;letter-spacing:.24em;color:var(--gold);font-weight:400;line-height:1.9}.prototype{text-align:center;position:absolute;z-index:5;top:0;left:0;right:0;padding:5px;background:#052329b3;color:#e0ceaa;font-size:8px;letter-spacing:.22em}.nav{position:absolute;z-index:5;top:35px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center}.monogram{font:28px Qamar}.monogram span{font:22px QamarScript;color:var(--gold);margin:0 4px}.nav nav{display:flex;align-items:center;gap:30px;font-size:11px}.nav button{border:1px solid #ddc39466;background:#05232988;color:var(--cream);padding:9px 20px;border-radius:1px;font-size:11px}.nav button span{margin-left:20px}.hero{position:relative;height:100svh;min-height:760px;max-height:1200px;overflow:hidden;background:var(--deep)}.hero-picture{height:100%;object-fit:cover;object-position:center 54%;will-change:transform}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#021c2566,#021f2520 40%,#07292d10 65%,#082b30 100%)}#lights{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero-copy{position:absolute;top:19%;left:0;right:0;text-align:center;text-shadow:0 2px 25px #02191d}.hero-copy .eyebrow{font-size:10px;margin-bottom:17px;color:#ecdcbc}h1{font:clamp(76px,9vw,136px)/.92 QamarScript,cursive;font-weight:400;display:flex;flex-direction:column;align-items:center}h1 i{font:40px/1.2 QamarScript;color:var(--gold);margin:10px}h1 span:last-child{padding-left:30px}.hero-date{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px}.hero-date>span:first-child{font:39px Qamar}.hero-date b{font-size:8px;letter-spacing:.19em;line-height:1.7;font-weight:400;text-align:left}.hero-date>span:nth-child(3){font-size:17px;color:var(--gold);margin-inline:10px}.hero-line{font:18px Qamar;margin-top:23px}.scroll-cue{position:absolute;bottom:34px;left:0;right:0;text-align:center;letter-spacing:.12em;font-size:9px}.scroll-cue span{display:block;font-size:24px;color:var(--gold);animation:down 2s ease-in-out infinite}.side-label{position:absolute;left:30px;top:46%;writing-mode:vertical-rl;font-size:8px;letter-spacing:.3em;color:#eadcb9}.wrap{width:min(1060px,calc(100% - 100px));margin:auto}.section{padding-block:125px}.story{display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:100px}.story-copy>p:not(.eyebrow):not(.signature){color:var(--soft);max-width:390px}.story h2{margin:10px 0 30px}.ornament{font:54px Qamar;color:var(--gold);display:block;margin-bottom:22px}.story .ornament{font-size:37px;margin:0}.signature{font-size:11px;color:var(--soft);margin-top:35px}.signature span{display:block;font:38px QamarScript;color:var(--gold);margin-top:13px}.story-image{position:relative;padding:14px;border:1px solid #bd9c5b55;border-radius:240px 240px 2px 2px}.story-image img{height:560px;object-fit:cover;border-radius:230px 230px 1px 1px}.story-image figcaption{font-size:8px;letter-spacing:.2em;text-align:center;margin-top:15px;color:var(--gold)}.image-orbit{position:absolute;border:1px solid #bd9c5b44;border-radius:50%;width:120px;height:120px;bottom:40px;right:-45px;animation:orbit 30s linear infinite}.image-orbit:before{content:'✦';position:absolute;top:-16px;left:50%;color:var(--gold);font-size:22px}.count-section{background:var(--cream);color:var(--night);text-align:center;padding:90px 20px;position:relative}.count-section .eyebrow{color:#816436}.count-section h2{font-size:49px}.count-section h2 em{color:#9b763b}.countdown{display:flex;justify-content:center;gap:28px;align-items:center;margin:45px 0 24px}.countdown strong{font:66px/1 Qamar;display:block;min-width:90px;font-variant-numeric:tabular-nums}.countdown span{display:block;font-size:9px;letter-spacing:.2em;margin-top:12px;text-transform:uppercase}.countdown i{font:26px Qamar;color:#ac9160;margin-top:-20px}.count-section #count-label{font-size:12px;color:#756e5d}.outline{display:inline-flex;align-items:center;gap:30px;color:inherit;background:none;border:1px solid #b1956066;padding:12px 22px;font-size:11px;letter-spacing:.04em}.outline:hover{background:#b195601a}.program{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.program-title{position:sticky;top:90px;align-self:start}.program-title>p:not(.eyebrow){color:var(--soft);margin-top:25px}.program-star{display:block;font:100px Qamar;color:var(--gold);margin-top:40px}.timeline{position:relative}.timeline:before{content:'';position:absolute;width:1px;background:linear-gradient(transparent,#c7ae7080 10%,#c7ae7080 90%,transparent);left:85px;top:0;bottom:0}.timeline article{display:grid;grid-template-columns:65px 20px 1fr;gap:11px;padding:28px 0 38px}.timeline time{font:21px Qamar;color:var(--gold);padding-top:5px}.timeline .dot{height:7px;width:7px;background:var(--gold);transform:rotate(45deg);margin:12px 0 0 6px;box-shadow:0 0 18px #dabd8160}.timeline h3{margin-bottom:12px}.timeline p{font-size:13px;color:var(--soft);margin:0}.panorama{height:630px;position:relative;overflow:hidden}.panorama>img{height:115%;object-fit:cover;object-position:center 60%;will-change:transform}.panorama-shade{position:absolute;inset:0;background:linear-gradient(180deg,#05252b33,#021c2177 50%,#021c21cc)}.panorama>div:last-child{position:absolute;left:5%;right:5%;bottom:70px;text-align:center}.panorama h2{font-size:70px;margin-bottom:25px}.panorama p:not(.eyebrow){font-size:13px;margin-bottom:7px}.venue-note{font-size:9px;color:#d2ccbd}.details-section{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.dress>p:not(.eyebrow){margin-top:25px;color:var(--soft);font-size:13px;max-width:400px}.swatches{display:flex;gap:30px;margin-top:30px}.swatches>div{text-align:center;font-size:9px;color:#ceceba}.swatches span{display:block;background:var(--swatch);width:48px;height:48px;border:1px solid #d2b77977;border-radius:50%;margin:0 auto 10px;box-shadow:0 0 0 6px #ffffff03}.small{font-size:10px!important;color:#aebcb4!important;line-height:1.8}.practical details{border-bottom:1px solid #c2aa7033;padding:21px 0}.practical summary{cursor:pointer;font:19px Qamar;line-height:1.5}.practical details p{font-size:12px;color:var(--soft);margin:15px 0 0}.rsvp-section{padding:20px 20px 90px;background:radial-gradient(ellipse at 50% 60%,#17474a,transparent 65%);text-align:center}.rsvp-arch{max-width:640px;margin:auto;padding:75px 40px 60px;border:1px solid #d2b77966;border-radius:320px 320px 0 0;position:relative}.rsvp-arch:before{content:'';position:absolute;inset:12px;border:1px solid #d2b77933;border-radius:inherit;pointer-events:none}.rsvp-arch h2{margin-bottom:30px}.rsvp-arch p:not(.eyebrow){color:var(--soft);font-size:13px}.gold-button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--gold);color:#082b30;border:1px solid var(--gold);padding:16px 28px;font-size:11px;letter-spacing:.05em;transition:background .2s,transform .2s}.gold-button:hover{background:#ead29c;transform:translateY(-2px)}.rsvp-arch .small{margin:20px 0 0}footer{text-align:center;padding:35px 20px 95px;border-top:1px solid #d2b77922}footer>.signature{font:48px QamarScript;color:var(--gold);display:block;margin:0 0 16px}footer p{font-size:9px;letter-spacing:.15em;margin-bottom:15px}.footer-brand{font-size:9px;letter-spacing:.15em;color:var(--gold)}footer .small{letter-spacing:0;margin-top:20px}.controls{position:fixed;bottom:18px;right:18px;z-index:9;display:flex;gap:7px}.controls button{background:#062a30ed;border:1px solid #d4b87877;color:#e0d3b6;font-size:10px;padding:9px 13px;border-radius:30px;backdrop-filter:blur(10px)}dialog{color:var(--cream)}#entrance{width:100%;height:100%;max-width:none;max-height:none;border:0;padding:0;inset:0;margin:0;background:transparent;overflow:hidden}#entrance::backdrop{background:#051f23}.door{position:absolute;top:0;bottom:0;width:50.1%;background-color:#082b30;background-image:repeating-linear-gradient(45deg,transparent 0 30px,#b59b5e0d 31px 32px,transparent 33px 64px),repeating-linear-gradient(-45deg,transparent 0 30px,#b59b5e0d 31px 32px,transparent 33px 64px);transition:transform 1.7s cubic-bezier(.65,0,.15,1);will-change:transform}.left-door{left:0;border-right:1px solid #d5b87788}.right-door{right:0;border-left:1px solid #d5b87744}.door>span{position:absolute;top:4%;bottom:4%;left:6%;right:6%;border:1px solid #d2b77955;border-radius:50% 50% 0 0}.entrance-copy{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:opacity .45s,transform .6s;padding:30px}.entrance-copy h2{font-size:80px;margin-bottom:18px}.entrance-copy>p:not(.eyebrow){font:22px Qamar;margin:0 0 22px}.moon{font:46px Qamar;color:var(--gold);margin-bottom:25px;text-shadow:0 0 30px #cda76566}.seal{width:108px;height:108px;border:1px solid #e2cb93;background:radial-gradient(ellipse at 30% 25%,#e7cc8c,#a78343 80%);border-radius:50%;color:#3b361f;box-shadow:0 0 0 7px #b793491f,0 0 0 8px #d6bb7155,0 10px 40px #0005;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:breathe 3s ease-in-out infinite}.seal span{font:27px Qamar}.seal small{font-size:8px;letter-spacing:.2em;margin-top:5px}.entrance-copy .entrance-hint{font:10px Arial!important;letter-spacing:.08em;margin-top:25px!important;color:#c1c5b6}.entrance-brand{position:absolute;bottom:30px;font-size:8px;letter-spacing:.23em;color:var(--gold)}#entrance.opening .left-door{transform:translateX(-101%)}#entrance.opening .right-door{transform:translateX(101%)}#entrance.opening .entrance-copy{opacity:0;transform:scale(1.12);pointer-events:none}#rsvp-dialog{width:min(530px,calc(100% - 28px));max-height:90svh;padding:45px;background:#0b3035;border:1px solid #b69c6266;overflow:auto}#rsvp-dialog::backdrop{background:#00171dcc;backdrop-filter:blur(8px)}#rsvp-dialog h2{font-size:43px;margin-bottom:25px}.close{position:absolute;right:12px;top:10px;background:none;border:0;color:var(--gold);font-size:26px;width:40px;height:40px}.form-note{font-size:10px;color:var(--soft)}form>label{display:block;font-size:11px;margin-bottom:16px}input:not([type=radio]),select,textarea{display:block;width:100%;padding:11px 13px;background:#06262b;color:var(--cream);border:1px solid #b69c6266;border-radius:0;margin-top:6px;font-size:16px}textarea{resize:vertical}fieldset{border:1px solid #b69c6244;padding:12px;margin:0 0 16px;font-size:11px}fieldset label{display:block;margin:5px 0}legend{padding-inline:5px}input[type=radio]{accent-color:var(--gold)}form .gold-button{width:100%}#confirmation{text-align:center;padding:20px 0}#confirmation p{color:var(--soft);font-size:13px;margin-top:20px}.reveal{transition:opacity 1s ease,transform 1.2s cubic-bezier(.2,.65,.3,1)}.js-motion .reveal:not(.visible){opacity:0;transform:translateY(35px)}body.paused *{animation-play-state:paused!important}body.paused .reveal{transition:none;opacity:1!important;transform:none!important}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #e6c885;outline-offset:5px}@keyframes down{50%{transform:translateY(7px)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes breathe{50%{box-shadow:0 0 0 10px #b7934912,0 0 0 11px #d6bb7144,0 10px 55px #b9944333}}
@media(min-width:1100px){.hero-picture{object-position:center 52%;filter:brightness(.85)}.hero-copy{top:18%}.hero{min-height:850px}.hero-picture{object-fit:cover}.hero-copy h1{font-size:130px}.hero-shade{background:linear-gradient(180deg,#03232c55,#03232c22 40%,#082b30 100%)}}
@media(max-width:900px){.wrap{width:calc(100% - 56px)}.story,.program,.details-section{gap:45px}.story-image img{height:440px}.section{padding-block:85px}.story h2{font-size:47px}.panorama{height:520px}.image-orbit{right:-15px;width:80px;height:80px}.side-label{display:none}.timeline article{grid-template-columns:55px 15px 1fr;gap:9px}.timeline:before{left:74px}.hero{min-height:740px}.hero-copy{top:23%}.hero-copy h1{font-size:110px}}
@media(max-width:600px){.prototype{font-size:7px}.nav{top:35px;left:22px;right:22px}.nav nav>a{display:none}.nav button{padding:8px 15px}.nav nav{gap:0}.hero{height:100svh;min-height:690px;max-height:960px}.hero-picture{object-position:center center}.hero-copy{top:24%}.hero-copy h1{font-size:88px}h1 i{font-size:29px;margin:9px}.hero-copy .eyebrow{font-size:7px;letter-spacing:.22em;margin-bottom:20px}.hero-date{margin-top:25px;gap:12px}.hero-date b{font-size:7px}.hero-date>span:first-child{font-size:31px}.hero-line{font-size:15px}.scroll-cue{bottom:25px;font-size:8px}.wrap{width:calc(100% - 48px)}.section{padding-block:65px}.story,.program,.details-section{grid-template-columns:1fr;gap:45px}.story-copy{text-align:center}.story-copy>p:not(.eyebrow){margin-inline:auto}.story h2{font-size:48px}.story-image{max-width:340px;margin:auto;width:100%}.story-image img{height:420px}.story-image figcaption{font-size:7px}.count-section{padding:65px 0}.count-section h2{font-size:35px}.count-section .wrap{width:calc(100% - 32px)}.countdown{gap:9px;margin-top:35px}.countdown strong{font-size:42px;min-width:53px}.countdown span{font-size:7px;letter-spacing:.1em}.countdown i{font-size:17px}.count-section #count-label{font-size:10px}.eyebrow{font-size:8px}.program-title{position:static;text-align:center}.program-star{display:none}.timeline article{grid-template-columns:55px 15px 1fr;padding:22px 0 30px}.timeline h3{font-size:24px}.timeline p{font-size:12px}.timeline time{font-size:19px}.panorama{height:560px}.panorama>img{object-position:45% center}.panorama h2{font-size:47px}.panorama>div:last-child{bottom:60px}.panorama .eyebrow{font-size:7px}.dress h2{font-size:43px}.swatches{gap:27px}.practical summary{font-size:18px}.rsvp-arch{padding:65px 25px 40px}.rsvp-arch h2{font-size:47px}.rsvp-arch p:not(.eyebrow){font-size:12px}.rsvp-arch .eyebrow{font-size:7px}.gold-button{padding:15px 22px;font-size:10px}.rsvp-section{padding:0 20px 65px}.entrance-copy h2{font-size:68px}.entrance-copy>p:not(.eyebrow){font-size:19px}.entrance-copy .eyebrow{font-size:9px}.controls{bottom:12px;right:12px}.controls button{font-size:9px;padding:8px 10px}#rsvp-dialog{padding:38px 23px 25px}footer>.signature{font-size:42px}}
@media(max-width:600px){.image-orbit{right:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1!important;transform:none!important}.hero-picture,.panorama>img{transform:none!important}}
