@import "https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap";@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500&family=DM+Sans:wght@400;500;600&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;box-sizing:border-box;flex-direction:column;width:100%;max-width:none;min-height:100svh;margin:0;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--ivory:#f8f6f0;--forest:#344b3c;--charcoal:#242622;--sage:#a8af99}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--charcoal);margin:0;font-family:DM Sans,sans-serif}.hero{color:#fff;text-align:center;background-image:url(https://images.unsplash.com/photo-1519741497674-611481863552?w=2000&q=85);background-position:50%;background-size:cover;justify-content:center;align-items:center;min-height:100svh;display:flex;position:relative}.hero-overlay{background:#1018136e;position:absolute;inset:0}.navigation{z-index:2;justify-content:space-between;align-items:center;width:100%;padding:32px 5%;display:flex;position:absolute;top:0;left:0}.monogram{letter-spacing:2px;font-family:Cormorant Garamond,serif;font-size:27px}.nav-date{letter-spacing:3px;font-size:10px}.hero-content{z-index:1;width:100%;max-width:900px;padding:120px 24px 110px;position:relative}.eyebrow{letter-spacing:3px;font-size:10px;font-weight:500;line-height:1.8}h1{letter-spacing:-3px;margin:45px 0 35px;font-family:Cormorant Garamond,serif;font-size:clamp(75px,11vw,150px);font-weight:300;line-height:.85}.ampersand{margin:12px 0;font-size:.6em;font-style:italic;display:block}.hero-divider{background:#ffffffbf;width:55px;height:1px;margin:35px auto}.invitation{letter-spacing:2px;font-size:10px;line-height:2}.wedding-date{letter-spacing:4px;margin:24px 0 8px;font-family:Cormorant Garamond,serif;font-size:28px}.venue{letter-spacing:2px;font-size:10px;line-height:1.8}.hero-button{color:#fff;letter-spacing:2px;border:1px solid #ffffffd9;margin-top:45px;padding:17px 32px;font-size:10px;text-decoration:none;transition:all .3s;display:inline-block}.hero-button:hover{color:var(--forest);background:#fff}.hero-footer{letter-spacing:2px;z-index:2;justify-content:space-between;gap:20px;font-size:9px;display:flex;position:absolute;bottom:25px;left:5%;right:5%}.welcome{text-align:center;background:var(--ivory);padding:130px 24px}.welcome .eyebrow{color:var(--forest)}.welcome h2{color:var(--charcoal);max-width:750px;margin:25px auto;font-family:Cormorant Garamond,serif;font-size:clamp(42px,6vw,76px);font-weight:400;line-height:1.1}.welcome>p:last-child{color:#666;font-size:14px;line-height:1.9}@media (width<=600px){.navigation{padding:24px}.nav-date{letter-spacing:1.5px;font-size:9px}h1{letter-spacing:-2px;margin:35px 0;font-size:clamp(64px,15vw,100px)}.hero-content{padding:110px 20px 100px}.hero-footer{letter-spacing:1px;font-size:8px}.hero-footer span:first-child{display:none}.hero-footer{justify-content:center}.welcome{padding:90px 24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-button{transition:none}}.nav-links{align-items:center;gap:36px;display:flex}.nav-links a{color:#fff;letter-spacing:2px;font-family:DM Sans,sans-serif;font-size:10px;font-weight:500;text-decoration:none;transition:opacity .3s}.nav-links a:hover{opacity:.65}@media (width<=700px){.nav-links{flex-wrap:wrap;justify-content:flex-end;gap:14px;max-width:230px}.nav-links a{letter-spacing:1px;font-size:8px}.nav-links{flex-wrap:nowrap;gap:0;max-width:none}.nav-links a{display:none}.nav-links:after{content:"MENU";color:#fff;letter-spacing:2px;font-family:DM Sans,sans-serif;font-size:10px}}.mobile-menu-button{display:none}@media (width<=700px){.nav-links:after{display:none}.mobile-menu-button{color:#fff;letter-spacing:2px;cursor:pointer;z-index:5;background:0 0;border:none;font-family:DM Sans,sans-serif;font-size:10px;display:block}.nav-links{display:none}.nav-links.menu-open{background:var(--forest);z-index:4;flex-direction:column;align-items:center;gap:28px;max-width:none;padding:35px 24px;display:flex;position:absolute;top:75px;left:0;right:0}.nav-links.menu-open a{letter-spacing:2px;font-size:11px;display:block}}.wedding-section{text-align:center;background:#fff;padding:65px 6% 100px}.wedding-section .section-intro h2{color:var(--charcoal)}.section-intro{max-width:650px;margin:0 auto 85px}.section-intro .eyebrow,.wedding-event .eyebrow{color:var(--forest)}.section-intro h2{margin:20px 0 25px;font-family:Cormorant Garamond,serif;font-size:clamp(56px,7vw,90px);font-weight:400;line-height:1}.section-intro>p:last-child,.wedding-event>p:not(.eyebrow):not(.event-location){color:#777;font-size:14px;line-height:2}.wedding-events{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1100px;margin:0 auto;display:grid}.wedding-event{padding:25px 9%}.wedding-event+.wedding-event{border-left:1px solid #dddcd5}.wedding-event h3{margin:18px 0 12px;font-family:Cormorant Garamond,serif;font-size:clamp(36px,4vw,55px);font-weight:400;line-height:1.1}.event-location{letter-spacing:1.5px;text-transform:uppercase;color:#777;font-size:11px}.event-divider{background:var(--sage);width:40px;height:1px;margin:30px auto}.event-link{color:var(--forest);letter-spacing:2px;border-bottom:1px solid var(--sage);margin-top:25px;padding-bottom:8px;font-size:10px;font-weight:600;text-decoration:none;display:inline-block}@media (width<=700px){.wedding-section{padding:85px 24px}.section-intro{margin-bottom:45px}.wedding-events{grid-template-columns:1fr}.wedding-event{padding:35px 0}.wedding-event+.wedding-event{border-top:1px solid #dddcd5;border-left:none;margin-top:25px;padding-top:60px}}.travel-section{background:var(--ivory);text-align:center;padding:85px 6%}.travel-content{text-align:left;grid-template-columns:1.2fr 1fr;gap:80px;max-width:1050px;margin:0 auto;display:grid}.travel-item{padding:15px 0}.travel-item .eyebrow{color:var(--forest)}.travel-item h3{margin:20px 0 25px;font-family:Cormorant Garamond,serif;font-size:clamp(36px,4vw,52px);font-weight:400;line-height:1.1}.travel-item>p:not(.eyebrow){color:#666;margin-bottom:20px;font-size:14px;line-height:2}.booking-code{text-align:center;border:1px solid #c8cbbf;margin:30px 0;padding:25px 30px}.booking-code span{letter-spacing:2px;color:var(--forest);margin-bottom:12px;font-size:10px;display:block}.booking-code strong{letter-spacing:3px;color:var(--charcoal);font-family:Cormorant Garamond,serif;font-size:38px;font-weight:500;display:block}@media (width<=700px){.travel-section{padding:85px 24px}.travel-content{grid-template-columns:1fr;gap:35px}.travel-item+.travel-item{border-top:1px solid #dddcd5;padding-top:45px}.booking-code strong{font-size:32px}}.rsvp-section{background:var(--forest);color:#fff;text-align:center;padding:130px 24px}.rsvp-content{max-width:600px;margin:0 auto}.rsvp-content .eyebrow{color:#d8dfd2}.rsvp-content h2{margin:25px 0;font-family:Cormorant Garamond,serif;font-size:clamp(60px,8vw,100px);font-weight:300;line-height:1}.rsvp-description{color:#e0e5dc;max-width:430px;margin:0 auto 55px;font-size:14px;line-height:2}.rsvp-search{text-align:left;flex-direction:column;align-items:stretch;max-width:420px;margin:0 auto;display:flex}.rsvp-search label{letter-spacing:2px;margin-bottom:12px;font-size:10px}.rsvp-search input{color:#fff;background:0 0;border:1px solid #c8d0c4;border-radius:0;width:100%;padding:18px;font-family:DM Sans,sans-serif;font-size:14px}.rsvp-search input::placeholder{color:#c2cbbf}.rsvp-search button{color:var(--forest);letter-spacing:2px;cursor:pointer;background:#fff;border:1px solid #fff;margin-top:18px;padding:19px;font-family:DM Sans,sans-serif;font-size:10px;font-weight:600;transition:background .3s,color .3s}.rsvp-search button:hover{color:#fff;background:0 0}@media (width<=700px){.rsvp-section{padding:90px 24px}.rsvp-description{margin-bottom:40px}}.rsvp-confirmation{text-align:center;max-width:560px;margin:50px auto 30px;padding:35px 20px}.rsvp-confirmation .eyebrow{letter-spacing:3px;text-transform:uppercase;opacity:.8;margin-bottom:25px;font-size:10px}.rsvp-confirmation h3{margin-bottom:20px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(42px,6vw,64px);font-weight:400;line-height:1.1}.rsvp-confirmation p:not(.eyebrow){margin-bottom:35px;font-size:15px;line-height:1.9}.rsvp-confirmation button{color:inherit;letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #ffffffa6;padding:16px 30px;font-size:10px;transition:background .3s,color .3s}.rsvp-confirmation button:hover{color:#304739;background:#fff}.rsvp-household:not(.rsvp-confirmation){text-align:center;max-width:520px;margin:48px auto 0}.rsvp-household:not(.rsvp-confirmation)>h3{margin:16px 0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(36px,5vw,52px);font-weight:400;line-height:1.15}.rsvp-household:not(.rsvp-confirmation)>p:not(.eyebrow){color:#e0e5dc;margin-bottom:45px;font-size:14px;line-height:1.8}.rsvp-guest{border-top:1px solid #ffffff38;padding:32px 0 38px}.rsvp-guest h4{margin:0 0 24px;font-family:Cormorant Garamond,Georgia,serif;font-size:30px;font-weight:500}.rsvp-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rsvp-options label{color:#fff;cursor:pointer;border:1px solid #ffffffa6;border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:12px 14px;font-size:12px;line-height:1.4;transition:background .2s,color .2s;display:flex;position:relative}.rsvp-options label:has(input:checked){background:var(--ivory);border-color:var(--ivory);color:var(--forest)}.rsvp-options label:has(input:focus-visible){outline-offset:4px;outline:2px solid #fff}.rsvp-options input[type=radio]{opacity:0;width:1px;height:1px;position:absolute}.rsvp-options label:has(input:disabled){cursor:not-allowed;opacity:.7}.rsvp-dietary{text-align:left;margin-top:28px}.rsvp-dietary label{letter-spacing:.5px;color:#e0e5dc;margin-bottom:12px;font-size:11px;display:block}.rsvp-dietary input{color:#fff;background:0 0;border:1px solid #fff9;border-radius:3px;width:100%;min-height:52px;padding:15px 17px;font-family:DM Sans,sans-serif;font-size:14px;display:block}.rsvp-dietary input::placeholder{color:#c2cbbf;opacity:.85}.rsvp-dietary input:focus{outline:2px solid var(--ivory);outline-offset:2px}.rsvp-submit{border:1px solid var(--ivory);background:var(--ivory);width:100%;min-height:55px;color:var(--forest);letter-spacing:2px;cursor:pointer;margin-top:18px;padding:18px 24px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:600;transition:background .2s,color .2s;display:block}.rsvp-submit:not(:disabled):hover{color:#fff;background:0 0}.rsvp-submit:disabled{opacity:.45;cursor:not-allowed}@media (width<=480px){.rsvp-guest h4{font-size:28px}.rsvp-options{gap:8px}.rsvp-options label{padding:12px 8px;font-size:11px}}@media (prefers-reduced-motion:reduce){.rsvp-options label,.rsvp-submit{transition:none}}.rsvp-dietary .dietary-options .dietary-option{box-sizing:border-box;cursor:pointer;border:1px solid #fff6;border-radius:30px;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;width:100%;min-height:48px;margin:0;padding:12px 16px;display:flex}.rsvp-dietary .dietary-options .dietary-option input[type=checkbox]{flex:0 0 16px;width:16px;min-width:16px;height:16px;margin:0;padding:0;display:block}.rsvp-dietary .dietary-options .dietary-option span{letter-spacing:.3px;text-align:left;width:auto;margin:0;padding:0;font-size:12px;line-height:1.4;display:inline}.rsvp-dietary .dietary-options .dietary-option:has(input:checked){color:#304b3c;background:#f8f6f0;border-color:#f8f6f0}@media (width<=480px){.rsvp-dietary .dietary-options{grid-template-columns:1fr}}.rsvp-dietary .dietary-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin-top:20px;display:grid}.rsvp-dietary .dietary-options .dietary-option{color:#f8f6f0;cursor:pointer;background:0 0;border:none;border-radius:0;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;width:auto;min-height:0;margin:0;padding:0;display:flex}.rsvp-dietary .dietary-options .dietary-option:has(input:checked){color:#f8f6f0;background:0 0;border:none}.rsvp-dietary .dietary-options .dietary-option input[type=checkbox]{color:#f8f6f0;appearance:none;background:0 0;border:1px solid #d5dcd4;border-radius:3px;flex:0 0 16px;place-items:center;width:16px;min-width:16px;height:16px;margin:0;padding:0;display:grid}.rsvp-dietary .dietary-options .dietary-option input:checked{color:#304b3c;background:#f8f6f0}.rsvp-dietary .dietary-options .dietary-option span{width:auto;color:inherit;text-align:left;margin:0;padding:0;font-size:13px;line-height:1.5;display:inline}@media (width<=480px){.rsvp-dietary .dietary-options{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}}.rsvp-dietary .dietary-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:20px 0 24px;display:grid}.rsvp-dietary .dietary-options label.dietary-option{width:100%;height:auto;min-height:0;box-shadow:none;color:#f8f6f0;cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;margin:0;padding:0;display:flex}.rsvp-dietary .dietary-options label.dietary-option:has(input:checked){color:#f8f6f0;background:0 0;border:0}.rsvp-dietary .dietary-options label.dietary-option input[type=checkbox]{all:unset;box-sizing:border-box;aspect-ratio:1;cursor:pointer;background:0 0;border:1px solid #f8f6f0cc;border-radius:2px;flex:0 0 17px;place-items:center;width:17px;min-width:17px;max-width:17px;height:17px;min-height:17px;max-height:17px;margin:0;padding:0;display:inline-grid}.rsvp-dietary .dietary-options label.dietary-option input[type=checkbox]:checked{background:#f8f6f0;border-color:#f8f6f0}.rsvp-dietary .dietary-options label.dietary-option input[type=checkbox]:checked:after{content:"âœ“";color:#304b3c;font-size:12px;font-weight:600;line-height:1}.rsvp-dietary .dietary-options label.dietary-option input[type=checkbox]:focus-visible{outline-offset:3px;outline:2px solid #f8f6f0}.rsvp-dietary .dietary-options label.dietary-option span{color:#f8f6f0;letter-spacing:.2px;text-align:left;width:auto;margin:0;padding:0;font-size:13px;font-weight:400;line-height:1.5;display:inline}@media (width<=480px){.rsvp-dietary .dietary-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}}@media (width<=600px){.rsvp-dietary .dietary-options{grid-template-columns:1fr;gap:4px}.rsvp-dietary .dietary-options label.dietary-option{gap:14px;min-height:44px;padding:8px 0}.rsvp-dietary .dietary-options label.dietary-option input[type=checkbox]{flex:0 0 18px;width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;max-height:18px}}.hero{background-image:url(/images/hero.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover}.hero-overlay{background:#0f191361}@media (width>=769px){.hero{background-position:50% 35%;background-size:cover;min-height:850px}}.hero{width:100%;max-width:none}.welcome{padding:100px 8%}.welcome-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:9%;max-width:1200px;margin:0 auto;display:grid}.welcome-text{text-align:left}.welcome-text .eyebrow{margin:0 0 24px}.welcome-text h2{margin:0 0 32px;font-size:clamp(38px,4vw,62px);line-height:1.15}.welcome-text>p:not(.eyebrow){max-width:440px;margin:0 0 20px;font-size:15px;line-height:1.9}.welcome-text>p:last-child{margin-bottom:0}.welcome-image{width:100%;height:auto;min-height:0;overflow:hidden}.welcome-image img{object-fit:cover;object-position:center;width:100%;height:560px;min-height:0;display:block}@media (width<=768px){.welcome{padding:72px 24px}.welcome-layout{grid-template-columns:1fr;gap:40px}.welcome-text{text-align:center}.welcome-text h2{margin-bottom:24px;font-size:40px}.welcome-text>p:not(.eyebrow){margin-left:auto;margin-right:auto}.welcome-image img{height:auto;max-height:520px}}.wedding-day-heading{text-align:center;margin:0 auto 35px}.wedding-day-heading .eyebrow,.wedding-day-two .eyebrow{color:var(--forest)}.wedding-day-heading h3,.wedding-day-two h3{margin:15px 0 0;font-family:Cormorant Garamond,serif;font-size:clamp(38px,5vw,58px);font-weight:400;line-height:1.1}.wedding-day-two{background:var(--ivory);text-align:center;max-width:680px;margin:100px auto 0;padding:65px 55px}.wedding-day-two .day-two-location{letter-spacing:1.5px;text-transform:uppercase;color:#777;margin:18px 0 0;font-size:11px}.wedding-day-two>p:not(.eyebrow):not(.day-two-location){color:#666;max-width:480px;margin:0 auto 18px;font-size:14px;line-height:2}.wedding-day-two>p:last-child{margin-bottom:0}@media (width<=700px){.wedding-day-heading{margin-bottom:15px}.wedding-day-two{margin-top:55px;padding:50px 25px}}.wedding-section{isolation:isolate;background:linear-gradient(#18261c2e,#18261c2e),url(/images/rathsallagh3.jpeg) 50%/cover no-repeat;padding:100px 6%;position:relative}.wedding-section:before{content:"";z-index:-1;background:#f8f6f0f7;position:absolute;inset:55px 8%}.wedding-section .section-intro h2,.wedding-section .wedding-day-heading h3,.wedding-section .wedding-event h3,.wedding-section .wedding-day-two h3{color:var(--charcoal)}@media (width<=700px){.wedding-section{padding:65px 7%}.wedding-section:before{inset:25px 3%}}.wedding-section{background:#fff;padding:0 0 100px}.wedding-section:before{content:none}.wedding-banner{background-image:url(/images/rathsallagh.png);background-position:50%;background-repeat:no-repeat;background-size:cover;width:100%;height:350px}.wedding-section .section-intro{max-width:800px;margin:0 auto 70px;padding:65px 24px 0}.wedding-section .section-intro h2{letter-spacing:4px;text-transform:uppercase;color:var(--forest);margin:18px 0 25px;font-family:DM Sans,sans-serif;font-size:clamp(20px,3vw,30px);font-weight:500;line-height:1.4}.wedding-day-heading h3{color:var(--charcoal);font-family:Cormorant Garamond,serif;font-size:clamp(42px,5vw,60px);font-weight:400}@media (width<=700px){.wedding-section{padding-bottom:75px}.wedding-banner{height:220px}.wedding-section .section-intro{margin-bottom:45px;padding-top:50px}.wedding-section .section-intro h2{letter-spacing:2.5px;font-size:20px}}.travel-section .section-intro h2{letter-spacing:4px;text-transform:uppercase;color:var(--forest);margin:18px 0 25px;font-family:DM Sans,sans-serif;font-size:clamp(20px,3vw,30px);font-weight:500;line-height:1.4}@media (width<=700px){.travel-section .section-intro h2{letter-spacing:2.5px;font-size:20px}}.rsvp-day{margin:24px 0 30px}.rsvp-day+.rsvp-day{border-top:1px solid #344b3c26;padding-top:26px}.rsvp-day-label{letter-spacing:2px;text-transform:uppercase;color:#d8d6c9;margin:0 0 10px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:500}.rsvp-day h5{color:#f8f6f0;margin:0 0 8px;font-family:Cormorant Garamond,serif;font-size:30px;font-weight:500;line-height:1.2}.rsvp-day-description{opacity:.75;margin:0 0 18px;font-size:13px}.rsvp-day .rsvp-options{margin-top:12px}.rsvp-guest .rsvp-day{padding-bottom:0}.rsvp-day .rsvp-day-description{margin:0 0 16px}.faq-section{background:var(--ivory);padding:85px 6% 95px}.faq-section .section-intro{text-align:center;margin-bottom:45px}.faq-section .section-intro h2{letter-spacing:4px;text-transform:uppercase;color:var(--forest);margin:18px 0 25px;font-family:DM Sans,sans-serif;font-size:clamp(20px,3vw,30px);font-weight:500;line-height:1.4}.faq-list{max-width:760px;margin:0 auto}.faq-item{border-bottom:1px solid #344b3c33}.faq-item:first-child{border-top:1px solid #344b3c33}.faq-item summary{cursor:pointer;color:var(--forest);padding:24px 35px 24px 0;font-family:Cormorant Garamond,serif;font-size:25px;font-weight:500;list-style:none;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-family:DM Sans,sans-serif;font-size:22px;font-weight:300;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.faq-item[open] summary:after{content:"−"}.faq-answer{padding:0 35px 24px 0}.faq-answer p{margin:0 0 12px;font-size:14px;line-height:1.9}.faq-answer p:last-child{margin-bottom:0}.gifts-section{text-align:center;background:#f8f6f0;padding:95px 6% 105px}.gifts-content{max-width:610px;margin:0 auto}.gifts-section .eyebrow{color:var(--forest);letter-spacing:3px;margin-bottom:22px}.gifts-content h2{color:var(--forest);margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(42px,5vw,60px);font-weight:400;line-height:1.1}.gifts-divider{background:#a7ad9b;width:45px;height:1px;margin:30px auto}.gifts-content>p:not(.eyebrow):not(.gifts-signature){color:var(--forest);margin:0 auto 20px;font-size:15px;line-height:1.9}.gifts-signature{color:var(--forest);margin:8px 0 32px;font-family:Cormorant Garamond,serif;font-size:31px;font-style:italic}.gifts-button{border:1px solid var(--forest);color:var(--forest);letter-spacing:1.7px;background:0 0;padding:15px 27px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.gifts-button:hover{background:var(--forest);color:#f8f6f0}@media (width<=700px){.faq-section{padding:65px 24px 75px}.faq-section .section-intro h2{letter-spacing:2.5px;font-size:20px}.faq-item summary{padding:20px 30px 20px 0;font-size:22px}.faq-answer{padding-right:15px}.gifts-section{padding:70px 24px 80px}.gifts-content h2{font-size:42px}.gifts-content>p:not(.eyebrow):not(.gifts-signature){font-size:14px}}.wedding-footer{background:var(--forest);text-align:center;color:#f8f6f0;padding:85px 24px 90px}.footer-content{max-width:700px;margin:0 auto}.footer-monogram{letter-spacing:-15px;color:#f8f6f0;margin-bottom:30px;font-family:Great Vibes,cursive;font-size:clamp(95px,13vw,145px);font-weight:400;line-height:1.15}.footer-monogram span{margin-left:-10px;display:inline-block;transform:translateY(10px)}.footer-divider{background:#f8f6f0a6;width:55px;height:1px;margin:0 auto 30px}.footer-content h2{letter-spacing:2px;color:#f8f6f0;margin:0 0 30px;font-family:Cormorant Garamond,serif;font-size:clamp(28px,4vw,40px);font-weight:400}.footer-date,.footer-venue{letter-spacing:3px;color:#f8f6f0d9;font-family:DM Sans,sans-serif;font-size:11px;font-weight:400}.footer-date{margin-bottom:18px}.footer-venue{letter-spacing:2.5px;font-size:10px}@media (width<=700px){.wedding-footer{padding:30px 20px 35px}.footer-monogram{margin-bottom:12px;font-size:65px}.footer-divider{width:40px;margin-bottom:15px}.footer-content h2{margin-bottom:15px;font-size:25px}.footer-date{margin-bottom:10px;font-size:10px}.footer-venue{letter-spacing:1.5px;font-size:9px}}.rsvp-section .rsvp-household .rsvp-guest h4{letter-spacing:0;color:#f8f6f0;font-family:Cormorant Garamond,serif;font-size:30px;font-weight:700}.wedding-footer{background:var(--forest);padding:24px 20px}.footer-content h2{letter-spacing:1px;margin:0 0 8px;font-size:23px}.footer-date{letter-spacing:2px;margin:0 0 6px;font-size:9px}.footer-venue{letter-spacing:1.5px;margin:0;font-size:8px}@media (width<=700px){.wedding-footer{padding:20px 15px}.footer-content h2{margin-bottom:8px;font-size:21px}.footer-date{margin-bottom:6px;font-size:9px}.footer-venue{letter-spacing:1px;font-size:8px}}
