@font-face{font-family:La Graziela;src:url(/fonts/LaGraziela.woff2) format("woff2"),url(/fonts/LaGraziela.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Dolce Vintage;src:url(/fonts/CS-DolceVintage-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--cream: #f7f3ed;--ivory: #faf8f4;--dusty-rose: #c9a0a0;--dusty-rose-light: #e8d4d4;--dusty-rose-dark: #a67f7f;--hero-text: #d9c3bd;--night-before-bg: #ffffff;--escort-ink: #9a4458;--escort-blush: #cddff2;--sky-grey: #dad8d9;--pink-glow: #e9cec3;--sky-blue: #c6dcf0;--olive: #4a5d3e;--olive-dark: #3a4a30;--olive-light: #6b7d5e;--shell-teal: #355e58;--burgundy: #6b3a3a;--burgundy-dark: #4f2a2a;--chocolate: #3d2b1f;--gold: #b8a06a;--gold-light: #d4c49a;--text: #2c2c2c;--text-light: #5a5a5a;--font-serif: "Libre Baskerville", Georgia, serif;--font-script: "Great Vibes", cursive;--font-graziela: "La Graziela", cursive;--font-dolce: "Dolce Vintage", cursive;--font-instrument: "Instrument Serif", Georgia, serif;--font-sans: "Montserrat", sans-serif;--nav-height: 4rem;--section-padding: clamp(5rem, 12vw, 9rem);--container-width: min(72rem, 90vw);--page-gutter: 1.5rem;--tap-min: 2.75rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}body{font-family:var(--font-serif);font-weight:400;color:var(--text);background-color:var(--ivory);line-height:1.7;overflow-x:hidden;max-width:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}.script{font-family:var(--font-script);font-weight:400}.nav{position:fixed;top:0;right:0;z-index:1000;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) 1rem 1rem}.music-toggle{position:fixed;bottom:max(1.25rem,env(safe-area-inset-bottom));left:max(1.25rem,env(safe-area-inset-left));z-index:1000;display:inline-flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);min-width:var(--tap-min);min-height:var(--tap-min);padding:0;border:1px solid #e4b9b8;border-radius:50%;background:var(--ivory);color:#e4b9b8;cursor:pointer;box-shadow:0 2px 12px #e4b9b840;transition:background .3s ease,border-color .3s ease,color .3s ease,transform .3s ease}.music-toggle:hover{background:#faf0ef;border-color:#d4a3a2;color:#d4a3a2;transform:scale(1.05)}.music-toggle.is-playing{background:#e4b9b8;border-color:#e4b9b8;color:var(--ivory)}.music-toggle-icon{position:relative;width:1rem;height:1rem;flex-shrink:0}.music-icon{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.music-icon--play{left:.1rem}.music-icon--pause,.music-toggle.is-playing .music-icon--play{opacity:0}.music-toggle.is-playing .music-icon--pause{opacity:1}.nav-toggle{position:relative;width:var(--tap-min);height:var(--tap-min);min-width:var(--tap-min);min-height:var(--tap-min);border:1px solid var(--shell-teal);border-radius:50%;background:transparent;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;transition:border-color .3s ease,transform .3s ease;box-shadow:none}.nav-toggle:hover{background:transparent;border-color:var(--shell-teal);transform:scale(1.05)}.nav-toggle-line{display:block;width:1rem;height:1px;background:var(--shell-teal);transition:transform .3s ease,opacity .3s ease}.nav-toggle[aria-expanded=true] .nav-toggle-line:nth-child(1){transform:translateY(4px) rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-line:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] .nav-toggle-line:nth-child(3){transform:translateY(-4px) rotate(-45deg)}.nav-menu{position:absolute;top:calc(100% + .75rem);right:0;width:min(18rem,calc(100vw - 2rem));min-width:0;max-width:calc(100vw - 2rem);background:var(--ivory);border:1px solid var(--dusty-rose-light);border-radius:.25rem;box-shadow:0 8px 32px #4a5d3e1f;overflow:hidden;animation:fadeSlideIn .3s ease}.nav-menu[hidden]{display:none}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.nav-list{list-style:none;padding:.5rem 0}.nav-link{display:flex;align-items:center;min-height:var(--tap-min);padding:.75rem 1.5rem;font-family:var(--font-sans);font-size:.75rem;font-weight:300;letter-spacing:.15em;text-transform:uppercase;color:var(--shell-teal);transition:background .2s ease,color .2s ease}.nav-link:hover,.nav-link--active{background:var(--dusty-rose-light);color:var(--burgundy-dark)}.section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:var(--section-padding) 0;position:relative;max-width:100%}.container{width:var(--container-width);max-width:100%;margin:0 auto;padding:0 var(--page-gutter)}.section-header{text-align:center;margin-bottom:clamp(2.5rem,6vw,4rem)}.section-label{display:block;font-family:var(--font-sans);font-size:.7rem;font-weight:300;letter-spacing:.3em;text-transform:uppercase;color:var(--dusty-rose-dark);margin-bottom:.75rem}.section-header .section-title{font-family:"Instrument Serif",serif;font-style:normal;font-size:clamp(3rem,8vw,5.5rem);font-weight:400;letter-spacing:0;text-transform:uppercase;color:var(--shell-teal);line-height:1.15;overflow-wrap:break-word}.section-header--light .section-label{color:var(--dusty-rose-light)}.section-header--light .section-title{color:var(--ivory)}.ornament{margin-top:1rem;font-size:.75rem;color:var(--gold);letter-spacing:.5em}.ornament--light{color:var(--gold-light)}.section--welcome{position:relative;background:#fff;min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:var(--nav-height) var(--page-gutter) clamp(5rem,12vw,8rem)}.welcome-monogram{position:absolute;top:max(1.25rem,env(safe-area-inset-top));left:max(1.25rem,env(safe-area-inset-left));z-index:2;font-family:var(--font-dolce);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:400;color:#1e1e1e61;line-height:1;pointer-events:none}.welcome-inner{display:flex;align-items:center;justify-content:center;width:100%}.welcome-photo-wrap{position:relative;width:100%;max-width:min(25.5rem,76vw)}.welcome-photo{width:100%;height:auto;display:block;aspect-ratio:5 / 6.78;object-fit:cover;object-position:top center}.welcome-invite{position:absolute;right:-17rem;bottom:0;z-index:2;transform:translateY(95%) rotate(-5deg);text-align:center;color:#e4b9b8;pointer-events:none}.welcome-invite-names{font-family:var(--font-dolce);font-size:clamp(2.1rem,6.5vw,4.25rem);font-weight:400;line-height:1.15;letter-spacing:.01em;white-space:nowrap}.welcome-invite-meta{position:absolute;right:-13rem;bottom:0;z-index:2;transform:translateY(calc(95% + 4.85rem)) rotate(-5deg);text-align:center;color:#e4b9b8;pointer-events:none}.welcome-invite-date,.welcome-invite-place{font-family:var(--font-dolce);font-size:clamp(2.1rem,5.5vw,3.35rem);font-weight:400;line-height:1.25;letter-spacing:.02em}.welcome-invite-date{margin-bottom:.15em}.welcome-invite-place{position:relative;top:1.15rem;left:-.65rem}.section--welcome-note{background:#fff;padding-top:clamp(10rem,22vw,17rem);padding-bottom:clamp(5rem,12vw,9rem)}.welcome-note{max-width:38rem;margin:0 auto;text-align:center}.welcome-note p{font-size:clamp(.82rem,1.6vw,.92rem);color:var(--text-light);margin-bottom:1.5rem;line-height:1.9}.welcome-note p:last-child{margin-bottom:0}.welcome-note-signoff{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-top:2.5rem}.welcome-note-love{font-family:var(--font-serif);font-size:clamp(.82rem,1.6vw,.92rem);color:var(--text-light)}.welcome-note-initials{font-family:var(--font-dolce);font-size:clamp(1.85rem,5vw,2.85rem);font-weight:400;line-height:1.2;letter-spacing:.02em;color:#e4b9b8;transform:translate(.45rem)}.section--ceremony{background:#fff;color:var(--shell-teal);overflow:hidden;z-index:3;min-height:100vh;min-height:100svh;justify-content:center;padding-top:clamp(4rem,8vw,6.5rem);padding-bottom:clamp(4rem,8vw,6.5rem)}.section--ceremony .section-header{margin-bottom:clamp(1.25rem,3vw,2.25rem)}.section--ceremony:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-color:#d8c4a8;background-image:url(/images/celebration-water.jpg?v=3);background-size:122%;background-position:center 45%;background-repeat:no-repeat;pointer-events:none}.section--ceremony>*{position:relative;z-index:1}.section--ceremony .container{overflow:visible}.section--ceremony .section-header--light .section-label{color:var(--shell-teal)}.section--ceremony .section-header--light .section-title{color:#fff}.celebration-invite{--regency-corner: clamp(1.15rem, 2.5vw, 1.85rem);position:relative;width:min(58rem,100%);margin:0 auto;overflow:hidden;background-color:#fffdf8;background-image:url(/images/celebration-paper.jpg);background-size:cover;background-position:center;filter:drop-shadow(0 16px 30px rgba(147,119,84,.18));-webkit-mask-image:radial-gradient(circle var(--regency-corner) at 0 0,#0000 98%,#000 100%),radial-gradient(circle var(--regency-corner) at 100% 0,#0000 98%,#000 100%),radial-gradient(circle var(--regency-corner) at 0 100%,#0000 98%,#000 100%),radial-gradient(circle var(--regency-corner) at 100% 100%,#0000 98%,#000 100%);-webkit-mask-size:51% 51%;-webkit-mask-position:top left,top right,bottom left,bottom right;-webkit-mask-repeat:no-repeat;mask-image:radial-gradient(circle var(--regency-corner) at 0 0,#0000 98%,#000 100%),radial-gradient(circle var(--regency-corner) at 100% 0,#0000 98%,#000 100%),radial-gradient(circle var(--regency-corner) at 0 100%,#0000 98%,#000 100%),radial-gradient(circle var(--regency-corner) at 100% 100%,#0000 98%,#000 100%);mask-size:51% 51%;mask-position:top left,top right,bottom left,bottom right;mask-repeat:no-repeat}.celebration-invite-face{position:relative;z-index:1;background:transparent;padding:clamp(2.15rem,4.8vw,3.15rem) clamp(1.5rem,3.4vw,2.5rem)}.event-cards{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:repeat(6,auto);align-items:start;justify-content:center;gap:0;max-width:none;width:100%;margin:0 auto;overflow:visible}.event-card{flex:1 1 0;min-width:0;width:auto;max-width:none;position:relative;display:grid;grid-template-rows:subgrid;grid-row:1 / span 6;overflow:visible}.event-card-inner{position:relative;inset:auto;display:grid;grid-template-rows:subgrid;grid-row:1 / span 6;justify-items:center;align-content:start;width:100%;height:auto;min-height:0;text-align:center;padding:clamp(.5rem,2vw,1rem) clamp(1rem,3vw,2rem);border:none;background:transparent}.section--ceremony .event-type{color:#e4b9b8;margin-bottom:.85rem;font-size:.75rem;font-weight:400}.section--ceremony .event-title{font-family:var(--font-serif);font-size:clamp(1.15rem,2.4vw,1.55rem);font-weight:400;color:var(--shell-teal);margin-bottom:.85rem;letter-spacing:.08em;line-height:1.2;text-transform:uppercase;white-space:nowrap}.section--ceremony .event-date,.section--ceremony .event-time,.section--ceremony .event-location{font-size:clamp(.8rem,1.55vw,1.02rem);letter-spacing:.12em;text-transform:uppercase;color:var(--shell-teal);margin-bottom:.28rem}.section--ceremony .event-time,.section--ceremony .event-location{text-transform:none;letter-spacing:.04em}.section--ceremony .event-time{margin-bottom:.85rem}.section--ceremony .event-location{font-style:normal;margin-bottom:.65rem}.section--ceremony .event-details{padding-top:.25rem;border-top:none}.section--ceremony .event-details p{color:#e4b9b8;letter-spacing:.14em;font-size:.82rem;font-weight:400}.section--ceremony .event-attire{font-family:var(--font-sans)!important;font-size:.82rem!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--escort-ink)!important}.event-type{display:block;font-family:var(--font-sans);font-size:.65rem;font-weight:300;letter-spacing:.35em;text-transform:uppercase;color:var(--dusty-rose-dark);margin-bottom:1rem}.event-title{font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.25rem);font-weight:400;color:var(--shell-teal);margin-bottom:1.5rem;letter-spacing:.03em}.event-date,.event-time,.event-location{font-size:clamp(1rem,2.2vw,1.15rem);color:var(--text);margin-bottom:.5rem}.event-location{font-style:italic;margin-bottom:1.5rem}.event-details{padding-top:1.5rem;border-top:1px solid rgba(74,93,62,.2)}.event-details p{font-family:var(--font-sans);font-size:.8rem;font-weight:300;letter-spacing:.12em;text-transform:uppercase;color:var(--shell-teal);margin-bottom:.5rem}.event-attire{font-family:var(--font-graziela)!important;font-size:1.85rem!important;letter-spacing:0!important;text-transform:none!important;color:var(--burgundy-dark)!important}.event-divider{display:flex;align-items:center;justify-content:center;align-self:stretch;flex-shrink:0;width:1px;margin-inline:clamp(.15rem,1vw,.5rem);grid-row:1 / span 6}.event-divider-line{display:block;width:1px;height:78%;align-self:center;background:#9a445847}.section--bonfire{background:var(--night-before-bg);z-index:2;overflow:visible;justify-content:flex-start;padding-top:clamp(4rem,8vw,6rem);padding-bottom:clamp(8rem,15vw,12rem)}.section--bonfire .bonfire-header{margin-bottom:clamp(1.5rem,4vw,2.5rem)}.bonfire-shell{position:relative;isolation:isolate;width:min(34rem,100%);margin:0 auto;display:flex;align-items:center;justify-content:center;overflow:visible}.bonfire-shell-image{width:100%;height:auto;display:block;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 14px 24px rgba(70,60,50,.12))}.bonfire-tassel{position:absolute;left:50%;top:93%;z-index:3;width:14%;height:auto;transform:translate(-50%);pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 8px 12px rgba(90,70,35,.28))}.bonfire-content{position:absolute;top:18%;right:18%;bottom:26%;left:18%;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:none;margin:0;padding:0 .5rem}.bonfire-kicker{font-family:var(--font-sans)!important;font-size:.7rem!important;font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:var(--shell-teal)!important;margin-bottom:.55rem!important;line-height:1.4!important}.bonfire-title{font-family:var(--font-dolce);font-size:clamp(1.65rem,3.85vw,2.55rem);font-weight:400;color:#2e544e;margin-top:.2rem;margin-bottom:.4rem;white-space:nowrap}.bonfire-date{font-family:var(--font-sans);font-size:.7rem;font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:var(--shell-teal);margin-bottom:1rem}.bonfire-content p{font-size:clamp(.8rem,1.5vw,.88rem);color:var(--text);margin-bottom:.75rem;line-height:1.7}.bonfire-note{font-family:var(--font-sans)!important;font-size:.7rem!important;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:#e4b9b8!important;white-space:nowrap;margin-top:.15rem;margin-bottom:0!important;line-height:1.4!important}.section--things{background:var(--cream);z-index:1;padding-top:clamp(8.5rem,17vw,12.5rem)}.section--things .section-header{margin-bottom:clamp(1.25rem,3vw,2rem)}.things-intro{max-width:36rem;margin:0 auto 3rem;text-align:center;font-size:clamp(.82rem,1.6vw,.92rem);color:var(--text-light);line-height:1.9}.things-places{display:flex;flex-direction:column;gap:clamp(3.5rem,8vw,6rem);max-width:64rem;margin:0 auto}.things-place{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2.5rem,6vw,4rem)}.things-place:nth-child(2n){direction:rtl}.things-place:nth-child(2n)>*{direction:ltr}.things-place-media{overflow:hidden;aspect-ratio:1;width:100%;max-width:26rem;justify-self:center}.things-place:nth-child(2n) .things-place-media{justify-self:center}.things-place-media img{width:100%;height:100%;object-fit:cover;display:block}.things-place:first-child .things-place-media img{object-position:center 78%}.things-place:nth-child(3) .things-place-media img{object-position:center bottom}.things-place:nth-child(4) .things-place-media img{object-position:center}.things-place-info{text-align:left;padding-left:clamp(.5rem,2vw,1.5rem)}.things-place:nth-child(2n) .things-place-info{text-align:right;padding-left:0;padding-right:clamp(.5rem,2vw,1.5rem)}.things-place-name{font-family:var(--font-serif);font-size:clamp(1.1rem,2.4vw,1.5rem);font-weight:400;color:var(--shell-teal);letter-spacing:.02em;line-height:1.3;margin-bottom:.5rem}.things-place-location{font-family:var(--font-sans);font-size:.7rem;font-weight:300;letter-spacing:.15em;text-transform:uppercase;color:var(--dusty-rose-dark)}.things-place-blurb{font-family:var(--font-serif);font-size:clamp(.8rem,1.45vw,.88rem);font-weight:400;line-height:1.65;color:var(--text-light);margin-top:1rem;max-width:22rem}.things-place:nth-child(2n) .things-place-blurb{margin-left:auto}@media(max-width:768px){.event-cards{display:flex;flex-direction:column;align-items:stretch;max-width:none;gap:0}.event-card,.event-card-inner{display:flex;flex-direction:column;grid-row:auto;grid-template-rows:none}.event-card{width:100%;max-width:none;flex:0 0 auto}.event-divider{grid-row:auto}.event-card-inner{padding:1.25rem .5rem}.event-divider{width:62%;height:1px;margin-inline:auto;margin-block:.35rem;align-self:center}.event-divider-line{width:100%;height:1px}.section--ceremony .event-title{white-space:normal}.things-place,.things-place:nth-child(2n){grid-template-columns:1fr;direction:ltr;gap:1.25rem}.things-place-media,.things-place:nth-child(2n) .things-place-media{max-width:min(22rem,100%);width:100%;justify-self:center}.things-place-info,.things-place:nth-child(2n) .things-place-info{text-align:center;padding-left:0;padding-right:0}.things-place-blurb,.things-place:nth-child(2n) .things-place-blurb{margin-left:auto;margin-right:auto}}.section--faqs{background:#fff}.faq-groups{max-width:36rem;margin:0 auto;display:flex;flex-direction:column;gap:clamp(2.5rem,5vw,3.5rem)}.faq-group-title{font-family:var(--font-sans);font-size:.7rem;font-weight:300;letter-spacing:.28em;text-transform:uppercase;color:var(--dusty-rose-dark);text-align:center;margin-bottom:1.25rem}.faq-list{margin:0}.faq-item{border-bottom:1px solid rgba(74,93,62,.15)}.faq-list .faq-item:first-child{border-top:1px solid rgba(74,93,62,.15)}.faq-question{font-family:var(--font-serif);font-size:clamp(.9rem,1.8vw,1.02rem);font-weight:400;color:var(--shell-teal);padding:1.25rem 2rem 1.25rem 0;min-height:var(--tap-min);cursor:pointer;list-style:none;position:relative;line-height:1.5}.faq-question::-webkit-details-marker{display:none}.faq-question:after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-family:var(--font-sans);font-size:1.25rem;font-weight:300;color:var(--dusty-rose-dark);transition:transform .2s ease}.faq-item[open] .faq-question:after{content:"−"}.faq-answer{padding:0 0 1.25rem}.faq-answer p{font-size:clamp(.82rem,1.6vw,.92rem);color:var(--text-light);line-height:1.8}.faq-answer a{color:var(--shell-teal);text-decoration:underline;text-underline-offset:.15em}.faq-answer a:hover{color:var(--dusty-rose-dark)}.section--countdown{position:relative;background:#fff;color:var(--shell-teal);justify-content:center;padding-top:clamp(5rem,12vw,9rem);padding-bottom:clamp(8rem,18vw,14rem)}.section--countdown .section-header{margin-bottom:clamp(1.25rem,3vw,2rem)}.countdown{display:flex;justify-content:center;gap:clamp(1.5rem,4vw,3rem);margin-bottom:2.5rem;flex-wrap:wrap}.countdown-unit{display:flex;flex-direction:column;align-items:center;min-width:5rem}.countdown-number{font-family:var(--font-serif);font-size:clamp(5rem,13vw,9rem);font-weight:400;font-synthesis:none;line-height:1;color:var(--shell-teal);letter-spacing:.02em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-stroke:.022em #ffffff}.countdown-label{font-family:var(--font-sans);font-size:.8rem;font-weight:300;letter-spacing:.25em;text-transform:uppercase;color:var(--dusty-rose-dark);margin-top:1.1rem}.countdown-date{text-align:center;font-family:var(--font-sans);font-size:clamp(.85rem,2vw,1rem);font-weight:200;letter-spacing:.3em;text-transform:uppercase;color:var(--text-light)}.section--rsvp{position:relative;z-index:1;background:#ce727d;color:#fff;overflow:visible}.section--rsvp .section-label,.section--rsvp .section-title,.section--rsvp .rsvp-intro,.section--rsvp .form-group label,.section--rsvp .rsvp-success,.section--rsvp .ornament{color:#fff}.section--rsvp .form-group input,.section--rsvp .form-group select,.section--rsvp .form-group textarea{color:#fff;background:#ffffff1f;border-color:#ffffff73}.section--rsvp .form-group input::placeholder,.section--rsvp .form-group textarea::placeholder{color:#ffffffa6}.section--rsvp .form-group input:focus,.section--rsvp .form-group select:focus,.section--rsvp .form-group textarea:focus{border-color:#fff;box-shadow:0 0 0 3px #ffffff26}.section--rsvp .rsvp-submit{border-color:#fff;background:transparent;color:#fff}.section--rsvp .rsvp-submit:hover{background:#fff;color:#ce727d}.section--rsvp .rsvp-success{background:#ffffff1f;border-color:#ffffff73}.rsvp-content{max-width:32rem;margin:0 auto}.rsvp-intro{text-align:center;font-size:clamp(.82rem,1.6vw,.92rem);color:var(--text-light);margin-bottom:2.5rem;line-height:1.9}.rsvp-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-family:var(--font-sans);font-size:.7rem;font-weight:300;letter-spacing:.15em;text-transform:uppercase;color:var(--shell-teal)}.form-group input,.form-group select,.form-group textarea{width:100%;max-width:100%;font-family:var(--font-serif);font-size:1rem;line-height:1.4;padding:.85rem 1rem;min-height:var(--tap-min);border:1px solid var(--dusty-rose-light);border-radius:0;background:var(--cream);color:var(--text);transition:border-color .2s ease,box-shadow .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23ffffff' d='M1.4.3 6 4.9 10.6.3 12 1.7 6 7.7 0 1.7z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:.75rem;padding-right:2.5rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--olive);box-shadow:0 0 0 3px #4a5d3e1a}.form-group textarea{resize:vertical;min-height:5rem}.rsvp-submit{font-family:var(--font-sans);font-size:.75rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;padding:1.1rem 2.5rem;min-height:var(--tap-min);border:1px solid var(--olive);background:var(--olive);color:var(--ivory);cursor:pointer;transition:background .3s ease,color .3s ease;align-self:center;margin-top:.5rem}.rsvp-submit:hover{background:transparent;color:var(--shell-teal)}.rsvp-submit:disabled{opacity:.65;cursor:wait;pointer-events:none}.rsvp-success{text-align:center;font-size:1.15rem;color:var(--shell-teal);padding:2rem;border:1px solid var(--dusty-rose-light);background:var(--cream);line-height:1.8}.section--registry{position:relative;background:var(--ivory);overflow:visible;z-index:2;min-height:0;justify-content:flex-start;padding-top:clamp(3rem,6vw,4.5rem);padding-bottom:clamp(3rem,6vw,4.5rem)}.section--registry .container{position:relative;z-index:1}.section--registry .section-header .section-title{color:var(--shell-teal)}.registry-content{max-width:32rem;margin:0 auto;text-align:center}.registry-intro{font-size:clamp(.82rem,1.6vw,.92rem);color:var(--text-light);margin-bottom:2.5rem;line-height:1.9}.registry-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:1.75rem}.registry-link{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:.75rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;padding:1.1rem 2.5rem;min-height:var(--tap-min);border:1px solid var(--olive);color:var(--shell-teal);transition:background .3s ease,color .3s ease,border-color .3s ease}.registry-link:hover{background:var(--shell-teal);border-color:var(--shell-teal);color:var(--ivory)}.footer{text-align:center;padding:3rem 1.5rem;background:var(--cream);color:var(--shell-teal)}.footer-names{font-family:var(--font-dolce);font-size:clamp(1.75rem,4.6vw,2.4rem);color:#e4b9b8}@media(max-width:768px){.welcome-photo-wrap{max-width:min(22rem,86vw)}.welcome-invite,.welcome-invite-meta{position:absolute;z-index:2;text-align:center;color:#e4b9b8;pointer-events:none}.welcome-invite{left:50%;right:auto;bottom:0;width:max-content;max-width:none;margin-top:0;transform:translate(-50%,78%) rotate(-5deg)}.welcome-invite-names{display:flex;flex-direction:column;align-items:center;gap:.06em;white-space:nowrap;font-size:clamp(2.2rem,11vw,2.9rem)}.welcome-invite-names span{white-space:nowrap}.welcome-invite-meta{left:auto;right:6%;bottom:0;width:max-content;max-width:none;margin-top:0;transform:translateY(calc(78% + 7.2rem)) rotate(-5deg)}.welcome-invite-date,.welcome-invite-place{font-size:clamp(1.25rem,6vw,1.75rem)}.welcome-invite-place{top:.2rem;left:0}.section--welcome-note{min-height:0;padding-top:6rem;padding-bottom:1.25rem}}@media(max-width:768px){:root{--section-padding: 2.5rem;--container-width: min(72rem, 100%);--page-gutter: 1.25rem}.section-header .section-title{font-size:clamp(2.15rem,8vw,2.75rem)}.welcome-photo-wrap{max-width:min(22rem,100%)}.section{min-height:0;justify-content:flex-start;padding:2.5rem 0}.section--welcome-note{padding-top:6rem;padding-bottom:1.25rem}.section--welcome-note:after{content:"";display:block;width:1.35rem;height:1px;margin:5.5rem auto 0;background:#e4b9b8}.section--welcome{min-height:100svh;justify-content:center;padding:calc(var(--nav-height) + .5rem) var(--page-gutter) 5.5rem}.section--countdown,.section--ceremony,.section--bonfire,.section--things,.section--faqs,.section--rsvp,.section--registry{min-height:0;padding-top:2.5rem;padding-bottom:2.5rem}.section--countdown{padding-top:1.75rem;padding-bottom:3.25rem}.section--ceremony{padding-top:3rem;padding-bottom:3rem}.section--ceremony:before{background-size:cover;background-position:center}.section--bonfire{padding-top:4rem;padding-bottom:9rem}.section--things{padding-top:8rem}.section-header{margin-bottom:1.75rem}.nav-menu{position:fixed;top:calc(var(--tap-min) + 1.25rem);right:1rem;left:1rem;width:auto;max-width:none;max-height:calc(100svh - 5.5rem);overflow-y:auto}.bonfire-title{white-space:normal;font-size:clamp(1.35rem,7vw,1.85rem)}.bonfire-content{top:16%;right:12%;bottom:24%;left:12%;padding:0 .35rem}.bonfire-content>p:not([class]){font-size:.72rem;line-height:1.45}.countdown{display:grid;grid-template-columns:1fr 1fr;justify-content:center;gap:1.25rem .75rem;max-width:20rem;margin-left:auto;margin-right:auto;flex-wrap:nowrap}.countdown-unit{min-width:0}.countdown-number{font-size:clamp(2.5rem,14vw,3.25rem)}.countdown-label{margin-top:.6rem;font-size:.7rem}.form-row{grid-template-columns:1fr;gap:1.25rem}.form-group input,.form-group select,.form-group textarea{font-size:1rem;width:100%}.rsvp-submit,.registry-link{width:100%;align-self:stretch}.registry-links{flex-direction:column;align-items:stretch}.celebration-invite-face{padding:1.5rem 1rem}.footer{padding:2.25rem 1rem}}@media(max-width:768px)and (max-height:750px){.section--welcome{min-height:0;justify-content:flex-start}.welcome-photo-wrap{max-width:min(17.5rem,100%)}}@media(max-width:480px){.welcome-invite-names{font-size:clamp(2.15rem,11.6vw,2.8rem)}.things-places{gap:2.5rem}.music-toggle{bottom:max(1rem,env(safe-area-inset-bottom));left:max(1rem,env(safe-area-inset-left))}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav-menu{animation:none}}
