:root{--ex-ink:#3a5542;--ex-paper:#f6f4ee;--cl-cream:#3a5542;--cl-gold:#74866e;--cl-dark:#f6f4ee;color-scheme:light}
body.ex-invitation{margin:0;color:var(--ex-ink);background:var(--ex-paper);font-family:mrs-eaves,'Cormorant Garamond',serif;line-height:1.5;overflow-x:clip;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.035' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px}
.ex-invitation h1,.ex-invitation h2,.ex-invitation h3,.ex-price,.ex-count b,.ex-monogram-text{font-family:parfumerie-script,'Great Vibes',cursive;font-weight:400;letter-spacing:0;text-shadow:none}.ex-invitation h2{font-size:48px;line-height:1;margin:0 0 16px}.ex-invitation h3{font-size:48px;line-height:1.25;margin:0 0 8px}.ex-section{position:relative;padding:80px 24px;overflow:hidden;text-align:center}.ex-inner{position:relative;max-width:672px;margin:auto}.ex-eyebrow{text-transform:uppercase;letter-spacing:.25em;font-size:14px;color:#3a554280}.ex-muted{color:#3a554280}.ex-card{background:#3a554208;border:1px solid #3a55421a;border-radius:16px;padding:40px 24px}.ex-card h3{margin:12px 0 8px}.ex-card p+p{margin-top:16px}.ex-card .ex-eyebrow{margin-top:0}.ex-map{display:inline-block;font-size:12px;letter-spacing:.15em;text-transform:uppercase;text-underline-offset:5px;margin-top:24px;color:var(--ex-ink)}
#ex-opening{position:fixed;inset:0;z-index:100;background:#f3eee2}#ex-opening video{width:100%;height:100%;object-fit:cover}#ex-enter{position:absolute;inset:0;width:100%;height:100%}#ex-enter span{position:absolute;bottom:5%;left:0;right:0;font-size:12px;text-transform:uppercase;letter-spacing:.25em;color:#3a5542}#ex-skip{position:absolute;right:20px;bottom:20px;padding:10px 16px;background:#f6f4eedd;border-radius:30px;color:#3a5542;font-size:12px}
.ex-hero{position:relative;min-height:100svh;height:100svh;background:#e5e6df;display:flex;flex-direction:column;overflow:hidden}.ex-hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ex-hero:after{content:"";position:absolute;inset:0;background:#0003;opacity:0;transition:opacity 1s}.ex-hero-copy{position:relative;z-index:1;padding:80px 24px 20px;text-align:center;opacity:0;transition:opacity 1.4s}.ex-hero.is-ready .ex-hero-copy,.ex-hero.is-ready:after{opacity:1}.ex-hero .ex-eyebrow{color:white;font-weight:600;font-size:14px;letter-spacing:.4em;text-shadow:0 2px 5px #0005;margin-bottom:16px}.ex-hero h1{color:white;line-height:.9;text-shadow:0 2px 5px #0005}.ex-hero h1 span{display:block;font-size:60px}.ex-hero h1 i{display:block;font-size:30px;font-weight:400;margin:16px 0}.ex-scroll{position:relative;z-index:1;margin-top:auto;padding:24px 24px 40px;color:white;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.3em;font-size:12px;font-weight:600;text-shadow:0 2px 5px #0006}.ex-scroll span{display:block;font-size:26px;line-height:1.3;animation:ex-bob 3s infinite}
.ex-countdown .ex-inner{max-width:576px}.ex-column{position:absolute;top:-1%;height:100%;width:auto;max-width:none;pointer-events:none}.ex-column.left{left:-8%}.ex-column.right{right:-8%}.ex-countdown .ex-inner{position:relative;z-index:1}.ex-count{display:flex;justify-content:center;margin-top:48px}.ex-count>div{padding:0 20px;display:flex;flex-direction:column;align-items:center}.ex-count>div+div{border-left:1px solid #3a55422b}.ex-count b{font-size:48px;line-height:1}.ex-count span{font-size:12px;letter-spacing:.2em;text-transform:uppercase;margin-top:12px}
.ex-venue{margin-top:32px}.ex-yacht{width:192px;margin:0 auto -24px;position:relative;z-index:1;animation:ex-bob 6s ease-in-out infinite}.ex-hotel-art{width:280px;margin:0 auto -24px;position:relative;z-index:1}.ex-program-inner{position:relative;max-width:260px;margin:auto;padding-top:128px;z-index:2}.ex-program header{margin-bottom:64px}.ex-program-inner>div{margin-top:64px}.ex-curtain{position:absolute;top:2%;width:50%;max-width:none;pointer-events:none;z-index:3;transform-origin:top center;animation:ex-sway 9s ease-in-out infinite alternate}.ex-curtain.left{left:5%;transform-origin:top left}.ex-curtain.right{right:5%;transform-origin:top right;animation-delay:-4s}.ex-curtain.center{left:50%;width:68%;top:2.2%;transform:translateX(-50%);animation:none;z-index:4}.ex-intro-copy{font-style:italic;color:#3a554299;margin:16px 0 32px}.ex-timeline{list-style:none;text-align:left;padding:0 0 0 24px;margin:32px 0}.ex-timeline li{position:relative;padding-bottom:24px}.ex-timeline li:before{content:"";position:absolute;left:-24px;top:8px;bottom:-8px;width:1px;background:#3a554226}.ex-timeline li:last-child:before{display:none}.ex-timeline li:after{content:"";position:absolute;left:-27px;top:6px;width:8px;height:8px;border-radius:50%;background:#3a55424d}.ex-timeline b{font-size:14px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#3a5542b3}.ex-timeline b:empty{display:none}.ex-timeline p{font-size:16px;letter-spacing:.05em}.ex-candles{width:160px;margin:56px auto 8px}.ex-program-vase{position:absolute;bottom:-16px;right:-48px;width:144px;pointer-events:none}
.ex-dress .ex-card{margin-top:32px}.ex-dress h3{font-size:36px}.ex-dress-name{font-size:26px}.ex-bouquet,.ex-stand,.ex-trees{position:absolute;pointer-events:none;z-index:2}.ex-bouquet{top:32px;left:-40px;width:176px}.ex-stand{right:-48px;top:45%;width:112px}.ex-trees{bottom:-64px;left:-32px;width:144px}.ex-stay{position:relative;margin-top:96px}.ex-stay-art{width:224px;margin:-64px 0 16px -32px}.ex-stay:nth-of-type(even) .ex-stay-art{margin-left:auto;margin-right:-32px}.ex-stay h3{font-size:36px}.ex-price{font-size:36px}.ex-booking{font-size:11px;margin-top:12px}.ex-hotels .ex-muted{font-size:14px}.ex-roses{position:absolute;width:144px;pointer-events:none;z-index:2;animation:ex-bob 7s infinite}.ex-roses.left{top:-32px;left:-48px}.ex-roses.right{bottom:-32px;right:-48px;animation-delay:-3s}.ex-gift h2{margin-bottom:32px}.ex-gift .ex-muted{font-size:18px;line-height:1.7}
#rsvp header{margin-bottom:56px}.ex-invitation .cl-form{max-width:none;width:100%;margin:0;text-align:left}.ex-invitation .cl-form label,.ex-invitation .cl-form legend{font-family:mrs-eaves,'Cormorant Garamond',serif;color:#3a5542;font-size:16px;text-transform:none;letter-spacing:.025em}.ex-invitation .cl-form input[type=text],.ex-invitation .cl-form input[type=email]{background:transparent;border:1px solid #3a554233;border-radius:6px;color:#3a5542;font:18px mrs-eaves,'Cormorant Garamond',serif;min-height:48px}.ex-invitation .cl-form input::placeholder{color:#3a554277}.ex-invitation .cl-attendance-choice span{background:transparent;border-color:#3a554226;color:#3a5542}.ex-invitation .cl-attendance-choice input:checked+span{border-color:#3a5542;background:#3a55420a}.ex-invitation .cl-stepper{background:transparent;border-color:#3a554233;color:#3a5542}.ex-invitation .cl-stepper input,.ex-invitation .cl-voice-button,.ex-invitation .cl-voice-status{color:#3a5542}.ex-invitation .cl-gold-button{font-family:mrs-eaves,'Cormorant Garamond',serif;background:#3a5542;color:#f6f4ee;border:0;border-radius:6px;box-shadow:none;letter-spacing:.18em}.ex-invitation .cl-submit{margin-top:32px;width:100%;padding:18px}.ex-invitation .cl-form-thanks{color:#3a554280}.ex-invitation .cl-rsvp-feedback{color:#8a3c33;border-color:#8a3c3355}.ex-invitation .cl-receipt{background:#3a554208;color:#3a5542}.ex-invitation .cl-music{bottom:20px;top:auto;right:20px;z-index:50;width:44px;height:44px;background:#f6f4eedd;border:1px solid #3a554222;color:#3a5542}.ex-footer h3{font-size:48px}.ex-monogram{width:96px;margin:0 auto 32px}.ex-monogram-text{font-size:74px;margin-bottom:32px}.ex-credit{font-size:14px;color:#3a554266;margin-top:64px}.ex-host{font-size:12px;color:#3a554280}.ex-animate .ex-reveal{opacity:0;transform:translateY(20px);transition:opacity .8s,transform .8s}.ex-animate .ex-reveal.is-visible{opacity:1;transform:none}
@keyframes ex-bob{50%{transform:translateY(-6px)}}@keyframes ex-sway{from{rotate:-1deg}to{rotate:1deg}}
@media(min-width:768px){.ex-section{padding:112px 24px}.ex-invitation h2{font-size:72px}.ex-invitation h3{font-size:60px}.ex-card{padding:56px 40px}.ex-hero-copy{padding-top:112px}.ex-hero h1 span{font-size:96px}.ex-hero h1 i{font-size:36px}.ex-count b{font-size:72px}.ex-count>div{padding:0 32px}.ex-yacht{width:256px}.ex-hotel-art{width:380px}.ex-curtain{width:32%}.ex-curtain.center{width:50%}.ex-program-inner{padding-top:176px}.ex-dress h3,.ex-stay h3{font-size:48px}.ex-bouquet{left:-64px;width:208px}.ex-stand{right:-80px;width:144px}.ex-trees{left:-64px;width:192px}.ex-stay-art{width:320px;margin-left:-64px}.ex-stay:nth-of-type(even) .ex-stay-art{margin-right:-64px}.ex-price{font-size:48px}.ex-roses{width:176px}.ex-roses.left{left:-64px}.ex-roses.right{right:-64px}}
@media(min-width:1024px){.ex-hero h1 span{font-size:128px}}
@media(max-width:360px){.ex-count>div{padding:0 14px}.ex-program-inner{max-width:240px}.ex-invitation h2{font-size:44px}.ex-hero h1 span{font-size:54px}}
@media(prefers-reduced-motion:reduce){.ex-animate .ex-reveal{opacity:1;transform:none}.ex-hero-copy{transition:none}*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}

/* Reference hero contains its lettering inside the film; do not print a second title over it. */
.ex-video-art .ex-hero-copy{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0}
.ex-video-art:after{display:none}
