.booking-widget-wrapper{width:100%;max-width:1200px;margin:0 auto}.booking-form-container{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000014;overflow:hidden}.booking-form-inner{display:flex;align-items:stretch;min-height:80px}.form-section{flex:1;display:flex;align-items:center;padding:20px 24px;position:relative;transition:background-color .2s ease;cursor:pointer}.form-section:hover{background-color:#fafafa}.section-separator{width:1px;background-color:#e5e7eb;align-self:stretch;margin:16px 0}.hotel-section{min-width:280px}.date-section{min-width:160px}.date-section-content{display:flex;align-items:center;gap:16px}.guest-section{min-width:140px}.phone-section{flex:1.5;padding:0}.phone-input{width:100%;height:100%;padding:20px 24px;border:none;font-size:16px;background:transparent;outline:none;transition:background-color .2s ease}.phone-input:focus{background-color:#fafafa}.phone-input::-moz-placeholder{color:#9ca3af;font-weight:400}.phone-input::placeholder{color:#9ca3af;font-weight:400}.book-button{background:linear-gradient(135deg,#ae9364,#8e7952);color:#fff;border:none;padding:0 48px;font-weight:600;font-size:15px;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;min-width:180px;height:100%;display:flex;align-items:center;justify-content:center}.book-button:hover{background:linear-gradient(135deg,#8e7952,#6e5d42);transform:translateY(-1px);box-shadow:0 4px 12px #ae93644d}.book-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.field-label{font-size:12px;font-weight:600;text-transform:uppercase;color:#6b7280;letter-spacing:.5px;margin-bottom:4px}.field-value{font-size:15px;font-weight:500;color:#1f2937}.field-icon{color:#ae9364}.error-message{text-align:center;color:#dc2626;font-size:14px;padding:12px;background-color:#fee2e2;border-radius:0 0 12px 12px;margin-top:-1px}.bottom-text{text-align:center;color:#6b7280;font-size:14px;line-height:1.6;margin-top:24px;padding:0 20px;font-style:italic}.widget-container{position:absolute;z-index:1000;margin-top:8px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.widget-inner{background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;padding:24px;min-width:340px}@media (min-width: 1024px){.widget-container.checkin{left:280px;top:100%}.widget-container.checkout{left:460px;top:100%}}.calendar__month-arrow-back,.calendar__month-arrow-next{color:#ae9364;transition:color .2s ease}.calendar__month-arrow-back:hover,.calendar__month-arrow-next:hover{color:#8e7952}.calendar__month-arrow-back svg,.calendar__month-arrow-next svg{width:32px!important;height:32px!important}.calendar__month-content span{color:#1f2937!important;font-size:18px;font-weight:600;text-transform:capitalize}.calendar__week-content{color:#6b7280!important;font-size:12px!important;font-weight:500;text-transform:uppercase!important}.calendar__day-container{border:1px solid #f3f4f6!important;transition:all .2s ease}.calendar__day-container:hover{background-color:#fef3e2;border-color:#ae9364!important}.calendar__day-content{font-size:14px!important;font-weight:500}.calendar__day-today{border-color:#ae9364!important;border-width:2px!important}.calendar__day-selection,.calendar__day-reservation{background-color:#ae9364!important;border-radius:4px!important}.calendar-instruction{text-align:center;color:#6b7280;font-size:14px;margin-top:16px;font-weight:500}@media (max-width: 1024px){.booking-form-inner{flex-wrap:wrap}.form-section{min-width:50%;border-bottom:1px solid #e5e7eb}.section-separator{display:none}.phone-section,.book-button{min-width:100%}.widget-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0}.widget-inner{max-height:80vh;overflow-y:auto}}@media (max-width: 768px){.booking-widget-wrapper{padding:0 16px}.booking-form-container{border-radius:8px}.booking-form-inner{flex-direction:column;min-height:auto}.form-section{min-width:100%;padding:16px 20px;border-bottom:1px solid #e5e7eb}.form-section:last-child{border-bottom:none}.hotel-section,.date-section,.guest-section{min-width:100%}.phone-input{padding:16px 20px}.book-button{padding:20px;border-radius:0 0 8px 8px}.widget-inner{padding:16px;min-width:90vw;max-width:90vw}.calendar__month-arrow-back svg,.calendar__month-arrow-next svg{width:28px!important;height:28px!important}.calendar__month-content span{font-size:16px}}.calendar-overlay{position:fixed;inset:0;background-color:#00000080;z-index:999;animation:fadeIn .2s ease}.dropdown-container{position:relative;width:100%}.dropdown-content{position:absolute;top:100%;left:0;right:0;background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000001a;margin-top:8px;z-index:100;max-height:240px;overflow-y:auto}.dropdown-item{padding:12px 16px;cursor:pointer;transition:background-color .2s ease;font-size:14px}.dropdown-item:hover{background-color:#fef3e2}.dropdown-item.selected{background-color:#ae9364;color:#fff}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid #f3f4f6;border-top-color:#ae9364;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.form-section:focus-within{outline:2px solid #ae9364;outline-offset:-2px}.phone-input:focus{outline:none}*{transition-property:background-color,border-color,color,fill,stroke;transition-duration:.2s;transition-timing-function:ease}.calendar__calendar-container{display:block;background-color:#fff;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:1rem;color:currentcolor;max-width:550px}.calendar__month-container{display:flex;align-items:center;justify-content:space-between;flex-direction:row;padding:0;position:relative;box-sizing:border-box}.calendar__month-content{display:flex;align-items:center;justify-content:center;flex-direction:row;flex-wrap:wrap;gap:.5rem;font-size:1rem;text-transform:capitalize;font-weight:500}.calendar__calendar-container:not([data-scrollable]) .calendar__month-content[data-some-month] span:first-child{color:#007aff}.calendar__calendar-container:not([data-scrollable]) .calendar__month-content[data-some-year] span:nth-child(2){color:#007aff}.calendar__calendar-container[data-scrollable] .calendar__month-content{gap:0}.calendar__calendar-container[data-scrollable] .calendar__month-content span:nth-child(2){font-size:.9rem;font-weight:400}.calendar__calendar-container[data-scrollable] .calendar__month-content[data-some-year] span:nth-child(2){display:none}.calendar__month-arrow-back,.calendar__month-arrow-next{box-sizing:border-box;width:14.2857142857%;height:50px;cursor:pointer;display:flex;justify-content:center;align-items:center;background:none;border:none;overflow:hidden;padding:0;text-indent:-999em;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.calendar__month-arrow-back svg,.calendar__month-arrow-next svg{fill:currentcolor;width:30px;height:30px}.calendar__month-arrow-next svg{transform:rotate(180deg);fill:currentcolor}.calendar__week-container{position:sticky;top:0;left:0;right:0;z-index:10;width:100%}.calendar__week-content{display:flex;align-items:center;justify-content:center;flex-direction:column;flex-grow:0;font-size:.9rem;text-transform:capitalize;padding:.5rem 0px;color:currentcolor;box-sizing:border-box}.calendar__week-content[data-weekend]{color:red}.calendar__week-container,.calendar__days-container{display:grid;grid-template-columns:repeat(7,1fr)}.calendar__day-container{position:relative;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.calendar__day-container:after{content:"";display:block;padding-bottom:100%}.calendar__day-content{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:currentcolor;z-index:20;font-size:.95rem}.calendar__day-selection,.calendar__day-reservation{position:absolute;inset:15% 0}.calendar__day-selection{background-color:#2c2c2c;z-index:10}.calendar__day-reservation{background-color:#f2f1ef;z-index:0}.calendar__day-container[data-selected]{color:#fff}.calendar__day-container[data-reserved],.calendar__day-container[data-past]:not(:has(>.calendar__day-today)){color:#a3a2a1}.calendar__calendar-container[data-scrollable] .calendar__day-container[data-selected][data-start-month] .calendar__day-selection,.calendar__calendar-container[data-scrollable] .calendar__day-container[data-reserved][data-start-month] .calendar__day-reservation,.calendar__day-container:not([data-selected])+.calendar__day-container .calendar__day-selection,.calendar__day-container:not([data-reserved])+.calendar__day-container .calendar__day-reservation{border-top-left-radius:10px;border-bottom-left-radius:10px;left:15%}.calendar__calendar-container[data-scrollable] .calendar__day-container[data-selected][data-end-month] .calendar__day-selection,.calendar__calendar-container[data-scrollable] .calendar__day-container[data-reserved][data-end-month] .calendar__day-reservation,.calendar__day-container[data-selected]:not(:has(+[data-selected])) .calendar__day-selection,.calendar__day-container[data-reserved]:not(:has(+[data-reserved])):not(:last-child) .calendar__day-reservation{border-top-right-radius:10px;border-bottom-right-radius:10px;right:15%}.calendar__day-today{position:absolute;inset:15%;border-radius:10px;transform:scale(1);border:1px solid #2c2c2c;z-index:30}.calendar__calendar-container[data-scrollable]{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;height:100%}.calendar__calendar-container[data-scrollable] .calendar__days-container{display:block;flex:1 1 auto;width:100%}.calendar__calendar-container[data-scrollable] .calendar__month-container{justify-content:center}.calendar__calendar-container[data-scrollable] .calendar__month-content{font-size:1rem;font-weight:500}
