@import url(https://fonts.googleapis.com/css2?family=Great+Vibes&family=Cormorant+Garamond:wght@400;500;600&display=swap);:root{--primary-color:#000;--secondary-color:#fff;--accent-color:#043a14;--global-bg:var(--secondary-color);--global-color:var(--primary-color);--global-font-size:16px;--page-bg:#fff;--card-bg:#fff;--text-color:#000}html{background-color:#fff!important;background-color:var(--page-bg)!important}body{background:#fff!important;background:var(--page-bg)!important;color:#000!important;color:var(--text-color)!important;font-size:16px;font-size:var(--global-font-size,16px);margin:0;min-height:100%;overflow-x:hidden;overflow-y:visible;padding:0;transition:background .3s,color .3s,font-size .2s}#root,.App{font-size:16px;font-size:var(--global-font-size)}#root,.App,.page-container{background:#fff;background:var(--page-bg);color:#000;color:var(--text-color)}.page-container{box-sizing:border-box;max-width:100vw;min-height:100vh;overflow-x:hidden;overflow-y:visible;width:100%}.global-card,.page-container{font-family:Cormorant Garamond,serif}.global-card{background:#fff;background:var(--card-bg);border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#000;color:var(--text-color)}.accent{color:#043a14;color:var(--accent-color)}.primary-bg{background:#000;background:var(--primary-color);color:#fff;color:var(--secondary-color)}.secondary-bg{background:#fff;background:var(--secondary-color);color:#000;color:var(--primary-color)}.page-content{box-sizing:border-box;overflow-x:hidden;overflow-y:visible;width:100%}@media (max-width:768px){.page-content{padding:1rem}.MuiButton-root,.MuiIconButton-root,button{min-height:44px;min-width:44px}.MuiCard-root{margin:.5rem}body{font-size:16px;line-height:1.6}}@media (max-width:480px){.page-content{padding:.75rem}.MuiCard-root{margin:.25rem}h1{font-size:1.8rem}h2{font-size:1.6rem}h3{font-size:1.4rem}h4{font-size:1.2rem}h5{font-size:1.1rem}h6{font-size:1rem}}@media (max-width:360px){.page-content{padding:.5rem}.MuiCard-root{margin:.125rem}}*{box-sizing:border-box}html{max-width:100vw;overflow-x:hidden;overflow-y:auto}#root{overflow:visible}.MuiContainer-root,.container{max-width:100vw!important;overflow-x:hidden}@font-face{font-display:swap;font-family:La Bohemienne Deluxe;font-style:normal;font-weight:400;src:url(/static/media/la-bohemienne-deluxe.d327d6fc5033f5cbd96c.otf) format("opentype")}*,.MuiTypography-root,body{font-family:Cormorant Garamond,serif!important}*,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}.script-heading{font-family:Great Vibes,cursive;font-weight:400;letter-spacing:1px}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--font-heading:"Cormorant Garamond",serif;--font-body:"Cormorant Garamond",serif;--color-primary:#222;--color-secondary:#666;--mobile-section-padding:40px}.MuiTypography-root.section-title,.section-title,h1.section-title{color:#222!important;color:var(--color-primary)!important;font-family:Cormorant Garamond,serif!important;font-family:var(--font-heading)!important;font-size:2.4rem!important;font-weight:500!important;letter-spacing:3px!important;margin-bottom:50px!important;text-shadow:2px 2px 4px #00000080!important;text-transform:uppercase!important}.registry-with-bg .section-title{text-shadow:2px 2px 8px #000000b3!important}.subsection-title{color:#222;color:var(--color-primary);font-family:Cormorant Garamond,serif;font-family:var(--font-heading);font-size:1.25rem;font-weight:400;letter-spacing:2px;text-transform:uppercase}.body-text{color:#666;color:var(--color-secondary)}.body-text,.body-text-primary{font-family:Cormorant Garamond,serif;font-family:var(--font-body);font-size:1rem;font-weight:300;letter-spacing:1px;line-height:1.6}.body-text-primary{color:#222;color:var(--color-primary)}.subtext{color:#666;color:var(--color-secondary);font-family:Cormorant Garamond,serif;font-family:var(--font-body);font-size:.9rem;font-weight:300;letter-spacing:1px}.home-page-modern{background:#fff;margin:0;min-height:100vh;padding:0;width:100%}html{scroll-behavior:smooth}.fade-in-section{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}.fade-in-section.fade-in-visible{opacity:1;transform:translateY(0)}.header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #0000000d;display:flex;gap:1rem;justify-content:center;padding:20px 40px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.header-nav-bar{flex-wrap:wrap;gap:30px}.header-hamburger{margin-right:-12px}.header-drawer .nav-link{align-items:center;display:flex;min-height:44px;padding:12px 0}.header-banner,.header-banner-wrapper{min-height:90vh}.header-banner{width:100%}.hero-couple-name{font-family:La Bohemienne Deluxe,Great Vibes,cursive!important}.nav-left,.nav-right{align-items:center;display:flex;flex:1 1;gap:30px}.nav-right{justify-content:flex-end}.nav-link{color:#222;font-family:Arial,sans-serif;font-size:.9rem;font-weight:400;letter-spacing:1px;text-transform:uppercase;transition:color .3s ease}.nav-link:hover{color:#2d5c3a}.footer-link-rsvp,.nav-link-rsvp{color:#2d5c3a;font-weight:500}.footer-link-rsvp:hover,.nav-link-rsvp:hover{color:#1e4028}.nav-link{cursor:pointer;text-decoration:none}.footer-navigation{align-items:center;background:#f9f9f9;border-top:1px solid #0000000d;display:flex;gap:1rem;justify-content:center;padding:40px}.footer-link{color:#222;font-family:Arial,sans-serif;font-size:.9rem;font-weight:400;letter-spacing:1px;text-decoration:none;text-transform:uppercase;transition:color .3s ease}.footer-link:hover{color:#2d5c3a}.couple-name{color:#222;font-family:Cormorant Garamond,sans-serif;font-size:1.2rem;font-weight:300;letter-spacing:3px;text-decoration:none;text-transform:uppercase;transition:color .3s ease}.couple-name:hover{color:#666}.rsvp-button{padding:8px 24px!important}.hero-section{align-items:center;display:flex;flex-direction:column;padding:50px 40px;text-align:center}.MuiTypography-root.wedding-date,.wedding-date{color:#222!important;color:var(--color-primary)!important;font-family:Cormorant Garamond,serif!important;font-family:var(--font-heading)!important;font-size:2.5rem!important;font-weight:200!important;letter-spacing:2px!important;margin-bottom:4px!important}.images-container{align-items:start;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;justify-items:center;margin:30px 0;max-width:1200px;width:100%}.images-row{align-items:center;display:flex;gap:20px;grid-column:1;grid-row:1;justify-content:center;width:100%}.hero-section .images-container .image{filter:none!important}.image{object-fit:cover;transition:filter .3s ease}.image-left,.image-right{flex:1 1;height:350px;max-width:500px;width:100%}.image-center{height:650px;max-width:400px;width:100%}.tagline{color:#666;color:var(--color-secondary);font-family:Cormorant Garamond,serif;font-family:var(--font-body);font-size:1rem;font-weight:300;letter-spacing:2px;line-height:5.5!important;margin-top:30px;max-width:400px;text-transform:uppercase}.schedule-section{background:#fff;padding:60px 40px;text-align:center}.schedule-subtitle{color:#666;color:var(--color-secondary);font-family:Cormorant Garamond,serif;font-family:var(--font-body);font-size:.9rem;font-weight:300;letter-spacing:1px;padding-top:30px;text-transform:uppercase}.schedule-content{display:flex;flex-wrap:nowrap;min-height:400px}.schedule-image-wrapper{flex:0 0 50%;overflow:hidden}.schedule-image{height:100%;min-height:400px;object-fit:cover;object-position:center center;width:100%}.schedule-items{box-sizing:border-box;flex:0 0 50%;gap:24px;padding:30px}.schedule-item,.schedule-items{align-items:center;display:flex;flex-direction:column;justify-content:center;width:100%}.schedule-item{gap:10px;text-align:center}.schedule-time{color:#222;color:var(--color-primary);font-size:1.8rem;font-weight:300;letter-spacing:1px}.schedule-event,.schedule-time{font-family:Cormorant Garamond,serif;font-family:var(--font-heading);text-align:center}.schedule-event{color:#666;color:var(--color-secondary);font-size:1.05rem;font-weight:400;letter-spacing:2px;text-transform:uppercase}.schedule-title{margin-bottom:50px}.location-section{padding:60px 40px 80px;text-align:center}.faq-section,.location-section,.menu-page-section{background:#f9f9f9}.travel-stay-section{background:#f9f9f9;display:flex;flex-direction:column;margin-top:-5rem;min-height:0;padding:60px 40px;text-align:center}.travel-accommodations{display:flex;flex-wrap:nowrap;gap:40px;margin-bottom:30px;width:100%}.accommodation-card{align-items:center;display:flex;flex:1 1;flex-direction:column;min-width:0;padding:0}.accommodation-image-wrapper{aspect-ratio:4/3;flex-shrink:0;overflow:hidden;width:100%}.accommodation-image{display:block;height:100%;object-fit:cover;object-position:center;width:100%}.location-title{margin-bottom:50px}.location-content{align-items:center;display:flex;flex-wrap:wrap;gap:40px;justify-content:center;margin:0 auto 40px;max-width:1200px}.location-split{flex-wrap:nowrap;margin-bottom:30px;max-width:none;min-height:400px}.location-split .location-info.location-left{align-items:center;display:flex;flex:0 0 50%;flex-direction:column;justify-content:center;padding:30px;text-align:center}.location-split .location-directions{align-items:center;display:flex;flex-direction:column;margin-top:16px;width:100%}.location-split .location-map-wrapper{flex:0 0 50%;overflow:hidden}.location-split .location-map-image{height:100%;min-height:400px;object-fit:cover;object-position:center center;width:100%}.location-info{flex:1 1;min-width:200px}.location-left,.location-right{align-items:center;display:flex;justify-content:center}.venue-name{color:#222;color:var(--color-primary);font-family:Cormorant Garamond,serif;font-family:var(--font-heading);font-size:1.25rem;font-weight:400;letter-spacing:2px;text-transform:uppercase}.venue-image{flex:1 1;height:300px;max-width:400px;object-fit:cover;object-position:center;transition:filter .3s ease;width:100%}.venue-location{color:#666;color:var(--color-secondary);font-family:Cormorant Garamond,serif;font-family:var(--font-body);font-size:.9rem;font-weight:300;letter-spacing:1px;text-transform:uppercase}.travel-button{background:#222!important;background:var(--color-primary)!important;border:1px solid #222!important;border-radius:0!important;color:#fff!important;font-family:Cormorant Garamond,serif!important;font-family:var(--font-body)!important;font-size:.9rem!important;font-weight:400!important;letter-spacing:1px!important;padding:12px 32px!important;text-transform:uppercase!important;transition:all .3s ease!important}.travel-button:hover{background:#444!important;border-color:#444!important}.countdown-section{text-align:center}.images-container .countdown-overlay{align-items:flex-start;display:flex;grid-column:1;grid-row:1;justify-content:center;pointer-events:none;width:100%;z-index:10}.countdown-overlay .countdown-section{padding-bottom:100px}.images-container .countdown-overlay .countdown-section{background:#0000;padding:20px 0 120px;pointer-events:auto;width:100%}.images-container .countdown-overlay .countdown-title{color:#222;font-weight:700;margin-bottom:30px}.images-container .countdown-overlay .countdown-number{color:#222;font-weight:700}.images-container .countdown-overlay .countdown-label{color:#666;font-weight:700}.countdown-title{margin-bottom:60px}.countdown-display{align-items:center;display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin-bottom:20px}.countdown-number{color:#222;font-family:Arial,sans-serif;font-size:4rem;font-weight:300;letter-spacing:2px;min-width:100px;text-align:center}.countdown-labels{align-items:center;display:flex;flex-wrap:wrap;gap:30px;justify-content:center}.countdown-label{color:#666;color:var(--color-secondary);font-family:Cormorant Garamond,serif;font-family:var(--font-heading);font-size:.9rem;font-weight:400;letter-spacing:2px;min-width:100px;text-align:center;text-transform:uppercase}.bottom-section{align-items:stretch;display:flex;gap:0;justify-content:center;max-width:100%;padding:60px 0}.dresscode-section,.registry-section{align-items:center;display:flex;flex:1 1;flex-direction:column;padding:30px;text-align:center}.registry-section{background:#f9f9f9}.dresscode-section{background:#fff}.bottom-title{margin-bottom:50px}.bottom-image{height:300px;max-width:400px;object-fit:cover;object-position:center;transition:filter .3s ease;width:100%}@media (max-width:1024px){.images-container{margin:30px 0}.images-row{flex-wrap:wrap}.image-left,.image-right{height:220px;max-width:320px}.image-center{height:450px;max-width:280px}.images-container .countdown-overlay{padding-top:8%}.location-content,.location-split{flex-direction:column}.location-split{min-height:auto}.location-split .location-map-wrapper{flex:0 0 auto;height:250px;width:100%}.location-split .location-map-image{height:100%;min-height:0}.venue-image{max-width:100%}.MuiTypography-root.section-title,.section-title{font-size:2rem!important;margin-bottom:24px!important}.bottom-title,.location-title,.schedule-title{margin-bottom:24px}}@media (max-width:900px){.header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border-bottom:none;left:auto;padding:12px 16px;position:fixed;right:0;top:0;width:auto;z-index:1100}.header-hamburger{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff4d}.header-hamburger:hover{background:#ffffff80}}@media (max-width:768px){.header{flex-wrap:wrap;padding:20px;padding:calc(var(--mobile-section-padding)/2) 20px}.header-banner,.header-banner-wrapper{min-height:63vh}.nav-left,.nav-right{gap:15px}.nav-link{font-size:.8rem}.couple-name{font-size:1rem;margin-bottom:10px;order:-1;text-align:center;width:100%}.hero-section{padding:56px 20px 40px}.hero-section .wedding-date,.hero-section .wedding-date.MuiTypography-root{font-size:2.25rem!important;font-weight:200!important;margin-bottom:0!important;padding-bottom:2px;padding-top:0}.hero-date-countdown-section{align-items:center;display:flex;flex-direction:column;gap:4px;justify-content:center;min-height:120px;padding:0;width:100%}.hero-section .countdown-overlay{min-height:auto;padding:0}.hero-section .countdown-overlay .countdown-section{padding:0}.hero-section .images-container{margin-top:80px}.hero-section .countdown-display{margin-bottom:8px}.hero-section .countdown-labels{gap:15px}.MuiTypography-root.wedding-date,.wedding-date{font-size:2.25rem!important;font-weight:200!important}.images-row{gap:15px}.image-left,.image-right{height:130px;max-width:180px}.image-center{height:260px;max-width:160px}.images-container .countdown-overlay{padding-top:5%}.MuiTypography-root.section-title,.section-title{margin-bottom:20px!important}.bottom-title,.location-title,.schedule-title{margin-bottom:20px}.images-container .countdown-overlay .countdown-title{font-size:1rem;margin-bottom:16px}.tagline{font-size:.9rem}.countdown-section,.location-section,.schedule-section,.travel-stay-section{padding:40px 20px;padding:var(--mobile-section-padding) 20px}.schedule-content{flex-direction:column;min-height:auto}.schedule-image-wrapper{flex:0 0 auto;height:250px;width:100%}.schedule-image{height:100%;min-height:0}.schedule-items{padding:30px 20px}.menu-page-section>div{padding-bottom:40px!important;padding-bottom:var(--mobile-section-padding)!important}.travel-accommodations{flex-direction:column;flex-wrap:wrap}.accommodation-card{flex:0 0 auto;margin:0 auto 40px;max-width:500px;padding:0 10px;width:100%}.accommodation-card:last-child{margin-bottom:0}.countdown-number{font-size:3rem;min-width:80px}.images-container .countdown-overlay .countdown-number{font-size:2.5rem;min-width:70px}.countdown-label{font-size:.8rem;min-width:80px}.images-container .countdown-overlay .countdown-label{font-size:.7rem;min-width:70px}.bottom-section{flex-direction:column;padding:40px 0;padding:var(--mobile-section-padding) 0}.footer-navigation{flex-wrap:wrap;gap:.75rem;padding:40px 20px;padding:var(--mobile-section-padding) 20px}.footer-link{font-size:.8rem}}@media (max-width:480px){.header{padding:20px 15px;padding:calc(var(--mobile-section-padding)/2) 15px}.hero-section .wedding-date,.hero-section .wedding-date.MuiTypography-root{font-size:2rem!important}.header-banner,.header-banner-wrapper{min-height:45vh}.MuiTypography-root.section-title,.section-title{font-size:1.8rem!important;margin-bottom:16px!important}.bottom-title,.location-title,.schedule-title{margin-bottom:16px}.images-container .countdown-overlay .countdown-title{margin-bottom:12px}.nav-left,.nav-right{gap:10px}.nav-link{font-size:.7rem}.couple-name{font-size:.9rem;letter-spacing:2px}.rsvp-button{font-size:.8rem!important;padding:6px 16px!important}.images-row{flex-direction:column;gap:10px}.image-left,.image-right{height:220px;max-width:100%}.image-center{height:360px;max-width:100%}.countdown-display,.countdown-labels{gap:15px}.countdown-number{font-size:2.5rem;min-width:60px}.images-container .countdown-overlay .countdown-number{font-size:2rem;min-width:50px}.countdown-label{font-size:.7rem;min-width:60px}.images-container .countdown-overlay .countdown-label{font-size:.6rem;min-width:50px}.images-container .countdown-overlay .countdown-display,.images-container .countdown-overlay .countdown-labels{gap:15px}.footer-navigation{flex-wrap:wrap;gap:.5rem;padding:40px 15px;padding:var(--mobile-section-padding) 15px}.footer-link{font-size:.7rem}}.rsvp-page{background:#fff;margin:0;min-height:100vh;overflow-x:hidden;padding:0;width:100%}.rsvp-container{align-items:center;display:flex;justify-content:center;margin:0 auto;max-width:1200px;min-height:calc(100vh - 200px);padding:80px 40px}.rsvp-card{background:#fff;border:1px solid #0000000d;border-radius:0;box-shadow:none;margin:0;max-width:600px;padding:0}.rsvp-card,.rsvp-card-content{font-family:Cormorant Garamond,sans-serif;width:100%}.rsvp-card-content{align-items:center;background:#0000;display:flex;flex-direction:column;gap:30px;padding:60px 40px}.rsvp-title{color:#222;font-family:Cormorant Garamond,sans-serif;font-size:1.2rem;font-weight:300;letter-spacing:3px;margin:0;text-align:center;text-transform:uppercase;width:100%}.rsvp-form-field{margin-bottom:0;width:100%}.rsvp-form-field .MuiInputBase-root{color:#222;font-family:Cormorant Garamond,sans-serif}.rsvp-form-field .MuiInputLabel-root{color:#666;font-family:Cormorant Garamond,sans-serif;font-size:.9rem;letter-spacing:1px;text-transform:uppercase}.rsvp-form-field .MuiInputBase-input{color:#222;font-family:Cormorant Garamond,sans-serif;font-size:1rem}.rsvp-button{background:#0000!important;border:1px solid #222!important;border-radius:0!important;color:#222!important;font-family:Cormorant Garamond,sans-serif!important;font-size:.9rem!important;font-weight:400!important;letter-spacing:1px!important;margin-top:10px;padding:12px 32px!important;text-transform:uppercase!important;transition:all .3s ease!important}.rsvp-button:hover{background:#222!important;color:#fff!important}.rsvp-buttons-container{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin:20px 0;width:100%}.rsvp-accept-button{background:#222;border:1px solid #222;border-radius:0;color:#fff;cursor:pointer;font-family:Cormorant Garamond,sans-serif;font-size:.9rem;font-weight:400;letter-spacing:1px;min-width:150px;padding:12px 32px;text-transform:uppercase;transition:all .3s ease}.rsvp-accept-button:hover:not(:disabled){background:#444;border-color:#444}.rsvp-accept-button:disabled{cursor:not-allowed;opacity:.6}.rsvp-decline-button{background:#0000;border:1px solid #222;border-radius:0;color:#222;cursor:pointer;font-family:Cormorant Garamond,sans-serif;font-size:.9rem;font-weight:400;letter-spacing:1px;min-width:150px;padding:12px 32px;text-transform:uppercase;transition:all .3s ease}.rsvp-decline-button:hover:not(:disabled){background:#222;color:#fff}.rsvp-decline-button:disabled{cursor:not-allowed;opacity:.6}.rsvp-verification-complete{color:#222;font-family:Cormorant Garamond,sans-serif;font-size:.9rem;font-weight:400;letter-spacing:1px;margin:0;text-align:center;text-transform:uppercase}.rsvp-alert{margin-top:0;width:100%}.rsvp-status{color:#666;font-family:Cormorant Garamond,sans-serif;font-size:.9rem;font-style:italic;font-weight:400;letter-spacing:1px;margin:0;text-align:center}@media (max-width:768px){.rsvp-container{min-height:calc(100vh - 180px);padding:60px 20px}.rsvp-card-content{padding:40px 30px}.rsvp-title{font-size:1.1rem;margin-bottom:20px}.rsvp-buttons-container{align-items:stretch;flex-direction:column;gap:15px}.rsvp-accept-button,.rsvp-button,.rsvp-decline-button{width:100%}}@media (max-width:480px){.rsvp-container{padding:40px 15px}.rsvp-card-content{padding:30px 20px}.rsvp-title{font-size:1rem;letter-spacing:2px}.rsvp-accept-button,.rsvp-button,.rsvp-decline-button{font-size:.8rem;padding:10px 24px}}body.admin-bg{background:linear-gradient(135deg,#fffbe6 80%,beige)!important;font-family:Cormorant Garamond,serif!important;max-width:none}.admin-container{margin:0 auto;max-width:none;padding:32px 0}.admin-link{color:#2d5c3a!important;font-weight:500;text-decoration:underline}