.hb-container{max-width:1200px;margin:30px auto;background:#fff;padding:30px;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.stars{color:#f39c12;margin-bottom:10px}.location{color:#7f8c8d;margin-bottom:20px;font-size:16px}.section{margin-bottom:40px}.section h3{border-bottom:2px solid #3498db;padding-bottom:10px;margin-bottom:20px;font-size:24px}.block{background:#ecf0f1;padding:20px;border-radius:8px}.btn{display:inline-block;padding:12px 25px;background:#3498db;color:#fff;text-decoration:none;border-radius:5px;font-weight:700;transition:background 0.3s}.btn:hover{background:#2980b9}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(30%,1fr));gap:20px}.room-card{border:1px solid #ddd;padding:15px;border-radius:8px;background:#fff;display:flex;flex-direction:column}.price{font-size:18px;color:#e74c3c;font-weight:700;margin:10px 0}:root{--primary-color:#2c5aa0;--secondary-color:#f8f9fa;--accent-color:#28a745;--text-color:#333;--border-color:#ddd;--shadow:0 2px 10px rgba(0,0,0,0.1);--border-radius:8px}*{box-sizing:border-box}.halalbooking-search-form{background:#fff;padding:2rem;margin:2rem 0;border-radius:var(--border-radius);box-shadow:var(--shadow);border:1px solid var(--border-color)}.halalbooking-search-form h2{color:var(--primary-color);font-size:1.8rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.hb-form-container{max-width:100%}.hb-form-group{margin-bottom:1rem}.hb-form-group label{display:block;font-weight:500;color:var(--text-color);margin-bottom:.5rem;font-size:.9rem}.hb-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.hb-form-group input,.hb-form-group select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:border-color 0.3s ease;background:#fff}.hb-form-group input:focus,.hb-form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(44,90,160,.1)}.hb-autocomplete-container{position:relative}.hb-suggestions-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--border-color);border-top:none;border-radius:0 0 var(--border-radius) var(--border-radius);box-shadow:var(--shadow);z-index:1000;max-height:200px;overflow-y:auto}.hb-suggestion-item{padding:.75rem;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color 0.2s ease}.hb-suggestion-item:hover{background-color:#f8f9fa}.hb-suggestion-name{font-weight:500;color:var(--text-color)}.hb-suggestion-type{font-size:.8rem;color:#666;margin-top:.2rem}.hb-btn-primary{background:var(--primary-color);color:#fff;border:none;padding:.875rem 2rem;border-radius:var(--border-radius);font-size:1rem;font-weight:500;cursor:pointer;transition:all 0.3s ease;width:100%;margin-top:1rem}.hb-btn-primary:hover{background:#1e3d6f;transform:translateY(-1px);box-shadow:0 4px 12px rgba(44,90,160,.3)}.hb-search-results{margin-top:2rem}.hb-search-results h3{color:var(--text-color);font-size:1.2rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary-color)}.hb-offers-list{display:flex;flex-direction:column;gap:1.5rem}.hb-offer-list-item{display:grid;grid-template-columns:250px 1fr auto;gap:1.5rem;background:#fff;border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow);transition:all 0.3s ease}.hb-offer-list-item:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,.15)}.hb-offer-image{position:relative;overflow:hidden}.hb-offer-image img{width:100%;height:180px;object-fit:cover;transition:transform 0.3s ease}.hb-offer-list-item:hover .hb-offer-image img{transform:scale(1.05)}.hb-offer-details{padding:1.5rem 0;display:flex;flex-direction:column;justify-content:space-between}.hb-offer-title{font-size:1.3rem;font-weight:600;color:var(--text-color);margin-bottom:.5rem;line-height:1.3}.hb-rating{display:flex;align-items:center;margin-bottom:.5rem}.hb-star{color:#ffc107;font-size:1rem;margin-right:2px}.hb-offer-location{color:#666;font-size:.9rem;margin-bottom:1rem}.hb-offer-booking{padding:1.5rem;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;background:#f8f9fa;min-width:180px}.hb-price-container{text-align:right;margin-bottom:1rem}.hb-price{font-size:1.8rem;font-weight:700;color:var(--primary-color)}.hb-currency{font-size:1rem;color:#666;margin-left:.25rem}.hb-price-info{display:block;font-size:.8rem;color:#666;margin-top:.25rem}.btn-primary{background:var(--accent-color);color:#fff;text-decoration:none;padding:.75rem 1.5rem;border-radius:var(--border-radius);font-weight:500;font-size:.9rem;transition:all 0.3s ease;text-align:center;border:none;cursor:pointer}.btn-primary:hover{background:#218838;text-decoration:none;color:#fff;transform:translateY(-1px);box-shadow:0 3px 10px rgba(40,167,69,.3)}.halalbooking-featured-offers{margin:3rem 0}.halalbooking-featured-offers h2{text-align:center;color:var(--primary-color);font-size:2rem;font-weight:600;margin-bottom:2rem}.hb-offers-grid{display:grid;gap:2rem}.hb-columns-3{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.hb-offer-card{background:#fff;border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow);transition:all 0.3s ease;border:1px solid var(--border-color)}.hb-offer-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px rgba(0,0,0,.15)}.hb-offer-card .hb-offer-image{height:200px;overflow:hidden}.hb-offer-card .hb-offer-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.hb-offer-card:hover .hb-offer-image img{transform:scale(1.1)}.hb-offer-content{padding:1.5rem}.hb-btn-secondary{background:var(--primary-color);color:#fff;text-decoration:none;padding:.75rem 1.5rem;border-radius:var(--border-radius);font-weight:500;transition:all 0.3s ease;display:inline-block;text-align:center;width:100%;margin-top:1rem}.hb-btn-secondary:hover{background:#1e3d6f;text-decoration:none;color:#fff;transform:translateY(-1px)}.hb-error{background:#f8d7da;color:#721c24;padding:1rem;border-radius:var(--border-radius);border:1px solid #f5c6cb;margin:1rem 0}.hb-success{background:#d4edda;color:#155724;padding:1rem;border-radius:var(--border-radius);border:1px solid #c3e6cb;margin:1rem 0}@media (max-width:768px){.hb-form-row{grid-template-columns:1fr}.hb-offer-list-item{grid-template-columns:1fr;text-align:center}.hb-offer-image{height:200px}.hb-offer-booking{padding:1rem;align-items:center}.hb-price-container{text-align:center}.halalbooking-search-form{padding:1rem;margin:1rem 0}.hb-columns-3{grid-template-columns:1fr}}@media (max-width:480px){.halalbooking-search-form h2{font-size:1.5rem}.hb-offer-title{font-size:1.1rem}.hb-price{font-size:1.5rem}}.hb-loading{display:inline-block;width:20px;height:20px;border:3px solid rgba(44,90,160,.3);border-radius:50%;border-top-color:var(--primary-color);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.hb-btn-primary:focus,.btn-primary:focus,.hb-btn-secondary:focus{outline:2px solid var(--primary-color);outline-offset:2px}.hb-suggestion-item:focus{background-color:var(--primary-color);color:#fff}.hb-offer-badge{position:absolute;top:1rem;right:1rem;background:var(--accent-color);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:600;box-shadow:0 2px 8px rgba(40,167,69,.3)}a,button,input,select{transition:all 0.3s ease}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px!important;height:1px!important;overflow:hidden}:root{--primary-color:#2c5aa0;--secondary-color:#28a745;--accent-color:#ffc107;--text-dark:#2d3748;--text-light:#718096;--border-color:#e2e8f0;--background-light:#f8f9fa;--white:#ffffff;--shadow-light:0 2px 4px rgba(0,0,0,0.1);--shadow-medium:0 4px 12px rgba(0,0,0,0.15);--shadow-heavy:0 8px 25px rgba(0,0,0,0.2);--border-radius:8px;--border-radius-large:12px;--transition:all 0.3s ease}*{box-sizing:border-box}.hb-container{max-width:1200px;margin:0 auto;padding:20px;background:var(--white);border-radius:var(--border-radius-large);box-shadow:var(--shadow-medium);font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.hb-container h1{font-size:2.5rem;font-weight:700;color:var(--text-dark);margin:0 0 15px 0;line-height:1.2}.stars{display:flex;align-items:center;gap:2px;margin-bottom:10px;font-size:1.2rem;color:var(--accent-color)}.location{display:flex;align-items:center;gap:8px;font-size:1.1rem;margin-bottom:25px;font-weight:500}.swiper{width:100%;height:400px;margin-bottom:30px;border-radius:var(--border-radius-large);overflow:hidden;box-shadow:var(--shadow-medium);position:relative}.swiper-slide{display:flex;justify-content:center;align-items:center;background:#000}.swiper-slide img{width:100%;height:100%;object-fit:cover;display:block;transition:var(--transition)}.swiper-slide img:hover{transform:scale(1.05)}.swiper-button-next,.swiper-button-prev{color:var(--white)!important;background:rgba(44,90,160,.8);width:44px!important;height:44px!important;border-radius:50%;margin-top:-22px!important;transition:var(--transition)}.swiper-button-next:hover,.swiper-button-prev:hover{background:var(--primary-color);transform:scale(1.1)}.swiper-button-next::after,.swiper-button-prev::after{font-size:18px!important;font-weight:700}.swiper-pagination{bottom:15px!important}.swiper-pagination-bullet{background:rgba(255,255,255,.7)!important;opacity:1!important;width:12px!important;height:12px!important;margin:0 4px!important;transition:var(--transition)}.swiper-pagination-bullet-active{background:var(--white)!important;transform:scale(1.2)}.section{margin-bottom:30px;padding:25px;background:var(--background-light);border-radius:var(--border-radius);border-left:4px solid var(--primary-color)}.section.block{background:var(--white);border:1px solid var(--border-color);box-shadow:var(--shadow-light)}.section h3{font-size:1.5rem;font-weight:600;color:var(--text-dark);margin:0 0 15px 0;display:flex;align-items:center;gap:10px}.section h3::before{content:"📋";font-size:1.2rem}.section p{margin-bottom:10px;line-height:1.7}.section strong{color:var(--text-dark);font-weight:600}.section form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;align-items:end;background:var(--white);padding:20px;border-radius:var(--border-radius);box-shadow:var(--shadow-light)}.section form input,.section form select{width:100%;padding:12px 15px;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);background:var(--white)}.section form input:focus,.section form select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(44,90,160,.1)}.btn{background:linear-gradient(135deg,var(--primary-color) 0%,#1e4a8c 100%);color:var(--white);border:none;padding:12px 25px;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);text-decoration:none;display:inline-block;text-align:center;min-width:120px}.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium);text-decoration:none;color:var(--white)}.btn:active{transform:translateY(0)}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:25px;margin-top:20px}.room-card{background:var(--white);border-radius:var(--border-radius-large);overflow:hidden;box-shadow:var(--shadow-medium);transition:var(--transition);border:1px solid var(--border-color)}.room-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-heavy)}.swiper-room{width:100%;height:250px;position:relative;background:#f8f9fa}.swiper-room .swiper-wrapper{height:100%}.swiper-room .swiper-slide{width:100%;height:100%;display:flex;justify-content:center;align-items:center;background:#f0f0f0}.swiper-room .swiper-slide img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;border:none!important;border-radius:0!important;transition:var(--transition)}.swiper-room .swiper-slide img[data-src]{background:linear-gradient(45deg,#f0f0f0 25%,transparent 25%),linear-gradient(-45deg,#f0f0f0 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f0f0f0 75%),linear-gradient(-45deg,transparent 75%,#f0f0f0 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;animation:loading 1s infinite linear}@keyframes loading{0%{background-position:0 0,0 10px,10px -10px,-10px 0}100%{background-position:20px 20px,20px 30px,30px 10px,10px 20px}}.swiper-room .swiper-button-next,.swiper-room .swiper-button-prev{color:var(--white)!important;background:rgba(0,0,0,.6);width:35px!important;height:35px!important;border-radius:50%;margin-top:-17px!important}.swiper-room .swiper-button-next::after,.swiper-room .swiper-button-prev::after{font-size:14px!important}.swiper-room .swiper-pagination{bottom:10px!important}.swiper-room .swiper-pagination-bullet{width:8px!important;height:8px!important;margin:0 3px!important}.room-card h4{font-size:1.3rem;font-weight:600;color:var(--text-dark);margin:20px 20px 10px 20px;line-height:1.3}.room-card p{font-size:.9rem;margin:0 20px 15px 20px;line-height:1.5;overflow:hidden;text-overflow:ellipsis}.price{font-size:1.8rem;font-weight:700;color:var(--secondary-color);margin:15px 20px 5px 20px;display:flex;align-items:baseline;gap:5px}.price::after{content:"EUR";font-size:1rem;font-weight:400}.room-card p:last-of-type{color:var(--text-light);font-size:.9rem;margin:0 20px 20px 20px}.room-card .btn{margin:0 20px 20px 20px;width:calc(100% - 40px);background:linear-gradient(135deg,var(--secondary-color) 0%,#1e7e34 100%)}.room-card .btn:hover{background:linear-gradient(135deg,#1e7e34 0%,var(--secondary-color) 100%)}@media (max-width:768px){.hb-container{padding:15px;margin:10px}.hb-container h1{font-size:2rem}.swiper{height:300px}.section{padding:20px 15px}.section form{grid-template-columns:1fr;gap:12px}.rooms-grid{grid-template-columns:1fr;gap:20px}.swiper-room{height:200px}.room-card h4{font-size:1.2rem;margin:15px 15px 8px 15px}.room-card p{margin:0 15px 12px 15px;font-size:.85rem}.price{font-size:1.5rem;margin:12px 15px 5px 15px}.room-card .btn{margin:0 15px 15px 15px;width:calc(100% - 30px)}}@media (max-width:480px){.hb-container h1{font-size:1.8rem}.swiper{height:250px}.swiper-room{height:180px}.section form{padding:15px}.section form input,.section form select,.btn{padding:10px 12px;font-size:.9rem}}.room-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));opacity:0;transition:var(--transition)}.room-card:hover::before{opacity:1}.room-card{position:relative}.special-offer{position:absolute;top:15px;right:15px;background:var(--accent-color);color:var(--text-dark);padding:5px 10px;border-radius:15px;font-size:.8rem;font-weight:600;z-index:10;box-shadow:var(--shadow-light)}.loading{opacity:.7;pointer-events:none}.loading::after{content:'';position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn:focus,input:focus,select:focus{outline:2px solid var(--primary-color);outline-offset:2px}@media print{.swiper-button-next,.swiper-button-prev,.swiper-pagination,.btn{display:none!important}.hb-container{box-shadow:none;border:1px solid #ccc}}:root{--primary-color:#1e7e34;--primary-hover:#155724;--secondary-color:#6c757d;--accent-color:#ffc107;--success-color:#28a745;--danger-color:#dc3545;--warning-color:#fd7e14;--info-color:#17a2b8;--text-dark:#212529;--text-muted:#6c757d;--text-light:#ffffff;--bg-light:#f8f9fa;--bg-white:#ffffff;--bg-gradient:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--border-color:#dee2e6;--border-radius:8px;--border-radius-lg:12px;--shadow-sm:0 2px 4px rgba(0,0,0,0.1);--shadow-md:0 4px 12px rgba(0,0,0,0.15);--shadow-lg:0 8px 25px rgba(0,0,0,0.2);--transition:all 0.3s ease;--font-family:'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif}.halalbooking-container{max-width:1200px;margin:0 auto;padding:2rem 1rem;font-family:var(--font-family);background:var(--bg-light);min-height:100vh}.booking-form-section{background:var(--bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:2rem}.booking-form-section h2{background:var(--bg-gradient);color:var(--text-light);margin:0;padding:1.5rem 2rem;font-size:1.75rem;font-weight:600;text-align:center;position:relative}.booking-form-section h2::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:3px;background:var(--accent-color);border-radius:2px}.booking-summary{padding:2rem;border-bottom:2px solid var(--border-color);background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%)}.booking-summary h3{color:var(--text-dark);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.booking-summary h3::before{content:'📋';font-size:1.2em}.summary-details{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:1.5rem}.property-info{background:var(--bg-white);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border-left:4px solid var(--primary-color)}.property-info h4{color:var(--primary-color);font-size:1.25rem;font-weight:600;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.property-info h4::before{content:'🏨';font-size:1em}.room-type{color:var(--text-muted);font-weight:500;margin-bottom:1rem;font-style:italic}.stay-details p{margin:.5rem 0;display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f1f3f4}.stay-details p:last-child{border-bottom:none}.stay-details strong{color:var(--text-dark);font-weight:600}.price-summary{background:var(--bg-white);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border-left:4px solid var(--success-color)}.price-summary h4{color:var(--success-color);font-size:1.25rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.price-summary h4::before{content:'💰';font-size:1em}.price-breakdown p{display:flex;justify-content:space-between;align-items:center;margin:.75rem 0;padding:.5rem 0;border-bottom:1px solid #f1f3f4}.price-breakdown p:last-child{border-bottom:none}.total-price{background:var(--success-color);color:var(--text-light);padding:1rem!important;border-radius:var(--border-radius);font-weight:700;font-size:1.1rem;margin-top:1rem!important}.guest-details-form{padding:2rem}.guest-details-form h3{color:var(--text-dark);font-size:1.5rem;font-weight:600;margin-bottom:2rem;display:flex;align-items:center;gap:.5rem}.guest-details-form h3::before{content:'👤';font-size:1.2em}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;color:var(--text-dark);font-weight:600;margin-bottom:.5rem;font-size:.95rem}.form-group label::after{content:' *';color:var(--danger-color);font-weight:700}.form-group input,.form-group textarea{width:100%;padding:.875rem 1rem;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;font-family:var(--font-family);transition:var(--transition);background:var(--bg-white)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(30,126,52,.1);transform:translateY(-1px)}.form-group input:valid{border-color:var(--success-color)}.form-group input:invalid:not(:placeholder-shown){border-color:var(--danger-color)}.form-group textarea{resize:vertical;min-height:100px}.terms-checkbox{display:flex;align-items:flex-start;gap:.75rem;padding:1.5rem;background:var(--bg-light);border-radius:var(--border-radius);border:2px solid var(--border-color);margin:2rem 0}.terms-checkbox input[type="checkbox"]{width:auto;margin:0;transform:scale(1.2);accent-color:var(--primary-color)}.terms-checkbox label{margin:0;font-size:.95rem;line-height:1.5;cursor:pointer}.terms-checkbox label::after{display:none}.terms-checkbox a{color:var(--primary-color);text-decoration:none;font-weight:600}.terms-checkbox a:hover{text-decoration:underline}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid var(--border-color)}.btn-secondary,.btn-primary{padding:.875rem 2rem;border:none;border-radius:var(--border-radius);font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:var(--transition);min-width:150px;font-family:var(--font-family)}.btn-secondary{background:var(--secondary-color);color:var(--text-light)}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary::before{content:'←';font-weight:700}.btn-primary{background:var(--bg-gradient);color:var(--text-light);box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-primary::after{content:'✓';font-weight:700}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes slideInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.booking-form-section{animation:slideInUp 0.6s ease-out}.form-group{animation:slideInUp 0.6s ease-out;animation-fill-mode:both}.form-group:nth-child(1){animation-delay:0.1s}.form-group:nth-child(2){animation-delay:0.2s}.form-group:nth-child(3){animation-delay:0.3s}.form-group:nth-child(4){animation-delay:0.4s}.form-group input:invalid:not(:placeholder-shown){animation:shake 0.5s ease-in-out}@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@media (max-width:1024px){.halalbooking-container{padding:1.5rem 1rem}.summary-details{grid-template-columns:1fr;gap:1.5rem}.booking-form-section h2{font-size:1.5rem;padding:1.25rem 1.5rem}}@media (max-width:768px){.halalbooking-container{padding:1rem .5rem}.form-row{grid-template-columns:1fr;gap:1rem}.booking-summary,.guest-details-form{padding:1.5rem}.form-actions{flex-direction:column;gap:1rem}.btn-secondary,.btn-primary{width:100%;padding:1rem 2rem}.booking-form-section h2{font-size:1.25rem;padding:1rem 1.5rem}.summary-details{gap:1rem}.property-info,.price-summary{padding:1rem}}@media (max-width:480px){.halalbooking-container{padding:.5rem}.booking-summary,.guest-details-form{padding:1rem}.booking-form-section h2{font-size:1.1rem;padding:.875rem 1rem}.form-group input,.form-group textarea{padding:.75rem;font-size:.95rem}.terms-checkbox{padding:1rem;font-size:.9rem}}.loading{position:relative;pointer-events:none}.loading::after{content:'';position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid transparent;border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}.btn-primary:focus-visible,.btn-secondary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent-color);outline-offset:2px}.success-message,.error-message,.warning-message{padding:1rem 1.5rem;border-radius:var(--border-radius);margin:1rem 0;font-weight:500;align-items:center;gap:.5rem}.success-message{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.success-message::before{content:'✅'}.error-message{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.error-message::before{content:'❌'}.warning-message{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.warning-message::before{content:'⚠️'}.halalbooking-container *{box-sizing:border-box}.booking-form-section,.btn-primary,.btn-secondary,.form-group input,.form-group textarea{will-change:transform;backface-visibility:hidden}@media print{.halalbooking-container{background:#fff;box-shadow:none}.form-actions{display:none}.booking-form-section{box-shadow:none;border:1px solid #000}}.halalbooking-container{font-family:Arial,sans-serif;max-width:1000px;margin:0 auto;padding:20px;background-color:#f9f9f9;box-sizing:border-box}.booking-confirmation{background-color:#fff;border-radius:10px;box-shadow:0 0 20px rgba(0,0,0,.1);padding:30px;margin-bottom:30px;text-align:center;border-top:5px solid #28a745}.success-message{padding:20px;background-color:#f8f9fa;border-radius:8px}.success-message h2{color:#28a745;font-size:28px;margin-bottom:15px}.success-message p{color:#666;font-size:16px;line-height:1.5;margin-bottom:20px}.booking-reference{background-color:#e9f7ef;border:2px dashed #28a745;border-radius:8px;padding:15px;margin:25px auto;max-width:300px}.booking-reference h3{color:#333;font-size:18px;margin-bottom:10px}.reference-code{font-size:24px;font-weight:700;color:#28a745;padding:10px;background-color:#fff;border-radius:5px;display:block;margin:0 auto;border:1px solid #ddd}.booking-details{background-color:#f8f9fa;border:1px solid #ddd;border-radius:8px;padding:20px;margin:25px auto;max-width:500px;text-align:left}.booking-details h3{color:#333;font-size:18px;margin-bottom:15px;text-align:center}.booking-details ul{list-style:none;padding:0;margin:0}.booking-details li{padding:10px 0;border-bottom:1px solid #eee;color:#555}.booking-details li:last-child{border-bottom:none}.booking-details strong{color:#333;display:inline-block;width:120px}.action-buttons{margin-top:30px;text-align:center}.btn-primary{display:inline-block;background-color:#28a745;color:#fff;padding:12px 25px;text-decoration:none;border-radius:5px;font-weight:700;border:none;cursor:pointer;transition:background-color 0.3s}.btn-primary:hover{background-color:#218838;text-decoration:none;color:#fff}@media (max-width:768px){.booking-confirmation{padding:20px 15px}.success-message h2{font-size:24px}.reference-code{font-size:20px}.booking-details{padding:15px}.booking-details strong{display:block;margin-bottom:5px}.btn-primary{display:block;width:100%}}@media print{.halalbooking-container{background:#fff;padding:0}.booking-confirmation{box-shadow:none;border:1px solid #ddd}.action-buttons{display:none}}.hb-pagination{text-align:center;margin-top:30px}.hb-pagination-list{display:inline-flex;list-style:none;padding:0;margin:0;gap:10px}.hb-pagination-list li button{padding:8px 16px;border:1px solid #d63384;background-color:#fff;color:#d63384;font-weight:700;border-radius:5px;cursor:pointer;transition:all 0.3s}.hb-pagination-list li button:hover{background-color:#d63384;color:#fff}.hb-page-current{display:inline-block;padding:8px 16px;font-weight:700;color:#333}.hb-spinner{width:40px;height:40px;margin:30px auto;border:4px solid #eee;border-top:4px solid #d63384;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.hotel-gallery{display:flex;gap:4px;height:500px;width:100%;position:relative}.gallery-main{flex:2;height:100%;overflow:hidden;border-radius:8px;cursor:pointer}.gallery-main img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.gallery-main:hover img{transform:scale(1.05)}.gallery-grid{flex:1;display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,1fr);gap:4px;height:100%}.gallery-item{position:relative;overflow:hidden;border-radius:8px;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.gallery-item:hover img{transform:scale(1.05)}.photo-count{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);color:#fff;display:flex;justify-content:center;align-items:center;font-size:18px;font-weight:700}.gallery-popup{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.9);z-index:1000;overflow:hidden}.popup-content{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.close-popup{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;font-weight:700;cursor:pointer;z-index:1010}.popup-swiper{width:80%;height:80%}.popup-swiper .swiper-slide{display:flex;align-items:center;justify-content:center}.popup-swiper .swiper-slide img{max-width:100%;max-height:100%;object-fit:contain}.popup-swiper .swiper-button-prev,.popup-swiper .swiper-button-next{color:#fff}.popup-swiper .swiper-pagination-bullet{background:#fff}@media (max-width:768px){.hotel-gallery{flex-direction:column;height:auto}.gallery-main{height:300px}.gallery-grid{grid-template-rows:repeat(2,1fr);height:200px}}@media (max-width:768px){.hotel-gallery{flex-direction:column;height:auto;gap:2px}.gallery-main{height:250px;width:100%}.gallery-grid{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);height:120px;gap:2px}.gallery-item{border-radius:4px}.photo-count{font-size:12px;font-weight:600}.popup-swiper{width:95%;height:70%}.close-popup{top:10px;right:15px;font-size:30px}}@media (max-width:480px){.hotel-gallery{gap:1px}.gallery-main{height:200px}.gallery-grid{height:80px;gap:1px}.photo-count{font-size:10px}.popup-swiper{width:98%;height:65%}}