@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=DM+Sans:wght@400;500&display=swap";:root{--ink:#202720;--olive:#303a31;--cream:#f0eee7;--paper:#f7f6f1;--sage:#7c887b;--line:#20272029;--serif:"Cormorant Garamond", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.password-overlay{z-index:9999;background-position:50%;background-size:cover;place-items:center;display:grid;position:fixed;inset:0}.password-overlay:before{content:"";-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#12181447;position:absolute;inset:0}.password-card{-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);text-align:center;background:#f7f6f1b8;border:1px solid #ffffff38;border-radius:30px;width:min(92vw,430px);padding:52px 42px;animation:.7s ease-out both cardEntrance;position:relative;box-shadow:0 30px 80px #0000002e}.password-card h2{font:400 clamp(54px, 8vw, 72px)/.82 var(--serif);letter-spacing:-.04em;color:var(--ink);margin:10px 0 18px}.password-card p:not(.eyebrow){color:#5c655d;font:400 18px/1.55 var(--serif);margin-bottom:30px}.password-card input{width:100%;color:var(--ink);background:#ffffffd1;border:1px solid #20272024;border-radius:999px;margin-bottom:22px;padding:15px 20px}.password-card input:focus{border-color:var(--ink);outline:none}.password-card .submit-button{width:100%}@keyframes cardEntrance{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.lang-overlay{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;background:#14141459;place-items:center;display:grid;position:fixed;inset:0}.lang-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:center;background:0 0;border:1px solid #ffffffeb;border-radius:28px;min-width:320px;padding:44px}.lang-card button{color:#fff;background:0 0;border:1px solid #fff;border-radius:999px;width:100%;margin:12px 0;padding:16px;font-size:16px;display:block}.lang-card h2{color:#fff;margin:0 0 12px}.password p{color:#fff}.nav{z-index:30;color:#fff;mix-blend-mode:difference;justify-content:space-between;align-items:center;padding:24px 32px;display:flex;position:fixed;top:0;left:0;right:0}.wordmark{letter-spacing:.18em;font-size:10px;font-weight:500}.nav-links{text-transform:uppercase;letter-spacing:.16em;gap:28px;font-size:9px;display:flex}.menu-button{display:none}.hero{color:#fff;isolation:isolate;place-items:center;min-height:100svh;display:grid;position:relative;overflow:hidden}.hero-image,.hero-wash{position:absolute;inset:0}.hero-image{z-index:-2;background-position:50%;background-size:cover}.hero-wash{z-index:-1;background:linear-gradient(#0f151129,#0f15117a)}.hero-content{text-align:center;padding:80px 20px}.eyebrow{color:#69736a;letter-spacing:.22em;text-transform:uppercase;margin:0 0 16px;font-size:9px;font-weight:600}.eyebrow.light{color:#fffc}h1,h2,h3,p{margin-top:0}h1{font:400 clamp(84px, 13vw, 190px)/.72 var(--serif);letter-spacing:-.055em;margin:0;line-height:1.1}h1 i{font-size:.52em;font-weight:400}.hero-rule{border-top:1px solid #ffffffb3;width:42px;margin:32px auto 20px}.hero-date{letter-spacing:.28em;text-transform:uppercase;margin-bottom:8px;font-size:10px}.hero-place{font:400 22px var(--serif);margin:0}.hero-side{letter-spacing:.18em;text-transform:uppercase;writing-mode:vertical-rl;font-size:9px;position:absolute;top:50%}.hero-side-left{left:28px;transform:rotate(180deg)}.hero-side-right{right:28px}.circle-cta{letter-spacing:.16em;text-transform:uppercase;border:1px solid #ffffffbf;border-radius:50%;place-items:center;width:82px;height:82px;margin:38px auto 0;font-size:9px;transition:all .3s;display:grid}.circle-cta span{font-size:14px}.circle-cta:hover{color:var(--ink);background:#fff;transform:rotate(-8deg)}.scroll-cue{letter-spacing:.18em;text-transform:uppercase;font-size:9px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.scroll-cue span{margin-left:10px}.section-pad{padding:140px 8vw}.welcome{gap:8vw}.welcome-wrap{grid-template-columns:1fr 1fr;gap:8vw;padding:8vw;display:grid}.welcome-date{color:var(--sage);letter-spacing:.16em;text-transform:uppercase;margin-bottom:28px;font-size:9px}.welcome-location{color:var(--sage);letter-spacing:.16em;text-transform:uppercase;text-align:right;justify-content:flex-end;margin-bottom:28px;margin-right:0;font-size:9px;display:block}.welcome-location a{text-decoration:underline}.dress-code{color:var(--sage);letter-spacing:.16em;text-transform:uppercase;font-size:9px}.parking-info{color:#fff;padding:8vw}.parking-info h2{color:var(--serif);text-align:center;padding:8vw}.welcome h2{letter-spacing:-.045em;font:400 clamp(10px, 2vw, 120px)/.8 var(--serif);margin:0 0 35px}.center-heading h2,.split-heading h2{font:400 clamp(60px, 8vw, 120px)/.8 var(--serif);letter-spacing:-.045em;margin:0 0 35px}.lede{color:#5c655d;max-width:610px;font:400 21px/1.55 var(--serif);margin:auto}.ornament{color:var(--sage);margin-top:55px;font-size:20px}.photo-break,.post-wedding-photo{background-position:50%;background-size:cover;min-height:70vh;position:relative}.photo-caption{color:#fff;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;font-size:9px;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.day{background:var(--cream)}.day h2{font:400 clamp(60px, 8vw, 105px)/.8 var(--serif);letter-spacing:-.045em;margin:0 0 35px}.day .eyebrow{margin-bottom:8vw}.split-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:8vw;margin-bottom:90px;display:grid}.section-intro{color:#626a63;max-width:330px;font:400 18px/1.55 var(--serif);margin:0}.detail-list{border-top:1px solid var(--line)}.detail-row{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr 1fr;align-items:center;padding:32px 0;display:grid}.detail-row>span{color:var(--sage);letter-spacing:.15em;font-size:9px}.detail-row p{letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px;font-size:9px}.detail-row h3{font:400 37px var(--serif);margin:0}.detail-row small{color:#687168;justify-self:end;font-size:12px}.schedule{grid-template-columns:1fr 2fr;gap:10vw;margin-top:130px;display:grid}.schedule-title h3{font:400 45px var(--serif);margin:0}.schedule-row{border-bottom:1px solid var(--line);grid-template-columns:60px 1fr 1.5fr;gap:20px;padding:17px 0;font-size:12px;display:grid}.schedule-row time{color:var(--sage)}.schedule-row strong{font-weight:500}.schedule-row span{color:#6c756d}.story{grid-template-columns:1fr 1fr;display:grid}.story-image{background-position:50%;background-size:cover;min-height:800px}.story-copy{background:#e7e7df;flex-direction:column;justify-content:center;padding:100px 9vw;display:flex}.story-copy h2{font:400 clamp(58px, 7vw, 100px)/.78 var(--serif);letter-spacing:-.045em;margin:0 0 35px}.story-copy p:not(.eyebrow){color:#60675f;max-width:450px;font:400 19px/1.65 var(--serif)}.signature{font:400 32px var(--serif);margin-top:25px}.post-wedding .eyebrow{margin-bottom:60px;display:flex}.post{background:#fff}.center-heading{text-align:center;max-width:800px;margin:auto auto 75px}.post-wedding-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.post-wedding-grid article{border-right:1px solid var(--line);min-height:300px;padding:35px 30px 42px}.post-wedding-grid article:last-child{border-right:0}.post-wedding-grid span{color:var(--sage);letter-spacing:.16em;font-size:9px}.post-wedding-grid h3{font:400 45px var(--serif);margin:80px 0 12px}.post-wedding-grid p{color:#6a726b;max-width:270px;font-size:12px;line-height:1.7}.post-wedding-grid a{border-bottom:1px solid var(--ink);letter-spacing:.16em;text-transform:uppercase;margin-top:18px;padding-bottom:4px;font-size:9px;display:inline-block}.quote-break{color:#fff;text-align:center;background-position:50%;background-size:cover;grid-template-columns:1fr 1fr;align-content:center;gap:8vw;min-height:70vh;padding:150px 25px;display:grid}.quote-break p{max-width:900px;font:400 clamp(20px, 2vw, 48px)/.9 var(--serif);letter-spacing:-.035em;margin:0 auto 35px;padding-top:20px;line-height:1.1}.quote-break span{letter-spacing:.2em;font-size:9px}.rsvp{color:#fff;background:#252f28}.rsvp-inner{max-width:900px;margin:auto}.rsvp-heading{text-align:center;margin-bottom:70px}.rsvp-heading h2{font:400 clamp(60px, 8vw, 105px)/.8 var(--serif);letter-spacing:-.045em;margin:0 0 20px}.rsvp-heading>p:last-child{color:#c4ccc5;font-size:11px}.rsvp-form{gap:20px;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.rsvp-form label,fieldset{letter-spacing:.16em;text-transform:uppercase;border:0;gap:8px;padding:0;font-size:9px;display:grid}.rsvp-form input,.rsvp-form select,.rsvp-form textarea{color:#fff;letter-spacing:0;text-transform:none;background:0 0;border:0;border-bottom:1px solid #ffffff40;border-radius:0;outline:0;width:100%;padding:13px 0;font-size:14px}.rsvp-form input:focus,.rsvp-form select:focus,.rsvp-form textarea:focus{border-color:#fff}.rsvp-form input::placeholder,.rsvp-form textarea::placeholder{color:#ffffff6b}.rsvp-form select option{color:#222}.radio-grid{grid-template-columns:1fr 1fr;gap:10px;padding:16px 0;display:grid}.radio-card{cursor:pointer;align-items:center;padding:16px;border:1px solid #fff3!important;display:flex!important}.radio-card.selected{background:#ffffff14;border-color:#fff!important}.radio-card input{accent-color:#fff;width:auto;margin-right:10px}.submit-button{color:#26302a;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:#fff;border:1px solid #fff;border-radius:100px;justify-self:start;margin-top:18px;padding:16px 28px;font-size:9px}.submit-button:disabled{opacity:.5}.form-error{color:#ffb5b5;font-size:12px}.success-message{text-align:center;border-top:1px solid #fff3;border-bottom:1px solid #fff3;padding:80px 20px}.success-mark{border:1px solid #ffffff80;border-radius:50%;place-items:center;width:52px;height:52px;margin:0 auto 20px;display:grid}.success-message h3{font:400 48px var(--serif)}.success-message p{color:#c5ccc6;max-width:550px;margin:0 auto 25px;line-height:1.6}.text-button{color:#fff;cursor:pointer;background:0 0;border:0;text-decoration:underline}.footer{color:#fff;background:#171d19;padding:70px 8vw 45px}.footer-top{grid-template-columns:1fr 1fr 1fr;align-items:end;display:grid}.footer-mark{font:400 65px var(--serif);letter-spacing:-.05em}.footer-mark i{font-size:.5em}.footer p{color:#8e988f;letter-spacing:.16em;text-transform:uppercase;text-align:center;font-size:9px;line-height:1.8}.footer a{letter-spacing:.16em;text-transform:uppercase;justify-self:end;font-size:9px}.countdown{border-top:1px solid #ffffff26;gap:38px;margin-top:80px;padding-top:28px;display:flex}.countdown div{flex-direction:column;gap:2px;display:flex}.countdown strong{font:400 30px var(--serif)}.countdown span{color:#8e988f;letter-spacing:.16em;text-transform:uppercase;font-size:8px}@media (width<=760px){.nav{color:#fff;mix-blend-mode:normal;padding:18px 22px;transition:color .35s,background .35s}.menu-button{z-index:32;color:#fff;letter-spacing:.16em;text-transform:uppercase;background:0 0;border:0;font-size:9px;display:block}.menu-button span{margin-left:6px;font-size:15px}.language-button{color:#fff;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #fff;border-radius:100px;margin-top:28px;padding:16px 28px;font-size:9px;display:block}.nav-links{color:#fff;background:var(--olive);opacity:0;flex-direction:column;justify-content:center;gap:28px;padding:0 36px;font-size:13px;transition:all .45s;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.nav-links.open{opacity:1;transform:none}.hero-side{display:none}h1{font-size:15vw}.hero-date{letter-spacing:.18em}.hero-content{margin-top:20px}.welcome h2{font-size:10vw}.photo-break,.post-wedding-photo{min-height:65vh}.split-heading{grid-template-columns:1fr;gap:25px;margin-bottom:60px}.detail-row{grid-template-columns:38px 1fr;gap:12px}.detail-row small{grid-column:2;justify-self:start}.schedule{grid-template-columns:1fr;gap:45px;margin-top:90px}.schedule-row{grid-template-columns:48px 1fr;gap:8px}.schedule-row span{grid-column:2}.story{grid-template-columns:1fr}.story-image{min-height:65vh}.story-copy{padding:80px 24px}.post-wedding-grid{grid-template-columns:1fr}.post-wedding-grid article{border-right:0;border-bottom:1px solid var(--line);min-height:240px}.post-wedding-grid article:last-child{border-bottom:0}.post-wedding-grid h3{margin-top:55px}.quote-break{flex-direction:column;padding:110px 24px;display:flex}.form-row,.radio-grid{grid-template-columns:1fr}.submit-button{width:100%}.footer-top{grid-template-columns:1fr;gap:25px}.footer a{justify-self:start}.countdown{justify-content:space-between;gap:20px}.countdown strong{font-size:25px}.welcome-wrap{grid-template-columns:1fr;gap:8vw;padding:8vw}.wordmark{letter-spacing:.18em;font-size:12px;font-weight:500}.menu-button{font-size:12px}.section-pad{padding:80px 24px}.center-heading h2{text-align:left;font-size:58px}}
