@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";:root{--hn-primary: #1a4d2e;--hn-primary-light: #2d6a4f;--hn-primary-dark: #0f3320;--hn-accent: #d6b88c;--hn-accent-light: #e6cfa7;--hn-bg: #fafaf8;--hn-card: #ffffff;--hn-text: #1a1a18;--hn-text-muted: #6b6b67;--hn-border: #e8e6df;--hn-danger: #dc3545;--hn-warning: #f0ad4e;--hn-success: #28a745;--hn-shadow: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--hn-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .02);--hn-radius: 16px;--hn-radius-sm: 10px;--hn-transition: all .2s ease}[x-cloak]{display:none!important}*{box-sizing:border-box}body.booking-page{font-family:Plus Jakarta Sans,sans-serif;background:var(--hn-bg);color:var(--hn-text);line-height:1.6;-webkit-font-smoothing:antialiased}.hero-logo-container{max-width:1100px;margin:0 auto 16px;display:flex;justify-content:flex-start}@media(min-width:768px){.hero-logo-container{margin-bottom:32px}}.hero-logo{margin-top:8px;height:44px;width:auto;object-fit:contain;filter:brightness(0) invert(1)}@media(min-width:768px){.hero-logo{height:52px}}.booking-hero{background:linear-gradient(135deg,#0f3320f2,#1a4d2ee6),url(/images/hero-bg.png) center/cover;text-align:center;color:#fff;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.165,.84,.44,1)}.booking-hero:after{display:none}.booking-hero h1{font-size:clamp(1.5rem,6vw,2.8rem);font-weight:800;margin-top:12px;margin-bottom:16px;letter-spacing:-1px;line-height:1.1}.booking-hero p{font-size:1.05rem;font-weight:500;opacity:.8;max-width:600px;margin:0 auto;line-height:1.6}.progress-bar{display:flex;justify-content:center;gap:0;max-width:900px;margin:32px auto 0;position:relative;z-index:2;padding:0 10px}@media(max-width:768px){.progress-bar{margin-top:24px;padding:0 8px;flex-wrap:nowrap;gap:4px}.progress-step:before{display:none!important}.step-circle{padding:6px 8px!important;font-size:9px!important;letter-spacing:.5px;white-space:nowrap}}@media(max-width:480px){.step-circle{padding:5px 6px!important;font-size:8px!important;letter-spacing:0}.progress-bar{gap:2px}}.progress-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.progress-step:before{content:"";position:absolute;top:20px;left:-50%;width:100%;height:2px;background:#ffffff26;transition:var(--hn-transition);z-index:0}.progress-step:first-child:before{display:none}.progress-step.active:before,.progress-step.completed:before{background:var(--hn-accent)}.step-circle{width:auto;height:auto;padding:8px 18px;border-radius:40px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);font-weight:700;font-size:.65rem;color:#fff9;letter-spacing:1px;transition:var(--hn-transition);position:relative;z-index:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.progress-step.active .step-circle{background:var(--hn-accent);border-color:var(--hn-accent);color:var(--hn-primary-dark);box-shadow:0 0 20px #d6b88c4d}.progress-step.completed .step-circle{background:#d6b88c33;border-color:var(--hn-accent);color:var(--hn-accent)}.step-label{margin-top:8px;font-size:.72rem;font-weight:600;color:var(--hn-text-muted);text-transform:uppercase;letter-spacing:.5px}.progress-step.active .step-label{color:var(--hn-primary)}.booking-container{max-width:1100px;margin:0 auto;padding:0 16px;min-height:540px}.step-panel{animation:fadeSlideIn .5s ease}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.booking-bar-wrapper{position:relative;z-index:100;max-width:1000px;margin:48px auto 32px;transition:all .4s cubic-bezier(.165,.84,.44,1)}.filter-mode .booking-bar-wrapper{margin:0 auto 24px;position:sticky;top:0;width:100%}.filter-mode .booking-bar{border-radius:0 0 4px 4px;border-top:none;box-shadow:0 4px 15px #00000014}.booking-bar{display:flex;background:#fff;border:1px solid var(--hn-border);border-radius:6px;box-shadow:0 4px 10px #0000000a;align-items:stretch}.bb-separator{width:1px;height:48px;background:var(--hn-border)}.bb-segment:hover{background:#fdfdfc}.bb-segment{flex:1;padding:12px 20px;cursor:pointer;transition:background .2s;display:flex;flex-direction:column;justify-content:center}.bb-label{font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--hn-text-muted);letter-spacing:.8px;margin-bottom:2px}.bb-value{font-size:.95rem;font-weight:600;color:var(--hn-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bb-book-btn{background:var(--hn-primary);color:#fff;border:none;padding:0 40px;align-self:stretch;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s;border-radius:0 6px 6px 0}.bb-book-btn:hover{background:var(--hn-primary-dark)}.bb-book-btn:disabled{opacity:.6;cursor:not-allowed;background:#94a3b8}.booking-bar-wrapper.locked .booking-bar{pointer-events:none;opacity:.6;filter:blur(.4px) grayscale(.2);cursor:not-allowed}#editSearchOverlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff1a;-webkit-backdrop-filter:blur(.4px);backdrop-filter:blur(.4px);display:flex;align-items:center;justify-content:center;z-index:100;cursor:pointer}#editSearchOverlay button{background:var(--hn-primary-dark);color:#fff;border:none;padding:10px 24px;border-radius:4px;font-weight:800;font-size:.85rem;letter-spacing:.5px;box-shadow:4px 4px #0000001a;transition:var(--hn-transition);pointer-events:auto}#editSearchOverlay button:hover{transform:translateY(-2px);box-shadow:6px 6px #00000026}#editSearchOverlay button:active{transform:translateY(0)}.calendar-popup{position:absolute;top:100%;left:0;width:720px;max-width:calc(100vw - 32px);margin-top:4px;background:#fff;border:1px solid var(--hn-border);border-radius:4px;box-shadow:0 10px 25px #0000001a;z-index:1000;padding:16px 20px;animation:fadeIn .2s ease-out}@media(max-width:768px){.calendar-popup{position:fixed;top:0;left:0;width:100%;height:100%;max-width:100%;margin-top:0;border-radius:0;overflow-y:auto;padding:20px}}.calendar-popup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px;padding-bottom:5px;border-bottom:1px solid var(--hn-border)}#calendarSummary{font-weight:700;font-size:1.1rem;color:var(--hn-primary)}.close-cal-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--hn-text-muted)}.close-cal-btn:hover{color:var(--hn-text)}.calendar-card{background:transparent;border-radius:0;box-shadow:none;padding:0;max-width:100%}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.calendar-header h3{font-size:1.05rem;font-weight:700}.cal-nav-arrow{background:transparent;border:none;cursor:pointer;color:#94a3b8;transition:color .2s;display:flex;align-items:center;justify-content:center}.cal-nav-arrow:hover{color:var(--hn-text)}.cal-month-dropdown{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--hn-border);padding:6px 12px;border-radius:4px;width:160px;cursor:pointer;color:var(--hn-text)}.cal-month-dropdown span{font-size:1rem;font-weight:500}.calendar-grid-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;position:relative}@media(max-width:680px){.calendar-grid-wrapper{grid-template-columns:1fr;gap:32px}}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.cal-weekdays span{text-align:center;font-size:.8rem;font-weight:500;color:#255f0c;padding:2px 0}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,36px);gap:0}.cal-days>div{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.cal-day{padding:0;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:500;cursor:pointer;position:relative;border:none;width:100%;height:100%;margin:0;background:transparent;color:var(--hn-text);z-index:1}.cal-day span{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;position:relative;z-index:2}.cal-day:hover:not(.disabled):not(.booked):not(.blocked) span{background:#1f4d3a1a}.cal-day.disabled,.cal-day.booked,.cal-day.blocked{color:#cbd5e1;pointer-events:none}.cal-day.booked span,.cal-day.blocked span{text-decoration:line-through}.cal-day.in-range,.cal-day.preview-range{background:#1f4d3a1a!important;color:var(--hn-text)!important}.cal-day.checkin{background:#1f4d3a1a;border-radius:18px 0 0 18px}.cal-day.checkout{background:#1f4d3a1a;border-radius:0 18px 18px 0}.cal-day.checkin span,.cal-day.checkout span{background:var(--hn-primary);color:#fff;font-weight:600}.cal-day.today:not(.selected):not(.disabled) span{font-weight:700;border:1px solid var(--hn-primary)}.cal-legend{display:flex;gap:20px;justify-content:center;margin-top:8px;flex-wrap:wrap}.cal-legend-item{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--hn-text-muted)}.cal-legend-dot{width:10px;height:10px;border-radius:0}.cal-legend-dot.available{background:#52b78826;border:1px solid var(--hn-primary)}.cal-legend-dot.booked{background:#f0f0ed;border:1px solid #ccc}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1999;display:none;animation:fadeInOverlay .2s ease-out}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.guest-popup{position:absolute;top:100%;right:0;width:340px;max-width:calc(100vw - 32px);margin-top:4px;background:#fff;border:1px solid var(--hn-border);border-radius:4px;box-shadow:0 10px 25px #0000001a;z-index:1000;display:flex;flex-direction:column;animation:fadeIn .2s ease-out}@media(max-width:480px){.guest-popup{position:fixed;top:0;left:0;width:100%;height:100%;max-width:100%;margin-top:0;border-radius:0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.gp-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--hn-border)}.gp-header h4{font-size:1rem;font-weight:800;margin:0;color:var(--hn-text)}.gp-room-container{max-height:350px;overflow-y:auto}.gp-room{border-bottom:1px solid var(--hn-border);padding-bottom:4px}.gp-room-header{display:flex;justify-content:space-between;padding:10px 20px;background:#f8f8f6;color:var(--hn-text);font-size:.8rem;font-weight:700}.gp-remove-room{color:#c0392b;cursor:pointer;text-transform:uppercase;font-size:.75rem;font-weight:800;letter-spacing:.5px}.gp-remove-room:hover{color:#a93226;text-decoration:underline}.gp-row{display:flex;justify-content:space-between;align-items:center;padding:12px 20px}.gp-label h5{font-size:.95rem;font-weight:800;margin:0;color:var(--hn-text)}.gp-label p{font-size:.75rem;color:var(--hn-text-muted);margin:4px 0 0;font-weight:600}.gp-controls{display:flex;align-items:center;gap:12px}.gp-btn{width:32px;height:32px;border-radius:50%;background:#fff;border:1px solid var(--hn-border);font-size:1.2rem;font-weight:300;color:var(--hn-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;line-height:1}.gp-btn:hover:not(:disabled){border-color:var(--hn-primary);background:#fdfdfc;color:var(--hn-primary-dark)}.gp-btn:disabled{opacity:.2;cursor:not-allowed}.gp-val{font-size:1rem;font-weight:600;min-width:12px;text-align:center}.gp-footer{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:#fff}.gp-add-room{color:#c0392b;cursor:pointer;text-transform:uppercase;font-size:.85rem;font-weight:800;letter-spacing:.5px;display:flex;align-items:center;gap:8px}.gp-add-room:hover{color:#a93226;text-decoration:underline}.gp-done-btn{background:var(--hn-primary);color:#fff;border:none;padding:12px 32px;border-radius:4px;font-weight:800;font-size:.9rem;cursor:pointer;transition:all .2s ease}.gp-done-btn:hover{background:var(--hn-primary-dark)}.gp-done-btn:active{transform:translateY(1px)}@media(max-width:768px){.booking-bar{flex-direction:column;align-items:stretch}.bb-separator{width:100%;height:1px}.bb-book-btn{padding:16px;border-radius:0 0 4px 4px}}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}@media(max-width:420px){.rooms-grid{grid-template-columns:1fr}}.room-card{background:var(--hn-card);border-radius:4px;overflow:hidden;border:2px solid var(--hn-border);box-shadow:3px 3px #0000000a;transition:var(--hn-transition);cursor:pointer}.room-card:hover{border-color:var(--hn-primary);transform:translate(-2px,-2px);box-shadow:5px 5px #1a4d2e26}.room-card-img{width:100%;height:200px;object-fit:cover;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);display:flex;align-items:center;justify-content:center;font-size:3rem;color:var(--hn-primary)}.room-card-body{padding:16px}.room-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.room-card-name{font-size:1rem;font-weight:700}.room-card-badge{background:var(--hn-primary);color:#fff;font-size:.7rem;font-weight:600;padding:4px 8px;border-radius:4px;white-space:nowrap}.room-card-desc{font-size:.85rem;color:var(--hn-text-muted);margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.room-amenities{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.amenity-tag{background:#f4f4f1;padding:4px 10px;border-radius:6px;font-size:.72rem;font-weight:500;color:var(--hn-text-muted)}.room-card-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--hn-border);padding-top:16px}.room-price-tag{font-size:1.3rem;font-weight:800;color:var(--hn-primary)}.room-price-tag span{font-size:.75rem;font-weight:400;color:var(--hn-text-muted)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--hn-primary);color:#fff;border:none;padding:12px 24px;border-radius:4px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .15s ease;text-decoration:none;font-family:inherit;text-transform:uppercase;letter-spacing:.5px}.btn-primary:hover:not(:disabled){background:var(--hn-primary-dark)}.btn-primary:active:not(:disabled){transform:translateY(1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-primary.full-width{width:100%}.btn-outline{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--hn-primary);border:1px solid var(--hn-primary);padding:10px 24px;border-radius:4px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .15s ease;text-decoration:none;font-family:inherit;text-transform:uppercase}.btn-outline:hover{background:var(--hn-bg)}.btn-outline:active{transform:translateY(1px)}.step3-layout{display:grid;grid-template-columns:1fr 380px;gap:32px;align-items:start}@media(max-width:900px){.step3-layout{grid-template-columns:1fr}}.form-card{background:var(--hn-card);border-radius:var(--hn-radius);border:1px solid var(--hn-border);box-shadow:var(--hn-shadow);padding:28px;margin-bottom:32px}.form-card h3{font-size:1.15rem;font-weight:700;margin-bottom:24px;display:flex;align-items:center;gap:10px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:.82rem;font-weight:600;margin-bottom:6px;color:var(--hn-text)}.form-group label .required{color:var(--hn-danger);margin-left:2px}.form-control{width:100%;padding:12px 14px;border:1px solid var(--hn-border);background:#fbfbf9;border-radius:4px;font-size:.95rem;font-weight:500;font-family:inherit;transition:all .2s;color:var(--hn-text);outline:none}.form-control:focus{border-color:var(--hn-primary);background:#fff;box-shadow:0 0 0 3px #1f4d3a26}.form-control.error{border-color:var(--hn-danger);box-shadow:0 0 0 3px #dc35451a}.error-msg{font-size:.75rem;color:var(--hn-danger);margin-top:4px;display:none}.error-msg.visible{display:block}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:500px){.form-row{grid-template-columns:1fr}}.additional-guests{background:#f8f8f6;border-radius:var(--hn-radius-sm);padding:16px;margin-top:12px;animation:fadeSlideIn .3s ease}.id-upload-area{border:2px dashed var(--hn-border);border-radius:var(--hn-radius-sm);padding:32px;text-align:center;cursor:pointer;transition:var(--hn-transition);background:#fafaf8}.id-upload-area:hover{border-color:var(--hn-accent);background:#52b7880a}.id-upload-area.error{border-color:var(--hn-danger);background:#dc35450a}.id-upload-area.error p,.id-upload-area.error .upload-icon{color:var(--hn-danger)}.id-upload-area .upload-icon{font-size:2rem;margin-bottom:8px;color:var(--hn-accent)}.id-upload-area p{font-size:.85rem;color:var(--hn-text-muted)}.trust-badges{display:flex;flex-direction:column;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid var(--hn-border)}.trust-item{display:flex;align-items:center;gap:10px;font-size:.82rem;color:var(--hn-text-muted)}.trust-icon{width:32px;height:32px;border-radius:50%;background:#52b7881a;display:flex;align-items:center;justify-content:center;color:var(--hn-accent);flex-shrink:0}.summary-panel{background:var(--hn-card);border-radius:var(--hn-radius);position:sticky;top:24px;border:1px solid var(--hn-border);box-shadow:var(--hn-shadow-lg);overflow:hidden}.summary-panel-header{background:var(--hn-primary);color:#fff;padding:16px 24px;font-size:1rem;font-weight:700}.summary-panel-content{padding:20px}.summary-panel h3{display:none}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:.85rem}.summary-row.total{border-top:1px solid var(--hn-border);margin-top:8px;padding-top:16px;font-size:1.15rem;font-weight:800;color:var(--hn-primary)}.summary-divider{height:1px;background:var(--hn-border);margin:12px 0}.confirmation-card{background:var(--hn-card);border-radius:var(--hn-radius);box-shadow:var(--hn-shadow-lg);padding:32px 24px;max-width:600px;margin:0 auto;text-align:center}.confirm-icon{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--hn-accent),var(--hn-primary));display:flex;align-items:center;justify-content:center;margin:0 auto 24px;animation:scaleIn .5s ease}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.confirm-icon svg{width:40px;height:40px;color:#fff}.confirmation-card h2{font-size:1.4rem;font-weight:800;color:var(--hn-primary);margin-bottom:8px}.confirmation-card .ref-number{font-size:.9rem;color:var(--hn-text-muted);margin-bottom:28px}.conf-details{text-align:left;background:#f8f8f6;border-radius:var(--hn-radius-sm);padding:20px;margin-bottom:28px}.conf-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.88rem;border-bottom:1px solid var(--hn-border)}.conf-row:last-child{border-bottom:none}.conf-row span:first-child{color:var(--hn-text-muted)}.conf-row span:last-child{font-weight:600}.conf-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.shimmer-card{background:var(--hn-card);border-radius:var(--hn-radius);overflow:hidden;box-shadow:var(--hn-shadow)}.shimmer{background:linear-gradient(90deg,#f0f0ed 25%,#e8e8e4,#f0f0ed 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer-img{height:200px}.shimmer-body{padding:20px}.shimmer-line{height:14px;border-radius:8px;margin-bottom:10px}.shimmer-line.w60{width:60%}.shimmer-line.w80{width:80%}.shimmer-line.w40{width:40%}.shimmer-line.h24{height:24px}.cal-tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--hn-text);color:#fff;padding:4px 10px;border-radius:6px;font-size:.7rem;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s;z-index:10}.cal-day:hover .cal-tooltip{opacity:1}.mobile-summary-bar{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--hn-card);border-top:2px solid var(--hn-border);padding:14px 20px;z-index:100;box-shadow:0 -4px 20px #0000001a}.mobile-summary-inner{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.mobile-total{font-size:1.15rem;font-weight:800;color:var(--hn-primary)}.mobile-total small{font-size:.75rem;color:var(--hn-text-muted);display:block;font-weight:400}@media(max-width:900px){.summary-panel{display:none!important}.mobile-summary-bar.visible{display:block}body.booking-page{padding-bottom:80px}}.section-heading{text-align:center;margin-bottom:32px}.section-heading h2{font-size:1.4rem;font-weight:800;color:var(--hn-primary);margin-bottom:4px}.section-heading p{font-size:.9rem;color:var(--hn-text-muted)}.back-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--hn-text-muted);font-size:.85rem;font-weight:600;cursor:pointer;margin-bottom:20px;padding:8px 0;font-family:inherit;transition:var(--hn-transition)}.back-btn:hover{color:var(--hn-primary)}.services-section{margin-top:24px}.service-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--hn-border)}.service-item:last-child{border-bottom:none}.service-info h4{font-size:.9rem;font-weight:600}.service-info p{font-size:.75rem;color:var(--hn-text-muted)}.service-toggle{position:relative;width:44px;height:24px}.service-toggle input{opacity:0;width:0;height:0}.service-slider{position:absolute;cursor:pointer;inset:0;background:var(--hn-border);border-radius:24px;transition:var(--hn-transition)}.service-slider:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;left:3px;top:3px;transition:var(--hn-transition)}.service-toggle input:checked+.service-slider{background:var(--hn-accent)}.service-toggle input:checked+.service-slider:before{transform:translate(20px)}.hidden{display:none!important}.success-page{max-width:640px;margin:0 auto;text-align:center;animation:successFadeIn .6s ease-out}@keyframes successFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.success-icon-wrapper{position:relative;width:100px;height:100px;margin:0 auto 28px}.success-ring{position:absolute;inset:-8px;border-radius:50%;border:3px solid rgba(82,183,136,.2);animation:ringPulse 2s ease-in-out infinite}@keyframes ringPulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.15);opacity:0}}.success-checkmark{width:100px;height:100px;border-radius:50%;display:block;stroke-width:2;stroke:#fff;stroke-miterlimit:10;box-shadow:inset 0 0 0 var(--hn-accent);animation:fillGreen .4s ease-in-out .4s forwards,scaleCheck .3s ease-in-out .9s both}.success-checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:var(--hn-accent);fill:none;animation:strokeCircle .6s cubic-bezier(.65,0,.45,1) forwards}.success-checkmark-check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}@keyframes strokeCircle{to{stroke-dashoffset:0}}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillGreen{to{box-shadow:inset 0 0 0 60px var(--hn-accent)}}@keyframes scaleCheck{0%,to{transform:none}50%{transform:scale3d(1.1,1.1,1)}}.success-title{font-size:2rem;font-weight:800;color:var(--hn-primary-dark);margin-bottom:8px;letter-spacing:-.5px}.success-subtitle{font-size:1rem;color:var(--hn-text-muted);margin-bottom:28px;max-width:420px;margin-left:auto;margin-right:auto}.success-ref-badge{display:inline-flex;flex-direction:column;align-items:center;gap:4px;background:linear-gradient(135deg,#f0fdf4,#e8f5e9);border:2px solid var(--hn-accent);border-radius:12px;padding:14px 32px;margin-bottom:32px;animation:badgePop .5s ease-out 1s both}@keyframes badgePop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.success-ref-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--hn-primary)}.success-ref-code{font-size:1.4rem;font-weight:800;color:var(--hn-primary-dark);letter-spacing:2px;font-family:Courier New,monospace}.success-card{background:var(--hn-card);border:1px solid var(--hn-border);border-radius:12px;overflow:hidden;text-align:left;margin-bottom:20px;box-shadow:0 2px 12px #0000000a;animation:cardSlideUp .5s ease-out both}.success-card:nth-child(5){animation-delay:.2s}.success-card:nth-child(6){animation-delay:.35s}.success-card:nth-child(7){animation-delay:.5s}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.success-card-header{display:flex;align-items:center;gap:14px;padding:20px 24px;background:linear-gradient(135deg,var(--hn-primary-dark),var(--hn-primary));color:#fff}.success-hotel-badge{width:42px;height:42px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;letter-spacing:1px;flex-shrink:0;border:2px solid rgba(255,255,255,.3)}.success-hotel-name{font-size:1.15rem;font-weight:700}.success-hotel-tag{font-size:.78rem;opacity:.8;font-weight:400}.success-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.success-detail-item{display:flex;align-items:flex-start;gap:12px;padding:18px 24px;border-bottom:1px solid var(--hn-border);transition:background .2s}.success-detail-item:hover{background:#fafaf8}.success-detail-item:nth-child(odd){border-right:1px solid var(--hn-border)}.success-detail-item:nth-last-child(-n+2){border-bottom:none}.success-detail-icon{width:36px;height:36px;border-radius:8px;background:#f0fdf4;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--hn-primary)}.success-detail-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--hn-text-muted);margin-bottom:2px}.success-detail-value{font-size:.95rem;font-weight:700;color:var(--hn-text)}.success-detail-sub{font-size:.78rem;color:var(--hn-text-muted);margin-top:1px}.success-total-bar{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;background:#fafaf8;border-top:2px solid var(--hn-border);font-weight:600;font-size:.95rem;color:var(--hn-text-muted)}.success-total-amount{font-size:1.35rem;font-weight:800;color:var(--hn-primary-dark)}.success-section-title{display:flex;align-items:center;gap:10px;font-size:1rem;font-weight:700;color:var(--hn-text);padding:18px 24px;border-bottom:1px solid var(--hn-border);margin:0}.success-section-title svg{color:var(--hn-primary)}.success-guest-details{padding:4px 0}.success-guest-row{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;font-size:.9rem}.success-guest-row:not(:last-child){border-bottom:1px solid #f5f5f2}.success-guest-label{color:var(--hn-text-muted);font-weight:500}.success-guest-value{font-weight:600;color:var(--hn-text)}.success-next-steps{padding:8px 24px 20px}.success-next-item{display:flex;align-items:flex-start;gap:14px;padding:14px 0}.success-next-item:not(:last-child){border-bottom:1px solid #f5f5f2}.success-next-number{width:28px;height:28px;border-radius:50%;background:var(--hn-primary);color:#fff;font-size:.78rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.success-next-item strong{display:block;font-size:.9rem;font-weight:700;color:var(--hn-text);margin-bottom:2px}.success-next-item p{font-size:.82rem;color:var(--hn-text-muted);line-height:1.5;margin:0}.success-next-item a{color:var(--hn-primary);font-weight:600;text-decoration:none}.success-next-item a:hover{text-decoration:underline}.success-actions{display:flex;gap:16px;margin-top:32px;margin-bottom:20px;animation:cardSlideUp .5s ease-out .65s both}.success-btn-home,.success-btn-contact{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;border-radius:12px;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .2s ease}.success-btn-home{box-shadow:0 4px 14px #1a4d2e40}.success-btn-home:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1a4d2e59}.success-btn-contact:hover{transform:translateY(-2px);background:#f8fcf5}@media(max-width:640px){.success-page{padding:0 4px}.success-title{font-size:1.5rem}.success-subtitle{font-size:.9rem}.success-ref-badge{padding:12px 24px}.success-ref-code{font-size:1.15rem}.success-details-grid{grid-template-columns:1fr}.success-detail-item:nth-child(odd){border-right:none}.success-detail-item{border-bottom:1px solid var(--hn-border)}.success-detail-item:last-child{border-bottom:none}.success-actions{flex-direction:column}.success-card-header{padding:16px 20px}.success-detail-item,.success-total-bar{padding:14px 20px}.success-guest-row{padding:10px 20px}}.toast{position:fixed;bottom:40px;left:50%;transform:translate(-50%) translateY(80px);background:#0f3320f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;padding:16px 32px;border-radius:50px;font-size:.95rem;font-weight:600;z-index:9999;box-shadow:0 12px 40px #0000004d,inset 0 1px 1px #ffffff1a;transition:transform .6s cubic-bezier(.34,1.56,.64,1),opacity .3s ease;border:1px solid rgba(255,255,255,.1);opacity:0;pointer-events:none;max-width:90vw;width:max-content;text-align:center}.toast.show{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto}.id-upload-area.drag-over{border-color:var(--hn-primary)!important;background:#52b78814!important;transform:scale(1.01)}.animate-fadeIn{animation:fadeSlideIn .5s ease}@keyframes urgentPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@media(max-width:768px){.room-card>div:first-child{flex-direction:column!important}.room-card .room-card-img{width:100%!important;height:200px!important}.room-card .room-card-body{padding:20px!important}.calendar-popup{width:calc(100vw - 32px);left:-16px}.calendar-grid-wrapper,.form-row{grid-template-columns:1fr}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.animate-shake{animation:shake .4s cubic-bezier(.36,.07,.19,.97) both}.error-msg{color:#dc2626;font-size:13px;font-weight:600;margin-top:6px;display:none;transition:all .2s}.error-msg.visible{display:block;animation:fadeSlideIn .3s ease}input.has-error,select.has-error,textarea.has-error{border-color:#ef4444!important;background-color:#fef2f2!important}.prose-sm{font-size:.875rem;line-height:1.6}.prose-sm p{margin-bottom:.75em}.prose-sm p:last-child{margin-bottom:0}.floating-input-group{position:relative;margin-bottom:0}.floating-input{width:100%;height:58px;padding:24px 16px 8px;background:#fff;border:1.5px solid var(--hn-border);border-radius:12px;font-size:15px;font-weight:600;color:var(--hn-text);outline:none;transition:all .25s cubic-bezier(.165,.84,.44,1);box-shadow:0 1px 2px #00000005}.floating-label{position:absolute;top:18px;left:16px;color:var(--hn-text-muted);font-size:15px;font-weight:500;pointer-events:none;transition:all .25s cubic-bezier(.165,.84,.44,1)}.floating-input:focus~.floating-label,.floating-input:not(:placeholder-shown)~.floating-label{top:8px;left:16px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--hn-primary)}.floating-input:focus{border-color:var(--hn-primary);background:#fff;box-shadow:0 0 0 4px #1a4d2e14,0 4px 12px #00000008}.floating-input.error{border-color:var(--hn-danger)!important;background:#fff5f5!important}.floating-input.error~.floating-label{color:var(--hn-danger)}.premium-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%231a4d2e' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px}.chip-selector{display:flex;gap:8px;margin-bottom:24px}.chip-item{position:relative;cursor:pointer}.chip-item input{position:absolute;opacity:0;width:0;height:0}.chip-label{display:flex;align-items:center;justify-content:center;padding:10px 22px;background:#fff;border:1.5px solid var(--hn-border);border-radius:40px;font-size:13px;font-weight:700;color:var(--hn-text-muted);transition:all .25s ease;-webkit-user-select:none;user-select:none}.chip-item input:checked+.chip-label{background:var(--hn-primary);border-color:var(--hn-primary);color:#fff;box-shadow:0 4px 10px #1a4d2e33;transform:translateY(-2px)}.chip-item:hover .chip-label:not(input:checked+.chip-label){border-color:var(--hn-primary-light);background:#fdfdfc}.floating-textarea{height:auto!important;min-height:100px;line-height:1.5;padding-top:28px!important}.accordion-premium-card{transition:all .4s cubic-bezier(.165,.84,.44,1)}.accordion-premium-card.active{box-shadow:0 12px 30px #1a4d2e1f;border-color:#1a4d2e33}.wizard-stepper{display:flex;justify-content:center;align-items:center;gap:0;margin-bottom:40px;padding:0 20px}.wizard-step{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;min-width:100px}.wizard-circle{width:44px;height:44px;border-radius:50%;background:#fff;border:2px solid #e5e7eb;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;color:#9ca3af;transition:all .4s cubic-bezier(.165,.84,.44,1);cursor:pointer;box-shadow:0 4px 10px #0000000d}.wizard-label{margin-top:12px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#9ca3af;transition:all .3s ease;text-align:center;white-space:nowrap}.wizard-step.active .wizard-circle{background:var(--hn-primary);border-color:var(--hn-primary);color:#fff;transform:scale(1.1);box-shadow:0 8px 25px #1a4d2e4d}.wizard-step.active .wizard-label{color:var(--hn-primary-dark)}.wizard-step.completed .wizard-circle{background:#fff;border-color:var(--hn-primary);color:var(--hn-primary)}.wizard-step.completed .wizard-label{color:var(--hn-primary)}.wizard-connector{height:2px;flex-grow:1;background:#e5e7eb;margin:0 -20px;position:relative;top:-12px;z-index:0;transition:all .4s ease}.wizard-connector.completed{background:var(--hn-primary)}@media(max-width:640px){.wizard-step{min-width:80px}.wizard-label{font-size:9px}.wizard-circle{width:36px;height:36px;font-size:12px}.wizard-connector{top:-10px;margin:0 -15px}}@media print{@page{margin:1cm;size:auto}html,body{height:auto!important;overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important}body>*{display:none!important}.booking-container{display:block!important;padding:0!important;margin:0!important}.no-print,.booking-hero,.mobile-summary-bar,#bookingToast,.progress-bar,.modal-overlay,.screen-only{display:none!important}.print-only{display:block!important;margin:auto!important}.step-panel{display:none!important}.step-panel[x-show*=CONFIRMED]{display:block!important;min-height:auto!important;padding:0!important;margin:0!important}#printable-receipt{margin:10mm auto!important;padding:20px!important;width:100%!important;max-width:500px!important;border:1px solid #f1f1f0!important;border-radius:30px!important;box-shadow:none!important;position:relative!important;top:0!important;visibility:visible!important}#printable-receipt span[x-text*=reference]{font-size:24px!important;letter-spacing:2px!important;white-space:nowrap!important;display:inline-block!important}#printable-receipt *{visibility:visible!important}#printable-receipt>div[style*="position: absolute"]{top:10px!important;position:absolute!important}}
