@charset "UTF-8";body{margin:0;min-width:320px}#root{min-height:100vh;display:flex;flex-direction:column}.language-selector{display:flex;gap:var(--spacing-xs)}.lang-btn{padding:var(--spacing-xs) var(--spacing-sm);border:2px solid var(--color-border);background:#fff;color:var(--color-text-primary);border-radius:var(--border-radius-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm)}.lang-btn:hover{border-color:var(--color-olive-green);color:var(--color-olive-green)}.lang-btn.active{background-color:var(--color-olive-green);color:#fff;border-color:var(--color-olive-green)}.header{background:#fff;box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--color-border)}.header-content{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 0;gap:var(--spacing-lg);position:relative}.header-actions-desktop{display:flex;align-items:center}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--spacing-xs);z-index:1001}.hamburger{display:flex;flex-direction:column;gap:4px;width:24px;height:18px}.hamburger span{display:block;width:100%;height:2px;background-color:var(--color-emerald-green);transition:all var(--transition-base);border-radius:2px}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.logo{text-decoration:none;color:inherit}.logo h1{font-size:var(--font-size-xl);margin:0;color:var(--color-emerald-green)}.nav{display:flex;align-items:center;gap:var(--spacing-md);flex:1;justify-content:center}.nav-link{color:var(--color-text-primary);text-decoration:none;font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);transition:all var(--transition-fast);position:relative}.nav-link:hover:not(.nav-link-cta){color:var(--color-olive-green);background-color:var(--color-warm-beige)}.nav-link.active{color:var(--color-olive-green)}.nav-link.active:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80%;height:2px;background-color:var(--color-olive-green);border-radius:var(--border-radius-sm)}.nav-link-cta{background-color:var(--color-olive-green);color:#fff!important;padding:var(--spacing-xs) var(--spacing-md)}.nav-link-cta:hover,.nav-link-cta:focus,.nav-link-cta:active,.nav-link-cta:visited{background-color:var(--color-emerald-green);color:#fff!important;text-decoration:none}.nav-link-cta.active{background-color:var(--color-emerald-green);color:#fff!important}.nav-link-cta.active:after{display:none}.nav-language-mobile{display:none;padding:var(--spacing-md);border-top:1px solid rgba(255,255,255,.2);margin-top:var(--spacing-sm)}@media(max-width:968px){.mobile-menu-toggle{display:block}.header-actions-desktop{display:none}.nav{position:fixed;inset:0;background:var(--color-emerald-green);flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:80px var(--spacing-lg) var(--spacing-lg);transform:translate(-100%);transition:transform var(--transition-base);z-index:1000;overflow-y:auto;gap:0}.nav:before{content:"";position:absolute;top:0;left:0;right:0;height:60px;background:var(--color-emerald-green);z-index:1}.nav.mobile-open{transform:translate(0)}.mobile-menu-close{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:#fff3;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:var(--spacing-xs);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:background-color var(--transition-fast);z-index:1001}.mobile-menu-close:hover{background-color:#ffffff4d}.nav-link{width:100%;padding:var(--spacing-md);color:#fff;font-size:var(--font-size-lg);border-bottom:1px solid rgba(255,255,255,.1)}.nav-link:hover{background-color:#ffffff1a;color:#fff}.nav-link.active{background-color:#ffffff26;color:#fff}.nav-link.active:after{display:none}.nav-link-cta{margin-top:var(--spacing-md);background-color:var(--color-olive-green);text-align:center;border-radius:var(--border-radius-md)}.nav-language-mobile{display:block}}@media(max-width:640px){.logo h1{font-size:var(--font-size-lg)}.nav{padding:70px var(--spacing-md) var(--spacing-md)}.nav-link{font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-md)}}.footer{background-color:var(--color-emerald-green);color:#fff;padding:var(--spacing-xxl) 0 var(--spacing-lg);margin-top:var(--spacing-xxl)}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.footer-section h3{color:var(--color-gold-accent);margin-bottom:var(--spacing-md);font-size:var(--font-size-xl)}.footer-section p{margin-bottom:var(--spacing-sm);line-height:1.8}.footer-section strong{color:var(--color-warm-beige)}.social-links{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.social-links a{color:#fff;text-decoration:none;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid rgba(255,255,255,.3);border-radius:var(--border-radius-sm);transition:all var(--transition-fast)}.social-links a:hover{background-color:#ffffff1a;border-color:var(--color-gold-accent);color:var(--color-gold-accent)}.footer-bottom{border-top:1px solid rgba(255,255,255,.2);padding-top:var(--spacing-lg);text-align:center;color:#fffc}@media(max-width:768px){.footer{padding:var(--spacing-xl) 0 var(--spacing-md)}.footer-content{grid-template-columns:1fr;gap:var(--spacing-lg)}.footer-section h3{font-size:var(--font-size-lg)}.social-links{justify-content:flex-start}}@media(max-width:640px){.footer{padding:var(--spacing-lg) 0 var(--spacing-md)}.footer-content{gap:var(--spacing-md)}.footer-section{text-align:center}.social-links{justify-content:center}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:var(--font-weight-medium);transition:all var(--transition-base);cursor:pointer;border:2px solid transparent;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-olive-green);color:#fff!important}.btn-primary:hover:not(:disabled),.btn-primary:focus:not(:disabled),.btn-primary:active:not(:disabled),.btn-primary:visited{background-color:var(--color-emerald-green);color:#fff!important;transform:translateY(-2px);box-shadow:var(--shadow-hover)}a.btn-primary,a.btn-primary:hover,a.btn-primary:focus,a.btn-primary:active,a.btn-primary:visited{color:#fff!important;text-decoration:none}.btn-secondary{background-color:var(--color-warm-beige);color:var(--color-text-primary);border-color:var(--color-earth-brown)}.btn-secondary:hover:not(:disabled){background-color:var(--color-earth-brown);color:#fff}.btn-outline{background-color:transparent;color:var(--color-olive-green);border-color:var(--color-olive-green)}.btn-outline:hover:not(:disabled){background-color:var(--color-olive-green);color:#fff}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm)}.btn-md{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg)}@media(max-width:640px){.btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.btn-lg{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base)}}.spinner{display:inline-flex;align-items:center;justify-content:center}.spinner-circle{border:3px solid var(--color-border);border-top-color:var(--color-olive-green);border-radius:50%;animation:spin .8s linear infinite}.spinner-sm .spinner-circle{width:20px;height:20px;border-width:2px}.spinner-md .spinner-circle{width:40px;height:40px;border-width:3px}.spinner-lg .spinner-circle{width:60px;height:60px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.chatbot-toggle{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);width:60px;height:60px;border-radius:50%;background-color:var(--color-olive-green);color:#fff;border:none;box-shadow:var(--shadow-lg);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1000;transition:all var(--transition-base);font-size:1.5rem}.chatbot-toggle:hover{background-color:var(--color-emerald-green);transform:scale(1.1);box-shadow:var(--shadow-hover)}.chatbot-toggle.open{background-color:var(--color-earth-brown)}.chatbot-icon{display:flex;align-items:center;justify-content:center}.chatbot-container{position:fixed;bottom:90px;right:var(--spacing-lg);width:380px;max-width:calc(100vw - var(--spacing-xl));height:600px;max-height:calc(100vh - 120px);background:#fff;border-radius:var(--border-radius-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:999;overflow:hidden;border:1px solid var(--color-border);animation:slideUp .3s ease;transition:width .3s ease,height .3s ease}.chatbot-container.expanded{width:600px;height:700px;max-width:calc(100vw - var(--spacing-xl));max-height:calc(100vh - 120px)}@media(max-width:768px){.chatbot-container{bottom:80px;height:calc(100vh - 160px);max-height:calc(100vh - 160px)}.chatbot-container.expanded{width:calc(100vw - var(--spacing-md));height:calc(100vh - 160px);max-height:calc(100vh - 160px)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chatbot-header{background:linear-gradient(135deg,var(--color-olive-green),var(--color-emerald-green));color:#fff;padding:var(--spacing-md);display:flex;justify-content:space-between;align-items:flex-start;border-radius:var(--border-radius-xl) var(--border-radius-xl) 0 0;flex-shrink:0}.chatbot-header-actions{display:flex;gap:var(--spacing-xs);align-items:center}.chatbot-expand{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:var(--spacing-xs);width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:background-color var(--transition-fast)}.chatbot-expand:hover{background-color:#fff3}@media(max-width:768px){.chatbot-expand{display:none}}.chatbot-header-content h3{color:#fff;margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-lg)}.chatbot-subtitle{font-size:var(--font-size-sm);margin:0;opacity:.9}.chatbot-close{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:background-color var(--transition-fast)}.chatbot-close:hover{background-color:#fff3}.chatbot-messages{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);background:var(--color-broken-white)}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-track{background:var(--color-warm-beige);border-radius:var(--border-radius-sm)}.chatbot-messages::-webkit-scrollbar-thumb{background:var(--color-olive-green);border-radius:var(--border-radius-sm)}.chatbot-messages::-webkit-scrollbar-thumb:hover{background:var(--color-emerald-green)}.chatbot-message{display:flex;max-width:80%;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chatbot-message.user{align-self:flex-end;margin-left:auto}.chatbot-message.bot{align-self:flex-start;margin-right:auto}.message-content{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-lg);position:relative}.chatbot-message.user .message-content{background-color:var(--color-olive-green);color:#fff;border-bottom-right-radius:var(--border-radius-sm)}.chatbot-message.bot .message-content{background-color:#fff;color:var(--color-text-primary);border:1px solid var(--color-border);border-bottom-left-radius:var(--border-radius-sm)}.message-content p,.message-text{margin:0 0 var(--spacing-xs) 0;line-height:1.6;word-wrap:break-word;white-space:pre-wrap}.message-time{font-size:var(--font-size-xs);opacity:.7;display:block;margin-top:var(--spacing-xs)}.chatbot-input-container{padding:var(--spacing-md);background:#fff;border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-sm);align-items:center}.chatbot-input{flex:1;padding:var(--spacing-sm);border:2px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;color:#2c2c2c;background-color:#fff;transition:all var(--transition-fast)}.chatbot-input::placeholder{color:#8b6f47;opacity:.7}.chatbot-input:focus{outline:none;border-color:var(--color-olive-green);box-shadow:0 0 0 3px #6b8e231a}.chatbot-input:disabled{background-color:var(--color-warm-beige);cursor:not-allowed}.chatbot-send-btn{padding:var(--spacing-sm) var(--spacing-md);white-space:nowrap}.chatbot-send-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.chatbot-container{width:calc(100vw - var(--spacing-md));right:var(--spacing-sm);left:auto;bottom:80px;height:calc(100vh - 180px);max-height:calc(100vh - 180px);top:auto}.chatbot-container.expanded{height:calc(100vh - 180px);max-height:calc(100vh - 180px)}.chatbot-toggle{bottom:var(--spacing-sm);right:var(--spacing-sm);left:auto;width:56px;height:56px}}.card{background:#fff;border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base);border:1px solid var(--color-border)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-image{width:100%;height:200px;object-fit:cover;border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md)}@media(max-width:640px){.card{padding:var(--spacing-md)}.card-image{height:180px}.card-title{font-size:var(--font-size-lg)}}.card-title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm);color:var(--color-emerald-green)}.card-description{color:var(--color-text-secondary);line-height:1.6}.home-page{min-height:calc(100vh - 200px)}.hero{position:relative;height:80vh;min-height:500px;max-height:800px;overflow:hidden}.hero-image{width:100%;height:100%;position:relative}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0000004d,#00000080);display:flex;align-items:center;justify-content:center}.hero-content{text-align:center;color:#fff;padding:var(--spacing-xl);max-width:800px}.hero-content h1{font-size:var(--font-size-4xl);color:#fff;margin-bottom:var(--spacing-md);text-shadow:2px 2px 4px rgba(0,0,0,.5)}.hero-subtitle{font-size:var(--font-size-xl);margin-bottom:var(--spacing-xl);color:var(--color-warm-beige);text-shadow:1px 1px 2px rgba(0,0,0,.5)}.hero-actions{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.welcome-section{background:#fff}.welcome-text{max-width:800px;margin:0 auto;text-align:center;font-size:var(--font-size-lg);color:var(--color-text-secondary);line-height:1.8}.facilities-preview{background:var(--color-warm-beige)}.facilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.facility-card{transition:transform var(--transition-base)}.facility-card:hover{transform:translateY(-8px)}@media(max-width:968px){.hero{height:70vh;min-height:450px}.hero-content{padding:var(--spacing-lg)}.facilities-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}}@media(max-width:768px){.hero{height:60vh;min-height:400px}.hero-content h1{font-size:var(--font-size-3xl)}.hero-subtitle{font-size:var(--font-size-lg)}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.facilities-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.welcome-text{font-size:var(--font-size-base);padding:0 var(--spacing-sm)}}@media(max-width:640px){.hero{height:50vh;min-height:350px}.hero-content{padding:var(--spacing-md)}.hero-content h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm)}.hero-subtitle{font-size:var(--font-size-base);margin-bottom:var(--spacing-md)}.welcome-section,.facilities-preview{padding:var(--spacing-lg) 0}}.about-page{min-height:calc(100vh - 200px)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);align-items:center;margin-bottom:var(--spacing-xxl)}.about-content.reverse{direction:rtl}.about-content.reverse>*{direction:ltr}.about-text{padding:var(--spacing-lg)}.about-text h2{color:var(--color-emerald-green);margin-bottom:var(--spacing-md)}.about-text p{margin-bottom:var(--spacing-md);line-height:1.8;color:var(--color-text-secondary)}.about-image{border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.about-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.about-image:hover img{transform:scale(1.05)}.location-section{margin-top:var(--spacing-xxl)}.location-section h2{text-align:center;margin-bottom:var(--spacing-lg)}.map-placeholder{background:var(--color-warm-beige);padding:var(--spacing-xl);text-align:center;border-radius:var(--border-radius-md);margin-top:var(--spacing-md);min-height:300px;display:flex;align-items:center;justify-content:center}@media(max-width:968px){.about-content{grid-template-columns:1fr;gap:var(--spacing-lg)}.about-content.reverse{direction:ltr}.about-text{padding:var(--spacing-md)}.about-image{max-height:400px}}@media(max-width:640px){.about-content{gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.about-text h2{font-size:var(--font-size-xl)}.about-text p{font-size:var(--font-size-sm)}.location-section{margin-top:var(--spacing-lg)}.map-placeholder{min-height:200px;padding:var(--spacing-md)}}.facilities-page{min-height:calc(100vh - 200px)}.facilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.facility-card{text-align:center;position:relative}.facility-icon{font-size:3rem;margin-bottom:var(--spacing-sm)}@media(max-width:768px){.facilities-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}}@media(max-width:640px){.facilities-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.facility-icon{font-size:2.5rem}}.services-page{min-height:calc(100vh - 200px)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl)}.service-card{text-align:center}.service-icon{font-size:3rem;margin-bottom:var(--spacing-sm)}.service-schedule{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:var(--font-size-sm)}@media(max-width:768px){.services-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg)}}@media(max-width:640px){.services-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.service-icon{font-size:2.5rem}}.attractions-page{min-height:calc(100vh - 200px)}.attractions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.attraction-card{position:relative}.attraction-distance{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);color:var(--color-olive-green);font-weight:var(--font-weight-medium)}@media(max-width:768px){.attractions-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}}@media(max-width:640px){.attractions-grid{grid-template-columns:1fr;gap:var(--spacing-md)}}.restaurants-page{min-height:calc(100vh - 200px)}.restaurants-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.restaurant-card{position:relative}.restaurant-info{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.info-item{margin-bottom:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.info-item strong{color:var(--color-text-primary);margin-right:var(--spacing-xs)}@media(max-width:640px){.restaurants-grid{grid-template-columns:1fr}}.form-input{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.form-control{width:100%;padding:var(--spacing-sm);border:2px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;color:var(--color-text-primary);background-color:#fff;transition:all var(--transition-fast)}.form-control:focus{outline:none;border-color:var(--color-olive-green);box-shadow:0 0 0 3px #6b8e231a}.form-control.error{border-color:#dc3545}.form-control.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.form-error{display:block;color:#dc3545;font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}textarea.form-control{min-height:100px;resize:vertical}select.form-control{cursor:pointer}@media(max-width:640px){.form-input{margin-bottom:var(--spacing-sm)}.form-control{font-size:16px;padding:var(--spacing-sm)}.form-label{font-size:var(--font-size-sm)}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.375em;border-bottom-right-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-bottom:none;border-top:1px solid #aeaeae;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{background-color:transparent;border:1px solid #aeaeae;border-radius:.3rem;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:auto 1px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.5em;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:5em;margin:2px}.react-datepicker__month{margin:.5em;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:5em;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.375em;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.0625em);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.625em;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__children-container{width:17.25em;margin:.5em;padding-right:.25em;padding-left:.25em;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.react-datepicker-popper-offset{margin-top:-.7em}.date-picker-wrapper{margin-bottom:var(--spacing-md)}.date-picker-input{width:100%;padding:var(--spacing-sm);border:2px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;color:var(--color-text-primary);background-color:#fff;transition:all var(--transition-fast);cursor:pointer}.date-picker-input:focus{outline:none;border-color:var(--color-olive-green);box-shadow:0 0 0 3px #6b8e231a}.date-picker-input.error{border-color:#dc3545}.date-picker-input.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.react-datepicker{font-family:var(--font-family-sans);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg)}.react-datepicker__header{background-color:var(--color-olive-green);border-bottom:none;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;padding-top:var(--spacing-md)}.react-datepicker__current-month{color:#fff;font-weight:var(--font-weight-semibold);font-size:var(--font-size-lg)}.react-datepicker__day-name{color:#fff;font-weight:var(--font-weight-medium)}.react-datepicker__day{color:var(--color-text-primary);border-radius:var(--border-radius-sm);transition:all var(--transition-fast)}.react-datepicker__day:hover{background-color:var(--color-warm-beige);border-radius:var(--border-radius-sm)}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background-color:var(--color-olive-green);color:#fff;border-radius:var(--border-radius-sm)}.react-datepicker__day--selected:hover,.react-datepicker__day--keyboard-selected:hover{background-color:var(--color-emerald-green)}.react-datepicker__day--disabled{color:var(--color-text-light);cursor:not-allowed}.react-datepicker__day--today{font-weight:var(--font-weight-bold);color:var(--color-olive-green)}.react-datepicker__day--range-start,.react-datepicker__day--range-end{background-color:var(--color-olive-green);color:#fff}.react-datepicker__day--in-range{background-color:var(--color-warm-beige);color:var(--color-text-primary)}.react-datepicker__navigation{top:var(--spacing-md)}.react-datepicker__navigation-icon:before{border-color:#fff}.react-datepicker__navigation:hover *:before{border-color:var(--color-warm-beige)}.react-datepicker__triangle{display:none}@media(max-width:768px){.date-picker-input{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm)}}@media(max-width:640px){.react-datepicker{font-size:var(--font-size-sm);width:100%!important}.react-datepicker__current-month{font-size:var(--font-size-base)}.date-picker-wrapper{margin-bottom:var(--spacing-sm)}}.booking-page{min-height:calc(100vh - 200px);background:var(--color-warm-beige);padding-bottom:var(--spacing-xxl)}.search-card{margin-bottom:var(--spacing-xl);background:#fff}.search-form{width:100%}.search-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);align-items:flex-end}.search-button{display:flex;align-items:flex-end}.search-button .btn{width:100%}.search-loading{text-align:center;padding:var(--spacing-xxl)}.search-loading p{margin-top:var(--spacing-md);color:var(--color-text-secondary)}.search-results{margin-top:var(--spacing-xl)}.results-title{margin-bottom:var(--spacing-lg);color:var(--color-emerald-green)}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-xl)}.room-card{display:flex;flex-direction:column;overflow:hidden}.room-card-image{width:100%;height:250px;object-fit:cover;border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md)}.room-card-content{flex:1;display:flex;flex-direction:column}.room-card-content h3{color:var(--color-emerald-green);margin-bottom:var(--spacing-sm)}.room-description{color:var(--color-text-secondary);margin-bottom:var(--spacing-md);flex:1}.room-features{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-warm-beige);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm)}.total-price{grid-column:1 / -1;padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);font-size:var(--font-size-base);color:var(--color-olive-green)}.room-amenities{margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.select-room-btn{width:100%;margin-top:auto}.no-results{text-align:center;padding:var(--spacing-xl);margin-top:var(--spacing-xl)}.back-button{margin-bottom:var(--spacing-lg)}.booking-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.room-summary{position:sticky;top:100px;height:fit-content}.room-summary h2{color:var(--color-emerald-green);margin-bottom:var(--spacing-md)}.room-image{width:100%;height:300px;object-fit:cover;border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md)}.room-summary h3{color:var(--color-emerald-green);margin-bottom:var(--spacing-sm)}.room-info{margin:var(--spacing-md) 0;padding:var(--spacing-md);background:var(--color-warm-beige);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm)}.room-info div{margin-bottom:var(--spacing-xs)}.price-summary{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:2px solid var(--color-border)}.price-row{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm)}.price-row.total{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);font-size:var(--font-size-lg);color:var(--color-emerald-green)}.booking-form{max-width:100%}.form-section{margin-bottom:var(--spacing-xl)}.form-section h2{color:var(--color-emerald-green);margin-bottom:var(--spacing-lg);font-size:var(--font-size-2xl)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.booking-dates{background:var(--color-warm-beige);padding:var(--spacing-md);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md)}.booking-dates div{margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm)}.payment-note{background:var(--color-warm-beige);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);border-left:3px solid var(--color-gold-accent)}.checkbox-label{display:flex;align-items:flex-start;cursor:pointer;gap:var(--spacing-sm)}.checkbox-input{margin-top:4px;width:18px;height:18px;cursor:pointer;accent-color:var(--color-olive-green)}.checkbox-label span{line-height:1.5}.form-actions{text-align:center;margin-top:var(--spacing-xl)}.form-actions .btn{min-width:200px;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.status-card{margin-bottom:var(--spacing-xl);text-align:center}.status-card.success{background:#d4edda;border-color:#c3e6cb}.status-card.success h3{color:#155724}.status-card.error{background:#f8d7da;border-color:#f5c6cb}.status-card.error h3{color:#721c24}@media(max-width:968px){.booking-layout{grid-template-columns:1fr;gap:var(--spacing-lg)}.room-summary{position:static}.search-row,.rooms-grid{grid-template-columns:1fr}.search-button,.search-button .btn{width:100%}}@media(max-width:768px){.booking-page{padding-bottom:var(--spacing-lg)}.search-card{margin-bottom:var(--spacing-lg)}.form-row{grid-template-columns:1fr}.form-actions .btn{width:100%}.room-features{grid-template-columns:1fr}.room-card-image{height:200px}.room-image{height:250px}.price-summary{margin-top:var(--spacing-md)}}@media(max-width:640px){.search-card{padding:var(--spacing-md)}.rooms-grid{gap:var(--spacing-md)}.room-card-content h3{font-size:var(--font-size-lg)}.form-section{padding:var(--spacing-md)}.form-section h2{font-size:var(--font-size-xl)}.booking-dates{font-size:var(--font-size-sm)}}:root{--color-olive-green: #6B8E23;--color-warm-beige: #F5E6D3;--color-earth-brown: #8B6F47;--color-broken-white: #FAF8F3;--color-emerald-green: #2D5016;--color-gold-accent: #D4AF37;--color-text-primary: #5A4A3A;--color-text-secondary: #8B6F47;--color-text-light: #A09080;--color-border: #E8DCC8;--color-shadow: rgba(107, 142, 35, .1);--color-shadow-hover: rgba(107, 142, 35, .2);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-xxl: 4rem;--font-family-serif: "Georgia", "Times New Roman", serif;--font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--border-radius-sm: .25rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease;--shadow-sm: 0 2px 4px var(--color-shadow);--shadow-md: 0 4px 8px var(--color-shadow);--shadow-lg: 0 8px 16px var(--color-shadow);--shadow-hover: 0 4px 12px var(--color-shadow-hover)}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden;width:100%}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text-primary);background-color:var(--color-broken-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;width:100%;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-serif);font-weight:var(--font-weight-bold);line-height:1.2;color:var(--color-emerald-green);margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}a{color:var(--color-olive-green);text-decoration:none;transition:color var(--transition-fast)}a:hover:not(.btn):not(.btn-primary):not(.btn-secondary):not(.btn-outline){color:var(--color-emerald-green)}button{font-family:inherit;cursor:pointer;border:none;transition:all var(--transition-base)}input,textarea,select{font-family:inherit;font-size:inherit}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-xxl) 0}.section-title{text-align:center;margin-bottom:var(--spacing-xl);position:relative}.section-title:after{content:"";display:block;width:80px;height:3px;background:var(--color-gold-accent);margin:var(--spacing-md) auto 0;border-radius:var(--border-radius-sm)}.text-center{text-align:center}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}@media(max-width:968px){.container{padding:0 var(--spacing-md)}}@media(max-width:768px){.container{padding:0 var(--spacing-sm)}.section{padding:var(--spacing-xl) 0}.section-title{margin-bottom:var(--spacing-lg)}.section-title:after{width:60px}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}}@media(max-width:640px){.container{padding:0 var(--spacing-sm)}.section{padding:var(--spacing-lg) 0}.section-title{margin-bottom:var(--spacing-md);font-size:var(--font-size-xl)}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}}.app{min-height:100vh;display:flex;flex-direction:column;width:100%;overflow-x:hidden}.main-content{flex:1;width:100%;overflow-x:hidden}@media(max-width:640px){.app{min-height:100vh;min-height:-webkit-fill-available}}
