@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap";:root{--cream:#f6f1e8;--lavender:#8e739b;--olive:#6e775f;--gold:#c9a66b;--ink:#2d413d;--paper:#fffdf8;--line:#d2d5cc;--lavender-wash:#e7dfea;--space-xs:.5rem;--space-sm:.75rem;--space-md:1.25rem;--space-lg:2rem;--space-xl:3rem;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);color:var(--ink);background:var(--cream);font-synthesis:none;font-family:DM Sans,sans-serif;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;overflow-x:hidden}a{color:inherit}.hero{background:var(--cream);flex-direction:column;justify-content:space-between;min-height:100svh;padding:12vh 8vw 7vh;display:flex;position:relative;overflow:hidden}.hero-mark{width:min(76vw,42rem);height:auto;color:var(--lavender-wash);opacity:.88;pointer-events:none;z-index:0;position:absolute;top:18%;right:-10vw;transform:rotate(-4deg)}.hero-mark-fill{fill:currentColor}.hero-mark-outline{fill:none;stroke:#cdbbd3;stroke-width:1.2px}.eyebrow,.label{letter-spacing:.19em;text-transform:uppercase;color:var(--lavender);margin:0;font-size:.72rem;font-weight:600}.hero h1{letter-spacing:-.06em;z-index:1;margin:8vh 0 2vh;font:600 clamp(4rem,17vw,9rem)/.88 Playfair Display,serif;position:relative}.hero h1 span{color:var(--lavender);font-style:italic;font-weight:500}.hero-copy{z-index:1;max-width:25rem;margin:0;font-size:1.05rem;position:relative}.date-lockup{z-index:1;align-items:center;gap:1rem;display:flex;position:relative}.date-lockup strong{font:500 4.2rem/.8 Playfair Display,serif}.date-lockup span{letter-spacing:.14em;font-size:.73rem;line-height:1.45}.date-lockup i{color:var(--lavender);font-style:normal}.scroll-link{z-index:1;border-bottom:1px solid #c6bbc9;justify-content:space-between;align-items:center;padding-bottom:1rem;font-size:.82rem;text-decoration:none;display:flex;position:relative}button.scroll-link{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #c6bbc9}.down-arrow,.up-arrow,.send-arrow,.link-arrow,.registered-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.down-arrow{stroke-width:1.5px;width:1.25rem;height:1.25rem}.up-arrow{stroke-width:1.6px;width:.95rem;height:.95rem}.send-arrow{stroke-width:1.6px;width:1.2rem;height:1.2rem}.link-arrow{stroke-width:1.5px;width:.95rem;height:.95rem}.registered-icon{stroke-width:1.4px;width:1.2rem;height:1.2rem}.scroll-link--registered{color:var(--olive);border-bottom-color:#b9c0ae;margin:0}.scroll-link--change{color:var(--lavender)}.scroll-link--unavailable{color:#7e8985;margin:0}.scroll-link--unavailable>span{color:var(--gold);font-size:1rem}.section-pad{padding:6rem 8vw}.details{background:var(--cream)}.section-heading{max-width:34rem;margin-bottom:3rem}.section-heading h2{letter-spacing:-.045em;margin:1rem 0;font:500 clamp(2.8rem,11vw,5rem)/1 Playfair Display,serif}.section-heading>p:last-child{color:#61706b;margin-top:1.3rem}.info-grid{gap:1rem;display:grid}.info-card{background:var(--paper);border:1px solid #e2ded4;flex-direction:column;align-items:flex-start;min-height:15rem;padding:1.7rem;display:flex}.icon{color:var(--gold);margin-bottom:auto;display:inline-flex}.detail-icon{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:2rem;height:2rem}.info-card h3{margin:.4rem 0;font:500 1.45rem Playfair Display,serif}.info-card p:not(.label){color:#66716c;margin:.2rem 0}.text-link{color:var(--ink);text-underline-offset:.18em;align-items:center;gap:.4rem;margin-top:.8rem;display:inline-flex}.practical-card{background:var(--olive);color:#fff;gap:1.6rem;margin-top:1rem;padding:1.7rem;display:grid}.practical-card .label{color:#f0d6a5}.practical-card h3{margin:.45rem 0 0;font:500 1.25rem Playfair Display,serif}.dress-code-toggle{color:#fff;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #d9c08c;align-items:center;gap:.65rem;margin-top:1.2rem;padding:.65rem 0;font:600 .78rem DM Sans,sans-serif;display:inline-flex}.dress-code-toggle .down-arrow{width:.9rem;height:.9rem;transition:transform .25s var(--ease-out-expo)}.dress-code-modal-backdrop{z-index:20;background:#263833b8;place-items:center;padding:1rem;animation:.22s both modal-fade-in;display:grid;position:fixed;inset:0}.dress-code-modal{background:var(--paper);width:min(100%,38rem);max-height:min(92vh,58rem);color:var(--ink);animation:modal-enter .3s var(--ease-out-expo) both;border:1px solid #d9c08c;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 1.5rem 4rem #26383340}.dress-code-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.25rem 1rem;display:flex}.dress-code-modal-header .label{color:var(--lavender);margin:0 0 .35rem}.dress-code-modal-header h2{margin:0;font:500 clamp(1.6rem,5vw,2.2rem) Playfair Display,serif}.dress-code-modal-header p:not(.label){color:#66716c;max-width:25rem;margin:.45rem 0 0;font-size:.82rem;line-height:1.45}.dress-code-modal-close{border:1px solid var(--line);width:2.75rem;height:2.75rem;color:var(--ink);cursor:pointer;transition:background-color .2s, color .2s, transform .15s var(--ease-out-expo);background:0 0;border-radius:50%;flex:none;place-items:center;display:inline-grid}.dress-code-modal-close:hover{background:var(--ink);color:var(--paper);transform:rotate(4deg)}.close-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.6px;width:1.1rem;height:1.1rem}.dress-code-modal-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:1rem;overflow:auto}.dress-code-modal-image{border:1px solid var(--line);background:var(--cream);display:block;overflow:hidden}.dress-code-modal-image img{width:100%;height:auto;display:block}.contact-person{flex-wrap:wrap;align-items:baseline;gap:.65rem;margin-top:.85rem;display:flex}.contact-person strong{min-width:4.2rem;font-size:.82rem}.contact-phone{color:#fff;font:500 1.1rem Playfair Display,serif;text-decoration:none}.contact-call{color:#f0d6a5;font-size:.74rem;font-weight:600;text-decoration:none}.rsvp{background:#eee6dc}.rsvp-access{background:var(--paper);text-align:center;border:1px solid #ded4c6;width:min(100%,39rem);margin-inline:auto;padding:clamp(2.5rem,8vw,4rem) clamp(1.5rem,6vw,3.5rem)}.rsvp-access>span{color:var(--gold);margin-bottom:1rem;font:400 1.6rem/1 Playfair Display,serif;display:block}.rsvp-access h2{letter-spacing:-.04em;max-width:15ch;margin:.8rem auto 0;font:500 clamp(2rem,8vw,3.4rem)/1 Playfair Display,serif}.rsvp-access>p:last-of-type{color:#65716d;max-width:31rem;margin:1.25rem auto 0;line-height:1.7}.rsvp-access button{min-height:2.75rem;color:var(--lavender);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #cdbbd3;margin-top:1.5rem;padding:.7rem .2rem;font:600 .76rem DM Sans,sans-serif}.rsvp-access--loading>span{animation:1.4s ease-in-out infinite invitation-pulse}.rsvp form{gap:var(--space-md);flex-direction:column;max-width:39rem;display:flex}.rsvp label,.rsvp legend{margin:0 0 var(--space-xs);font-size:.82rem;font-weight:600;display:block}.rsvp input,.rsvp select,.rsvp textarea{border:1px solid var(--line);background:var(--paper);width:100%;font:inherit;color:var(--ink);border-radius:0;outline:none;padding:1rem;transition:border-color .2s,box-shadow .2s,background-color .2s,color .2s;display:block}.rsvp input:focus,.rsvp select:focus,.rsvp textarea:focus{border-color:var(--lavender);box-shadow:0 0 0 3px #8e739b22}.rsvp textarea{resize:vertical}fieldset{border:0;margin:0;padding:0}.select-control{display:block;position:relative}.select-control select{appearance:none;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background-image:none;padding-right:3.2rem;overflow:hidden}.select-control:after{content:"";border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);pointer-events:none;width:.55rem;height:.55rem;transition:transform .2s var(--ease-out-expo);position:absolute;top:calc(50% - .4rem);right:1.2rem;transform:rotate(45deg)}.select-control:focus-within:after{transform:rotate(225deg)translate(-.2rem,-.2rem)}.choice-row{gap:var(--space-xs);grid-template-columns:1fr 1fr;display:grid}.choice{border:1px solid var(--line);color:#52635d;cursor:pointer;min-height:3.25rem;transition:background-color .2s, color .2s, border-color .2s, transform .15s var(--ease-out-expo);background:0 0;padding:1rem .5rem;font:600 .8rem DM Sans}.choice:hover{transform:translateY(-1px)}.choice.active{background:var(--olive);color:#fff;border-color:var(--olive)}.button{background:var(--lavender);color:#fff;cursor:pointer;width:100%;min-height:3.25rem;transition:background-color .2s, transform .15s var(--ease-out-expo), opacity .2s;border:0;justify-content:space-between;align-items:center;margin-top:0;padding:1.1rem 1.4rem;font:600 .84rem DM Sans;display:flex}.button:hover{background:#755c83;transform:translateY(-1px)}.button:disabled{opacity:.6;cursor:wait;transform:none}.form-error{color:#9b3d32;margin:0;font-size:.84rem}.success{background:var(--paper);text-align:center;max-width:39rem;padding:2.5rem 1.7rem}.success>span{color:var(--gold);font-size:2rem}.success h3{margin:1rem 0;font:500 2rem Playfair Display,serif}.success p{color:#66716c}.rsvp--confirmed{padding-block:clamp(4rem,12vw,7rem)}.rsvp-success{isolation:isolate;background:var(--paper);text-align:center;width:min(100%,44rem);animation:confirmation-enter .7s var(--ease-out-expo) both;border:1px solid #ded4c6;margin-inline:auto;padding:clamp(3rem,10vw,5.5rem) clamp(1.5rem,7vw,4.5rem) clamp(2.5rem,9vw,4.5rem);position:relative;overflow:hidden}.rsvp-success:before,.rsvp-success:after{content:"";z-index:-1;opacity:.55;border:1px solid #d7c6dc;border-radius:50%;width:7rem;height:7rem;position:absolute}.rsvp-success:before{top:-4.7rem;left:-4.2rem}.rsvp-success:after{bottom:-4.5rem;right:-4.4rem}.rsvp-success-star{color:var(--gold);animation:confirmation-detail-enter .6s .12s var(--ease-out-expo) both;font:400 1.75rem/1 Playfair Display,serif;display:block}.rsvp-success-kicker{color:var(--lavender);letter-spacing:.2em;text-transform:uppercase;animation:confirmation-detail-enter .6s .18s var(--ease-out-expo) both;margin:1rem 0 0;font-size:.68rem;font-weight:600}.rsvp-success h2{letter-spacing:-.045em;max-width:12ch;animation:confirmation-detail-enter .65s .23s var(--ease-out-expo) both;margin:1rem auto 0;font:500 clamp(2.35rem,10vw,4rem)/.98 Playfair Display,serif}.rsvp-success-copy{color:#5f6d68;text-wrap:balance;max-width:35rem;animation:confirmation-detail-enter .65s .3s var(--ease-out-expo) both;margin:1.5rem auto 0;font-size:.98rem;line-height:1.75}.rsvp-success-date{color:#9b7636;animation:confirmation-detail-enter .65s .36s var(--ease-out-expo) both;grid-template-columns:minmax(1.5rem,1fr) auto minmax(1.5rem,1fr);align-items:center;gap:1rem;margin:2rem auto 0;display:grid}.rsvp-success-date span{background:#d8bb83;height:1px}.rsvp-success-date time{letter-spacing:.2em;white-space:nowrap;font:600 .76rem/1 DM Sans,sans-serif}.rsvp-success-signoff{color:#65716d;animation:confirmation-detail-enter .65s .42s var(--ease-out-expo) both;gap:.25rem;margin:1.75rem 0 0;font-size:.82rem;display:grid}.rsvp-success-signoff strong{color:var(--ink);font:500 clamp(1.45rem,6vw,2rem) Playfair Display,serif}.rsvp-success-signoff i{color:var(--lavender);font-weight:500}.rsvp-success-sprig{width:6.5rem;color:var(--olive);fill:none;stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;animation:confirmation-detail-enter .65s .48s var(--ease-out-expo) both;margin:1.25rem auto 0;display:block}.rsvp-success-sprig-stem{stroke:var(--gold)}.rsvp-success-edit{min-height:2.75rem;color:var(--lavender);cursor:pointer;transition:color .2s, border-color .2s, transform .2s var(--ease-out-expo);animation:confirmation-detail-enter .65s .54s var(--ease-out-expo) both;background:0 0;border:0;border-bottom:1px solid #cdbbd3;align-items:center;gap:.55rem;margin-top:1rem;padding:.7rem .2rem .55rem;font:600 .76rem DM Sans,sans-serif;display:inline-flex}.rsvp-success-edit-icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}footer{color:#80908a;justify-content:space-between;align-items:center;gap:1rem;padding:2.2rem 8vw;font-size:.75rem;display:flex}footer a{align-items:center;gap:.35rem;text-decoration:none;display:inline-flex}.selected-group-flow{gap:clamp(1.5rem,5vw,2.25rem);display:grid}.selected-group-flow .guest-group-note,.selected-group-flow fieldset,.selected-group-flow label{margin:0}.form-step{animation:step-in .42s var(--ease-out-expo) both;scroll-margin-block:20vh}.group-step{margin-top:var(--space-xs)}.guest-group-note{scroll-margin-block:20vh}@keyframes step-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-enter{0%{opacity:0;transform:translateY(.75rem)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes confirmation-enter{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@keyframes confirmation-detail-enter{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes invitation-pulse{0%,to{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.form-step{animation:none}.choice,.button,.select-control:after,.dress-code-modal-close{transition:none}.dress-code-modal-backdrop,.dress-code-modal,.rsvp-success,.rsvp-success-star,.rsvp-success-kicker,.rsvp-success h2,.rsvp-success-copy,.rsvp-success-date,.rsvp-success-signoff,.rsvp-success-sprig,.rsvp-success-edit,.rsvp-access--loading>span{animation:none}}@media (hover:hover){.text-link:hover{color:var(--lavender)}.contact-phone:hover,.contact-call:hover{opacity:.8}.rsvp-success-edit:hover{color:#755c83;border-bottom-color:#755c83;transform:translate(.15rem)}.scroll-link--change:hover{color:#755c83}.rsvp-access button:hover{color:#755c83;border-bottom-color:#755c83}}@media (width>=700px){.hero{padding:10vh 12vw}.info-grid,.practical-card{grid-template-columns:1fr 1fr}.section-pad{padding-left:12vw;padding-right:12vw}.hero-mark{top:12%;right:-14rem}.rsvp form,.success{margin-left:auto;margin-right:auto}.rsvp-success-desktop-break{display:initial}}@media (width<=699px){.rsvp-success-desktop-break{display:none}}.guest-group-note{border-left:3px solid var(--gold);color:#61706b;background:#fffaf1;gap:.35rem;margin-top:1.3rem;padding:1rem 1.1rem;display:grid}.guest-group-note span{letter-spacing:.14em;text-transform:uppercase;color:var(--lavender);font-size:.68rem;font-weight:600}.guest-group-note strong{color:var(--ink);font:500 1.15rem/1.3 Playfair Display,serif}.field-help{color:#61706b;margin:-.2rem 0 1.2rem;font-size:.82rem}.member-dietary{border-top:1px solid #d7d1c7;padding:1rem 0}.member-dietary label{margin:.2rem 0 .55rem}.member-dietary select{margin-bottom:.7rem}.gallery{background:var(--paper);overflow:hidden}.gallery-heading{margin-bottom:clamp(2rem,6vw,3.5rem)}.gallery-shell{gap:1.25rem;min-width:0;display:grid}.gallery-stage{min-width:0}.gallery-carousel-frame{--card-width:82%;--card-height:92%;--card-x:0%;--gallery-drag-x:0px;aspect-ratio:4/3;isolation:isolate;perspective:1200px;cursor:grab;touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;overscroll-behavior-x:contain;background:0 0;border:0;width:100%;display:block;position:relative;overflow:hidden}.gallery-carousel-track{transform-style:preserve-3d;position:absolute;inset:0}.gallery-mobile-frame{aspect-ratio:4/3;width:100%;overflow:hidden}.gallery-mobile-track{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;align-items:center;gap:.75rem;width:100%;height:100%;padding-inline:9%;scroll-padding-inline:9%;display:flex;overflow:auto hidden}.gallery-mobile-track::-webkit-scrollbar{display:none}.gallery-mobile-card{background:var(--paper);opacity:.62;scroll-snap-align:center;scroll-snap-stop:always;transform-origin:50%;border:1px solid #d9d0c5;border-radius:.28rem;flex:0 0 82%;height:92%;transition:opacity .24s,transform .36s cubic-bezier(.22,1,.36,1);overflow:hidden;transform:scale(.94);box-shadow:0 .75rem 1.35rem #2d413d1f}.gallery-mobile-card--native-frame{height:auto}.gallery-mobile-card.is-active{opacity:1;transform:scale(1)}.gallery-carousel-card{z-index:var(--card-z);width:var(--card-width);height:var(--card-height);background:var(--paper);color:var(--ink);opacity:var(--card-opacity);filter:var(--card-filter);transform:translate(-50%, -50%) translateX(calc(var(--card-x) + var(--gallery-drag-x))) translateZ(var(--card-z-depth)) rotateZ(var(--card-rotation)) scale(var(--card-scale));transform-origin:50%;backface-visibility:hidden;-webkit-user-select:none;user-select:none;will-change:transform, opacity;border:1px solid #d9d0c5;border-radius:.28rem;padding:0;display:block;position:absolute;top:50%;left:50%;overflow:hidden;box-shadow:0 .9rem 1.5rem #2d413d26}.gallery-carousel-card--native-frame{height:auto}.gallery-carousel-frame.is-interactive .gallery-carousel-card{transition:transform .44s cubic-bezier(.22,1,.36,1),opacity .3s}.gallery-carousel-frame.is-dragging .gallery-carousel-card{cursor:grabbing;transition:none}.gallery-carousel-frame.is-dragging{cursor:grabbing}.gallery-carousel-card--offset-0{--card-x:0%;--card-rotation:0deg;--card-scale:1;--card-opacity:1;--card-filter:none;--card-z:5;--card-z-depth:1.2rem}.gallery-carousel-card--offset-negative-1{--card-x:-43%;--card-rotation:-2.8deg;--card-scale:.96;--card-opacity:.8;--card-filter:none;--card-z:3;--card-z-depth:0}.gallery-carousel-card--offset-1{--card-x:43%;--card-rotation:2.8deg;--card-scale:.96;--card-opacity:.8;--card-filter:none;--card-z:3;--card-z-depth:0}.gallery-carousel-card--offset-negative-2{--card-x:-93%;--card-rotation:-5.5deg;--card-scale:.88;--card-opacity:.38;--card-filter:none;--card-z:1;--card-z-depth:-.4rem}.gallery-carousel-card--offset-2{--card-x:93%;--card-rotation:5.5deg;--card-scale:.88;--card-opacity:.38;--card-filter:none;--card-z:1;--card-z-depth:-.4rem}button.gallery-carousel-card{appearance:none;cursor:pointer;font:inherit;text-align:left}@media (hover:hover) and (pointer:fine){button.gallery-carousel-card:hover{--card-opacity:.88}}.gallery-carousel-card:focus-visible{outline:2px solid var(--lavender);outline-offset:.3rem}.gallery-card-media{pointer-events:none;background:#ece4da;width:100%;height:100%;display:block;overflow:hidden}.gallery-stage-photo{object-fit:cover;-webkit-user-drag:none;width:100%;min-width:0;height:100%;min-height:0;display:block}.gallery-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;width:100%;height:100%;padding:.45rem;display:grid}.gallery-pair-cell{background:#e4dbd0;min-width:0;min-height:0;overflow:hidden}.gallery-pair .gallery-stage-photo{object-fit:cover}.gallery-carousel-arrow{z-index:10;background:var(--paper);width:2.7rem;height:2.7rem;color:var(--ink);cursor:pointer;transition:background-color .2s ease, color .2s ease, transform .2s var(--ease-out-expo), box-shadow .2s ease;border:1px solid #d2c1a4;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 .45rem 1rem #2d413d24}@media (hover:hover) and (pointer:fine){.gallery-carousel-arrow:hover{background:var(--gold);color:var(--paper);transform:translateY(-50%)scale(1.04);box-shadow:0 .65rem 1.2rem #2d413d2e}}.gallery-carousel-arrow:active{transform:translateY(-50%)scale(.96)}.gallery-carousel-arrow:focus-visible{outline:2px solid var(--lavender);outline-offset:.2rem}.gallery-carousel-arrow-previous{left:.55rem}.gallery-carousel-arrow-next{right:.55rem}.gallery-carousel-arrow-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65px;width:1.25rem;height:1.25rem}@media (width<=699px),(hover:none) and (pointer:coarse){.gallery-carousel-arrow{display:none}button.gallery-carousel-card{pointer-events:none}}.gallery-stage-meta{justify-content:space-between;align-items:baseline;gap:1rem;padding:.9rem .1rem 0;display:flex}.gallery-stage-meta p{color:var(--ink);margin:0;font:500 1.15rem/1.2 Playfair Display,serif}.gallery-stage-meta span{color:var(--lavender);letter-spacing:.14em;flex:none;font-size:.72rem;font-weight:600}.gallery-thumbnails{--thumbnail-gap:.5rem;justify-content:flex-start;align-items:center;gap:var(--thumbnail-gap);scrollbar-width:none;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;touch-action:pan-x;width:min(100%,19.5rem);min-width:0;margin-inline:auto;padding:.6rem 0 .7rem;scroll-padding-inline:0;display:flex;overflow-x:auto}.gallery-thumbnails::-webkit-scrollbar{display:none}.gallery-thumbnail{aspect-ratio:1;cursor:pointer;opacity:.66;scroll-snap-align:start;background:#e4dbd0;border:1px solid #0000;flex:0 0 calc(25% - .375rem);width:auto;height:auto;padding:0;transition:opacity .2s,border-color .2s,transform .24s cubic-bezier(.22,1,.36,1);display:block;overflow:hidden;transform:translateY(0)}.gallery-thumbnail:focus-visible,.gallery-thumbnail.active{opacity:1;border-color:var(--gold);transform:translateY(-.15rem)}@media (hover:hover) and (pointer:fine){.gallery-thumbnail:hover{opacity:1;border-color:var(--gold);transform:translateY(-.15rem)}}.gallery-thumbnail:focus-visible{outline:2px solid var(--lavender);outline-offset:3px}.gallery-thumbnail-media{pointer-events:none;width:100%;height:100%;display:block;overflow:hidden}.gallery-thumbnail-media.is-pair{background:#eadfce;grid-template-columns:repeat(2,minmax(0,1fr));gap:.12rem;padding:.12rem;display:grid}.gallery-thumbnail-media img{object-fit:cover;width:100%;min-width:0;height:100%;min-height:0;display:block}@media (prefers-reduced-motion:reduce){.gallery-carousel-card,.gallery-mobile-card,.gallery-carousel-arrow,.gallery-thumbnail{transition:none}.gallery-thumbnails{scroll-behavior:auto}}@media (width>=700px){.gallery-stage{width:min(100%,58rem);margin-inline:auto}.gallery-shell{gap:1.5rem}.gallery-carousel-frame{--card-width:62%;--card-height:92%}.gallery-carousel-card--offset-negative-1{--card-x:-54%}.gallery-carousel-card--offset-1{--card-x:54%}.gallery-carousel-card--offset-negative-2{--card-x:-112%}.gallery-carousel-card--offset-2{--card-x:112%}.gallery-carousel-arrow{width:3rem;height:3rem}.gallery-carousel-arrow-previous{left:.95rem}.gallery-carousel-arrow-next{right:.95rem}.gallery-thumbnails{width:min(100%,23rem)}}.remote-participation{background:var(--cream);gap:clamp(3rem,8vw,6rem);display:grid;overflow:hidden}.remote-participation-intro{max-width:42rem}.remote-participation-intro h2{letter-spacing:-.045em;max-width:12ch;margin:1rem 0 0;font:500 clamp(2.8rem,11vw,5rem)/.98 Playfair Display,serif}.remote-participation-intro>p:last-child{color:#61706b;max-width:35rem;margin:1.4rem 0 0;line-height:1.75}.remote-ceremony-time{border-block:1px solid #d8cec0;gap:2rem;padding-block:clamp(2rem,6vw,4rem);display:grid}.remote-time-lockup>span{color:var(--lavender);letter-spacing:.17em;text-transform:uppercase;font-size:.7rem;font-weight:600}.remote-time-lockup strong{color:var(--ink);letter-spacing:-.06em;font-variant-numeric:tabular-nums;margin-top:.45rem;font:500 clamp(4.5rem,20vw,8rem)/.9 Playfair Display,serif;display:block}.remote-time-lockup p{color:#65736e;letter-spacing:.08em;text-transform:uppercase;margin:.65rem 0 0;font-size:.78rem;font-weight:600}.remote-arrival-note{color:#52635d;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.85rem;max-width:31rem;display:grid}.remote-arrival-note>span{color:var(--gold);font:400 1.1rem/1.5 Playfair Display,serif}.remote-arrival-note p{margin:0;line-height:1.7}.remote-connections{gap:1rem;display:grid}.remote-primary-connection{background:var(--paper);border:1px solid #d9d0c5;grid-template-columns:auto minmax(0,1fr);gap:1.25rem;padding:clamp(1.5rem,5vw,2.5rem);display:grid}.remote-video-icon{fill:none;width:2.35rem;height:2.35rem;stroke:var(--gold);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.35px}.remote-primary-connection h3{margin:.35rem 0 0;font:500 clamp(1.65rem,6vw,2.35rem)/1 Playfair Display,serif}.remote-primary-connection div>p:last-child{color:#66736f;max-width:31rem;margin:.75rem 0 0;font-size:.88rem;line-height:1.65}.remote-connection-link,.remote-link-pending{grid-column:1/-1}.remote-connection-link{background:var(--ink);min-height:3.3rem;color:var(--paper);transition:background-color .2s, transform .18s var(--ease-out-expo);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;font-size:.8rem;font-weight:600;text-decoration:none;display:flex}.remote-connection-link:hover{background:#405750;transform:translateY(-1px)}.remote-external-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:1rem;height:1rem}.remote-link-pending{color:#7a8581;border-top:1px solid #ded7cd;margin:.3rem 0 0;padding-top:1rem;font-size:.78rem}.remote-backup-connection{border-block:1px solid #d8cec0}.remote-backup-connection summary{color:var(--ink);cursor:pointer;padding:1.15rem 0;font-size:.78rem;font-weight:600}.remote-backup-connection>div{gap:1rem;padding:0 0 1.25rem;display:grid}.remote-backup-connection>div>p{color:#66736f;margin:0;font-size:.82rem}@media (width>=700px){.remote-ceremony-time{grid-template-columns:minmax(0,1fr) minmax(18rem,.75fr);align-items:end}.remote-connections{grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);align-items:start}.remote-backup-connection{margin-top:.4rem}}@media (prefers-reduced-motion:reduce){.remote-connection-link{transition:none}}.wedding-countdown{z-index:1;border-block:1px solid #d4c9d6;gap:.7rem;width:min(100%,26rem);padding-block:1rem;display:grid;position:relative}.wedding-countdown>p{color:#66716c;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:600}.wedding-countdown-values{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;display:grid}.wedding-countdown-unit{gap:.12rem;display:grid}.wedding-countdown-unit strong{font-variant-numeric:tabular-nums;font:500 clamp(1.5rem,6vw,2.15rem)/1 Playfair Display,serif}.wedding-countdown-unit small{color:var(--lavender);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}.wedding-countdown--started{color:var(--olive);grid-template-columns:auto 1fr;align-items:center}.wedding-countdown--started>span{color:var(--gold)}.wedding-countdown--started>p{color:currentColor}.hero--event-day .hero-mark{color:#d9c8dd}.hero--event-day .hero-copy{max-width:31rem}.hero--after{min-height:82svh}.event-day-notice{background:var(--olive);color:var(--paper);gap:clamp(2.5rem,7vw,7rem);display:grid}.event-day-notice .eyebrow,.event-day-notice .label{color:#f0d6a5}.event-day-notice h2{letter-spacing:-.05em;max-width:10ch;margin:.8rem 0 1.3rem;font:500 clamp(3rem,12vw,6rem)/.94 Playfair Display,serif}.event-day-notice-copy>p:last-child,.event-day-action>p:not(.label,.event-day-action-pending){color:#e2e6df;max-width:35rem}.event-day-action{border-top:1px solid #f0d6a577;align-self:end;padding-top:1.5rem}.event-day-action h3{margin:.65rem 0;font:500 clamp(1.7rem,6vw,2.6rem)/1.05 Playfair Display,serif}.event-day-action a{color:var(--paper);border-bottom:1px solid #f0d6a5;align-items:center;gap:.55rem;margin-top:1rem;padding-bottom:.45rem;font-size:.8rem;font-weight:600;text-decoration:none;display:inline-flex}.event-day-action svg{fill:none;stroke:currentColor;stroke-linecap:round;width:1rem}.event-day-action-pending{color:#d7ddd5;font-size:.8rem}.after-wedding{text-align:center;background:#eee6dc;justify-items:center;display:grid}.after-wedding-loading{color:#687570;text-align:center;background:#eee6dc;justify-items:center;gap:.65rem;display:grid}.after-wedding-loading span{color:var(--gold)}.after-wedding-loading p{margin:0}.after-wedding-star{color:var(--gold);font:400 1.75rem/1 Playfair Display,serif}.after-wedding .eyebrow{margin-top:1.2rem}.after-wedding h2{letter-spacing:-.05em;max-width:12ch;margin:1rem auto 0;font:500 clamp(3rem,12vw,6rem)/.95 Playfair Display,serif}.after-wedding>p:not(.eyebrow,.after-wedding-signature){color:#5f6d68;max-width:38rem;margin:1.7rem auto 0;line-height:1.8}.after-wedding-signature{color:#65716d;gap:.25rem;margin:2rem 0 0;font-size:.82rem;display:grid}.after-wedding-signature strong{color:var(--ink);font:500 clamp(1.55rem,6vw,2.15rem) Playfair Display,serif}.after-wedding-sprig{fill:none;width:7rem;stroke:var(--olive);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.2px;margin-top:1.2rem}@media (width>=760px){.event-day-notice{grid-template-columns:1.15fr .85fr}}@media (width<=699px){.hero--event-day,.hero--after{min-height:100svh}}@media (prefers-reduced-motion:reduce){.wedding-countdown *{transition:none}}
