@font-face{font-family:Montserrat;src:url(/assets/Montserrat-VariableFont_wght-DcaoeaBt.ttf) format("truetype");font-weight:100 900;font-style:normal}@font-face{font-family:Parisienne;src:url(/assets/Parisienne-Regular-CLiIU8io.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Dancing Script;src:url(/assets/DancingScript-VariableFont_wght-BICNqX1Z.ttf) format("truetype");font-weight:100 900;font-style:normal}@font-face{font-family:Herr Von Muellerhoff;src:url(/assets/HerrVonMuellerhoff-Regular-BCGrFrAm.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:The Seasons;src:url(/assets/Fontspring-DEMO-theseasons-lt-Dy6XHwmn.otf) format("opentype");font-weight:300;font-style:normal}@font-face{font-family:The Seasons;src:url(/assets/Fontspring-DEMO-theseasons-reg-BqwY7LWg.otf) format("opentype");font-weight:400;font-style:normal}@font-face{font-family:The Seasons;src:url(/assets/Fontspring-DEMO-theseasons-bd-Bp63wc9w.otf) format("opentype");font-weight:700;font-style:normal}@font-face{font-family:Pinyon Script;src:url(/assets/PinyonScript-Regular-D0mG6oOT.ttf) format("truetype");font-weight:400;font-style:normal}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.symbol-fallback{font-family:Baskerville,EB Garamond,Georgia,serif;font-weight:500}.home-container{scroll-snap-type:y mandatory;height:100vh}.home-section{scroll-snap-align:start;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 2rem}.title-section{background-image:url(/assets/bw-laugh-lift-Bfybqlz3.JPG);background-size:cover;background-position:center;align-items:center;justify-content:center;position:relative;padding:4rem}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#00325673,#00325699);z-index:0}.title-content{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.25rem}.title-eyebrow{font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:#ffffffbf;margin:0 0 1.5rem}.title-name{font-size:5rem;font-family:The Seasons,serif;font-weight:400;color:#fff;margin:0;line-height:.95;letter-spacing:.12em}.title-and{font-size:4rem;font-family:Pinyon Script,cursive;font-weight:400;color:#ffffffd9;margin:.25rem 0;line-height:1}.title-divider{width:60px;height:1px;background:#ffffff80;margin:1.25rem auto 1rem}.title-subtitle{font-size:1.2rem;font-family:Montserrat,sans-serif;color:#ffffffbf;font-weight:400;letter-spacing:.3em;text-transform:uppercase;margin:0}.photo-text-section{background:linear-gradient(180deg,#ffffffbf,#ffffffbf),linear-gradient(120deg,#65b8d414,#6c8b190d);padding:5.5rem 3rem;height:auto;min-height:100vh}.photo-text-container{display:flex;align-items:center;justify-content:center;max-width:1140px;width:100%;margin-inline:auto}.text-side{width:60%;max-width:1000px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.text-label{align-self:center;font-family:Montserrat,sans-serif;font-size:.66rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:#4f6675;display:inline-block;padding:0 0 .75rem;border-radius:0;background:transparent;border-bottom:1px solid rgba(0,50,86,.22);margin-bottom:.55rem}.text-side .photo-title{font-size:clamp(3rem,5.4vw,4.2rem);font-family:The Seasons,serif;font-weight:400;color:#003256;margin:0;line-height:1.02;letter-spacing:.015em}.photo-intro{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#65b8d4;margin:0}.events-date{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#65b8d4;margin:.5rem 0 0}.events-container{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;width:100%;margin-top:1.5rem;margin-bottom:1rem}.events-timeline{display:flex;flex-direction:column;gap:1.5rem;width:100%;margin-bottom:.5rem;align-items:center}.timeline-event{display:flex;gap:1.5rem;padding:0;background:transparent;border-left:none;border-radius:0;text-align:left;width:100%;max-width:600px}.timeline-time{flex-shrink:0;font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#6c8b19;padding-top:0;min-width:110px}.timeline-event-content{flex:1}.timeline-event-title{font-family:The Seasons,serif;font-size:1.3rem;font-weight:400;color:#6c8b19;margin:0 0 .3rem;letter-spacing:.05em;display:flex;justify-content:center}.timeline-event-location{font-family:Montserrat,sans-serif;font-size:1rem;color:#003256;line-height:1.4;margin:.4rem 0 0;font-weight:400;display:flex;justify-content:center;text-align:center}.timeline-event-address{font-family:Montserrat,sans-serif;font-size:.8rem;color:#6b7280;line-height:1.5;margin:0;display:flex;justify-content:center;text-align:center}.event-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:.85rem;width:100%;margin-top:.3rem}.event-detail{padding:.9rem .8rem}.event-detail-label{display:block;font-family:Montserrat,sans-serif;font-size:.64rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#65b8d4;margin-bottom:.35rem}.event-detail-value{font-family:Montserrat,sans-serif;font-size:.88rem;color:#003256;line-height:1.45;margin:0}.event-actions{display:flex;justify-content:center;gap:.7rem;width:100%;margin-top:.35rem}.event-action-link{display:inline-flex;align-items:center;justify-content:center;min-width:140px;padding:.75rem 1.4rem;border-radius:4px;border:none;text-decoration:none;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#fff;background:#003256;white-space:nowrap;transition:background .3s ease}.event-action-link:hover{background:#6c8b19}.event-action-link-primary{background:#003256;border-color:#003256;color:#fff}.event-action-link-primary:hover{background:#01406b;border-color:#01406b}.more-section{position:relative;justify-content:flex-start;padding-top:5rem;padding-bottom:2rem;background-image:linear-gradient(180deg,#003256d1,#003256e0),url(/assets/lemans-7BCl-BLq.JPG);background-size:cover;background-position:center 78%;background-repeat:no-repeat;height:75vh}.more-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 16% 22%,rgba(101,184,212,.14),transparent 42%);pointer-events:none}.more-section>*{position:relative;z-index:1}.more-section-title{font-size:.8rem;font-family:Montserrat,sans-serif;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:#ffffff80;margin:3rem}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:860px;width:100%}.card{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);padding:2.5rem 2rem;border-radius:4px;text-align:left;text-decoration:none;color:inherit;transition:background .3s ease,border-color .3s ease;display:flex;flex-direction:column;gap:.5rem;position:relative;overflow:hidden}.card-accent{display:block;width:30px;height:2px;background:#6c8b19;margin-bottom:1rem;transition:width .3s ease}.card:hover{background:#ffffff14;border-color:#6c8b1966}.card:hover .card-accent{width:50px}.card-icon{font-size:3rem;margin-bottom:1rem}.card-title{font-size:1.3rem;font-family:The Seasons,serif;font-weight:400;color:#fff;margin:0}.card:hover .card-title{color:#fff}.card-description{font-family:Montserrat,sans-serif;font-size:.9rem;color:#ffffff80;margin:0}.card-arrow{font-size:1.4rem;color:#6c8b19;transition:transform .3s ease}.card:hover .card-arrow{transform:translate(4px)}.home-footer-note{font-family:Montserrat,sans-serif;font-size:.68rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#ffffff4d;margin:auto 0 0}@media(max-width:768px){.home-container{scroll-snap-type:none;height:auto}.home-section{height:auto;min-height:auto;padding:1.5rem 1rem}.title-section{min-height:100vh;height:100vh;padding:0 2rem;justify-content:center}.title-section{background-position:72% 100%}.more-section{background-size:auto 120%;background-position-x:53%;background-position-y:100%}.title-name{font-size:4rem}.title-eyebrow{font-size:.75rem}.photo-text-container{max-width:100%}.text-side{text-align:center;width:100%;max-width:100%;padding:1.6rem 1rem;gap:.95rem}.text-label{align-self:center}.text-side .photo-title{font-size:2.7rem}.events-timeline{gap:1.5rem;margin-top:1.5rem}.timeline-event{flex-direction:column;gap:.75rem}.timeline-time{min-width:auto}.event-actions{flex-direction:column;align-items:center}.event-action-link{width:100%;max-width:280px}.cards-grid{grid-template-columns:1fr;margin-bottom:1.5rem}}@media(min-width:769px)and (max-width:1024px){.photo-text-section{padding:3rem 2rem;min-height:auto}.photo-text-container{padding:0 1rem;max-width:900px}.text-side{width:80%;max-width:820px;padding:1rem}.text-side .photo-title{font-size:clamp(2.6rem,5.6vw,3.6rem)}.title-section{padding:2.5rem 1.5rem}.more-section{height:auto;padding-top:2rem;padding-bottom:1.5rem;background-position:center 78%;background-size:cover;min-height:50vh}.cards-grid{grid-template-columns:1fr;gap:1rem;align-items:start;max-width:720px;margin:0 auto}.card{padding:1.8rem 1.2rem;width:100%;max-width:640px;margin:0 auto}}.registry-page{min-height:auto;background:linear-gradient(180deg,#fafafa,#f5f7f9)}.registry-page .page-hero-and{font-family:Montserrat,sans-serif;font-size:.7em;font-weight:500;letter-spacing:0;vertical-align:middle}.registry-content{max-width:900px;margin:0 auto;padding:2.2rem 2rem 3.25rem}.registry-intro{font-family:Montserrat,sans-serif;font-size:1rem;color:#6b7280;text-align:center;margin-bottom:2rem;line-height:1.7}.registry-feature-card{background:#fff;border:1px solid rgba(0,50,86,.08);border-radius:18px;padding:2rem;box-shadow:0 10px 30px #0032560f;margin-bottom:1.5rem}.registry-feature-badge{display:inline-block;padding:.35rem .7rem;border-radius:999px;background:#f2f8eb;color:#6c8b19;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.8rem}.registry-feature-title{font-family:The Seasons,serif;font-size:1.7rem;font-weight:400;color:#003256;margin:0 0 .5rem}.registry-feature-copy{font-family:Montserrat,sans-serif;font-size:.95rem;line-height:1.7;color:#4b5563;margin:0 0 1rem}.registry-feature-link{display:inline-flex;align-items:center;gap:.45rem;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:600;color:#003256;text-decoration:none}.registry-feature-link:hover{color:#6c8b19}.registry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.registry-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.35rem;background:#fff;border:1px solid rgba(0,50,86,.08);border-radius:16px;text-decoration:none;box-shadow:0 6px 20px #0032560a;transition:transform .2s ease,box-shadow .2s ease}.registry-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #00325614}.registry-card-title{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;font-family:The Seasons,serif;font-size:1.2rem;font-weight:400;color:#003256;margin:0 0 .3rem}.registry-card-title-amp{display:inline-block;font-family:Montserrat,Arial,sans-serif;font-weight:500;line-height:1;font-size:16px}.registry-card-description{font-family:Montserrat,sans-serif;font-size:.86rem;color:#6b7280;line-height:1.5;margin:0}.registry-arrow{font-size:1.3rem;color:#6c8b19;transition:transform .2s ease}.registry-card:hover .registry-arrow{transform:translate(3px)}@media(max-width:768px){.page-hero-title{font-size:2.5rem}.registry-content{padding:1.2rem 1rem .8rem}.registry-feature-card{padding:1.35rem}.registry-grid{grid-template-columns:1fr}}.photos-page{min-height:100vh;background-color:#fafafa}.photos-content{max-width:1000px;margin:0 auto;padding:3rem 2rem}.story-paragraphs{max-width:640px;margin:0 auto 3.5rem;display:flex;flex-direction:column;gap:1.25rem;text-align:center}.story-text{font-family:Montserrat,sans-serif;font-size:1rem;color:#6b7280;max-width:600px;margin:0 auto;line-height:1.7}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.photo-card{background:#0032560d;border-radius:0 0 8px 8px;overflow:hidden;box-shadow:0 2px 8px #00325614}.photo-image-wrap{aspect-ratio:1;overflow:hidden}.story-photo{width:100%;height:100%;object-fit:cover;display:block}.story-photo.lemans-pose,.story-photo.greenwalk{transform:scale(1.1) translateY(-67px);overflow:visible}.story-photo.walking{transform:scale(1.4) translate(-8px,-10px);overflow:visible}.story-photo.bridge{transform:scale(1) translate(2px,36px);overflow:visible}.story-photo.armhold{transform:scale(1.2) translate(2px,-24px);overflow:visible}.photo-caption{margin:0;padding:.7rem .8rem .8rem;text-align:center;font-family:Montserrat,sans-serif;font-size:.82rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;line-height:1.35;color:#003256;background:linear-gradient(180deg,#fffffff5,#fafafaf5)}@media(max-width:768px){.page-hero-title{font-size:2.5rem}.photos-content{padding:2rem 1rem}.photo-grid{grid-template-columns:repeat(2,1fr)}}.bridal-party-page{--party-card-width: 250px;min-height:100vh;background-color:#fafafa;align-items:center}.page-content{max-width:900px;width:100%;margin:0 auto;padding:0rem 2rem 2rem}.party-section{margin-bottom:.5rem}.bridal-party-page .section-eyebrow{font-family:Montserrat,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:#65b8d4;display:block;margin-bottom:.5rem;text-align:center}.bridal-party-page .section-title{font-family:The Seasons,serif;font-size:2rem;font-weight:400;color:#003256;margin:0 0 1.5rem;text-align:center}.paired-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.party-grid{display:grid;grid-template-columns:repeat(auto-fit,var(--party-card-width));justify-content:center;gap:1.5rem}.party-grid-three{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:1.5rem;width:100%}.party-grid-three .party-member{flex:0 0 var(--party-card-width);max-width:var(--party-card-width)}.party-grid-three .party-member:nth-last-child(2):nth-child(3n+1){margin-left:calc((var(--party-card-width) + 1.5rem) / 2)}.party-grid-two{display:grid;grid-template-columns:repeat(2,var(--party-card-width));justify-content:center;gap:1.5rem;width:100%}.party-grid-two .party-member{flex:0 0 var(--party-card-width);max-width:var(--party-card-width)}.party-grid-single{grid-template-columns:250px;justify-content:center}.party-grid-single .party-member{width:250px;max-width:250px}.party-member{width:var(--party-card-width);background:#fff;border-top:2px solid #6c8b19;border-radius:0 0 8px 8px;padding:1.75rem;text-align:center;box-shadow:0 2px 8px #0032560f;transition:transform .3s ease}.party-member:hover{transform:translateY(-4px);box-shadow:0 6px 20px #0032561a}.member-avatar{width:10rem;height:10rem;background:#0032560d;border-radius:50%;margin:0 auto .75rem;overflow:hidden}.member-avatar img{width:100%;height:100%;object-fit:cover;display:block}.caitlyn-holman .member-avatar img{transform:scale(3.5) translate(3px,16px)}.megan-holman .member-avatar img{transform:scale(2.46) translate(27px,15px)}.shannon-kosch .member-avatar img{transform:scale(2.2) translate(-28px,35px)}.emily-cripe .member-avatar img{transform:scale(2.1) translate(-35px,6px)}.samantha-ray .member-avatar img{transform:scale(2.35) translate(-46px,36px)}.claire-schutta .member-avatar img{transform:scale(1.35) translate(-22px,20px)}.anna-zappa .member-avatar img{transform:scale(1.75) translate(24px,33px)}.kelsey-kavanagh .member-avatar img{transform:scale(2.65) translate(-22px,18px)}.tyler-gillespie .member-avatar img{transform:scale(1.52) translate(25px,10px)}.patrick-holman .member-avatar img{transform:scale(2) translate(-31px,14px)}.danny-freitag .member-avatar img{transform:scale(1.7) translate(30px,8px)}.joseph-roscetti .member-avatar img{transform:scale(2.75) translate(52px,-5px) rotate(-29deg)}.michael-mullan .member-avatar img{transform:scale(4.5) translate(10px,-9px)}.christopher-prattos .member-avatar img{transform:scale(1.7) translate(11px,30px)}.austin-straley .member-avatar img{transform:scale(5.5) translate(48px,16px)}.dan-broderick .member-avatar img{transform:scale(2.75) translate(-4px,20px)}.griffin-holman .member-avatar img{object-fit:contain;transform:scale(3.5) translate(-12px,20px)}.billy-jacoby .member-avatar img{transform:scale(2.25) translate(-8px,-20px) rotate(18deg)}.joe-alberts .member-avatar img{transform:scale(2.5) translate(15px,-26px) rotate(-29deg)}.ryan-morgan .member-avatar img{transform:scale(2.75) translate(-14px,-21px)}.member-name{font-family:The Seasons,serif;font-size:1.1rem;font-weight:400;color:#003256;margin:0 0 .25rem}.member-role{font-family:Montserrat,sans-serif;font-size:.8rem;color:#6b7280;letter-spacing:.05em}@media(max-width:768px){.bridal-party-page{--party-card-width: min(280px, 100%)}.bridal-party-page .section-eyebrow,.bridal-party-page .section-title{text-align:center}.page-hero-title{font-size:2.5rem}.paired-grid{grid-template-columns:1fr}.party-grid,.party-grid-two{grid-template-columns:1fr;justify-items:center}.party-grid-three{display:grid;grid-template-columns:1fr;justify-items:center;gap:1.5rem}.party-grid-three .party-member:nth-last-child(2):nth-child(3n+1){margin-left:0}.party-grid-single{grid-template-columns:1fr;justify-content:center;justify-items:center}.party-grid-three .party-member,.party-grid-two .party-member,.party-grid-single .party-member,.party-member{width:min(100%,280px);max-width:min(100%,280px);box-sizing:border-box}}.faqs-container{min-height:100vh;background-color:#fafafa}.faqs-content{max-width:800px;margin:0 auto;padding:3rem 2rem}.faq-item{background-color:#fff;border-left:3px solid #6c8b19;padding:1.75rem 2rem;margin-bottom:1rem;border-radius:0 8px 8px 0;box-shadow:0 2px 8px #0032560d;transition:transform .3s ease}.faq-item:hover{transform:translate(4px);box-shadow:0 4px 16px #00325614}.faq-question{font-family:The Seasons,serif;font-size:1.2rem;font-weight:400;color:#003256;margin:0 0 .75rem}.faq-answer{font-family:Montserrat,sans-serif;font-size:.95rem;color:#6b7280;line-height:1.7;margin:0}.faq-inline-link{display:inline-flex;align-items:center;gap:.25rem;padding:0;border:none;border-radius:0;background:transparent;color:#003256;font-weight:600;text-decoration:none;transition:all .2s ease}.faq-inline-link:hover{color:#6c8b19}.faq-inline-link:after{content:"→";font-size:1.25rem;line-height:1;transition:transform .2s ease}.faq-inline-link:hover:after{transform:translate(2px)}@media(max-width:768px){.page-hero-title{font-size:2.5rem}.faqs-content{padding:2rem 1rem}.faq-item{padding:1.25rem}}.attire-container{min-height:100vh;background-color:#fafafa}.page-hero-subtitle{font-family:Montserrat,sans-serif;font-size:.9rem;color:#ffffff8c;margin:1rem 0 0;letter-spacing:.15em;text-transform:uppercase}.attire-content{max-width:800px;margin:0 auto;padding:3rem 2rem 0}.attire-section{background-color:#fff;border-top:2px solid #6c8b19;padding:2rem;margin-bottom:1.5rem;border-radius:0 0 8px 8px;box-shadow:0 2px 8px #0032560d}.attire-priority-card{border-top-width:3px;box-shadow:0 4px 18px #00325617}.section-heading{font-family:The Seasons,serif;font-size:1.5rem;font-weight:400;color:#003256;margin:0 0 1rem}.section-description{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:#65b8d4;margin:0 0 1rem}.section-text{font-family:Montserrat,sans-serif;font-size:.95rem;color:#6b7280;line-height:1.7;margin:0}.attire-key-points{margin:1rem 0 0;padding:0;list-style:none}.attire-key-points li{font-family:Montserrat,sans-serif;font-size:.92rem;color:#4b5563;line-height:1.55;padding:.25rem 0 .25rem 1.2rem;position:relative}.attire-key-points li:before{content:"•";position:absolute;left:0;top:50%;transform:translateY(-50%);color:#6c8b19;font-size:1rem}.attire-list{list-style:none;padding:0;margin:0}.attire-list li{font-family:Montserrat,sans-serif;font-size:.95rem;color:#6b7280;padding:.3rem 0 .3rem 1.2rem;position:relative;line-height:1.6;border-bottom:1px solid rgba(0,50,86,.05)}.attire-list li:last-child{border-bottom:none}.attire-list li:before{content:"•";position:absolute;left:0;top:50%;transform:translateY(-50%);color:#65b8d4;font-size:1rem;line-height:1}.attire-guidelines-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:flex-start;max-width:1200px;margin:0 auto;padding:3rem 2rem}.attire-guidelines-wrapper .attire-content{padding:0;max-width:100%;margin:0}.attire-inspo-image-container{background-color:#fff;border-top:2px solid #6c8b19;overflow:hidden;border-radius:0 0 8px 8px;box-shadow:0 2px 8px #0032560d;height:fit-content}.attire-inspo-image{width:100%;height:auto;display:block;object-fit:cover;object-position:center 30%}@media(max-width:768px){.page-hero-title{font-size:2.5rem}.attire-content{padding:2rem 1rem}.attire-section{padding:1.5rem}.attire-guidelines-wrapper{grid-template-columns:1fr;gap:1.5rem;padding:2rem 1rem}}.itinerary-container{min-height:100vh;background-color:#fafafa}.itinerary-content{max-width:800px;margin:0 auto;padding:0 2rem}.timeline{position:relative}.timeline-day-label{position:relative;z-index:2;font-family:The Seasons,serif;font-size:2.2rem;color:#65b8d4;text-align:center;margin:1.5rem 0;letter-spacing:.04em;font-weight:700;text-transform:uppercase}.time-notice{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#65b8d4;margin-top:2rem;text-align:center}.timeline-day-week,.timeline-day-date{display:block}.timeline-day-week{font-size:.62em;letter-spacing:.2em;margin-bottom:.2rem}.timeline-day-date{font-size:1em}.timeline-day-label:before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:2.5em;height:2.5em;background:#fafafa;z-index:-1;border-radius:1.25em}.timeline:before{content:"";position:absolute;left:50%;transform:translate(-50%);width:1px;background:#00325626;top:5.5rem;height:calc(100% - 5.5rem)}.timeline-item{margin-bottom:2.5rem;position:relative;width:50%}.timeline-item.left{margin-left:0;margin-right:auto;padding-right:3rem;text-align:right}.timeline-item.right{margin-left:auto;margin-right:0;padding-left:3rem;text-align:left}.timeline-time{position:absolute;top:.25rem;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.1em;color:#6c8b19;text-transform:uppercase;white-space:nowrap}.timeline-item.left .timeline-time{right:0;transform:translate(calc(100% + 1rem));text-align:left}.timeline-item.right .timeline-time{left:0;transform:translate(calc(-100% - 1rem));text-align:right}.timeline-content{background:#fff;border-top:2px solid #6c8b19;padding:1.25rem 1.5rem;border-radius:0 0 8px 8px;box-shadow:0 2px 8px #0032560f}.timeline-content h3{font-family:The Seasons,serif;font-size:1.1rem;font-weight:400;color:#003256;margin:0 0 .4rem}.timeline-content p{font-family:Montserrat,sans-serif;font-size:.88rem;color:#6b7280;margin:0;line-height:1.6}.timeline-description{margin:0}.timeline-detail{margin-top:.75rem!important;padding-top:.6rem;border-top:1px solid rgba(0,50,86,.1);font-size:.84rem!important;line-height:1.45!important}.timeline-detail strong{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#003256}.timeline-item:before{content:"";position:absolute;width:10px;height:10px;background:#6c8b19;border-radius:50%;top:8px}.timeline-item.left:before{right:0;transform:translate(50%)}.timeline-item.right:before{left:0;transform:translate(-50%)}@media(max-width:768px){.page-hero-title{font-size:2.5rem}.timeline-day-label{font-size:1.75rem}.timeline:before{left:16px}.timeline-item,.timeline-item:nth-child(odd),.timeline-item:nth-child(2n){width:100%;padding-left:48px;padding-right:0;margin-left:0;margin-right:0;text-align:left}.timeline-item:before,.timeline-item:nth-child(odd):before,.timeline-item:nth-child(2n):before{left:16px;right:auto;transform:translate(-50%)}.timeline-item:nth-child(odd) .timeline-time,.timeline-item:nth-child(2n) .timeline-time{position:static;transform:none;display:block;margin-bottom:.4rem;text-align:left}}.hotel-travel-container{min-height:100vh;background-color:#fafafa}.page-hero-title{font-family:The Seasons,serif;font-size:4rem;font-weight:400;color:#fff;margin:0 0 1rem;letter-spacing:.05em}.hotel-travel-container .page-hero-and{font-family:Montserrat,sans-serif;font-size:.7em;letter-spacing:0;vertical-align:unset;margin:0}.hotel-travel-content{max-width:900px;margin:0 auto;padding:1rem 2rem}.hotel-section,.travel-section{margin-bottom:.5rem}.section-eyebrow{font-family:Montserrat,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:#65b8d4;display:block;margin:2.5rem 0 .5rem;text-align:left;width:100%}.hotel-intro{font-family:Montserrat,sans-serif;font-size:1rem;color:#6b7280;line-height:1.7;margin:0 0 2rem}.hotel-list{display:grid;gap:1.5rem}.hotel-card{background-color:#fff;border-left:3px solid #6c8b19;padding:2rem;border-radius:0 8px 8px 0;box-shadow:0 2px 12px #0032560f;transition:transform .3s ease,box-shadow .3s ease}.hotel-card:hover{transform:translate(4px);box-shadow:0 4px 20px #0032561a}.hotel-name{font-family:The Seasons,serif;font-size:1.5rem;font-weight:400;color:#003256;margin:0 0 .75rem}.hotel-book-link{display:inline-flex;align-items:center;gap:.4rem;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#65b8d4;text-decoration:none;margin-bottom:1.25rem;transition:color .2s}.hotel-book-link:hover{color:#003256}.hotel-book-link:after{content:" →";font-size:1.4rem;margin-bottom:5px;transition:transform .3s ease;display:inline-block}.hotel-info{font-family:Montserrat,sans-serif;font-size:.9rem;color:#003256;line-height:1.8;margin:0 0 1rem}.hotel-description{font-family:Montserrat,sans-serif;font-size:.9rem;color:#6b7280;line-height:1.6;margin:0;font-style:italic}.travel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.travel-info{background-color:#fff;padding:1.75rem;border-radius:8px;border-top:2px solid #6c8b19;box-shadow:0 2px 8px #0032560f;transition:transform .3s ease}.travel-info:hover{transform:translateY(-3px)}.travel-info h3{font-family:The Seasons,serif;font-size:1.2rem;font-weight:400;color:#003256;margin:0 0 .75rem}.travel-info p{font-family:Montserrat,sans-serif;font-size:.9rem;color:#6b7280;line-height:1.6;margin:0}@media(max-width:768px){.page-hero-title{font-size:2.5rem}.hotel-travel-content{padding:1rem 2rem}.section-heading{font-size:1.6rem}.hotel-card{padding:1.5rem}.travel-grid{grid-template-columns:1fr}.section-eyebrow{text-align:left}}.things-to-do-container{min-height:100vh;background-color:#fafafa}.page-eyebrow{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:#65b8d4;margin:.35rem 0 1.25rem;display:block}.page-hero-apostrophe{font-family:Montserrat,sans-serif;letter-spacing:0;vertical-align:middle}.things-to-do-content{max-width:1000px;margin:0 auto;padding:0rem 2rem 2rem}.activities-section,.dining-section{margin-bottom:.5rem}.section-eyebrow{font-family:Montserrat,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:#65b8d4;display:block;margin-bottom:.5rem;text-align:left;width:100%}.section-heading{font-family:The Seasons,serif;font-size:2rem;font-weight:400;color:#003256;margin:0 0 1.5rem}.activities-grid,.restaurants-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.activity-card,.restaurant-card{background-color:#fff;border-top:2px solid #6c8b19;padding:1.5rem;border-radius:0 0 8px 8px;box-shadow:0 2px 8px #0032560f;transition:transform .3s ease;display:flex;flex-direction:column}.activity-card:hover,.restaurant-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px #0032561a}.activity-name,.restaurant-name{font-family:The Seasons,serif;font-size:1.15rem;font-weight:400;color:#003256;margin:0 0 .35rem}.activity-name:after,.restaurant-name:after{content:"";margin-left:0;font-size:0}.card-links{margin-top:auto;padding-top:1rem;display:flex;gap:.6rem;flex-wrap:wrap}.card-link{display:inline-flex;align-items:center;justify-content:center;padding:.4rem .7rem;border:1px solid rgba(0,50,86,.18);border-radius:999px;font-family:Montserrat,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:#003256;transition:all .2s ease}.card-link:hover{border-color:#6c8b19;color:#6c8b19}.card-link:after{content:" →";margin-left:.4rem;font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:700;line-height:1;color:inherit}.activity-location,.restaurant-cuisine{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#65b8d4;margin:0 0 .75rem}.activity-description,.restaurant-info{font-family:Montserrat,sans-serif;font-size:.9rem;color:#6b7280;line-height:1.6;margin:0}@media(max-width:768px){.page-hero-title{font-size:2.5rem}.things-to-do-content{padding:2rem 1rem}.activities-grid,.restaurants-grid{grid-template-columns:1fr}.section-eyebrow{text-align:left}}.rsvp-container{min-height:auto;background-color:#fafafa;display:flex;flex-direction:column}.page-hero{background:#003256;padding:5rem 2rem 4rem;text-align:center}.page-eyebrow{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:#65b8d4;margin:0 0 1rem;display:block}.amp-symbol{font-family:Baskerville,EB Garamond,Georgia,serif;font-style:italic;font-weight:400;font-size:1.15em;letter-spacing:.02em;display:inline-block}.page-hero-title{font-family:The Seasons,serif;font-size:4rem;font-weight:400;color:#fff;margin:0;letter-spacing:.05em}.page-hero-divider{width:50px;height:1px;background:#65b8d480;margin:1.25rem auto 0}.rsvp-content{max-width:600px;margin:0 auto;padding:2.2rem 2rem 3.25rem}.rsvp-intro{font-family:Montserrat,sans-serif;font-size:1rem;color:#6b7280;text-align:center;margin-bottom:1.8rem;line-height:1.7}.rsvp-lookup,.rsvp-form{background-color:#fff;border-top:2px solid #6c8b19;padding:2rem;border-radius:0 0 8px 8px;box-shadow:0 2px 12px #0032560f}.lookup-error{font-family:Montserrat,sans-serif;color:#b00020;font-size:.9rem;margin:0 0 1rem}.success-message{background-color:#0032560a;border:1px solid rgba(0,50,86,.15);border-top:2px solid #6c8b19;border-radius:0 0 8px 8px;padding:2.5rem;text-align:center;animation:slideIn .3s ease}.success-message p{font-family:Montserrat,sans-serif;color:#6b7280;margin:0}.invite-summary{border:1px solid rgba(0,50,86,.08);background-color:#00325605;border-radius:6px;padding:1rem 1.25rem;margin-bottom:1.5rem}.invite-summary p+p{margin-top:.3rem}.guest-entry-card{border:1px solid rgba(0,50,86,.08);background-color:#00325605;border-radius:6px;padding:1rem 1.25rem;margin-bottom:1rem}.guest-entry-group{margin-bottom:.5rem}.guest-preview{font-family:Montserrat,sans-serif;font-size:.9rem;color:#6b7280;margin:0}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#003256;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;font-family:Montserrat,sans-serif;font-size:.95rem;color:#003256;border:1px solid rgba(0,50,86,.15);border-radius:4px;box-sizing:border-box;background:#fafafa;transition:border-color .3s ease,box-shadow .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#6c8b19;box-shadow:0 0 0 3px #65b8d426;background:#fff}.form-group textarea{resize:vertical}.radio-group,.event-rsvp-list{display:flex;flex-direction:column;gap:.8rem}.event-rsvp-item{border:1px solid rgba(0,50,86,.08);border-radius:6px;padding:.8rem 1rem;background:#fafafa}.event-name{margin:0 0 .6rem;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#003256}.radio-inline{flex-direction:row;gap:1.2rem}.radio-label{display:flex;align-items:center;font-family:Montserrat,sans-serif;font-size:.9rem;color:#6b7280;cursor:pointer}.radio-label input{width:auto;margin-right:.6rem;cursor:pointer;accent-color:#6c8b19}.submit-button{width:100%;padding:.9rem;background:#003256;color:#fff;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;border:none;border-radius:4px;cursor:pointer;transition:background .3s ease;margin-top:1rem}.submit-button:hover{background:#6c8b19}@media(max-width:768px){.page-hero-title{font-size:2.5rem}.rsvp-content{padding:1.2rem 1rem .8rem}.search-input-row{flex-direction:column;align-items:stretch}.search-button{width:100%;text-align:center}}.search-input-row{display:flex;gap:.6rem}.search-input-row input{flex:1}.search-button{padding:.75rem 1.4rem;background:#003256;color:#fff;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;border:none;border-radius:4px;cursor:pointer;white-space:nowrap;transition:background .3s ease;flex-shrink:0}.search-button:hover:not(:disabled){background:#6c8b19}.search-button:disabled{opacity:.5;cursor:default}.search-loading{margin-top:.9rem;display:inline-flex;align-items:center;gap:.55rem;font-family:Montserrat,sans-serif;font-size:.8rem;color:#003256}.loading-spinner{width:14px;height:14px;border:2px solid rgba(0,50,86,.2);border-top-color:#003256;border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-results{margin-top:1.25rem;display:flex;flex-direction:column;gap:.5rem}.search-results-label{font-family:Montserrat,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#003256;margin:0 0 .25rem}.result-card{display:flex;align-items:center;gap:.75rem;width:100%;padding:.9rem 1rem;background:#fafafa;border:1px solid rgba(0,50,86,.12);border-radius:4px;cursor:pointer;text-align:left;transition:border-color .2s ease,background .2s ease;flex-wrap:wrap}.result-card:hover{border-color:#6c8b19;background:#fff}.result-name{font-family:The Seasons,serif;font-size:1.15rem;color:#003256}.result-guest{font-family:Montserrat,sans-serif;font-size:.82rem;color:#65b8d4;font-weight:500}.result-badge{margin-left:auto;font-family:Montserrat,sans-serif;font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#6c8b19;border:1px solid #6c8b19;border-radius:20px;padding:.2rem .6rem}.result-more-button{margin-top:.35rem;padding:.65rem .9rem;border:1px solid rgba(0,50,86,.2);border-radius:4px;background:#fff;color:#003256;font-family:Montserrat,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.result-more-button:hover{border-color:#6c8b19;color:#6c8b19}.event-section{border:1px solid rgba(0,50,86,.08);border-radius:6px;padding:1.25rem 1.25rem 1rem;background:#fafafa;margin-bottom:1rem}.event-section-header{margin-bottom:1rem}.event-section-meta{display:grid;gap:.2rem}.event-section-title{font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#003256;margin:0 0 .25rem}.event-section-desc{font-family:Montserrat,sans-serif;font-size:.82rem;color:#6b7280;margin:0}.event-section-desc strong{color:#003256;font-weight:600}.event-attendees{display:flex;flex-direction:column;gap:.6rem}.attendee-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.attendee-name{font-family:Montserrat,sans-serif;font-size:.88rem;color:#374151;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.yes-no-group{display:flex;gap:.4rem;flex-shrink:0}.yes-no-group input[type=radio]{position:absolute;opacity:0;width:0;height:0}.yn-option{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:.35rem .85rem;font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.08em;color:#6b7280;border:1px solid rgba(0,50,86,.18);border-radius:4px;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.yn-option:hover{border-color:#003256;color:#003256}.yn-selected{background:#003256;border-color:#003256;color:#fff}.meal-group{margin-bottom:.75rem}.meal-group:last-child{margin-bottom:0}.meal-selections,.allergies-section{display:flex;flex-direction:column;gap:.8rem}.invite-summary{border:1px solid rgba(0,50,86,.08);background-color:#00325605;border-radius:6px;padding:1rem 1.25rem;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.invite-summary p{font-family:Montserrat,sans-serif;font-size:.9rem;color:#003256;margin:0}.change-name-btn{background:none;border:none;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#65b8d4;cursor:pointer;padding:0;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}.change-name-btn:hover{color:#003256}.form-group label.checkbox-label{display:flex;align-items:center;gap:1rem;text-transform:none;letter-spacing:normal;font-size:.9rem;font-weight:500;margin-bottom:.8rem}.form-group label.checkbox-label input[type=checkbox]{width:auto;margin:0;accent-color:#003256;flex-shrink:0}.checkbox-label-text{display:inline-block;margin-left:.1rem;line-height:1.35}.success-message{background-color:#0032560a;border:1px solid rgba(0,50,86,.15);border-top:2px solid #6c8b19;border-radius:0 0 8px 8px;padding:3rem 2.5rem;text-align:center;animation:slideIn .3s ease}.success-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin:0 auto 1.25rem;border-radius:50%;background:#6c8b19;color:#fff;font-size:1.4rem}.success-icon svg{width:26px;height:26px}.success-icon svg path{fill:none;stroke:#fff;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}.success-icon-fallback{display:none;font-family:Montserrat,sans-serif;font-size:1.2rem;line-height:1}.success-message h2{font-family:The Seasons,serif;font-weight:400;color:#003256;margin:0 0 .75rem;font-size:2rem}.success-message p{font-family:Montserrat,sans-serif;color:#6b7280;margin:0;font-size:.95rem;line-height:1.6}.success-message-character{font-family:Montserrat,sans-serif}@keyframes slideIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.attendee-row{flex-wrap:wrap}.result-badge{margin-left:0}.invite-summary{flex-direction:column;align-items:flex-start}}.navbar{background-color:#003256;border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;z-index:100}.navbar-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;height:70px}.navbar-logo{font-size:1.8rem;font-weight:400;color:#fff;text-decoration:none;font-family:The Seasons,serif;letter-spacing:2px;margin-right:1rem}.navbar-logo:hover{color:#65b8d4}.page-hero-and{font-family:Montserrat,sans-serif;font-size:.7em;letter-spacing:0;margin:0 .2rem;vertical-align:middle}.hamburger{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:0;gap:6px}.hamburger-line{width:25px;height:3px;background-color:#fff;border-radius:2px;transition:all .3s ease;display:block}.hamburger-line.open:nth-child(1){transform:rotate(45deg) translate(10px,10px)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.nav-menu{display:flex;list-style:none;flex:1;justify-content:center;gap:1.25rem;margin:0;padding:0;align-items:center}.nav-item{margin:0;text-align:center}.nav-link{color:#ffffffd9;text-decoration:none;font-weight:400;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;transition:color .3s ease;font-family:Montserrat,sans-serif}.nav-link:hover{color:#65b8d4}@media(max-width:1020px){.hamburger{display:flex}.nav-menu{position:absolute;top:70px;left:0;width:100%;flex-direction:column;background-color:#003256;gap:0;max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0}.nav-menu.active{max-height:calc(100vh - 70px);overflow-y:auto;box-shadow:0 8px 16px #0000001a}.nav-item{width:100%;margin:0}.nav-link{display:block;padding:1rem 2rem;border-bottom:1px solid rgba(255,255,255,.08);color:#ffffffd9}.nav-link:hover{background-color:#ffffff0d;color:#6c8b19}.navbar-container{padding:0 1.5rem}}.App{width:100%;min-height:100vh;display:flex;flex-direction:column}.site-main{flex:1}.site-footer{background-color:#003256;padding:1.25rem 2rem;text-align:center;border-top:1px solid rgba(101,184,212,.15)}.site-footer-text{font-family:Montserrat,sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#ffffff73;margin:0}
