:root{--paper:#f7f4ed;--ink:#2e2a24;--dim:#2e2a248c;--line:#2e2a2426;--sage:#6e7863;--sagedeep:#3c4234;--gold:#a6885a;--cream:#f2eee4;--serif:"Cormorant",serif;--script:"WindSong",cursive;--body:"Cormorant",serif;--sans:"Montserrat",sans-serif;--gap:clamp(20px,4vw,60px)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18.5px;font-weight:400;line-height:1.75;overflow-x:hidden}::selection{background:var(--gold);color:var(--paper)}img{object-fit:cover;width:100%;height:100%;display:block}a{color:inherit;text-decoration:none}.serif{font-family:var(--serif);font-weight:300;line-height:1.12}.script{font-family:var(--script);font-weight:400;line-height:1}.lbl{font-family:var(--body);color:var(--dim);letter-spacing:.03em;font-size:19px;font-style:italic;font-weight:300}.caps{font-family:var(--sans);letter-spacing:.42em;text-transform:uppercase;font-size:10.5px;font-weight:300}.ubtn{font-family:var(--sans);letter-spacing:.38em;text-transform:uppercase;cursor:pointer;color:inherit;background:0 0;border:none;padding-bottom:5px;font-size:10.5px;font-weight:300;display:inline-block;position:relative}.ubtn:after{content:"";transform-origin:0;background:currentColor;height:1px;transition:transform .5s cubic-bezier(.76,0,.24,1);position:absolute;bottom:0;left:0;right:0}.ubtn:hover:after{transform:scaleX(.35)}.rbtn{font-family:var(--sans);letter-spacing:.38em;text-transform:uppercase;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #2e2a2466;align-items:center;gap:16px;padding:18px 38px;font-size:10.5px;font-weight:300;transition:color .45s;display:inline-flex;position:relative;overflow:hidden}.rbtn:before{content:"";background:var(--ink);transition:transform .55s cubic-bezier(.76,0,.24,1);position:absolute;inset:0;transform:translateY(101%)}.rbtn:hover:before{transform:none}.rbtn:hover{color:var(--paper)}.rbtn span{z-index:1;position:relative}.rbtn .ar{transition:transform .45s}.rbtn:hover .ar{transform:translate(5px)}.rbtn.lite{color:var(--cream);border-color:#f2eee4b3}.rbtn.lite:before{background:var(--cream)}.rbtn.lite:hover{color:var(--sagedeep)}.gate{z-index:200;background:var(--paper);padding:var(--gap);place-items:center;transition:opacity 1s .15s,visibility 0s 1.2s;display:grid;position:fixed;inset:0}.gate:before{content:"";border:1px solid var(--line);pointer-events:none;position:absolute;inset:18px}.gate-card{text-align:center;width:100%;max-width:520px;padding:clamp(30px,5vw,70px) clamp(20px,4vw,60px);position:relative}.gate-card:before{content:"";border:1px solid var(--line);position:absolute;inset:0}.gate-card:after{content:"";border:1px solid var(--line);position:absolute;inset:7px}.gate-eyebrow{color:var(--dim);margin-bottom:30px}.gate-names{font-family:var(--serif);letter-spacing:.3em;text-transform:uppercase;color:var(--ink);margin-bottom:8px;margin-right:-.3em;font-size:clamp(34px,4.6vw,52px);font-weight:300;line-height:1.45}.gate-names .and{font-family:var(--script);letter-spacing:0;text-transform:none;color:var(--gold);margin:6px .3em 6px 0;font-size:clamp(30px,3.4vw,44px);display:block}.gate-names .amp{color:var(--gold)}.gate-date{color:var(--dim);margin:20px 0 40px}.gate-ask{margin-bottom:22px}.gate-form{z-index:1;justify-content:center;align-items:flex-end;gap:14px;display:flex;position:relative}.gate-form input{font-family:var(--body);letter-spacing:.14em;text-align:center;border:none;border-bottom:1px solid var(--ink);color:var(--ink);background:0 0;outline:none;width:min(240px,60vw);padding:8px 4px;font-size:19px;transition:border-color .4s}.gate-form input::placeholder{color:#2e2a2459;letter-spacing:.02em;font-style:italic}.gate-form button{color:var(--ink);cursor:pointer;background:0 0;border:none;padding:6px 2px;font-size:20px;transition:transform .4s}.gate-form button:hover{transform:translate(5px)}.gate-err{color:#8a4b3a;opacity:0;height:26px;margin-top:16px;font-style:italic;transition:opacity .4s}.gate-err.show{opacity:1}.gate-hint{text-align:center;color:var(--dim);font-size:15px;font-style:italic;position:absolute;bottom:34px;left:0;right:0}.gate.shake .gate-card{animation:.5s shake}@keyframes shake{20%,60%{transform:translate(-7px)}40%,80%{transform:translate(7px)}}.gate.open{opacity:0;visibility:hidden}body.gated{overflow:hidden}.navbar{z-index:50;padding:20px var(--gap);opacity:0;justify-content:space-between;align-items:center;transition:opacity 1.2s .6s;display:flex;position:fixed;inset:0 0 auto}body.loaded .navbar{opacity:1}.navbar:before{content:"";z-index:-1;background:var(--paper);box-shadow:0 1px 0 var(--line);transition:transform .55s cubic-bezier(.76,0,.24,1);position:absolute;inset:0;transform:translateY(-101%)}.navbar.scrolled:before{transform:none}.navbar .mono{font-family:var(--serif);letter-spacing:.24em;font-size:21px;font-weight:300}.navbar .mono .amp{color:var(--gold);font-style:italic}.nav-links{gap:clamp(18px,3vw,42px);display:flex}.nav-links a{color:var(--dim);background-image:linear-gradient(var(--ink),var(--ink));background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:3px;font-size:17.5px;font-style:italic;font-weight:300;transition:background-size .5s cubic-bezier(.76,0,.24,1),color .4s}.nav-links a:hover{color:var(--ink);background-size:100% 1px}.hero{min-height:100svh;padding:clamp(90px,14vh,150px) var(--gap) clamp(40px,6vh,80px);grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(30px,5vw,90px);max-width:1500px;margin:0 auto;display:grid}.hero-names{text-transform:uppercase;letter-spacing:.16em;margin-right:-.16em;font-size:clamp(52px,7.2vw,120px);font-weight:300}.hero-names .hl{display:block;overflow:hidden}.hero-names .hl>span{transition:transform 1.4s cubic-bezier(.16,.7,.2,1) .35s;display:block;transform:translateY(112%)}.hero-names .hl:nth-child(3)>span{transition-delay:.5s}body.loaded .hero-names .hl>span{transform:none}.hero-amp{font-family:var(--script);color:var(--gold);text-transform:none;opacity:0;margin:clamp(2px,.6vw,10px) 0 clamp(2px,.6vw,10px) clamp(60px,7vw,150px);font-size:clamp(46px,4.6vw,80px);transition:opacity 1.1s .9s;display:block}body.loaded .hero-amp{opacity:1}.hero-meta{opacity:0;margin-top:clamp(28px,3.4vw,52px);transition:opacity 1.2s 1.25s}body.loaded .hero-meta{opacity:1}.hero-meta .caps{color:var(--ink);margin-bottom:12px;display:block}.hero-meta .lbl{display:block}.hero-fig{align-self:center;height:min(78vh,760px);position:relative}.hero-arch{clip-path:inset(100% 0 0);border-radius:999px 999px 0 0;transition:clip-path 1.6s cubic-bezier(.7,0,.2,1) .5s;position:absolute;inset:0;overflow:hidden}body.loaded .hero-arch{clip-path:inset(0)}.hero-arch img{will-change:transform;transform:scale(1.12)}.hero-fig .cap{color:var(--dim);opacity:0;font-size:14.5px;font-style:italic;transition:opacity 1s 1.5s;position:absolute;bottom:-34px;left:4px}body.loaded .hero-fig .cap{opacity:1}.statement{padding:clamp(120px,14vw,210px) var(--gap);text-align:center}.statement .lead{margin-bottom:28px;display:block}.statement h2{font-family:var(--serif);max-width:26ch;margin:0 auto 38px;font-size:clamp(28px,3.2vw,50px);font-weight:300;line-height:1.4}.statement .caps{color:var(--dim);line-height:2.2;display:block}.statement .flourish{font-family:var(--script);color:var(--gold);margin-top:40px;font-size:46px}.day{padding:clamp(90px,10vw,150px) var(--gap);border-top:1px solid var(--line)}.sec-head{margin-bottom:clamp(30px,3.6vw,50px)}.sec-head .lbl{margin-bottom:14px;display:block}.sec-head h2{font-family:var(--serif);text-transform:uppercase;letter-spacing:.2em;margin-right:-.2em;font-size:clamp(26px,2.8vw,42px);font-weight:300}.day .sec-head{text-align:center;margin-bottom:clamp(50px,6vw,90px)}.day-grid{grid-template-columns:.92fr 1.08fr;align-items:start;gap:clamp(36px,6vw,100px);max-width:1500px;margin:0 auto;display:grid}.day-fig{height:min(74vh,690px);position:sticky;top:11vh}.day-arch{border-radius:999px 999px 0 0;position:absolute;inset:0;overflow:hidden}.day-arch img{opacity:0;will-change:transform,opacity;transition:opacity 1.1s;position:absolute;inset:0}.day-arch img.on{opacity:1}.day-fig .cap{color:var(--dim);font-size:15px;font-style:italic;position:absolute;bottom:-32px;left:6px}.program{max-width:640px;margin:0 auto;padding-top:6px;position:relative}.program:before{content:"";background:var(--line);width:1px;position:absolute;top:12px;bottom:12px;left:3px}.ev{padding:0 0 clamp(36px,4.4vw,58px) clamp(34px,3.6vw,54px);position:relative}.ev:last-child{padding-bottom:6px}.ev .dot{background:var(--gold);border-radius:50%;width:7px;height:7px;position:absolute;top:13px;left:0}.tl-time{font-family:var(--serif);color:var(--gold);letter-spacing:.14em;margin-bottom:6px;font-size:clamp(17px,1.4vw,21px);font-weight:300;display:block}.tl-name{font-family:var(--serif);letter-spacing:.04em;font-size:clamp(21px,1.9vw,27px);font-weight:400}.tl-note{color:var(--dim);margin-top:4px;font-size:17px;font-style:italic}.breather{padding:clamp(90px,11vw,170px) var(--gap) clamp(150px,16vw,250px);position:relative}.breather-inner{max-width:1500px;height:clamp(420px,64vh,660px);margin:0 auto;position:relative}.bf1{width:62%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.bf2{aspect-ratio:3/4;width:30%;position:absolute;top:14%;right:6%;overflow:hidden;box-shadow:0 26px 64px #1e1a1447}.breather .note{font-family:var(--script);color:var(--ink);font-size:clamp(34px,3.6vw,56px);position:absolute;bottom:calc(-1*clamp(70px,7vw,110px));right:38%;transform:rotate(-3deg)}.travel{background:var(--sagedeep);color:var(--cream);padding:clamp(100px,12vw,180px) var(--gap)}.travel-inner{max-width:1500px;margin:0 auto}.travel .lbl{color:#f2eee499}.travel h2{font-family:var(--serif);text-transform:uppercase;letter-spacing:.14em;white-space:nowrap;margin-bottom:26px;font-size:clamp(26px,4.4vw,64px);font-weight:300;line-height:1.2}.travel-head{grid-template-columns:1.15fr .85fr;align-items:end;gap:clamp(28px,5vw,90px);display:grid}.travel .addr{color:#f2eee4bf;margin-bottom:18px;font-size:19px;font-style:italic}.travel-intro{color:#f2eee4bf;font-size:18px;font-weight:300}.travel-head .rbtn{justify-self:end;margin-bottom:4px}.travel-cols{border-top:1px solid #f2eee42e;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,70px);margin-top:clamp(44px,5.4vw,80px);padding-top:clamp(36px,4.4vw,64px);display:grid}.travel-cols h3{font-family:var(--serif);letter-spacing:.03em;margin-bottom:14px;font-size:23px;font-weight:400}.travel-cols p{color:#f2eee4bf;font-size:17.5px;font-weight:300;line-height:1.85}.travel-cols .lbl{margin-bottom:8px;display:block}.travel-foot{margin-top:clamp(70px,9vw,140px)}.menu{padding:clamp(100px,12vw,180px) var(--gap);position:relative;overflow:hidden}.menu-card{text-align:center;max-width:640px;margin:0 auto;padding:clamp(40px,6vw,80px) clamp(24px,5vw,70px);position:relative}.menu-card:before{content:"";border:1px solid var(--line);position:absolute;inset:0}.menu-card:after{content:"";border:1px solid var(--line);position:absolute;inset:8px}.menu-card .lbl{margin-bottom:10px;display:block}.menu-card h2{font-family:var(--serif);text-transform:uppercase;letter-spacing:.24em;margin-bottom:8px;margin-right:-.24em;font-size:clamp(26px,2.8vw,38px);font-weight:300}.menu-card .sub{color:var(--dim);margin-bottom:40px;font-style:italic}.course{z-index:1;margin-bottom:38px;position:relative}.course .caps{color:var(--gold);margin-bottom:20px;display:block}.dish{margin-bottom:18px}.dish .name{font-family:var(--serif);letter-spacing:.03em;font-size:21px;font-weight:400}.dish .note{color:var(--dim);margin-top:2px;font-size:16.5px;font-style:italic}.menu-card .fine{color:var(--dim);margin-top:6px;font-size:15.5px;font-style:italic}.menu-fig{position:absolute;overflow:hidden}.mf1{aspect-ratio:3/4;width:clamp(150px,17vw,270px);top:14%;left:max(12px,4vw)}.mf2{aspect-ratio:4/5;width:clamp(130px,14vw,230px);bottom:10%;right:max(12px,4.5vw)}.dress{padding:clamp(90px,10vw,150px) var(--gap);border-top:1px solid var(--line)}.dress-grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(36px,6vw,110px);max-width:1500px;margin:0 auto;display:grid}.dress-fig{height:min(72vh,640px);position:relative}.drf1{border-radius:999px 999px 0 0;position:absolute;inset:0;overflow:hidden}.dress-copy .lbl{margin-bottom:14px;display:block}.dress-copy h2{font-family:var(--serif);text-transform:uppercase;letter-spacing:.18em;margin-bottom:26px;font-size:clamp(26px,2.8vw,42px);font-weight:300}.dress-copy p{max-width:44ch;color:var(--dim);margin-bottom:16px;font-size:18.5px;font-weight:300}.dress-copy p b{color:var(--ink);font-weight:500}.rsvp{padding:clamp(100px,12vw,180px) var(--gap);background:var(--cream);border-top:1px solid var(--line)}.rsvp-card{text-align:center;max-width:680px;margin:0 auto}.rsvp-card .lbl{margin-bottom:10px;display:block}.rsvp-card h2{font-family:var(--serif);letter-spacing:.3em;margin-bottom:14px;margin-right:-.3em;font-size:clamp(30px,3.4vw,48px);font-weight:300}.rsvp-card .sub{color:var(--dim);margin-bottom:52px;font-style:italic}.rsvp form{text-align:left}.f-row{margin-bottom:34px}.f-row>label,.f-legend{color:var(--dim);margin-bottom:10px;font-size:17px;font-style:italic;display:block}.f-input,.f-select,.f-area{width:100%;font-family:var(--body);color:var(--ink);border:none;border-bottom:1px solid var(--ink);background:0 0;border-radius:0;outline:none;padding:8px 2px;font-size:19px;transition:border-color .4s}.f-area{resize:vertical;min-height:64px;line-height:1.6}.f-input::placeholder,.f-area::placeholder{color:#2e2a2452;font-style:italic}.f-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' fill='none' stroke='%232E2A24'/%3E%3C/svg%3E");background-position:right 4px center;background-repeat:no-repeat}.att-opts{grid-template-columns:1fr 1fr;gap:14px;display:grid}.att-opts input{opacity:0;pointer-events:none;position:absolute}.att-opts label{text-align:center;border:1px solid var(--line);cursor:pointer;font-family:var(--serif);letter-spacing:.06em;padding:18px 10px;font-size:19px;font-weight:400;transition:border-color .4s,background .4s,color .4s;display:block}.att-opts label:hover{border-color:var(--ink)}.att-opts input:checked+label{background:var(--ink);color:var(--paper);border-color:var(--ink)}.guest-block{border:1px solid var(--line);margin-bottom:22px;padding:24px 22px 8px;position:relative}.guest-block .gtag{background:var(--cream);color:var(--dim);padding:0 10px;font-size:15.5px;font-style:italic;position:absolute;top:-12px;left:18px}.rsvp .send{text-align:center;margin-top:14px}.rsvp-done{padding:30px 0 10px;display:none}.rsvp-done .script{color:var(--ink);font-size:clamp(54px,6.6vw,82px)}.rsvp-done .amp{color:var(--gold)}.rsvp-done p{color:var(--dim);margin-top:18px;font-style:italic}.rsvp.sent form{display:none}.rsvp.sent .rsvp-done{display:block}.faq{padding:clamp(90px,10vw,150px) var(--gap)}.faq-inner{max-width:820px;margin:0 auto}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--serif);letter-spacing:.03em;justify-content:space-between;align-items:baseline;gap:20px;padding:clamp(20px,2.4vw,30px) 0;font-size:clamp(20px,1.8vw,25px);font-weight:400;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary .tick{font-family:var(--body);color:var(--gold);flex:none;font-size:17px;font-style:italic;transition:transform .4s}.faq details[open] summary .tick{transform:rotate(45deg)}.faq details p{color:var(--dim);padding:0 0 26px;font-size:17.5px}.footer{padding:clamp(80px,9vw,140px) var(--gap) 0;border-top:1px solid var(--line);text-align:center;overflow:hidden}.footer .caps{color:var(--dim)}.footer-word{font-family:var(--serif);text-transform:uppercase;letter-spacing:.14em;white-space:nowrap;margin:clamp(40px,5vw,80px) 0 clamp(30px,4vw,60px);font-weight:300;line-height:1.1}.footer-word .amp{color:var(--gold);text-transform:none;font-style:italic}.byline{border-top:1px solid var(--line);font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);justify-content:space-between;gap:12px;padding:18px 0;font-size:10px;font-weight:300;display:flex}.reveal{opacity:0;transition:opacity 1.5s,transform 1.5s cubic-bezier(.16,.6,.2,1);transform:translateY(44px)}.reveal.in{opacity:1;transform:none}.stagger>*{opacity:0;transition:opacity 1.1s,transform 1.1s cubic-bezier(.16,.6,.2,1);transform:translateY(30px)}.stagger.in>*{opacity:1;transform:none}.stagger.in>:nth-child(2){transition-delay:90ms}.stagger.in>:nth-child(3){transition-delay:.18s}.stagger.in>:nth-child(4){transition-delay:.27s}.stagger.in>:nth-child(5){transition-delay:.36s}.stagger.in>:nth-child(6){transition-delay:.45s}.stagger.in>:nth-child(7){transition-delay:.54s}.stagger.in>:nth-child(8){transition-delay:.63s}.wipe{clip-path:inset(100% 0 0);transition:clip-path 1.15s cubic-bezier(.7,0,.2,1)}.in .wipe{clip-path:inset(0)}.in .wipe:nth-child(2){transition-delay:.14s}.wipe img{will-change:transform}@media (width<=900px){.nav-links{gap:16px}.nav-links a{font-size:14.5px}.hero{grid-template-columns:1fr;gap:26px;min-height:0;padding-top:clamp(96px,14vh,160px)}.hero>div:first-child{text-align:center}.hero-names{letter-spacing:.14em;margin-right:0;font-size:clamp(38px,10vw,60px)}.hero-amp{margin-left:auto;margin-right:auto}.hero-meta .caps{margin-right:-.42em}.hero-fig{width:100%;height:auto}.hero-arch{aspect-ratio:3/4;max-height:66vh;position:relative}.hero-fig .cap{margin-top:12px;display:block;position:static}.day-grid{display:block}.day-fig{height:auto;margin:0;position:static}.day-arch{aspect-ratio:3/4;max-height:none;margin:0 auto;position:relative;inset:auto}.day-fig .cap{text-align:center;margin:16px 0 56px;display:block;position:static}.program{max-width:none;padding-top:0}.program:before{display:none}.ev{text-align:center;padding:0 0 30px}.ev:last-child{padding-bottom:0}.ev .dot{margin:0 auto 14px;display:block;position:static}.ev:before{content:"";background:var(--line);width:1px;height:34px;margin:0 auto 22px;display:block}.ev:first-child:before{display:none}.breather-inner{height:auto}.bf1{aspect-ratio:4/3;width:100%;height:auto;position:relative}.bf2{width:42%;top:auto;bottom:-30px;right:4%}.breather .note{bottom:-96px;left:4%;right:auto}.breather{padding-bottom:150px}.travel h2{white-space:normal}.travel-head{grid-template-columns:1fr}.travel-head .rbtn{justify-self:start}.travel-cols{grid-template-columns:1fr;gap:34px}.menu-fig{display:none}.dress-grid{grid-template-columns:1fr}.dress-fig{height:88vw;max-height:480px}.att-opts{grid-template-columns:1fr}.footer-word{font-size:clamp(30px,8vw,56px)}}html.static *{transition:none!important;animation:none!important}html.static .reveal,html.static .stagger>*{opacity:1!important;transform:none!important}html.static .wipe,html.static .hero-arch{clip-path:none!important}html.static .plx,html.static .hero-arch img{transform:none!important}@media (prefers-reduced-motion:reduce){.reveal,.stagger>*{opacity:1;transition:none;transform:none}.hero-arch,.hero-names .hl>span,.hero-amp,.hero-meta,.hero-fig .cap{opacity:1;clip-path:none;transition:none;transform:none}.wipe{clip-path:none;transition:none}}
