.brand-chip{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:#fff;border-radius:6px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:11px;font-weight:800;letter-spacing:-.5px;line-height:1;flex-shrink:0;box-shadow:0 1px 2px rgba(0,0,0,.12)}.brand-chip--booking{color:#003580}.brand-chip--whimstay{color:#ea580c}.brand-chip--aviasales{color:#2aa7ff;font-size:9px}.brand-chip--kayak{color:#ff690f}.booking-widget{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px;margin-top:12px;box-shadow:0 1px 2px rgba(16,24,40,.04);box-sizing:border-box}.booking-widget.compact{padding:14px}.booking-widget.loading{min-height:80px}.booking-skeleton{display:flex;align-items:center;gap:12px;animation:pulse 1.5s ease-in-out infinite}.booking-skeleton .skeleton-icon{width:18px;height:18px;background:#d1d5db;border-radius:4px}.booking-skeleton .skeleton-text{height:16px;width:120px;background:#d1d5db;border-radius:4px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.booking-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#2a2424;margin:0 0 12px;letter-spacing:-.01em}.booking-title-icon{width:18px;height:18px;color:#0071c2;flex-shrink:0}.booking-title .powered-by{font-size:10px;font-weight:500;color:#6b7280;margin-left:auto;padding:3px 8px;background:#f3f4f6;border-radius:999px;letter-spacing:.02em}.booking-properties{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px}.booking-property-card{display:flex;flex-direction:column;gap:8px;padding:0;background:transparent;border:none;border-radius:14px;text-decoration:none;transition:transform .2s ease}.booking-property-card:hover{transform:translateY(-2px)}.booking-property-card:hover .booking-image{transform:scale(1.04)}.booking-image-wrapper{position:relative;display:block;width:100%;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#f3f4f6}.booking-image-wrapper .booking-image-placeholder,.booking-image-wrapper img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover}.booking-image{object-fit:cover;transition:transform .4s ease}.booking-image-placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#e5e7eb,#f3f4f6)}.booking-rating-badge{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:hsla(0,0%,100%,.95);backdrop-filter:blur(4px);border-radius:999px;font-size:12px;font-weight:700;color:#2a2424;box-shadow:0 2px 6px rgba(0,0,0,.15)}.booking-rating-badge svg{color:#f59e0b}.booking-info{display:flex;flex-direction:column;gap:2px;padding:0 2px}.booking-property-title{font-size:14px;font-weight:600;color:#2a2424;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.booking-details{display:flex;align-items:center;gap:8px;font-size:12px;color:#6b7280}.booking-type{text-transform:capitalize}.booking-rating{display:flex;align-items:center;gap:3px;font-weight:500;color:#2a2424}.rating-icon{width:12px;height:12px;color:#fbbf24}.booking-price{display:flex;align-items:baseline;gap:2px;font-size:13px;color:#2a2424;margin-top:2px}.booking-price .price-value{font-weight:700;color:#2a2424;font-size:15px;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color .2s ease}.booking-property-card:hover .booking-price .price-value{text-decoration-color:#2a2424}.booking-price .price-period{color:#6b7280;font-size:13px}.booking-arrow{color:#20b2aa;font-size:16px;flex-shrink:0;transition:transform .2s ease}.booking-property-card:hover .booking-arrow{transform:translateX(3px)}.booking-price-disclaimer{font-size:10px;color:#9ca3af;margin:0 0 12px;text-align:center}.view-all-stays{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;padding:12px 20px;font-size:14px;font-weight:600;line-height:1.2;color:#fff;background:#138f82;border:none;border-radius:999px;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease;cursor:pointer;letter-spacing:-.01em;box-sizing:border-box}.view-all-stays:hover{background:#0e7c66;transform:translateY(-1px);box-shadow:0 6px 20px rgba(19,143,130,.25)}.view-all-stays .btn-arrow{transition:transform .2s ease}.view-all-stays:hover .btn-arrow{transform:translateX(3px)}.booking-search-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;padding:12px 20px;font-size:14px;font-weight:600;line-height:1.2;color:#fff;background:#138f82;border:none;border-radius:999px;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease;cursor:pointer;letter-spacing:-.01em;box-sizing:border-box}.booking-search-btn:hover{background:#0e7c66;transform:translateY(-1px);box-shadow:0 6px 20px rgba(19,143,130,.25)}.booking-search-btn .btn-arrow{transition:transform .2s ease}.booking-search-btn:hover .btn-arrow{transform:translateX(3px)}.compact .booking-title{margin-bottom:10px}.compact .booking-search-btn,.compact .view-all-stays{padding:10px 18px;font-size:13px}@media (max-width:640px){.booking-widget{padding:12px}.booking-properties{grid-template-columns:1fr;gap:12px}.booking-property-title{font-size:14px}.booking-search-btn,.view-all-stays{padding:12px 16px;font-size:13px}}.booking-properties .p-timeline-event-connector,.booking-widget .p-timeline-event-connector{display:none!important}.booking-property-card:before,.booking-widget:before{content:none!important;display:none!important}.booking-info{border-left:none!important;padding:0!important;margin:0!important}