@charset "UTF-8";.navbar{position:sticky;top:0;background:#fff;border-bottom:1px solid #e5e7eb;z-index:1000}.nav-container{max-width:1200px;margin:auto;padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.55rem;font-weight:700;font-family:Playfair Display,serif;letter-spacing:.5px}.logo-link{display:flex;align-items:center;gap:5px;text-decoration:none}.logo-img{width:60px;height:60px;object-fit:contain;display:block}.logo-text{display:flex;flex-direction:column;line-height:1.05}.logo-main{font-family:Pacifico,cursive;font-size:1.7rem;color:#1f5e4b;letter-spacing:1px;line-height:45px}.logo-sub{font-size:.85rem;font-weight:600;color:#047857;letter-spacing:2px;text-transform:uppercase}.logo a:hover .logo-main{color:#2f7a38}.logo a:hover{color:#2f7a38;transform:translateY(-1px)}.nav-links{display:flex;align-items:center;gap:1.5rem}.navbar .nav-links a{text-decoration:none;color:#0f172a;font-weight:500}.navbar .nav-links a:hover{color:#047857}.hamburger{display:none;flex-direction:column;cursor:pointer}.hamburger span{width:25px;height:3px;background:#0f172a;margin:4px 0}@media(max-width:768px){.hamburger{display:flex}.nav-links{position:absolute;top:72px;left:0;right:0;width:100%;box-sizing:border-box;background:#fff;flex-direction:column;align-items:stretch;padding:1rem 1.25rem;gap:1rem;display:none}.nav-links.open{display:flex}.nav-links button{width:100%}}a.btn-primary.small{color:#fff}:root{--primary: #1f7a5c;--light-bg: #f5f7f6;--dark: #1f2933;--accent: #d4af37}.home-page{color:var(--dark);background:#fff;line-height:1.6;font-family:Segoe UI,sans-serif}.home-hero{height:60vh;background-size:cover;background-position:center;position:relative}.home-hero-overlay{background:var(--primary)a0;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;text-shadow:0 0 20px black,0 0 30px black,0 0 40px black;text-align:center;padding:2rem}.home-hero-overlay h1{font-size:3rem;margin-bottom:1rem}.home-container,.home-section{padding:4rem 8%}.home-section.light{background:var(--light-bg)}.center{text-align:center;max-width:700px;margin:auto;margin-bottom:2rem}.highlight{color:var(--primary);font-weight:600}.grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.image-box img{width:100%;border-radius:16px;box-shadow:0 10px 40px #00000026}.room-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.room-card{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 8px 25px #00000014;transition:transform .3s ease}.room-card:hover{transform:translateY(-5px)}.room-card h3{color:var(--primary);margin-bottom:1rem}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;max-width:800px;margin:auto}.amenities-grid div{background:#fff;padding:1rem;border-radius:12px;text-align:center;font-weight:500}.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem}.why-card{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 8px 25px #00000014}.why-card h4{color:var(--accent);margin-bottom:.5rem}footer{background:#111827;color:#d1d5db;text-align:center;padding:1.5rem;font-size:.9rem}@media(max-width:768px){.grid{grid-template-columns:1fr}.hero-overlay h1{font-size:2.2rem}}.home-hero-slider{position:absolute;inset:0}.home-hero-slider img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transform:translate(100%);transition:all .8s ease-in-out}.home-hero-slider img.active{opacity:1;transform:translate(0);z-index:1}.home-hero-slider img:not(.active){transform:translate(-100%)}.home-hero{transition:background-image .8s ease-in-out}.image-box{flex:1;aspect-ratio:16 / 9;max-height:380px;width:100%;overflow:hidden;border-radius:16px;position:relative;box-shadow:0 20px 40px #0006}.about{background:var(--off-white)}.hero{background:#faf7f2;padding:4rem 1.5rem}.hero-content{max-width:1200px;margin:auto;display:flex;align-items:center;gap:3rem}.hero-text{flex:1}.hero-image{flex:1;aspect-ratio:16 / 9;max-height:380px;width:100%;overflow:hidden;border-radius:16px;position:relative;box-shadow:0 20px 40px #0006}.hero-slider{display:flex;height:100%;width:100%;transition:transform .9s ease-in-out}.hero-slider img{width:100%;height:100%;object-fit:cover;flex-shrink:0}@media(max-width:768px){.hero-content{flex-direction:column-reverse;text-align:center;gap:2rem}.hero-image{max-height:240px;aspect-ratio:4 / 3}.hero-actions{justify-content:center;flex-wrap:wrap}}@media(max-width:768px){.hero-content{flex-direction:column-reverse;text-align:center}.hero-actions{justify-content:center}}.badge{display:inline-block;background:var(--accent-gold);color:#000;padding:6px 14px;border-radius:20px;font-size:14px;margin-bottom:16px}.hero h1{font-size:48px;line-height:1.2;color:var(--primary-green)}.hero p{margin-top:20px;color:var(--text-muted);font-size:18px}.hero-actions{margin-top:30px;display:flex;gap:16px}.location{padding:60px 10%}.features{padding:0 10% 40px;text-align:center}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:40px}.feature-card{background:#fff;padding:20px;border-radius:16px;font-size:18px;box-shadow:0 10px 30px #00000014}.cta{padding:10px 10%;text-align:center;background:var(--primary-green);color:#fff}.cta p{margin:16px 0 30px}.btn-primary{background:var(--primary-green);color:#fff;padding:14px 26px;border-radius:12px;border:2px solid transparent;cursor:pointer}.btn-outline{background:transparent;border:2px solid var(--primary-green);color:var(--primary-green);padding:12px 24px;border-radius:12px}.large{font-size:18px}.gallery{background:var(--off-white)}.gallery-Item{padding:60px 10%}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}a.btn-primary,a.btn-outline{text-decoration:none}a.btn-primary:hover{background:transparent;color:var(--primary-green);text-decoration:none;border:2px solid var(--primary-green)}a.btn-outline:hover{background:var(--primary-green);color:#fff;text-decoration:none}.location-list{text-align:left;padding-left:1.2rem;margin-left:0}.location-list li{margin-bottom:.8rem;font-size:1.1rem;color:#334155}.gallery{padding:4rem 1.5rem;background:#f8fafc;text-align:center}.gallery h2{text-align:center;font-size:36px;color:var(--primary-green);margin-bottom:40px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;max-width:1200px;margin:0 auto}.gallery-item{position:relative;overflow:hidden;border-radius:18px;cursor:zoom-in;box-shadow:0 12px 35px #00000026;transition:transform .35s ease,box-shadow .35s ease;background:#fff}.gallery-item:hover{transform:scale(1.05);box-shadow:0 25px 60px #0000004d}.gallery-item img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .4s ease}.gallery-item:hover img{transform:scale(1.1)}.lightbox{position:fixed;inset:0;background:#000000eb;display:flex;align-items:center;justify-content:center;z-index:9999}.lightbox-img{max-width:90%;max-height:90%;border-radius:12px;cursor:zoom-in;transition:transform .3s ease}.lightbox-img:active{transform:scale(1.8);cursor:zoom-out}.lightbox-close{position:absolute;top:24px;right:28px;font-size:32px;background:transparent;border:none;color:#fff;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.lightbox-close:hover{transform:scale(1.2);opacity:.8}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#0009;color:#fff;border:none;font-size:40px;padding:12px 18px;cursor:pointer;border-radius:50%;transition:background .2s ease,transform .2s ease}.lightbox-nav:hover{background:#000000d9;transform:translateY(-50%) scale(1.1)}.lightbox-nav.prev{left:20px}.lightbox-nav.next{right:20px}@media(max-width:900px){.gallery-item img{height:230px}}@media(max-width:600px){.gallery h2{font-size:1.6rem}.gallery-item img{height:200px}.lightbox-nav{font-size:28px;padding:8px 12px}.lightbox-close{font-size:26px;top:16px;right:18px}}.room-features{margin:4rem auto;max-width:1200px}.section-title{text-align:center;font-size:2rem;color:#2f6f55;margin-bottom:2.5rem}.feature-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:2.5rem;align-items:stretch}@media(max-width:1024px){.feature-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.feature-cards{grid-template-columns:1fr}}.feature-card{background:#fff;border-radius:18px;padding:1.6rem;box-shadow:0 10px 30px #00000014;transition:all .25s ease}.booking-page .feature-card{cursor:pointer;border:2px solid transparent}.booking-page .feature-card:hover{transform:translateY(-6px)}.booking-page .feature-card.selected{border:5px solid #2f6f55;box-shadow:0 0 0 2px #2f6f5540,0 15px 35px #2f6f5559}.feature-card img{width:100%;border-radius:14px;margin-bottom:1rem;height:180px;object-fit:cover}.feature-card h3{font-size:1.15rem;color:#2f6f55}.subtitle{color:#6b7280;font-size:.9rem;margin:.3rem 0 .6rem}.price{font-weight:600;margin-bottom:.8rem}.price .old{margin-left:.5rem;text-decoration:line-through;color:#9ca3af}.price .discount{margin-left:.5rem;color:#16a34a;font-size:.8rem;font-weight:600}.feature-card ul{padding-left:1rem;margin-bottom:.8rem}.feature-card li{font-size:.85rem;margin-bottom:.3rem}.hint{font-size:.8rem;color:#6b7280}.feature-card.highlight{background:linear-gradient(180deg,#fdfbf6,#fbf9f3)}.proceed-wrapper{text-align:center;margin-top:3rem}@media(max-width:600px){.room-features{margin:2.5rem 1rem}}.feature-card.disabled{opacity:.4;pointer-events:none;filter:grayscale(100%);cursor:not-allowed;position:relative}.feature-card.disabled:after{content:"Temporarily Held";position:absolute;inset:0;background:#ffffffbf;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:600;color:#374151;border-radius:18px}.feature-card.booked{opacity:.35;pointer-events:none;filter:grayscale(100%);position:relative}.room-badge{position:absolute;top:12px;right:12px;padding:4px 10px;font-size:.7rem;font-weight:600;border-radius:999px}.room-badge.booked{background:#dc2626;color:#fff}.room-badge.locked{background:#f59e0b;color:#000}.room-header{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem;text-align:center}.room-header .guest-type-label{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.75rem;text-align:center}.room-header .guest-type-options{display:flex;justify-content:center;gap:1.5rem;margin-top:.5rem;flex-wrap:wrap}.embedded-map{padding:80px 6%;background:#faf7f2}.section-title{text-align:center;font-size:36px;color:var(--primary-green);margin-bottom:40px}.map-card{display:block;position:relative;max-width:1200px;height:420px;margin:auto;border-radius:18px;overflow:hidden;box-shadow:0 20px 40px #00000026;cursor:pointer;text-decoration:none}.map-card iframe{width:100%;height:100%;border:0}.map-overlay{position:absolute;bottom:12px;right:12px;background:#0009;color:#fff;padding:6px 12px;border-radius:12px;font-size:12px;pointer-events:none}@media(max-width:768px){.map-card{height:300px}.section-title{font-size:28px}}.contact-section{background:#0f172a;color:#e5e7eb;padding:80px 6% 30px;text-align:left}.contact-container{max-width:1200px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:40px}.contact-info h2{font-size:32px;margin-bottom:16px}.contact-info p{color:#9ca3af;margin-bottom:24px}.contact-links a{display:inline-block;margin-right:16px;margin-bottom:12px;text-decoration:none;font-weight:500}.whatsapp{color:#22c55e}.email{color:#60a5fa}.call-link{color:#fff}.contact-form h3{margin-bottom:16px}.contact-form form{display:flex;flex-direction:column;gap:12px}.contact-form input,.contact-form textarea{padding:12px;border-radius:8px;border:none;font-family:inherit}.contact-form button{align-self:flex-start}.contact-section .copyright{text-align:center;margin-top:40px;font-size:14px;color:#9ca3af}@media(max-width:768px){.contact-container{grid-template-columns:1fr}}.star-input{margin:10px 0 18px;font-size:28px;cursor:pointer;-webkit-user-select:none;user-select:none}.star{color:#dcdcdc;transition:.2s;margin-right:4px}.star:hover{transform:scale(1.15)}.star.filled{color:#d4af37}.rating-error{color:#d9534f;font-size:.85rem;margin-top:6px}.review-marquee{padding:70px 20px;background:#fdfbf6;overflow:hidden}.section-title{text-align:center;margin-bottom:32px;font-size:1.9rem;font-weight:600;color:#1f5e4b}.marquee{overflow:hidden;position:relative}.marquee-track{display:flex;gap:28px;width:max-content;animation:scroll 32s linear infinite;align-items:stretch}.review-card{min-width:340px;max-width:340px;padding:24px 26px;background:#fff;border-radius:18px;box-shadow:0 8px 18px #0000000d,0 3px 8px #0000000a;border-left:4px solid #1f5e4b;position:relative;transition:all .25s ease;min-height:150px;display:flex;flex-direction:column;justify-content:center}.review-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px #0000001f}.review-card:before{content:"“";position:absolute;top:6px;left:14px;font-size:3rem;color:#e6f2ee;font-family:serif;font-weight:700}.review-text{font-style:italic;font-size:1.1rem;line-height:1.2;color:#2d2d2d;font-family:Playfair Display,serif;margin-bottom:14px;padding-left:10px}.stars{color:#d4af37;font-size:14px;margin-bottom:6px}.danger{background:#ff4d4f;color:#fff}.review-author{font-weight:600;color:#1f5e4b;font-size:.88rem;letter-spacing:.5px}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee:hover .marquee-track{animation-play-state:paused}@media(max-width:768px){.review-card{min-width:260px;max-width:260px;padding:18px}.review-text{font-size:.9rem}}.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}.luxury-card{background:linear-gradient(180deg,#fdfbf6,#fbf9f3);border-radius:10px;padding:3rem;width:95%;margin:2rem auto;box-shadow:0 10px 55px #00000014}.date-header{text-align:center;margin-bottom:2.5rem}.date-title{font-size:2rem;font-weight:600;color:#2f6f55;letter-spacing:.4px}.date-subtitle{margin-top:.4rem;font-size:.95rem;color:#6b7280}.date-grid{display:flex;justify-content:center;align-items:start;gap:2.5rem}.date-field{display:flex;flex-direction:column}.date-label{font-size:.8rem;font-weight:600;color:#2f6f55;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.6px}.date-input-wrapper{width:100%}.date-input-wrapper input{width:100%!important;height:52px;padding:.85rem 1rem;border-radius:14px;border:1px solid #d8caa0;background-color:#fff;font-size:.95rem;color:#2f6f55;box-sizing:border-box;transition:all .25s ease;cursor:pointer}.date-input-wrapper input:hover{border-color:#c9b27d}.date-input-wrapper input:focus{outline:none;border-color:#2f6f55;box-shadow:0 0 0 3px #2f6f5526}.date-input-wrapper input:disabled{background-color:#f3f4f6;cursor:not-allowed}.date-hint{margin-top:1.6rem;text-align:center;font-size:.85rem;color:#6b7280}.next-step{margin-top:2.8rem;text-align:center}.next-step .arrow{margin-left:.4rem;font-size:1.1rem}.lux-calendar{border-radius:18px;border:none;overflow:hidden;box-shadow:0 25px 65px #00000040;font-family:inherit}.react-datepicker__header{background-color:#2f6f55;border-bottom:none;padding:1rem}.react-datepicker__current-month,.react-datepicker__day-name{color:#fff;font-weight:500}.react-datepicker__day{border-radius:50%;color:#2f6f55;transition:all .2s ease}.react-datepicker__day:hover{background-color:#c9b27d;color:#fff}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background-color:#2f6f55;color:#fff}.react-datepicker__day--in-range{background-color:#2f6f5526}.react-datepicker__day--disabled{color:#d1d5db}@media(max-width:640px){.luxury-card{padding:1.8rem}.date-grid{grid-template-columns:1fr}.date-title{font-size:1.6rem}}.checkout-page{max-width:1200px;margin:4rem auto;padding:0 1rem}.checkout-title{text-align:center;font-size:2.2rem;color:#2f6f55;margin-bottom:3rem}.checkout-layout{display:grid;grid-template-columns:2fr 1.2fr;gap:3rem}.checkout-card,.checkout-summary{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 15px 40px #00000014}.checkout-card h3,.checkout-summary h3{color:#2f6f55;margin-bottom:1rem}.summary-row{display:flex;justify-content:space-between;font-size:.95rem;margin-bottom:.6rem}.summary-divider{height:1px;background:#e5e7eb;margin:1.2rem 0}.summary-total{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:600;margin-bottom:1.5rem}.checkout-btn{width:100%}.secure-text{text-align:center;font-size:.8rem;color:#6b7280;margin-top:1rem}@media(max-width:900px){.checkout-layout{grid-template-columns:1fr}}.payment-page{min-height:100vh;padding:60px 6%;background:linear-gradient(180deg,#fdfbf6,#f7f4ee);display:flex;gap:40px;align-items:flex-start}.payment-summary{flex:1}.payment-summary h2{color:#2f855a;margin-bottom:16px}.summary-box{background:#fff;border-radius:12px;padding:24px;box-shadow:0 10px 40px #00000014}.summary-box p{margin:10px 0;font-size:.95rem;color:#374151}.summary-box hr{margin:16px 0;border:none;border-top:1px solid #e5e7eb}.summary-box .total{margin-top:16px;font-size:1.4rem;color:#2f855a}.payment-form{flex:1;background:#fff;border-radius:12px;padding:32px;box-shadow:0 10px 40px #00000014}.payment-form h2{color:#2f855a;margin-bottom:20px}.payment-form input{width:100%;padding:12px 14px;margin-bottom:14px;border-radius:8px;border:1px solid #e5e7eb;font-size:.95rem;outline:none}.payment-form input:focus{border-color:#2f855a}.checkbox-row{display:flex;align-items:center;justify-content:flex-start;gap:10px;font-size:1rem;font-weight:600;margin:14px 0 24px;color:#2f855a}.payment-form input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid #e5e7eb;font-size:.9rem;background:#fff}.guest-row{display:grid;grid-template-columns:1fr 90px 32px;gap:10px;align-items:center;margin-bottom:10px}.remove-btn{background:#fee2e2;border:none;color:#991b1b;border-radius:6px;height:32px;width:32px;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center}.remove-btn:hover{background:#fecaca}.add-btn{width:auto;background:#edfdf5;color:#276749;border:1px dashed #2f855a;padding:8px 14px;border-radius:8px;font-size:.85rem;cursor:pointer;margin-bottom:16px}.pay-btn{display:block;width:auto;min-width:260px;margin:20px auto 0;background:linear-gradient(135deg,#2f855a,#276749);color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:.95rem;cursor:pointer}.pay-btn:hover{box-shadow:0 8px 18px #2f855a4d;transform:translateY(-1px)}@media(max-width:1024px){.payment-page{padding:40px 5%;gap:24px}.summary-box,.payment-form{padding:24px}.summary-box .total{font-size:1.2rem}}@media(max-width:768px){.payment-page{flex-direction:column;padding:24px 5%}.payment-summary,.payment-form{width:100%}.summary-box,.payment-form{padding:20px}.payment-form h2{font-size:1.2rem}.summary-box p{font-size:.9rem}.guest-row{grid-template-columns:1fr 70px 32px}.checkbox-row{font-size:.95rem}.pay-btn{min-width:100%;padding:12px;font-size:1rem}}@media(max-width:480px){.payment-page{padding:16px 4%}.summary-box,.payment-form{padding:16px;border-radius:10px}.summary-box .total{font-size:1.1rem}.guest-row{grid-template-columns:1fr 60px 28px}.add-btn{width:100%}.checkbox-row{flex-wrap:wrap;line-height:1.3}}.payment-form label.checkbox-row{display:inline-flex;justify-content:flex-start;width:auto;padding-bottom:0}.guest-type-group{margin:16px 0 24px}.guest-type-label{font-size:.95rem;font-weight:600;color:#2f855a;margin-bottom:8px}.guest-type-label span{color:#201e1e}.guest-type-options{display:flex;gap:20px}.radio-option{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;font-weight:500;color:#374151;cursor:pointer}.radio-option input{accent-color:#2f855a}.info-icon{position:relative;display:inline-block;margin-left:6px;font-size:.85rem;cursor:help;color:#2f855a}.tooltip{visibility:hidden;opacity:0;width:220px;background:#bfc2c5;color:#f9fafb;text-align:left;border-radius:6px;padding:8px 10px;position:absolute;z-index:10;bottom:130%;left:50%;transform:translate(-50%);font-size:.75rem;line-height:1.3;transition:opacity .2s ease}.tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:6px;border-style:solid;border-color:#1f2933 transparent transparent transparent}.info-icon:hover .tooltip{visibility:visible;opacity:1}.spinner-group{display:flex;align-items:center;justify-content:center;gap:10px}.spinner{width:18px;height:18px;border:3px solid rgba(255,255,255,.4);border-top:3px solid #fff;border-radius:50%;animation:spin .8s linear infinite}.pay-btn:disabled{opacity:.7;cursor:not-allowed}.form-error{color:#c0392b;font-size:.85rem;margin-top:-8px;margin-bottom:8px}.email-verification-section{margin-top:12px;margin-bottom:12px}.otp-btn{display:block;width:auto;min-width:260px;padding:10px;margin:20px auto 0;background-color:#2f855a;color:#fff;border:none;border-radius:8px;font-size:.8rem;cursor:pointer;font-weight:500;transition:background-color .3s ease}.otp-btn:hover:not(:disabled){background-color:#2980b9}.otp-btn:disabled{background-color:#95a5a6;cursor:not-allowed;opacity:.7}.otp-input-group{display:flex;flex-direction:column;gap:10px;margin-top:12px}.otp-input-group input{padding:12px;border:2px solid #ecf0f1;border-radius:4px;font-size:1rem;letter-spacing:2px;text-align:center;font-weight:700;transition:border-color .3s ease}.otp-input-group input:focus{outline:none;border-color:#3498db}.otp-input-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.verify-otp-btn,.resend-otp-btn{padding:10px;border:none;border-radius:4px;font-size:.95rem;cursor:pointer;font-weight:500;transition:all .3s ease}.verify-otp-btn{background-color:#27ae60;color:#fff}.verify-otp-btn:hover:not(:disabled){background-color:#229954}.verify-otp-btn:disabled{background-color:#95a5a6;cursor:not-allowed;opacity:.7}.resend-otp-btn{background-color:#e8f4f8;color:#3498db;border:2px solid #3498db;padding:8px}.resend-otp-btn:hover:not(:disabled){background-color:#d4e9f4}.resend-otp-btn:disabled{background-color:#ecf0f1;color:#95a5a6;border-color:#95a5a6;cursor:not-allowed}.verification-success{margin-top:12px;padding:12px;background-color:#d4edda;border:2px solid #28a745;border-radius:4px}.form-success{color:#155724;font-size:.95rem;margin:0;font-weight:500}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#fdfbf6,#f5f1e8);padding:40px}.admin-login-card{background:#fff;max-width:420px;width:100%;padding:40px 36px;border-radius:20px;box-shadow:0 20px 40px #00000014;text-align:center}.admin-login-card h1{font-size:1.8rem;color:#1f2933;margin-bottom:8px}.admin-login-card input{width:100%;padding:12px 14px;border-radius:10px;border:1px solid #d1d5db;font-size:.95rem;margin-bottom:18px;outline:none;transition:border .2s,box-shadow .2s}.admin-login-card input:focus{border-color:#3b7f3f;box-shadow:0 0 0 3px #3b7f3f26}.admin-btn-primary{background:linear-gradient(135deg,#2f7a38,#3fa34d);color:#fff;border:none;width:100%;padding:12px;border-radius:12px;font-size:.95rem;cursor:pointer;transition:transform .15s,box-shadow .15s}.admin-btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 20px #2f7a3840}.error-text{margin-top:16px;font-size:.85rem;color:#dc2626}.password-wrapper{position:relative;width:100%;margin-bottom:6px}.password-wrapper input{width:100%;padding-right:44px;margin-bottom:0}.toggle-password{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1rem;color:#6b7280}.forgot-password{text-align:right;font-size:.8rem;color:#2f7a38;cursor:pointer;margin-bottom:18px}.forgot-password:hover{text-decoration:underline}.info-text{margin-top:14px;font-size:.85rem;color:#16a34a;text-align:center}.error-text{margin-top:14px;font-size:.85rem;color:#dc2626;text-align:center}.admin-login-card input{box-sizing:border-box}.admin-btn-primary:disabled{opacity:.8;cursor:not-allowed}.spinner{width:18px;height:18px;border:3px solid rgba(255,255,255,.4);border-top:3px solid #ffffff;border-radius:50%;display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.admin-container{padding:2.5rem;background:#faf9f6;min-height:100vh}.admin-title{font-size:2.5rem;margin-bottom:2rem;color:#1f5e4b}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2.5rem}.stat-card{background:#fff;border-radius:14px;padding:1.5rem;box-shadow:0 10px 25px #0000000d}.stat-card h3{color:#777;margin-bottom:.5rem;font-weight:500}.stat-card p{font-size:2rem;color:#1f5e4b;font-weight:700}.admin-card{background:#fff;padding:2rem;border-radius:18px;box-shadow:0 12px 30px #0000000f;overflow-x:auto}.admin-card h2{margin-bottom:1.5rem;color:#1f5e4b}.admin-table{width:100%;border-collapse:collapse;min-width:1100px}.admin-table th,.admin-table td{padding:1rem;text-align:left;vertical-align:top}.admin-table th{background:#f1f5f3;font-size:.85rem;letter-spacing:.6px;text-transform:uppercase;color:#555}.admin-table td{font-size:.92rem;color:#444;line-height:1.45}.admin-table tr:not(:last-child){border-bottom:1px solid #eee}.admin-table tr.blocked-row{background-color:#fff9f0}.admin-table tr.blocked-row td{color:#c26c0f}.admin-table tr.blocked-row .guest-name{color:#c26c0f;font-style:italic}.admin-menu{display:flex;gap:20px}.admin-link{padding:12px 20px;background:#1f5e4b;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;transition:.3s}.admin-link:hover{background:#444}.status{padding:.4rem .8rem;border-radius:20px;font-size:.8rem;text-transform:capitalize;display:inline-block}.status.pending{background:#fff3cd;color:#856404}.status.confirmed{background:#e6fffa;color:#065f46}.status.cancelled{background:#fee2e2;color:#991b1b}.status.cancelled-refunded{background:#ede9fe;color:#b63721}.refund-id{font-size:12px;color:#af3f07}.no-refund{color:#9ca3af}.guest-name{font-weight:600;color:#1f5e4b}.guest-sub{font-size:.8rem;color:#777}.room-tag{background:#eef7f4;color:#1f5e4b;padding:4px 8px;border-radius:8px;font-size:.75rem;margin-right:5px;display:inline-block}.address-block{font-size:.8rem;color:#666;line-height:1.35}.payment-id{font-size:.75rem;color:#666;word-break:break-all}.payment-paid{color:#16a34a;font-weight:600}.payment-pending{color:#dc2626;font-weight:600}.amount-main{font-weight:600;color:#1f5e4b}.amount-sub{font-size:.75rem;color:#777}.btn-small{background:#1f5e4b;color:#fff;border:none;padding:.45rem .95rem;border-radius:8px;cursor:pointer;font-size:.85rem;transition:all .2s ease}.btn-small:hover{opacity:.9;transform:translateY(-1px)}.block-form{display:flex;flex-direction:row;gap:1rem;align-items:flex-end;flex-wrap:wrap}.block-form>select{padding:.65rem .75rem;border:1.5px solid #ddd;border-radius:8px;font-size:.9rem}.date-picker-wrapper{display:flex;flex-direction:column;gap:.3rem}.date-picker-wrapper label{font-weight:600;color:#333;font-size:.85rem}.date-picker{padding:.65rem!important;border:1.5px solid #ddd!important;border-radius:8px!important;font-size:.9rem!important}.date-picker:focus{outline:none!important;border-color:#1f5e4b!important;box-shadow:0 0 0 3px #1f5e4b1a!important}.selected-dates{background:#f0f9f7;border:2px solid #1f5e4b;border-radius:8px;padding:1rem;margin-top:1rem;width:100%}.selected-dates p{margin:.5rem 0;color:#1f5e4b;font-weight:500}.react-datepicker__current-month{color:#fff!important}.selected-dates button{margin-top:.5rem}.admin-filters{display:flex;gap:12px;margin-bottom:16px}.filter-input{flex:1;padding:8px 10px;border:1px solid #ddd;border-radius:6px}.filter-select{padding:8px 10px;border-radius:6px}.guest-cell{position:relative}.guest-tooltip{position:absolute;top:100%;left:0;background:#fff;border:1px solid #ddd;padding:8px 12px;border-radius:8px;box-shadow:0 8px 20px #0000001a;font-size:.8rem;color:#333;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}.guest-cell:hover .guest-tooltip{opacity:1}.react-datepicker__day.available-day{background-color:#4caf50!important;color:#fff!important;font-weight:600!important;border:2px solid #388E3C!important;border-radius:6px!important}.react-datepicker__day.available-day:hover{background-color:#388e3c!important;transform:scale(1.05);box-shadow:0 2px 8px #4caf5066}.react-datepicker__day.unavailable-day{background-color:#f44336!important;color:#fff!important;font-weight:600!important;border:2px solid #C62828!important;border-radius:6px!important;position:relative;opacity:.85}.react-datepicker__day.unavailable-day:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60%;height:2px;background-color:#fff}.react-datepicker__day.unavailable-day:hover{background-color:#c62828!important;opacity:1}.react-datepicker__day.past-day,.react-datepicker__day--disabled.past-day{background-color:transparent!important;color:#9e9e9e!important;font-weight:400!important;border:none!important;opacity:.7!important;cursor:default!important}.react-datepicker__day--disabled.unavailable-day,.react-datepicker__day.unavailable-day.react-datepicker__day--disabled{background-color:#f44336!important;color:#fff!important;font-weight:600!important;border:2px solid #C62828!important;border-radius:6px!important;position:relative!important;opacity:.85!important;cursor:not-allowed!important}.react-datepicker__day--disabled.unavailable-day:after,.react-datepicker__day.unavailable-day.react-datepicker__day--disabled:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60%;height:2px;background-color:#fff}.react-datepicker__day--today.available-day{box-shadow:0 0 10px #4caf5099,inset 0 0 0 2px #fff}.react-datepicker__day--today.unavailable-day{box-shadow:0 0 10px #f4433699,inset 0 0 0 2px #fff}.react-datepicker__day.unavailable-day{cursor:not-allowed}.react-datepicker__day.available-day{cursor:default}.availability-page{min-height:100vh;padding:64px 6%;background:linear-gradient(180deg,#fdfbf6,#f7f4ee);display:flex;flex-direction:column;align-items:center}.availability-page h1{font-size:clamp(1.8rem,3vw,2.6rem);color:var(--primary-green);margin-bottom:8px;text-align:center}.availability-subtitle{font-size:.95rem;color:#6b7280;margin-bottom:40px;text-align:center;max-width:520px}.room-grid{width:100%;max-width:1600px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.room-card{background:#fff;padding:28px 24px;border-radius:22px;text-align:center;cursor:pointer;position:relative;box-shadow:0 10px 25px #00000014,0 2px 6px #0000000d;transition:all .25s ease;overflow:hidden}.room-card:before{content:"";position:absolute;inset:0;border-radius:22px;border:2px solid transparent;transition:border-color .25s ease}.room-card:hover{transform:translateY(-6px)}.room-card:hover:before{border-color:#2f6f5f66}.room-card.active{transform:translateY(-6px) scale(1.01)}.room-card.active:before{border-color:var(--primary-green)}.room-card h3{font-size:1.2rem;margin-bottom:10px;color:#111827}.room-card span{font-size:.85rem;color:#6b7280}.calendar-modal{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.calendar-card{background:#fff;width:100%;max-width:480px;padding:28px;border-radius:26px;position:relative;box-shadow:0 25px 60px #00000040,0 10px 25px #0000001a;animation:popIn .25s ease}.close-btn{position:absolute;top:14px;right:18px;border:none;background:#f3f4f6;width:36px;height:36px;border-radius:50%;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease}.close-btn:hover{background:#e5e7eb;transform:rotate(90deg)}@keyframes popIn{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:768px){.availability-page{padding:48px 5%}.room-grid{gap:20px}.room-card{padding:22px 20px}.calendar-card{max-width:100%;padding:24px;border-radius:22px}}@media(max-width:480px){.availability-page h1{font-size:1.6rem}.availability-subtitle{font-size:.85rem}.room-grid{grid-template-columns:1fr}.room-card{border-radius:18px}}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.availability-legend{display:flex;justify-content:center;gap:24px;margin-bottom:18px;font-size:.85rem;color:#374151}.legend-item{display:flex;align-items:center;gap:8px}.legend-dot{width:12px;height:12px;border-radius:50%;display:inline-block}.legend-dot.available{background:#2f6f5f}.legend-dot.unavailable{background:#d82c2c}.calendar-layout{display:flex;justify-content:center}.calendar-left{width:100%;display:flex;justify-content:center}.calendar-loading{color:#6b7280;font-size:.9rem}.availability-cta{margin-top:30px}.cancel-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#fdfbf6,#f5f1e8);padding:40px}.cancel-card{background:#fff;max-width:420px;width:100%;padding:40px 36px;border-radius:20px;box-shadow:0 20px 40px #00000014;text-align:center}.cancel-card h1{font-size:1.8rem;color:#1f2933;margin-bottom:10px}.cancel-card h2{font-size:1.5rem;color:#27ae60;margin-bottom:12px}.subtitle{font-size:.95rem;color:#6b7280;margin-bottom:28px;line-height:1.5}.policy-link{display:inline-block;font-size:.9rem;color:#3498db;text-decoration:none;margin-bottom:20px;padding-bottom:6px;border-bottom:2px solid transparent;transition:border-color .3s}.policy-link:hover{border-bottom-color:#3498db}.cancel-card form{display:flex;flex-direction:column;text-align:left}.cancel-card label{font-size:.85rem;color:#374151;margin-bottom:6px}.refund-info{background-color:#f0f9ff;border:2px solid #3498db;border-radius:10px;padding:12px 16px;margin-bottom:16px;text-align:left}.refund-info p{margin:6px 0;font-size:.9rem;color:#1f2933}.otp-validity{font-weight:600;color:#e74c3c!important}.cancel-card input{padding:12px 14px;border-radius:10px;border:1px solid #d1d5db;font-size:.95rem;margin-bottom:20px;outline:none;transition:border .2s,box-shadow .2s}.cancel-card input:focus{border-color:#3b7f3f;box-shadow:0 0 0 3px #3b7f3f26}.cancel-card input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.cancel-card button{background:linear-gradient(135deg,#2f7a38,#3fa34d);color:#fff;border:none;padding:12px;border-radius:12px;font-size:.95rem;cursor:pointer;font-weight:600;transition:transform .15s,box-shadow .15s,opacity .2s;margin-bottom:8px}.cancel-card button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 20px #2f7a3840}.cancel-card button:disabled{background:#95a5a6;cursor:not-allowed;opacity:.65}.resend-btn{background:linear-gradient(135deg,#3498db,#2980b9)!important;font-size:.9rem}.resend-btn:hover:not(:disabled){box-shadow:0 10px 20px #3498db40}.success-message{text-align:center;padding:20px}.success-message p{font-size:.95rem;color:#2f7a38;margin:10px 0}.home-link{display:inline-block;margin-top:16px;padding:12px 24px;background:linear-gradient(135deg,#2f7a38,#3fa34d);color:#fff;text-decoration:none;border-radius:10px;font-weight:600;transition:transform .15s,box-shadow .15s}.home-link:hover{transform:translateY(-1px);box-shadow:0 10px 20px #2f7a3840}.help-text{font-size:.9rem;margin-top:20px;padding:12px;border-radius:8px;white-space:pre-wrap;word-wrap:break-word;line-height:1.5}.help-text.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.help-text.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.help-text{margin-top:20px;font-size:.8rem;color:#6b7280}.policy-page{min-height:100vh;background:#f5f7fa;padding:40px 20px;display:flex;justify-content:center}.policy-card{max-width:900px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 20px #00000014}.policy-card h1{text-align:center;font-size:32px;margin-bottom:20px}.policy-intro{text-align:center;margin-bottom:30px;color:#555}.policy-card section{margin-bottom:25px}.policy-card h2{margin-bottom:10px;color:#2c3e50}.policy-card ul{padding-left:20px}.policy-contact{font-weight:500}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:none}a:hover{color:#535bf2;text-decoration:none}a.btn-primary,a.btn-outline{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}html{scroll-behavior:smooth}body{margin:0;min-width:320px}h1{font-size:3.2em;line-height:1.1;font-weight:700}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.font-serif{font-family:Times New Roman,Times,serif}:root{--primary-green: #2E6F5E;--accent-gold: #F4D35E;--off-white: #FAF7F2;--pure-white: #FFFFFF;--text-dark: #1F2933;--text-muted: #6B7280}
