.navbar{background:transparent;height:80px;display:flex;justify-content:center;align-items:center;position:sticky;top:0;margin-bottom:80px;z-index:999;box-shadow:none;font-family:var(--font-primary)}.navbar.scrolled{background:var(--main-bg-color);box-shadow:0 2px 4px #0000001a}.navbar-container{display:flex;justify-content:space-between;align-items:center;z-index:1;width:100%;max-width:1100px;padding:0 20px}.nav-logo-container{display:none}.nav-menu{display:flex;align-items:center;list-style:none;text-align:center;margin:0 auto;padding:0}.nav-item{height:80px;display:flex;align-items:center}.nav-links{color:var(--accent-gold);display:flex;align-items:center;text-decoration:none;padding:0 1rem;height:100%;cursor:pointer;transition:color .2s ease-in-out;font-weight:500;text-underline-offset:5px}.menu-toggle{display:none}.nav-links:hover{color:var(--link-hover-color)}.nav-links.active{text-decoration:underline}@media screen and (max-width:1600px){.navbar{margin-top:80px}}@media screen and (max-width:700px){.nav-logo{font-size:1.6rem}.navbar{margin-top:0;margin-bottom:0;height:50px}.nav-logo-container{display:flex;align-items:center}.nav-monogram{height:40px;width:auto}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;background-color:transparent;box-shadow:none;cursor:pointer;z-index:1000;gap:5px}.bar{height:3px;width:24px;background-color:var(--accent-gold);border-radius:3px;transition:all .3s ease}.menu-toggle.open .bar:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle.open .bar:nth-child(2){opacity:0}.menu-toggle.open .bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-menu{position:fixed;top:50px;bottom:0;right:0;left:0;min-width:100%;border-radius:0;flex-direction:column;justify-content:flex-start;background-color:var(--main-bg-color);box-shadow:none;max-height:0;overflow:hidden;transition:max-height .4s ease-in-out,opacity .4s ease-in-out,transform .4s ease-in-out;opacity:0;transform:translateY(-20px);padding-top:0;padding-bottom:0;pointer-events:none}.nav-menu.active{opacity:1;max-height:calc(100vh - 50px);transform:translateY(0);pointer-events:auto}.nav-item{width:100%;height:auto;justify-content:center;margin-bottom:20px}.nav-item:first-child{margin-top:40px}.nav-links{padding:15px 30px;width:100%;justify-content:center;font-size:1.4rem}}.footer{background-color:var(--header-footer-bg);padding:20px 0;text-align:center;color:var(--accent-gold);font-family:var(--font-tertiary);font-size:.75em;margin-bottom:100px}.footer-container{max-width:1100px;margin:0 auto;padding:0 var(--content-padding)}.footer p{margin:0}@media screen and (max-width:1600px){.footer{margin-bottom:180px}}@media screen and (max-width:700px){.footer{margin-bottom:0}}.login-page-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:0 20px}.login-box.panel{text-align:center;max-width:600px;width:100%;padding:60px;box-sizing:border-box;box-shadow:0 10px 40px #00000014;border:none}.login-box h1{font-size:2.4rem;margin-bottom:40px}.login-monogram{display:block;margin:0 auto 20px;width:60px;height:auto}.login-form label{display:block;font-size:1.1em;margin-bottom:25px;text-align:left;font-family:var(--font-tertiary)}.login-form input[type=text]{width:100%;padding:16px 20px;margin-bottom:35px;border:1px solid #ddd;border-radius:8px;background-color:var(--white);box-sizing:border-box;font-size:1.1em;font-family:var(--font-tertiary);transition:all .2s ease;text-align:left}.login-form input[type=text]:focus{border-color:var(--accent-gold);outline:none;box-shadow:0 0 0 3px #735b2426}.login-form .login-submit-btn{width:100%;font-size:1rem;padding:0 1rem;height:3.5rem;line-height:normal;display:flex;justify-content:center;align-items:center}.error-message{color:var(--error-color);margin-top:-15px;margin-bottom:30px;font-size:1em;text-align:left;font-family:var(--font-tertiary)}@media(max-width:480px){.login-box.panel{padding:30px}.login-box h1{font-size:2rem}}.media-container{display:flex;align-items:center}.media-container .media-side{flex:1;display:flex;justify-content:flex-end}.media-container .content-side{flex:1;text-align:left;font-family:var(--font-secondary);color:var(--text-color);padding:var(--content-padding)}.media-container .content-side h2{margin-top:0}.media-container .media-side img,.media-container .media-side div{width:100%;height:auto;border-radius:0 var(--border-radius-panel) var(--border-radius-panel) 0}.media-container.reverse{flex-direction:row-reverse}.media-container.reverse .media-side{justify-content:flex-start}.media-container.reverse .media-side img,.media-container.reverse .media-side div{border-radius:var(--border-radius-panel) 0 0 var(--border-radius-panel)}.expandable-button-wrapper{display:flex;flex-direction:column;align-items:flex-start;max-width:100%}button.expandable-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:8px}.expandable-content-transition{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-out}.expandable-content-transition.expanded{grid-template-rows:1fr}.expandable-content-inner{overflow:hidden}.expandable-content{padding:15px;background-color:var(--background-secondary, #f9f9f9);border-radius:var(--border-radius-panel, 8px);border:1px solid var(--border-color, #e0e0e0)}.expandable-content ul{margin-top:10px;padding-left:20px}.expandable-content li{margin-bottom:5px}@media(max-width:700px){.media-side{justify-content:center;margin-top:15px}.media-side div{border-radius:0}.media-container .media-side .image-container{padding:0 var(--content-padding) 0 0}.media-container.reverse .media-side .image-container{padding:0 0 0 var(--content-padding)}.media-container .media-side .image-container img,.media-container.reverse .media-side .image-container img{border-radius:var(--border-radius-panel);max-height:350px;max-width:100%}}@media(max-width:480px){.media-container,.media-container.reverse{flex-direction:column}.media-container .media-side .image-container,.media-container.reverse .media-side .image-container{padding:0 var(--content-padding)}}.wedding-info-display{font-size:1.5em;margin-bottom:.5em;font-family:var(--font-primary);color:var(--accent-green);font-weight:400;display:flex;justify-content:center;align-items:center;gap:2rem;margin:2rem 0}.wedding-info-display .info-col{flex:1}.wedding-info-display .info-col.align-right{text-align:right}.wedding-info-display .info-col.align-left{text-align:left}.wedding-info-display .separator{width:1px;background-color:#999;align-self:stretch;margin:0 .5rem}@media screen and (max-width:600px){.wedding-info-display{font-size:clamp(1rem,8vw,1.3rem);gap:1rem;display:block}.wedding-info-display .separator{height:1px;width:50%;max-width:200px;margin:1rem auto}.wedding-info-display .info-col.align-right,.wedding-info-display .info-col.align-left{text-align:center}}.timeline{padding:var(--content-padding);text-align:left}.timeline-list{list-style:none;padding:0;margin:0;margin-top:1rem;position:relative}.timeline-item{padding-bottom:1.5rem;border-left:1px solid var(--accent-green);position:relative;padding-left:20px;margin-left:10px}.timeline-item:last-child{border:0px;padding-bottom:0}.timeline-item:before{content:"";width:15px;height:15px;background:#fff;border:1px solid var(--accent-green);box-shadow:2px 2px #0000001a;border-radius:50%;position:absolute;left:-8px;top:0}.timeline-time{font-family:var(--font-tertiary);color:var(--accent-gold);font-size:.9rem}.timeline-activity{font-size:1rem;font-weight:700}.timeline-description{margin:0}.image-fade-container{width:100%}.fade-image{opacity:0;transition:opacity .5s ease-in-out;width:100%;height:auto;display:block}.fade-image.loaded{opacity:1}.homepage-container{text-align:center}.hero-section{position:relative;color:var(--accent-green);font-family:var(--font-primary);padding-left:var(--content-padding);padding-right:var(--content-padding)}.hero-content{text-align:center}.hero-content .invitation-text{font-size:var(--body-font-size);color:var(--accent-green);margin-bottom:1em;font-weight:400}.hero-content .couple-names{display:flex;flex-direction:column;align-items:center;gap:.2em}.hero-content .couple-names .name{font-size:3em;color:var(--accent-green);font-weight:400}.hero-content .couple-names .and{font-size:1.5em;color:var(--accent-green);font-weight:400}.timeline{background-color:#e1f0e0}@media screen and (max-width:960px){.hero-content .couple-names .name{font-size:clamp(1.2rem,10vw,2.5rem);color:var(--accent-green);font-weight:400}.hero-content .invitation-text{font-size:clamp(.5rem,4vw,.9rem)}.hero-content .couple-names .and{font-size:1em;color:var(--accent-green);font-weight:400}}@keyframes rsvp-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.animated-reveal{animation:rsvp-reveal .25s ease forwards}.rsvp-card{padding:1.5rem 2rem}.guest-rsvp-section{padding-bottom:1rem;font-family:var(--font-tertiary)}.guest-rsvp-section:last-child{padding-bottom:0}.meal-selection select{padding:.5rem;border-radius:4px;border:1px solid #ccc;max-width:300px}.rsvp-radio-group{display:flex;flex-direction:column;gap:.5rem;width:400px;max-width:100%}.rsvp-radio-group label{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;border:1.5px solid var(--accent-grey);border-radius:10px;background-color:var(--accent-grey-light);cursor:pointer;font-family:var(--font-tertiary);font-size:.9rem;color:var(--text-color);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none}.rsvp-radio-group label:hover{border-color:var(--accent-green-light)}.rsvp-radio-group label:has(input[type=radio]:checked){border-color:var(--accent-green-light);background:#eaf3e7}.rsvp-radio-group input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex-shrink:0;width:18px;height:18px;border:2px solid #b8c0b3;border-radius:50%;background:var(--white);transition:border-color .2s ease,background .2s ease;position:relative;cursor:pointer}.rsvp-radio-group input[type=radio]:checked{border-color:var(--accent-green-light);background:var(--accent-green-light);box-shadow:inset 0 0 0 3px var(--white)}.rsvp-meal-radio-group label{align-items:flex-start;padding:.75rem 1rem}.rsvp-meal-radio-group input[type=radio]{margin-top:3px}.rsvp-text-area{display:block;background:var(--accent-grey-light);border:1.5px solid var(--accent-grey);border-radius:10px;padding:10px;font-size:.9rem;font-family:var(--font-tertiary);box-sizing:border-box;width:400px;max-width:100%;resize:vertical}@media(max-width:768px){.rsvp-radio-group label{max-width:100%}.guest-rsvp-section ul.icon-list li{flex-direction:column;align-items:flex-start;margin-bottom:1rem}.guest-rsvp-section ul.icon-list li:last-child{margin-bottom:0}.guest-rsvp-section ul.icon-list li span{margin-bottom:.5rem}}:root{--accent-green: #154704;--accent-green-light: #2b8e0b;--accent-gold: #735b24;--accent-gold-light: #9e7a28;--off-white: #fbfcf7;--white: #fff;--accent-grey: #f4f4f4;--accent-grey-light: #f9f9f9;--text-color: #42493e;--heading-color: var(--accent-green);--link-color: var(--accent-gold);--link-hover-color: var(--accent-gold-light);--error-color: #b53c2e;--font-primary: "Cinzel", serif;--font-secondary: "Newsreader", serif;--font-tertiary: "Montserrat", sans-serif;--body-font-size: 1em;--main-bg-color: var(--off-white);--content-padding: 30px;--section-spacing: 40px;--border-radius-panel: 16px;--border-radius-cta: 24px;--content-max-width: 800px}html{box-sizing:border-box;font-size:16px;scrollbar-gutter:stable}html.menu-open{overflow:hidden}body{margin:0;font-family:var(--font-secondary);font-style:normal;font-weight:400;background-color:var(--off-white);background-image:url(/assets/bg_top_left_green_optimized_simplified-BIx3mcdV.svg),url(/assets/bg_top_right_green_optimized_simplified-BnmJvsqz.svg),url(/assets/bg_bottom_left_optimized_simplified-DnIABXPI.svg),url(/assets/bg_bottom_right_optimized_simplified-BduF4oAc.svg);background-position:top left,top right,bottom left,bottom right;background-repeat:no-repeat;background-size:50% auto,50% auto;color:var(--text-color);font-size:var(--body-font-size);line-height:1.5;font-optical-sizing:auto;min-height:100vh;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-family:var(--font-primary);color:var(--heading-color);font-weight:400}h2{font-family:var(--font-primary);color:var(--accent-gold);font-weight:400}h3,h4,h5,h6{font-family:var(--font-secondary);color:var(--heading-color);margin:0}h1{font-size:2.5rem}_h2{font-size:2rem}_h3{font-size:1.5rem}_h4{font-size:1.25rem}a{color:var(--link-color);text-decoration:none;transition:color .2s ease-in-out}a:hover{color:var(--link-hover-color);text-decoration:underline}img{max-width:100%;height:auto;display:block}.page-container{max-width:800px;margin:0 auto;padding:0 var(--content-padding)}.page-container h1{text-align:center}.panel{border-radius:var(--border-radius-panel);border:1px var(--accent-grey) solid;margin:0 auto;margin-bottom:var(--section-spacing);background-color:var(--white)}.error-container{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px solid var(--error-color);background-color:#ffebeb;border-radius:var(--border-radius-panel);margin:20px auto;max-width:500px;box-shadow:0 2px 4px #0000001a}.error-container p{color:var(--error-color)}.inline-error{color:var(--error-color);font-size:.9rem;margin-top:.25rem}.cta-button{display:inline-block;border-radius:var(--border-radius-cta);padding:0 1rem;font-family:var(--font-tertiary);font-weight:500;font-size:.8rem;transition:all .3s ease;text-decoration:none;box-sizing:border-box;line-height:2.5rem}.main-content .cta-button{margin-bottom:10px}.cta-button.primary{background-color:var(--heading-color);color:#fff;border:1px solid var(--heading-color)}.cta-button.secondary{background-color:transparent;color:var(--accent-gold);border:1px solid var(--accent-gold)}.cta-button:before{content:"";display:inline-block;vertical-align:middle;height:100%}.cta-button:hover{background-color:var(--accent-green-light);color:#fff;text-decoration:none;border:1px solid var(--accent-green-light)}.cta-button.secondary:hover{background-color:var(--accent-gold-light);color:#fff;text-decoration:none;border:1px solid var(--accent-gold-light)}.cta-button-divider{width:10px;height:auto;display:inline-block}ul.icon-list{padding-left:1.5rem}.icon-list li:before{font-family:Material Symbols Outlined;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;margin-right:.5rem;color:var(--accent-gold);vertical-align:middle;font-size:1rem;margin-left:-1.5rem}.icon-list li{list-style:none;padding-top:.25rem;padding-bottom:.25rem}.icon-list li.apparel:before{content:"apparel"}.icon-list li.calendar_month:before{content:"calendar_month"}.icon-list li.device_thermostat:before{content:"device_thermostat"}.icon-list li.distance:before{content:"distance"}.icon-list li.checkroom:before{content:"checkroom"}.icon-list li.person:before{content:"person"}.icon-list li.hand_meal:before{content:"hand_meal"}.icon-list li.mail:before{content:"mail"}.icon-list li.palette:before{content:"palette"}.icon-list li.footprint:before{content:"footprint"}.icon-list li.local_bar:before{content:"local_bar"}.icon-list li.directions_car:before{content:"directions_car"}.icon-list li.door_open:before{content:"door_open"}.icon-list li.schedule:before{content:"schedule"}span.line{display:inline-block}@media(min-width:1200px){body{background-size:600px auto}}@media(max-width:700px){body{background-image:none}.page-container{padding-left:0;padding-right:0}.panel{margin-bottom:0;padding-bottom:var(--content-padding);border:0;border-radius:0}}@keyframes react-loading-skeleton{to{transform:translate(100%)}}.react-loading-skeleton{--base-color: #ebebeb;--highlight-color: #f5f5f5;--animation-duration: 1.5s;--animation-direction: normal;--pseudo-element-display: block;background-color:var(--base-color);width:100%;border-radius:.25rem;display:inline-flex;line-height:1;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden}.react-loading-skeleton:after{content:" ";display:var(--pseudo-element-display);position:absolute;top:0;left:0;right:0;height:100%;background-repeat:no-repeat;background-image:var( --custom-highlight-background, linear-gradient( 90deg, var(--base-color) 0%, var(--highlight-color) 50%, var(--base-color) 100% ) );transform:translate(-100%);animation-name:react-loading-skeleton;animation-direction:var(--animation-direction);animation-duration:var(--animation-duration);animation-timing-function:ease-in-out;animation-iteration-count:infinite}@media(prefers-reduced-motion){.react-loading-skeleton{--pseudo-element-display: none}}
