.booking-page{padding-top:170px;padding-bottom:100px}.booking-page-title{color:var(--olive);text-align:left;margin-bottom:60px;font-size:4rem}.booking-section{margin-bottom:70px}.booking-divider{align-items:center;gap:20px;margin-bottom:35px;display:flex}.booking-divider h2{color:var(--olive);white-space:nowrap;margin:0;font-size:2.2rem}.booking-divider:after{content:"";background:var(--olive);opacity:.18;flex:1;height:2px}.empty-booking{text-align:center;padding:180px 0}.empty-booking h1{margin-bottom:25px;font-size:4rem}.empty-booking p{color:var(--muted);max-width:700px;margin:auto;font-size:1.3rem}.empty-booking .btn-modern{margin-top:40px;padding:16px 40px}.booking-section:last-child{margin-bottom:0}.booking-page .row{--bs-gutter-x:2.5rem}.booking-page h1,.booking-page h2,.booking-page h3{color:var(--olive)}.booking-page p{color:var(--text)}.booking-page .btn-modern{border-radius:999px;padding:14px 32px}.booking-page a{text-decoration:none}.booking-section{animation:.4s fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.booking-card{background:#fff;border-radius:24px;align-items:stretch;margin-bottom:35px;transition:all .3s;display:flex;overflow:hidden;box-shadow:0 14px 40px #00000014}.booking-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #0000001f}.booking-card-image{object-fit:contain;width:250px;min-width:250px;height:100%}.booking-card-image img{object-fit:contain;width:250px;height:250px}.booking-card-body{flex:1;padding:30px}.booking-card-body h3{color:var(--olive);margin-bottom:8px;font-size:2rem}.booking-card-body h4{margin-top:25px;margin-bottom:12px}.booking-card-body p{margin-bottom:8px;line-height:1.7}.booking-details{grid-template-columns:repeat(2,1fr);gap:18px;margin-top:20px;display:grid}.booking-detail{background:#fafafa;border-radius:16px;padding:18px}.booking-detail small{color:var(--muted);margin-bottom:6px;font-size:.9rem;display:block}.booking-detail strong{color:var(--olive);font-size:1.05rem}.booking-features{flex-wrap:wrap;gap:10px;margin-top:25px;display:flex}.booking-feature{background:#f7f7f2;border:1px solid #4b512426;border-radius:999px;padding:8px 16px;font-size:.9rem}.booking-price{border-top:1px solid #ececec;justify-content:space-between;align-items:center;margin-top:30px;padding-top:25px;display:flex}.booking-price small{color:var(--muted);display:block}.booking-price h2{color:var(--olive);margin:0;font-size:2.3rem}.booking-actions{gap:12px;display:flex}.booking-actions .btn{border-radius:999px;padding:12px 22px}.btn-remove{color:#b42318;background:#fff;border:1px solid #f1c4c4}.btn-remove:hover{background:#fff5f5}.btn-edit{background:var(--olive);color:#fff}.btn-edit:hover{color:#fff;background:#3f441f}.booking-status{color:var(--olive);background:#4b512414;border-radius:999px;align-items:center;gap:8px;margin-bottom:18px;padding:8px 14px;font-weight:600;display:inline-flex}.booking-summary{background:#fff;border-radius:28px;padding:35px;position:sticky;top:130px;overflow:hidden;box-shadow:0 15px 45px #00000014}.booking-summary h2{color:var(--olive);margin-bottom:12px;font-size:2rem}.booking-summary-divider{background:var(--olive);opacity:.15;height:2px;margin:25px 0}.summary-row{justify-content:space-between;align-items:center;padding:14px 0;font-size:1.05rem;display:flex}.summary-row span{color:var(--text)}.summary-row strong{color:var(--olive);font-size:1.1rem}.summary-travellers{margin-top:5px}.summary-travellers h5{color:var(--olive);margin-bottom:15px;font-size:1.3rem}.summary-travellers .summary-row{padding:8px 0}.summary-total{text-align:center;margin:35px 0 15px}.summary-total span{color:var(--muted);margin-bottom:10px;display:block}.summary-total h3{color:var(--olive);margin:0;font-size:3rem}.booking-summary .btn{border-radius:999px;width:100%;padding:14px;font-size:1rem}.booking-summary .btn-outline-dark{border-width:2px}.booking-summary .btn-link{font-weight:600;text-decoration:none}.booking-summary .btn-link:hover{color:#a11a1a}.summary-note{text-align:center;color:var(--muted);margin-top:20px;font-size:.9rem;line-height:1.6}.itinerary-link{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;transition:color .2s}.itinerary-link:hover{color:var(--olive);font-weight:700;text-decoration:none}@media (max-width:991px){.booking-page{padding-top:120px;padding-bottom:60px}.booking-page-title{text-align:center;margin-bottom:40px;font-size:2.8rem}.booking-divider{margin-top:45px}.booking-divider h2{font-size:1.6rem}.empty-booking{padding:120px 0}.empty-booking h1{font-size:2.8rem}.empty-booking p{font-size:1.1rem}.booking-card{display:block}.booking-card-image{width:100%;min-width:100%;height:260px}.booking-card-body{padding:24px}.booking-card-body h3{font-size:1.7rem}.booking-details{grid-template-columns:1fr}.booking-price{flex-direction:column;align-items:flex-start;gap:18px}.booking-actions{flex-direction:column;width:100%}.booking-actions .btn{width:100%}.booking-summary{margin-top:50px;padding:30px;position:relative;top:0}.booking-summary h2{text-align:center}.summary-total h3{font-size:2.5rem}}@media (max-width:576px){.booking-page-title{font-size:2.3rem}.booking-divider h2{font-size:1.35rem}.booking-card-image{height:220px}.booking-card-body{padding:20px}.booking-card-body h3{font-size:1.5rem}.booking-price h2{font-size:2rem}.booking-summary{padding:24px}.summary-row{font-size:1rem}.summary-total h3{font-size:2.2rem}}
