.booking-page{background:var(--background);z-index:1;min-height:100vh;padding-top:100px;position:relative}.booking-header-bg{z-index:-1;width:100%;height:100vh;position:fixed;top:0;left:0}.booking-header-bg img{object-fit:cover;opacity:.15}.booking-container{max-width:1200px;margin:0 auto;padding:40px 20px}.booking-progress{justify-content:center;align-items:center;gap:15px;margin-bottom:50px;display:flex}.step-indicator{opacity:.4;align-items:center;gap:10px;transition:all .3s;display:flex}.step-indicator.active{opacity:1}.step-indicator.completed{opacity:.8;color:var(--primary)}.step-number{border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:600;display:flex}.step-active-bg{background:var(--primary);color:#000;border-color:var(--primary)}.step-label{letter-spacing:.05em;text-transform:uppercase;font-size:.875rem;font-weight:500}.step-connector{background:#fff3;width:40px;height:1px}.booking-panel{-webkit-backdrop-filter:blur(20px);background:#0f191299;border:1px solid #ffffff14;border-radius:12px;margin-bottom:30px;padding:40px}.booking-title{letter-spacing:-.02em;margin-bottom:30px;font-size:2rem;font-weight:700}.form-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px;display:grid}.form-group{flex-direction:column;gap:8px;display:flex}.form-label{text-transform:uppercase;letter-spacing:.05em;color:#fff9;font-size:.875rem;font-weight:600}.form-input{color:#fff;background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;width:100%;padding:16px 20px;font-family:inherit;font-size:1rem;transition:all .3s}.form-input:focus{border-color:var(--primary);background:#00000080;outline:none}.input-with-icon{align-items:center;display:flex;position:relative}.input-icon{color:#fff6;position:absolute;left:16px}.input-with-icon .form-input{padding-left:50px}.room-box{background:#0003;border:1px solid #ffffff0d;border-radius:8px;margin-bottom:20px;padding:24px}.room-box-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;display:flex}.room-grid{grid-template-columns:repeat(2,1fr);gap:30px;display:grid}.room-card{background:#0000004d;border:1px solid #ffffff0d;border-radius:12px;transition:all .3s;overflow:hidden}.room-card:hover{border-color:#9acd324d;transform:translateY(-5px)}.room-img-wrap{width:100%;height:250px;position:relative}.room-info{padding:25px}.room-features{color:#fff9;gap:15px;margin:15px 0;font-size:.875rem;display:flex}.room-feature{align-items:center;gap:5px;display:flex}.room-price{color:var(--primary);margin-bottom:20px;font-size:1.5rem;font-weight:700}.addon-list{flex-direction:column;gap:15px;display:flex}.addon-card{cursor:pointer;background:#0000004d;border:1px solid #ffffff0d;border-radius:8px;justify-content:space-between;align-items:center;padding:20px;transition:all .2s;display:flex}.addon-card.selected{border-color:var(--primary);background:#9acd320d}.addon-info h4{margin-bottom:5px;font-size:1.25rem}.addon-info p{color:#fff9;font-size:.875rem}.addon-price{color:var(--primary);font-size:1.125rem;font-weight:600}.checkout-grid{grid-template-columns:1fr 350px;gap:40px;display:grid}.summary-panel{background:#0006;border:1px solid #ffffff1a;border-radius:12px;padding:30px;position:sticky;top:120px}.summary-row{color:#fffc;justify-content:space-between;margin-bottom:15px;display:flex}.summary-total{color:var(--primary);border-top:1px solid #ffffff1a;justify-content:space-between;margin-top:20px;padding-top:20px;font-size:1.5rem;font-weight:700;display:flex}.booking-actions{border-top:1px solid #ffffff1a;justify-content:space-between;margin-top:40px;padding-top:30px;display:flex}.btn-primary{color:#000;cursor:pointer;background:#fff;border:none;border-radius:8px;padding:16px 32px;font-size:1rem;font-weight:600;transition:all .3s}.btn-primary:hover{background:var(--primary)}.btn-secondary{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:8px;padding:16px 32px;font-size:1rem;font-weight:600;transition:all .3s}.btn-secondary:hover{background:#ffffff1a}@media (max-width:1024px){.checkout-grid{grid-template-columns:1fr}.summary-panel{position:static}}@media (max-width:768px){.booking-progress{display:none}.room-grid{grid-template-columns:1fr}.booking-panel{padding:20px}.booking-actions{flex-direction:column;gap:15px}.btn-primary,.btn-secondary{width:100%}}.booking-sidebar-layout{grid-template-columns:300px 1fr;align-items:start;gap:40px;display:grid}.booking-sidebar{background:#0003;border:1px solid #ffffff0d;border-radius:12px;padding:24px;position:sticky;top:100px}.booking-main-content{flex-direction:column;display:flex}@media (max-width:900px){.booking-sidebar-layout{grid-template-columns:1fr;gap:30px}.booking-sidebar{position:relative;top:0}}
