body{margin:0;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}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{margin:0;padding:0;min-height:100vh;background-image:repeating-linear-gradient(to right,#c1cbc3,#c1cbc3 60px,#fff 60px,#fff 120px)}@font-face{font-family:Caslon Fort Two ITC Romain;src:url(/assets/fcaslon-fort-two-itc-romain-DqWHa4RU.woff) format("woff")}h1,h2,h3,h4,h5,h6{font-family:Caslon Fort Two ITC Romain,serif;color:#335437}.App{max-width:800px;margin:0 auto;padding:20px;font-family:Arial,sans-serif}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion: no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 1vmin);color:#fff;margin-bottom:40px;background-image:url(/assets/background-card-top-DYIouS_Z.png);background-position:top center;background-repeat:no-repeat;background-size:100% auto;border-radius:8px}.header-card,.footer-card,.event-card,.ceremony-card,.reception-card,.additional-info,.faq-question,.faq-answer,.rsvp-form-container{background-image:url(/assets/paper-BNytdu3c.png);background-repeat:repeat;background-color:#ffffffe6;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.footer-card{margin-top:40px;position:relative;text-align:center}.footer-card-image{height:480px;width:100%;background-image:url(/assets/background-card-bottom-_AzsP_R8.png);background-position:bottom center;background-repeat:no-repeat;background-size:100% auto}.language-switcher{position:fixed;top:20px;right:20px;z-index:2;padding:10px;border-radius:8px;background-image:url(/assets/paper-BNytdu3c.png);background-repeat:repeat;background-color:#ffffffe6;box-shadow:0 2px 4px #0000001a}.header-content{padding:20px;margin-top:100px;font-size:calc(10px + 1vmin)}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.language-switcher button{background:none;border:1px solid #335437;padding:5px 10px;margin-left:5px;cursor:pointer;color:#335437}.language-switcher button.active{background-color:#335437;color:#fff;font-weight:700}.wedding-info{margin-bottom:40px;text-align:left}.event-card{background-color:#f9f9f9;border-radius:8px;padding:20px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.ceremony-card,.reception-card{border-left:5px solid #335437}.event-date,.event-time{font-weight:700;color:#555}.event-location,.event-transport{font-size:1.1em;margin:10px 0 5px}.event-transport-icon{width:1.5em;height:1.5em;margin-right:10px;vertical-align:middle}.event-address{color:#666;margin-bottom:15px}.additional-info{background-color:#f9f9f9;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.additional-info p{margin:10px 0}.token-input-container,.rsvp-form-container{background-color:#f9f9f9;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.token-input{width:100%;padding:10px;margin:10px 0;border:1px solid #ccc;border-radius:4px}.form-group{margin-bottom:20px;text-align:left}.form-group label{display:block;margin-bottom:5px;font-weight:700}.radio-group{display:flex;gap:20px}input[type=text],input[type=number],textarea,select{padding:10px;border:1px solid #ccc;border-radius:4px}textarea{min-height:100px}.submit-button{background-color:#335437;color:#fff;padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:16px}.submit-button:hover{background-color:#2a4330}.error{color:red}.thank-you{background-color:#f9f9f9;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}footer{margin-top:40px;color:#666}.guest-details-section,.additional-guests-section{margin-bottom:30px;border-top:1px solid #eee;padding-top:20px}.additional-guest{background-color:#f0f0f0;border-radius:6px;padding:15px;margin-bottom:20px;position:relative}.add-guest-button{background-color:#335437;color:#fff;padding:10px 20px;border:none;border-radius:4px;cursor:pointer;margin-bottom:20px}.event-image-container{width:100%;height:250px;overflow:hidden;border-radius:6px;margin-bottom:15px}.event-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.event-image:hover{transform:scale(1.05)}.faq-section{margin:40px 0}.faq-list{margin-top:20px}.faq-item{background-color:#f9f9f9;border-radius:8px;margin-bottom:15px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.faq-question{padding:15px 20px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .3s ease}.faq-question:hover{background-color:#f0f0f0}.faq-question h3{margin:0;font-size:1.1rem;font-weight:500}.faq-toggle{font-size:1.5rem;font-weight:700}.faq-answer{text-align:left;padding:0 20px 20px;border-top:1px solid #eee;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.loading-faq,.error-faq{text-align:center;padding:20px;background-color:#f9f9f9;border-radius:8px;margin-bottom:15px}.error-faq{color:#f44336}.rsvp-form-container{margin:0 auto}.rsvp-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.guest-row-flex{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;align-items:center}.guest-row-single,.guest-row-flex{margin-bottom:1rem}.guest-element{background-color:#fff;padding:.75rem;border-radius:4px;box-shadow:0 1px 3px #0000000a;gap:1rem}.menu-row-flex{display:flex;flex-direction:column;background-color:#f9f9f9;padding:1rem;border-radius:4px;margin:.5rem 0 1rem;box-shadow:0 1px 3px #00000008}.menu-selection{padding:0;background-color:transparent}.menu-course select,.menu-type select,.menu-restrictions input{padding:.5rem;border:1px solid #ddd;border-radius:4px}.guest-input-group{display:flex;flex-direction:column;flex:2;margin-right:1rem}.guest-input-group label{font-weight:700;margin-bottom:.5rem}.guest-input-group input[type=text]{padding:.5rem;border:1px solid #ddd;border-radius:4px}.guest-input-group input[type=checkbox]{margin-top:.6rem;width:1.2em;height:1.2em}.remove-guest-button{margin:1rem 0;padding:.5rem 1rem;background-color:#eb8373;color:#fff;border-radius:4px;cursor:pointer}.remove-guest-button:hover{background-color:#fc4949}.add-guest-button{margin:1rem 0;padding:.5rem 1rem;background-color:#4caf50;color:#fff;border-radius:4px;cursor:pointer}.add-guest-button:hover{background-color:#2a4330}.message-section{margin-top:2rem}.message-section label{display:block;margin-bottom:.5rem;font-weight:700}.message-section textarea{width:100%;min-height:100px;padding:.5rem;border:1px solid #ddd;border-radius:4px;resize:vertical}.error-message{background-color:#ffebee;color:#c62828;padding:1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #ffcdd2}.success-message{background-color:#e8f5e9;color:#2e7d32;padding:1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #c8e6c9}.submit-button{display:block;width:100%;max-width:200px;margin:2rem auto;padding:1rem;background-color:#4caf50;color:#fff;border:none;border-radius:4px;font-size:1.1rem;cursor:pointer;transition:all .2s ease}.submit-button:hover:not(:disabled){background-color:#45a049;transform:translateY(-1px)}.submit-button:disabled{background-color:#ccc;cursor:not-allowed}
