/* v1.0.35 modular single-property listing styles */
.pxab-template--single{max-width:none;margin:0;padding:0;background:var(--pxab-single-bg,#fff);color:var(--pxab-single-text,#111827)}
.pxab-single-listing{max-width:var(--pxab-single-max-width,1120px);margin:0 auto;padding:24px 24px 96px;color:var(--pxab-single-text,#111827)}
.pxab-single-listing a{color:inherit}.pxab-marketplace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:0 0 22px}.pxab-marketplace-header .pxab-kicker{display:none}.pxab-marketplace-header h1{margin:0 0 8px;font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.15;color:var(--pxab-single-text,#111827)}.pxab-marketplace-subtitle{margin:0;color:var(--pxab-single-text,#111827);font-size:.98rem}.pxab-marketplace-actions{display:flex;gap:10px;align-items:center;white-space:nowrap}.pxab-marketplace-actions .pxab-button{background:transparent;color:var(--pxab-single-text,#111827);border:0;box-shadow:none;padding:.45rem .7rem;text-decoration:underline;text-underline-offset:2px}.pxab-single-gallery-wrap{margin:0 0 38px}.pxab-single-gallery-wrap .pxab-gallery{border-radius:var(--pxab-single-gallery-radius,14px);grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,minmax(150px,1fr));gap:8px;max-height:520px}.pxab-single-gallery-wrap .pxab-gallery__item{min-height:180px;background:#f3f4f6}.pxab-single-gallery-wrap .pxab-gallery__item--1{grid-row:1 / span 2;grid-column:1}.pxab-single-gallery-wrap .pxab-gallery__item img{transition:none}.pxab-marketplace-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,var(--pxab-single-sidebar-width,370px));gap:var(--pxab-single-gap,80px);align-items:start}.pxab-marketplace-layout--no-sidebar{grid-template-columns:minmax(0,760px)}.pxab-marketplace-main{min-width:0}.pxab-marketplace-section{padding:34px 0;border-top:1px solid var(--pxab-single-border,#e5e7eb)}.pxab-marketplace-section:first-child{border-top:0;padding-top:0}.pxab-marketplace-section h2{margin:0 0 18px;font-size:1.45rem;line-height:1.2;color:var(--pxab-single-text,#111827)}.pxab-marketplace-muted{margin:.3rem 0;color:var(--pxab-single-muted,#4b5563)}.pxab-content{font-size:1rem;line-height:1.65;color:var(--pxab-single-text,#111827)}.pxab-content p:last-child{margin-bottom:0}.pxab-highlight-list{gap:0}.pxab-highlight-list li{padding:18px 0;border-top:1px solid var(--pxab-single-border,#e5e7eb)}.pxab-highlight-list li:first-child{border-top:0}.pxab-highlight-list li:before{background:transparent;color:var(--pxab-single-text,#111827);font-size:1.1rem}.pxab-amenity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 44px;margin:0;padding:0;list-style:none}.pxab-amenity-list li{display:flex;align-items:center;gap:10px;min-height:28px}.pxab-amenity-list li:before{content:'✓';font-weight:800}.pxab-specs--marketplace{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pxab-specs--marketplace li{background:transparent;border:1px solid var(--pxab-single-border,#e5e7eb);border-radius:var(--pxab-single-radius,16px);padding:16px}.pxab-review-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.pxab-review-list li{border:0;border-radius:0;padding:0;background:transparent;font-size:.98rem;line-height:1.55}.pxab-review-list li:before{content:'★★★★★';display:block;font-size:.8rem;letter-spacing:.04em;margin-bottom:6px}.pxab-things-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.pxab-thing-card{border:0;border-radius:0;padding:0;background:transparent}.pxab-host-card{border:0;border-radius:0;padding:0;box-shadow:none;display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:42px}.pxab-host-card__profile{border:1px solid var(--pxab-single-border,#e5e7eb);border-radius:var(--pxab-single-radius,16px);padding:20px;box-shadow:0 var(--pxab-single-shadow-y,18px) var(--pxab-single-shadow-blur,44px) var(--pxab-single-shadow-color,rgba(15,23,42,.14))}.pxab-marketplace-sidebar{position:relative}.pxab-marketplace-sidebar__sticky{position:sticky;top:var(--pxab-single-sticky-top,88px)}.pxab-booking-widget--price-box{border-radius:var(--pxab-single-radius,16px);border:1px solid var(--pxab-single-border,#e5e7eb);background:var(--pxab-single-card-bg,#fff);box-shadow:0 var(--pxab-single-shadow-y,18px) var(--pxab-single-shadow-blur,44px) var(--pxab-single-widget-shadow-color,rgba(15,23,42,.16));padding:24px;margin:0}.pxab-booking-widget--price-box .pxab-button--reserve,.pxab-booking-widget--price-box [data-pxab-quote-submit]{background:var(--pxab-single-reserve-bg,#e11d48)!important;color:var(--pxab-single-reserve-text,#fff)!important;border:0!important;min-height:48px;font-size:1rem}.pxab-quote-combo{border-radius:12px;overflow:visible}.pxab-quote-combo__date-trigger,.pxab-quote-guests__trigger{min-height:58px}.pxab-quote-price{margin:0 0 16px}.pxab-quote-price__current{font-size:1.35rem;color:var(--pxab-single-text,#111827)}.pxab-quote-discount{display:flex;align-items:center;gap:10px;border-radius:var(--pxab-single-radius,16px);background:#fff;border:1px solid var(--pxab-single-border,#e5e7eb);box-shadow:0 12px 34px rgba(15,23,42,.08);padding:14px 16px;margin:0 0 16px}.pxab-quote-discount span[aria-hidden=true]{font-size:var(--pxab-single-discount-icon-size,20px);line-height:1;display:inline-flex;align-items:center;justify-content:center;width:calc(var(--pxab-single-discount-icon-size,20px) + 10px);height:calc(var(--pxab-single-discount-icon-size,20px) + 10px)}.pxab-promo-stack{display:grid;gap:12px;margin:0 0 16px}.pxab-promo-card{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--pxab-single-border,#e5e7eb);border-radius:var(--pxab-single-radius,16px);padding:14px 16px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.06)}.pxab-promo-card__icon{font-size:var(--pxab-single-discount-icon-size,20px);line-height:1;display:inline-flex;align-items:center;justify-content:center;min-width:calc(var(--pxab-single-discount-icon-size,20px) + 8px)}.pxab-promo-card__copy{display:grid;gap:2px}.pxab-promo-card__copy strong{font-size:.92rem}.pxab-promo-card__copy em{font-style:normal;color:var(--pxab-single-muted,#4b5563);font-size:.84rem}.pxab-promo-card--anim-pulse .pxab-promo-card__icon,.pxab-quote-discount.pxab-quote-discount--anim-pulse span[aria-hidden=true]{animation:pxabPromoPulse 1.8s ease-in-out infinite}.pxab-promo-card--anim-wobble .pxab-promo-card__icon,.pxab-quote-discount.pxab-quote-discount--anim-wobble span[aria-hidden=true]{animation:pxabPromoWobble 2.2s ease-in-out infinite}.pxab-promo-card--anim-bounce .pxab-promo-card__icon,.pxab-quote-discount.pxab-quote-discount--anim-bounce span[aria-hidden=true]{animation:pxabPromoBounce 1.9s ease-in-out infinite}.pxab-promo-card--anim-glow .pxab-promo-card__icon,.pxab-quote-discount.pxab-quote-discount--anim-glow span[aria-hidden=true]{filter:drop-shadow(0 0 7px rgba(225,29,72,.55));animation:pxabPromoGlow 2s ease-in-out infinite}@keyframes pxabPromoPulse{50%{transform:scale(1.12)}}@keyframes pxabPromoWobble{0%,100%{transform:rotate(0)}20%{transform:rotate(-10deg)}40%{transform:rotate(8deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(3deg)}}@keyframes pxabPromoBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes pxabPromoGlow{50%{filter:drop-shadow(0 0 13px rgba(225,29,72,.85))}}.pxab-single-nav{display:flex;align-items:center;gap:24px;font-weight:700}.pxab-single-nav a{text-decoration:none}.pxab-single-nav a:hover{text-decoration:underline;text-underline-offset:3px}.pxab-single-action-bar{position:fixed;left:0;right:0;bottom:0;z-index:99990;background:var(--pxab-single-sticky-bg,#fff);border-top:1px solid var(--pxab-single-border,#e5e7eb);box-shadow:0 -12px 34px rgba(15,23,42,.08);transform:translateY(110%);transition:transform .24s ease,opacity .24s ease;opacity:0}.pxab-single-action-bar.is-visible{transform:translateY(0);opacity:1}.pxab-single-action-bar[hidden]{display:block!important;pointer-events:none}.pxab-single-action-bar.is-visible[hidden]{pointer-events:auto}.pxab-single-action-bar__inner{max-width:var(--pxab-single-max-width,1120px);margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.pxab-single-action-bar__summary{display:flex;align-items:center;gap:12px;margin-left:auto}.pxab-single-action-bar__summary strong{font-size:1rem;text-decoration:underline;text-underline-offset:2px}.pxab-single-action-bar__summary span{font-size:.9rem;color:var(--pxab-single-muted,#4b5563)}.pxab-single-reserve-button{background:var(--pxab-single-reserve-bg,#e11d48)!important;color:var(--pxab-single-reserve-text,#fff)!important;border:0!important;min-width:132px;min-height:48px}.pxab-marketplace-section--booking .pxab-booking{margin:0;padding:0;max-width:none}.pxab-marketplace-section--booking .pxab-booking__header{display:none}.pxab-marketplace-section--booking .pxab-booking__layout{grid-template-columns:1fr;gap:20px}.pxab-marketplace-section--booking .pxab-card{box-shadow:none;border-color:var(--pxab-single-border,#e5e7eb);border-radius:var(--pxab-single-radius,16px)}.pxab-template--single .pxab-property-location,.pxab-property-map{border-radius:var(--pxab-map-radius,var(--pxab-single-gallery-radius,14px));overflow:hidden}.pxab-template--single .pxab-qr{border-radius:var(--pxab-single-radius,16px)}@media (max-width:960px){.pxab-single-listing{padding:18px 16px 110px}.pxab-marketplace-layout{grid-template-columns:1fr;gap:30px}.pxab-marketplace-sidebar{order:-1}.pxab-marketplace-sidebar__sticky{position:static}.pxab-single-gallery-wrap .pxab-gallery{grid-template-columns:1fr;display:block;max-height:none}.pxab-single-gallery-wrap .pxab-gallery__item:not(:first-child){display:none}.pxab-single-gallery-wrap .pxab-gallery__item{min-height:260px}.pxab-amenity-list,.pxab-review-list,.pxab-things-grid,.pxab-host-card{grid-template-columns:1fr}.pxab-single-action-bar__inner{padding:10px 16px}.pxab-single-action-bar .pxab-single-nav{display:none}.pxab-single-action-bar__summary{width:100%;justify-content:space-between}.pxab-single-action-bar__summary span{display:none}.pxab-single-reserve-button{min-width:128px}}@media (prefers-reduced-motion:reduce){.pxab-single-action-bar,.pxab-promo-card__icon,.pxab-quote-discount span[aria-hidden=true]{animation:none!important;transition:none!important}}

/* v1.0.37 request-to-book, pricing modal, dynamic cancellation and upsell UI */
.pxab-quote-price{display:block;width:100%;text-align:left;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0 0 16px!important;color:var(--pxab-single-text,#111827);cursor:pointer}.pxab-booking-widget--price-widget .pxab-quote-price{cursor:default}.pxab-quote-price__original{color:#6b7280;text-decoration:line-through;font-weight:500;margin-right:4px}.pxab-quote-price__qualifier{color:var(--pxab-single-muted,#4b5563);font-size:.95rem}.pxab-quote-cancellation{margin:14px 0;border-radius:12px;background:#f3f4f6;color:var(--pxab-single-text,#111827);padding:10px 12px;text-align:center;font-size:.9rem;font-weight:600}.pxab-quote-upsell{margin:0 0 14px}.pxab-quote-upsell__button{display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;text-align:left!important;border:1px solid var(--pxab-single-border,#e5e7eb)!important;border-radius:var(--pxab-single-radius,16px)!important;background:#fff!important;color:var(--pxab-single-text,#111827)!important;box-shadow:0 10px 28px rgba(15,23,42,.08)!important;padding:14px 16px!important}.pxab-quote-upsell__button>span[aria-hidden=true]{font-size:var(--pxab-single-discount-icon-size,20px);animation:pxabPromoWobble 2.2s ease-in-out infinite}.pxab-quote-upsell__button strong,.pxab-quote-upsell__button em,.pxab-quote-upsell__button u{display:block}.pxab-quote-upsell__button em{font-style:normal;color:var(--pxab-single-muted,#4b5563);font-size:.88rem}.pxab-quote-upsell__button u{text-underline-offset:2px;font-weight:700}.pxab-price-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;background:rgba(15,23,42,.22);padding:20px}.pxab-price-modal[hidden]{display:none!important}.pxab-price-modal__panel{position:relative;width:min(420px,calc(100vw - 32px));border-radius:var(--pxab-single-radius,16px);background:#fff;color:#111827;box-shadow:0 24px 70px rgba(15,23,42,.28);padding:28px}.pxab-price-modal__close{position:absolute;top:18px;right:18px;width:28px;height:28px;padding:0!important;border:0!important;background:transparent!important;color:#111827!important;box-shadow:none!important;display:grid;place-items:center}.pxab-price-modal-breakdown h3{margin:0 0 18px;font-size:1.25rem}.pxab-price-modal-breakdown dl{display:grid;gap:12px;margin:0}.pxab-price-modal-breakdown dl>div{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.pxab-price-modal-breakdown dt{font-weight:500}.pxab-price-modal-breakdown dd{margin:0;text-align:right}.pxab-price-modal-breakdown .is-saving dd{color:#008a05}.pxab-price-modal-breakdown__total{border-top:1px solid #e5e7eb;padding-top:14px;font-weight:800}.pxab-booking-widget--price-modal .pxab-quote-breakdown{display:none!important}.pxab-template--request-booking{background:var(--pxab-single-bg,#fff);color:var(--pxab-single-text,#111827);min-height:100vh}.pxab-request-booking{max-width:1120px;margin:0 auto;padding:48px 24px 96px}.pxab-request-booking__inner{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:72px;align-items:start}.pxab-request-booking__main{min-width:0}.pxab-request-booking__back{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:999px;background:#f3f4f6;text-decoration:none;margin-bottom:18px}.pxab-request-booking h1{font-size:2rem;line-height:1.1;margin:0 0 28px}.pxab-request-steps{display:grid;gap:18px;margin:0 0 28px}.pxab-request-step{border:1px solid var(--pxab-single-border,#e5e7eb);border-radius:var(--pxab-single-radius,16px);padding:22px 26px;background:#fff}.pxab-request-step.is-active{box-shadow:0 10px 30px rgba(15,23,42,.08)}.pxab-request-booking .pxab-booking{padding:0;margin:0}.pxab-request-booking .pxab-booking__header{display:none}.pxab-request-booking .pxab-booking__layout{grid-template-columns:1fr;gap:18px}.pxab-request-booking .pxab-card{border-radius:var(--pxab-single-radius,16px);border-color:var(--pxab-single-border,#e5e7eb);box-shadow:none}.pxab-request-booking__summary{position:sticky;top:88px;padding:24px}.pxab-request-summary__header{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center}.pxab-request-summary__image{border-radius:10px;overflow:hidden;aspect-ratio:1}.pxab-request-summary__image img{width:100%;height:100%;object-fit:cover}.pxab-request-summary__header h2{font-size:1rem;margin:0 0 4px}.pxab-request-summary__header p,.pxab-request-summary__line{margin:.25rem 0;color:var(--pxab-single-muted,#4b5563)}.pxab-request-summary__details{border-top:1px solid var(--pxab-single-border,#e5e7eb);border-bottom:1px solid var(--pxab-single-border,#e5e7eb);margin:20px 0;padding:10px 0}.pxab-request-summary__details>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0}.pxab-request-summary__details dt{font-weight:800}.pxab-request-summary__details dd{margin:0;text-align:right}.pxab-request-booking .pxab-submit{background:var(--pxab-single-reserve-bg,#e11d48)!important;color:var(--pxab-single-reserve-text,#fff)!important;border:0!important;border-radius:999px!important;min-height:52px}.pxab-request-booking .pxab-payment-note{border-radius:12px}.pxab-request-booking .pxab-price-estimator{border-radius:var(--pxab-single-radius,16px)}
@media(max-width:900px){.pxab-request-booking{padding:28px 16px 90px}.pxab-request-booking__inner{grid-template-columns:1fr;gap:28px}.pxab-request-booking__summary{position:static;order:-1}.pxab-request-summary__header{grid-template-columns:74px 1fr}}

/* v1.0.37 request-to-book gated/quick flow and pricing visibility fixes */
.pxab-booking--request-flow{max-width:none!important;margin:0!important;padding:0!important}.pxab-booking--request-flow .pxab-booking__header{display:none!important}.pxab-request-flow{display:grid;gap:18px}.pxab-request-flow__panel{display:grid;gap:18px}.pxab-request-flow--mode-steps .pxab-request-flow__panel[hidden]{display:none!important}.pxab-request-flow--mode-all .pxab-request-flow__panel{display:grid!important}.pxab-request-flow__card{box-shadow:none!important;border:1px solid var(--pxab-single-border,#e5e7eb)!important;border-radius:var(--pxab-single-radius,16px)!important;background:var(--pxab-single-card-bg,#fff)!important}.pxab-request-flow__hint{margin-top:-6px;color:var(--pxab-single-muted,#4b5563)}.pxab-request-flow__actions{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.pxab-request-flow__actions .pxab-button,.pxab-request-flow__actions .pxab-submit{border-radius:999px!important;min-height:48px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.pxab-request-flow__next,.pxab-request-flow__actions .pxab-submit{background:var(--pxab-single-reserve-bg,#e11d48)!important;color:var(--pxab-single-reserve-text,#fff)!important;border:0!important}.pxab-request-flow__card.is-invalid,.pxab-request-flow__panel.is-invalid .pxab-request-flow__card{outline:2px solid rgba(225,29,72,.36);outline-offset:2px}.pxab-request-review{display:grid;gap:10px;margin:0 0 16px}.pxab-request-review>div{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--pxab-single-border,#e5e7eb);padding:0 0 10px}.pxab-request-review strong{font-weight:800}.pxab-request-review span{text-align:right;color:var(--pxab-single-muted,#4b5563)}.pxab-request-flow__cancellation{margin:12px 0 18px}.pxab-request-step{appearance:none;text-align:left;color:var(--pxab-single-text,#111827)!important;cursor:pointer!important}.pxab-request-step:disabled{opacity:.56;cursor:not-allowed!important}.pxab-request-step.is-active{border-color:var(--pxab-single-text,#111827)}.pxab-request-flow--anim-fade .pxab-request-flow__panel.is-active{animation:pxabRequestFade .22s ease both}.pxab-request-flow--anim-slide .pxab-request-flow__panel.is-active{animation:pxabRequestSlide .26s ease both}.pxab-request-flow--anim-soft .pxab-request-flow__panel.is-active{animation:pxabRequestSoft .28s ease both}.pxab-request-flow__panel.is-invalid{animation:pxabRequestShake .32s ease both}@keyframes pxabRequestFade{from{opacity:0}to{opacity:1}}@keyframes pxabRequestSlide{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}@keyframes pxabRequestSoft{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes pxabRequestShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.pxab-quote-price:not([hidden]){display:block!important}.pxab-quote-breakdown:not([hidden]){display:block!important}.pxab-booking-widget--price-modal .pxab-quote-breakdown{display:none!important}.pxab-booking-widget--price-widget .pxab-price-modal,.pxab-booking-widget--price-widget .pxab-price-modal[hidden]{display:none!important}@media(max-width:900px){.pxab-request-flow__actions{flex-direction:column}.pxab-request-flow__actions .pxab-button,.pxab-request-flow__actions .pxab-submit{width:100%}}@media(prefers-reduced-motion:reduce){.pxab-request-flow__panel,.pxab-request-flow__panel.is-active,.pxab-request-flow__panel.is-invalid{animation:none!important}}

/* v1.0.39 request flow field-specific validation, step styling and narrow calendar fix. */
.pxab-request-step{
  background:var(--pxab-request-step-bg,#fff)!important;
  color:var(--pxab-request-step-text,#111827)!important;
  border-color:var(--pxab-request-step-border,#e5e7eb)!important;
}
.pxab-request-step.is-active{
  background:var(--pxab-request-step-active-bg,#fff)!important;
  color:var(--pxab-request-step-active-text,#111827)!important;
  border-color:var(--pxab-request-step-active-border,#111827)!important;
}
.pxab-request-step:disabled{opacity:var(--pxab-request-step-disabled-opacity,.56)!important;}
.pxab-field-error{
  display:block;
  width:100%;
  margin-top:6px;
  padding:8px 10px;
  border:1px solid var(--pxab-request-error-border,#fecaca);
  border-radius:var(--pxab-request-error-radius,10px);
  background:var(--pxab-request-error-bg,#fef2f2);
  color:var(--pxab-request-error-text,#b91c1c);
  font-size:.86rem;
  font-weight:700;
  line-height:1.35;
}
.pxab-field-error[hidden]{display:none!important;}
.pxab-request-booking .is-pxab-invalid,
.pxab-booking--request-flow .is-pxab-invalid{
  border-color:var(--pxab-request-error-text,#b91c1c)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--pxab-request-error-text,#b91c1c) 20%,transparent)!important;
}
.pxab-request-booking .pxab-calendar-card,
.pxab-booking--request-flow .pxab-calendar-card{overflow:hidden;}
.pxab-request-booking .pxab-calendar-mini,
.pxab-booking--request-flow .pxab-calendar-mini{display:block!important;width:100%;min-width:0;}
.pxab-request-booking .pxab-calendar-months,
.pxab-booking--request-flow .pxab-calendar-months{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:18px;width:100%;min-width:0;}
.pxab-request-booking .pxab-calendar-grid,
.pxab-booking--request-flow .pxab-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;width:100%;min-width:0;}
.pxab-request-booking .pxab-calendar-day,
.pxab-request-booking button.pxab-calendar-day,
.pxab-booking--request-flow .pxab-calendar-day,
.pxab-booking--request-flow button.pxab-calendar-day{min-width:0;width:100%;height:auto;min-height:34px;padding:0!important;font-size:.88rem;line-height:1;}
.pxab-request-booking .pxab-calendar-blank,
.pxab-booking--request-flow .pxab-calendar-blank{min-height:34px;}
.pxab-request-booking .pxab-date-grid,
.pxab-booking--request-flow .pxab-date-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));}
.pxab-inline-check{display:inline-flex;align-items:center;gap:8px;margin-top:8px;}
.pxab-inline-check input[type="checkbox"]{width:18px;height:18px;margin:0;}
@media(max-width:680px){
  .pxab-request-booking .pxab-calendar-months,
  .pxab-booking--request-flow .pxab-calendar-months{grid-template-columns:1fr;}
  .pxab-request-booking .pxab-calendar-day,
  .pxab-request-booking button.pxab-calendar-day,
  .pxab-booking--request-flow .pxab-calendar-day,
  .pxab-booking--request-flow button.pxab-calendar-day{min-height:32px;font-size:.82rem;}
}
/* v1.0.39b: keep request calendars readable inside narrow checkout cards even on desktop pages. */
.pxab-request-booking .pxab-calendar-card,
.pxab-booking--request-flow .pxab-calendar-card{container-type:inline-size;}
@container (max-width:520px){
  .pxab-calendar-card .pxab-calendar-months{grid-template-columns:1fr!important;}
  .pxab-calendar-card .pxab-calendar-grid{grid-template-columns:repeat(7,minmax(30px,1fr))!important;gap:4px!important;}
  .pxab-calendar-card .pxab-calendar-day,
  .pxab-calendar-card button.pxab-calendar-day,
  .pxab-calendar-card .pxab-calendar-blank{min-height:32px!important;font-size:.82rem!important;}
}

/* v1.0.40 request-to-book summary controls, modals and full-width template polish. */
.pxab-template--request-booking{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box;
  overflow-x:hidden;
}
.pxab-template--request-booking .pxab-request-booking{
  width:100%;
  box-sizing:border-box;
}
.pxab-request-flow__selection-card h3{margin-bottom:14px;}
.pxab-request-selection-list{display:grid;border:1px solid var(--pxab-single-border,#e5e7eb);border-radius:14px;overflow:hidden;background:#fff;}
.pxab-request-selection-row{appearance:none!important;border:0!important;border-bottom:1px solid var(--pxab-single-border,#e5e7eb)!important;background:#fff!important;color:var(--pxab-single-text,#111827)!important;box-shadow:none!important;min-height:64px!important;padding:14px 16px!important;display:grid!important;grid-template-columns:minmax(72px,auto) minmax(0,1fr) auto;gap:14px;align-items:center;text-align:left!important;width:100%;}
.pxab-request-selection-row:last-child{border-bottom:0!important;}
.pxab-request-selection-row span{font-weight:800;}
.pxab-request-selection-row strong{font-size:.96rem;font-weight:500;color:var(--pxab-single-text,#111827);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pxab-request-selection-row em{font-style:normal;background:#f3f4f6;color:#111827;border-radius:10px;padding:8px 14px;font-weight:800;font-size:.88rem;}
.pxab-request-selection-row:hover em,.pxab-request-summary__details button:hover{background:#e5e7eb;}
.pxab-request-summary__cancellation{border-top:1px solid var(--pxab-single-border,#e5e7eb);margin-top:18px;padding-top:18px;}
.pxab-request-summary__cancellation strong{display:block;margin-bottom:4px;font-weight:800;}
.pxab-request-summary__cancellation p{margin:0;color:var(--pxab-single-text,#111827);line-height:1.35;}
.pxab-link-button{appearance:none!important;border:0!important;background:transparent!important;color:var(--pxab-single-text,#111827)!important;box-shadow:none!important;padding:0!important;text-decoration:underline;text-underline-offset:2px;font:inherit;font-weight:800;cursor:pointer;}
.pxab-request-summary__policy-link{margin-top:2px;display:inline-block;}
.pxab-request-summary__details dd{display:flex;align-items:center;justify-content:flex-end;gap:12px;}
.pxab-request-summary__details dd span{min-width:0;}
.pxab-request-summary__details button{appearance:none!important;border:0!important;background:#f3f4f6!important;color:#111827!important;border-radius:10px!important;box-shadow:none!important;padding:8px 14px!important;font-size:.85rem!important;font-weight:800!important;line-height:1!important;min-height:32px!important;}
.pxab-request-summary__price .pxab-price-breakdown{border:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;}
.pxab-request-modal{position:fixed;inset:0;z-index:100001;display:grid;place-items:center;padding:24px;}
.pxab-request-modal[hidden]{display:none!important;}
.pxab-request-modal__scrim{position:absolute;inset:0;background:rgba(17,24,39,.45);backdrop-filter:blur(1px);}
.pxab-request-modal__panel{position:relative;z-index:1;width:min(720px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;border-radius:28px;background:#fff;color:#111827;box-shadow:0 24px 80px rgba(15,23,42,.28);padding:32px;}
.pxab-request-modal__panel--calendar{width:min(980px,calc(100vw - 48px));}
.pxab-request-modal__header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px;}
.pxab-request-modal__header h2{margin:0;font-size:1.55rem;line-height:1.15;color:#111827;}
.pxab-request-modal__close{appearance:none!important;width:36px!important;height:36px!important;min-height:36px!important;border:0!important;border-radius:999px!important;background:#fff!important;color:#111827!important;box-shadow:none!important;padding:0!important;display:grid!important;place-items:center!important;font-size:28px!important;line-height:1!important;}
.pxab-request-modal__close:hover{background:#f3f4f6!important;}
.pxab-request-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:26px;}
.pxab-button--dark{background:#111827!important;color:#fff!important;border:0!important;border-radius:14px!important;min-height:48px!important;padding:0 26px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;}
.pxab-request-date-modal__calendar{border:0!important;box-shadow:none!important;padding:0!important;background:transparent!important;overflow:visible!important;}
.pxab-request-modal .pxab-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid #111827;border-radius:14px;overflow:hidden;margin-bottom:20px;}
.pxab-request-modal .pxab-date-grid label{padding:12px 14px;border-right:1px solid #111827;margin:0;display:grid;gap:4px;font-size:.78rem;font-weight:800;text-transform:uppercase;}
.pxab-request-modal .pxab-date-grid label:last-child{border-right:0;}
.pxab-request-modal .pxab-date-grid input[type=date]{border:0!important;box-shadow:none!important;height:auto!important;padding:0!important;background:#fff!important;color:#111827!important;font-size:1rem!important;font-weight:500!important;}
.pxab-request-modal .pxab-calendar-nav{display:flex;justify-content:space-between;align-items:center;margin:4px 0 18px;}
.pxab-request-modal .pxab-calendar-nav__button{appearance:none!important;width:38px!important;height:38px!important;min-height:38px!important;border:0!important;border-radius:999px!important;background:#fff!important;color:#111827!important;box-shadow:none!important;padding:0!important;font-size:30px!important;line-height:1!important;display:grid!important;place-items:center!important;}
.pxab-request-modal .pxab-calendar-nav__button:hover{background:#f3f4f6!important;}
.pxab-request-modal .pxab-calendar-months{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:46px!important;width:100%;}
.pxab-request-modal .pxab-calendar-month h4{text-align:center;margin:0 0 18px;font-size:1rem;}
.pxab-request-modal .pxab-calendar-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:0!important;width:100%;}
.pxab-request-modal .pxab-calendar-dow{height:32px;display:grid;place-items:center;color:#6b7280;font-weight:700;font-size:.82rem;}
.pxab-request-modal .pxab-calendar-blank{min-height:52px!important;}
.pxab-request-modal .pxab-calendar-day,.pxab-request-modal button.pxab-calendar-day{appearance:none!important;border:0!important;border-radius:0!important;background:#fff!important;color:#111827!important;box-shadow:none!important;min-height:52px!important;width:100%!important;padding:0!important;font-weight:700!important;display:grid!important;place-items:center!important;}
.pxab-request-modal .pxab-calendar-day:hover:not(:disabled){background:#f3f4f6!important;}
.pxab-request-modal .pxab-calendar-day.is-in-range{background:#f3f4f6!important;}
.pxab-request-modal .pxab-calendar-day.is-selected{background:#222!important;color:#fff!important;border-radius:999px!important;}
.pxab-request-modal .pxab-calendar-day:disabled{opacity:.35!important;text-decoration:none!important;}
.pxab-request-guests-grid{display:grid;gap:0;border-top:1px solid #e5e7eb;}
.pxab-request-guests-grid label{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:8px 18px;align-items:center;padding:18px 0;border-bottom:1px solid #e5e7eb;font-weight:800;}
.pxab-request-guests-grid label>span{grid-column:1;color:#6b7280;font-weight:500;}
.pxab-request-guests-grid input[type=number]{grid-column:2;grid-row:1 / span 2;height:44px!important;text-align:center;border-radius:999px!important;box-shadow:none!important;}
.pxab-request-policy{display:grid;gap:0;}
.pxab-request-policy__row{display:grid;grid-template-columns:140px 1fr;gap:32px;border-bottom:1px solid #e5e7eb;padding:28px 0;}
.pxab-request-policy__row:first-child{padding-top:6px;}
.pxab-request-policy__row strong,.pxab-request-policy__row span{display:block;}
.pxab-request-policy__row span{color:#111827;line-height:1.35;}
.pxab-request-policy__note{margin:26px 0 0;color:#6b7280;line-height:1.45;}
@media(max-width:900px){
  .pxab-request-modal{padding:16px;align-items:end;}
  .pxab-request-modal__panel,.pxab-request-modal__panel--calendar{width:100%;max-height:calc(100vh - 32px);border-radius:24px;padding:24px;}
  .pxab-request-modal .pxab-calendar-months{grid-template-columns:1fr!important;gap:24px!important;}
  .pxab-request-modal .pxab-calendar-blank,.pxab-request-modal .pxab-calendar-day,.pxab-request-modal button.pxab-calendar-day{min-height:44px!important;}
  .pxab-request-selection-row{grid-template-columns:1fr;gap:6px;}
  .pxab-request-selection-row em{justify-self:start;}
  .pxab-request-summary__details>div,.pxab-request-summary__details dd{display:grid;text-align:left;justify-content:stretch;}
  .pxab-request-summary__details dd button{justify-self:start;}
  .pxab-request-policy__row{grid-template-columns:1fr;gap:12px;}
}
@media(max-width:520px){
  .pxab-request-modal .pxab-date-grid{grid-template-columns:1fr;}
  .pxab-request-modal .pxab-date-grid label{border-right:0;border-bottom:1px solid #111827;}
  .pxab-request-modal .pxab-date-grid label:last-child{border-bottom:0;}
  .pxab-request-guests-grid label{grid-template-columns:1fr;}
  .pxab-request-guests-grid input[type=number]{grid-column:1;grid-row:auto;width:130px!important;}
}

/* v1.0.41 request summary sticky toggle, payment-note styling and advanced message animation hooks. */
.pxab-request-booking__summary--sticky{position:sticky!important;top:88px!important;align-self:start}
.pxab-request-booking__summary--static{position:static!important;top:auto!important}
.pxab-payment-note{display:flex;align-items:flex-start;gap:.65rem;background:var(--pxab-payment-note-bg,#f8fafc)!important;color:var(--pxab-payment-note-text,#475569)!important;border:1px solid var(--pxab-payment-note-border,#e5e7eb)!important;border-radius:12px;padding:.85rem .95rem;line-height:1.55}
.pxab-payment-note__icon{flex:0 0 auto;display:grid;place-items:center;width:22px;height:22px;margin-top:.1rem;color:var(--pxab-payment-note-icon,#e11d48)}
.pxab-payment-note__icon svg{display:block;width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pxab-payment-note__text{min-width:0}
.pxab-payment-note--anim-pulse .pxab-payment-note__icon{animation:pxabPaymentPulse 1.8s ease-in-out infinite}
.pxab-payment-note--anim-wobble .pxab-payment-note__icon{animation:pxabPaymentWobble 2.2s ease-in-out infinite}
.pxab-payment-note--anim-bounce .pxab-payment-note__icon{animation:pxabPaymentBounce 1.8s ease-in-out infinite}
.pxab-payment-note--anim-glow .pxab-payment-note__icon{animation:pxabPaymentGlow 2.4s ease-in-out infinite}
@keyframes pxabPaymentPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.12)}}
@keyframes pxabPaymentWobble{0%,100%{transform:rotate(0)}20%{transform:rotate(-8deg)}40%{transform:rotate(6deg)}60%{transform:rotate(-4deg)}80%{transform:rotate(2deg)}}
@keyframes pxabPaymentBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes pxabPaymentGlow{0%,100%{filter:drop-shadow(0 0 0 rgba(225,29,72,0))}50%{filter:drop-shadow(0 0 8px currentColor)}}
.pxab-advanced-word{display:inline-block;will-change:transform,opacity}
.pxab-advanced-message--split_reveal .pxab-advanced-word,.pxab-advanced-message--nested_lift .pxab-advanced-word,.pxab-advanced-message--word_wave .pxab-advanced-word,.pxab-advanced-message--horizontal_drift .pxab-advanced-word{animation:pxabAdvancedReveal .48s ease both;animation-delay:calc(var(--pxab-advanced-index,0) * 35ms)}
.pxab-advanced-message--horizontal_drift .pxab-advanced-word{animation-name:pxabAdvancedDrift}
.pxab-advanced-message--nested_lift .pxab-advanced-word{animation-name:pxabAdvancedLift}
.pxab-advanced-message--word_wave .pxab-advanced-word{animation-name:pxabAdvancedWave}
@keyframes pxabAdvancedReveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes pxabAdvancedDrift{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:translateX(0)}}
@keyframes pxabAdvancedLift{from{opacity:0;transform:perspective(260px) rotateX(-8deg) translateY(10px)}to{opacity:1;transform:perspective(260px) rotateX(0) translateY(0)}}
@keyframes pxabAdvancedWave{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.pxab-request-booking__summary--sticky,.pxab-request-booking__summary--static{position:static!important;top:auto!important}}
@media(prefers-reduced-motion:reduce){.pxab-payment-note__icon,.pxab-advanced-word{animation:none!important;transition:none!important}}

/* v1.0.42 modal close visibility safeguards. */
.pxab-request-modal__close{position:relative!important;z-index:8!important;border:1px solid #e5e7eb!important;background:#fff!important;color:#111827!important;box-shadow:0 8px 22px rgba(15,23,42,.14)!important;font-size:0!important;text-indent:0!important}
.pxab-request-modal__close:hover,.pxab-request-modal__close:focus-visible{background:#f8fafc!important;color:#111827!important;outline:0!important;box-shadow:0 0 0 3px rgba(17,24,39,.12),0 8px 22px rgba(15,23,42,.14)!important}
.pxab-request-modal__close:before{content:none;display:none}.pxab-request-modal__close .pxab-icon{display:block;width:18px;height:18px;stroke-width:2.4}

/* v1.0.48 restore marketplace sidebar sticky behaviour on the sidebar shell. */
@media (min-width:961px){.pxab-marketplace-sidebar{position:sticky!important;top:var(--pxab-single-sticky-top,88px)!important;align-self:start}.pxab-marketplace-sidebar__sticky{position:static!important;top:auto!important}}
@media (max-width:960px){.pxab-marketplace-sidebar{position:static!important;top:auto!important}.pxab-marketplace-sidebar__sticky{position:static!important;top:auto!important}}

/* v1.0.49: make discount/upsell notices read as positive messages by default. */
.pxab-quote-discount.pxab-positive-message,
.pxab-quote-upsell__button.pxab-positive-message{
  border-color:var(--pxab-positive-message-border,#bbf7d0)!important;
  background:var(--pxab-positive-message-bg,#ecfdf5)!important;
  color:var(--pxab-positive-message-text,#166534)!important;
}
.pxab-quote-discount.pxab-positive-message span:not([aria-hidden]),
.pxab-quote-upsell__button.pxab-positive-message strong,
.pxab-quote-upsell__button.pxab-positive-message em,
.pxab-quote-upsell__button.pxab-positive-message u,
.pxab-quote-upsell__button.pxab-positive-message .pxab-advanced-message__text,
.pxab-quote-upsell__button.pxab-positive-message .pxab-advanced-message__text--split{
  color:var(--pxab-positive-message-text,#166534)!important;
}
.pxab-quote-discount.pxab-positive-message .pxab-positive-message__icon,
.pxab-quote-upsell__button.pxab-positive-message .pxab-positive-message__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:calc(var(--pxab-single-discount-icon-size,20px) + 10px);
  height:calc(var(--pxab-single-discount-icon-size,20px) + 10px);
  border-radius:999px;
  background:var(--pxab-positive-message-icon,#16a34a);
  color:#fff!important;
  font-size:calc(var(--pxab-single-discount-icon-size,20px) * .72);
  font-weight:900;
  line-height:1;
}


/* v1.0.53: booking/request display layering from video QA. */
.pxab-marketplace-sidebar,
.pxab-marketplace-sidebar__sticky,
.pxab-booking-widget--price-box{z-index:auto;}
.pxab-booking-widget--price-box.is-quote-date-open{position:relative!important;z-index:100220!important;}
.pxab-booking-widget--price-box .pxab-quote-date-popover,
.pxab-booking-widget--price-box .pxab-quote-date-popover.is-open{z-index:100230!important;}
.pxab-booking--request-flow{position:relative!important;}
.pxab-booking--request-flow.is-request-modal-open{z-index:100400!important;}
.pxab-request-modal,
.pxab-request-modal.is-open{z-index:100500!important;}
.pxab-request-modal__scrim{z-index:0!important;}
.pxab-request-modal__panel{z-index:1!important;}
.pxab-request-booking__summary,
.pxab-request-booking__summary--sticky{z-index:20!important;}
.pxab-price-modal,
.pxab-price-modal.is-open{z-index:100500!important;}

/* v1.0.54 scroll-safe modals, detailed amenities and configurable single listing sections */
html.pxab-page-scroll-locked,body.pxab-page-scroll-locked{overflow:hidden!important;overscroll-behavior:none!important}
body.pxab-page-scroll-locked{position:fixed!important;left:0!important;right:0!important;width:100%!important}
.pxab-marketplace-fullwidth{max-width:var(--pxab-single-max-width,1120px);margin:0 auto;padding:0 0px 96px;color:var(--pxab-single-text,#111827)}
.pxab-marketplace-fullwidth>.pxab-marketplace-section:first-child{border-top:1px solid var(--pxab-single-border,#e5e7eb);padding-top:34px}
.pxab-marketplace-section--amenities h2{margin-bottom:22px}
.pxab-amenity-list--detailed{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 64px;margin:0;padding:0;list-style:none}
.pxab-amenity-list--detailed .pxab-amenity-list__item{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:16px;min-height:32px;color:var(--pxab-single-text,#111827);font-size:1rem;line-height:1.35}
.pxab-amenity-list--detailed .pxab-amenity-list__item:before{display:none!important;content:none!important}
.pxab-amenity-list__icon{display:inline-grid;place-items:center;width:28px;height:28px;color:currentColor}
.pxab-amenity-list__icon .pxab-icon{display:block;width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pxab-amenity-list__item.is-unavailable{color:#52525b;text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:#111827}
.pxab-amenity-list__item.is-unavailable .pxab-amenity-list__icon{opacity:.75}
.pxab-amenity-list__toggle{appearance:none!important;display:inline-flex!important;align-items:center;justify-content:center;margin-top:24px!important;padding:.8rem 1.15rem!important;min-height:48px!important;border:0!important;border-radius:12px!important;background:#f3f4f6!important;color:#111827!important;font-weight:800!important;box-shadow:none!important;cursor:pointer!important}
.pxab-amenity-list__toggle:hover,.pxab-amenity-list__toggle:focus-visible{background:#e5e7eb!important;outline:0!important}
.pxab-request-modal,.pxab-request-modal__panel,.pxab-market-filters,.pxab-market-filters__dialog,.pxab-market-modal,.pxab-market-modal__dialog{overscroll-behavior:contain!important}
.pxab-request-modal__panel{max-height:min(860px,calc(100dvh - 48px))!important}
.pxab-request-modal__panel--calendar{max-height:min(860px,calc(100dvh - 48px))!important}
@media(max-width:900px){.pxab-marketplace-fullwidth{padding:0 0px 96px}.pxab-amenity-list--detailed{grid-template-columns:1fr;gap:18px}.pxab-request-modal__panel,.pxab-request-modal__panel--calendar{max-height:calc(100dvh - 32px)!important}}

/* v1.0.55: richer amenities display and full-circle positive icons. */
.pxab-amenity-list--detailed .pxab-amenity-list__item{align-items:flex-start;}
.pxab-amenity-list__copy{display:grid;gap:2px;min-width:0;}
.pxab-amenity-list__label{display:block;color:var(--pxab-single-text,#111827);}
.pxab-amenity-list__description{display:block;color:var(--pxab-single-muted,#4b5563);font-size:.92rem;line-height:1.35;}
.pxab-amenity-list__item.is-unavailable{text-decoration:none!important;color:var(--pxab-single-muted,#4b5563);}
.pxab-amenity-list__item.is-unavailable .pxab-amenity-list__label{text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:#111827;color:#111827;}
.pxab-quote-discount.pxab-positive-message .pxab-positive-message__icon,
.pxab-quote-upsell__button.pxab-positive-message .pxab-positive-message__icon{flex:0 0 calc(var(--pxab-single-discount-icon-size,20px) + 10px);min-width:calc(var(--pxab-single-discount-icon-size,20px) + 10px);min-height:calc(var(--pxab-single-discount-icon-size,20px) + 10px);aspect-ratio:1 / 1;box-sizing:border-box;}
.pxab-quote-upsell__button.pxab-positive-message{align-items:center;}
.pxab-quote-upsell__button.pxab-positive-message .pxab-positive-message__icon{align-self:center;}
.pxab-booking-widget--price-box.is-quote-date-open{z-index:100650!important;}
.pxab-quote-date-popover.is-open{z-index:100750!important;max-height:min(760px,calc(100dvh - 132px))!important;}
.pxab-quote-guests__panel{max-height:min(520px,calc(100dvh - 142px));overflow:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable;}
.pxab-quote-guest-row{min-width:0;}
.pxab-quote-guest-row > div:first-child{min-width:0;}
.pxab-quote-stepper{flex:0 0 auto;}
@media(max-width:760px){.pxab-quote-guests__panel{max-height:min(520px,calc(100dvh - 1.5rem));}.pxab-quote-date-popover.is-open{max-height:calc(100dvh - 86px)!important;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));}}

/* v1.0.56: amenity modal/groups and guest-dropdown scroll revert. */
.pxab-amenities-modal[hidden]{display:none!important}
.pxab-amenities-modal{position:fixed;inset:0;z-index:100050;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.28)}
.pxab-amenities-modal__overlay{position:absolute;inset:0;background:transparent}
.pxab-amenities-modal__dialog{position:relative;z-index:1;width:min(720px,calc(100vw - 32px));max-height:min(840px,calc(100dvh - 48px));overflow:auto;border-radius:24px;background:var(--pxab-single-card-bg,#fff);color:var(--pxab-single-text,#111827);box-shadow:0 28px 90px rgba(15,23,42,.26);padding:34px 32px;outline:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.pxab-amenities-modal__close{position:sticky;top:0;float:right;display:inline-grid!important;place-items:center!important;width:36px!important;height:36px!important;margin:-10px -8px 10px 16px!important;padding:0!important;border:0!important;border-radius:999px!important;background:#fff!important;color:#111827!important;box-shadow:0 8px 24px rgba(15,23,42,.12)!important;cursor:pointer!important;z-index:2}
.pxab-amenities-modal__close .pxab-icon{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none}
.pxab-amenities-modal h2{margin:0 0 28px;font-size:1.55rem;line-height:1.15;color:var(--pxab-single-text,#111827)}
.pxab-amenities-modal__groups{display:grid;gap:30px}
.pxab-amenities-modal__group{display:grid;gap:14px}
.pxab-amenities-modal__group h3{margin:0;font-size:1.1rem;line-height:1.25;color:var(--pxab-single-text,#111827)}
.pxab-amenity-list--modal{display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:0!important;padding:0!important;list-style:none!important}
.pxab-amenity-list--modal .pxab-amenity-list__item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:16px;align-items:flex-start;min-height:64px;padding:18px 0;border-bottom:1px solid var(--pxab-single-border,#e5e7eb)}
.pxab-amenity-list--modal .pxab-amenity-list__item:before{display:none!important;content:none!important}
.pxab-amenity-list--modal .pxab-amenity-list__icon{margin-top:1px}
.pxab-amenities-modal.is-open{animation:pxabAmenityModalFade .18s ease both}
.pxab-amenities-modal.is-open .pxab-amenities-modal__dialog{animation:pxabAmenityDialogIn .22s ease both}
@keyframes pxabAmenityModalFade{from{opacity:0}to{opacity:1}}
@keyframes pxabAmenityDialogIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:720px){.pxab-amenities-modal{padding:0;align-items:end}.pxab-amenities-modal__dialog{width:100%;max-height:calc(100dvh - 18px);border-radius:24px 24px 0 0;padding:28px 22px}}
@media(prefers-reduced-motion:reduce){.pxab-amenities-modal.is-open,.pxab-amenities-modal.is-open .pxab-amenities-modal__dialog{animation:none!important}}
.pxab-quote-guests__panel{max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important;scrollbar-gutter:auto!important}
.pxab-request-booking__header{display:flex;align-items:center;gap:1rem;margin:0 0 1.75rem}.pxab-request-booking__header h1{margin:0!important;line-height:1.1}.pxab-request-booking__header .pxab-request-booking__back{margin:0!important;display:inline-grid;place-items:center;width:44px;height:44px;min-width:44px;border-radius:999px;background:#f3f4f6;color:#111827;text-decoration:none;box-shadow:none}.pxab-request-booking__header .pxab-request-booking__back .pxab-icon{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.pxab-currency-inline-trigger{appearance:none!important;border:0!important;background:transparent!important;color:inherit!important;font:inherit!important;font-weight:800!important;text-decoration:underline!important;text-underline-offset:2px!important;padding:0!important;margin:0!important;box-shadow:none!important;cursor:pointer}.pxab-price-breakdown__modal-trigger{appearance:none!important;border:0!important;background:transparent!important;color:inherit!important;font-weight:800!important;text-decoration:underline!important;text-underline-offset:2px!important;padding:0!important;margin:.35rem 0 0!important;box-shadow:none!important;cursor:pointer}.pxab-request-summary__discount{margin-top:1rem}.pxab-request-discount-applied{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1rem;padding:1rem;border-radius:12px;background:var(--pxab-positive-message-bg,#ecfdf5);color:var(--pxab-positive-message-text,#166534);font-weight:800}.pxab-request-discount-applied .pxab-positive-message__icon{display:inline-grid;place-items:center;width:28px;height:28px;min-width:28px;border-radius:999px;background:var(--pxab-positive-message-icon,#16a34a);color:#fff}.pxab-request-discount-applied .pxab-positive-message__icon .pxab-icon{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.pxab-request-booking.is-currency-modal-open,.pxab-request-booking.is-price-modal-open{z-index:var(--pxab-z-modal,100900)}.pxab-request-booking>.pxab-price-modal{position:fixed;inset:0;z-index:100910;display:grid;place-items:center;background:rgba(15,23,42,.32);padding:1rem}.pxab-request-booking>.pxab-price-modal[hidden]{display:none!important}.pxab-request-booking>.pxab-price-modal .pxab-price-modal__dialog{position:relative;width:min(560px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow:auto;border-radius:28px;background:#fff;color:#111827;box-shadow:0 30px 90px rgba(15,23,42,.28);padding:1.5rem}.pxab-request-booking>.pxab-price-modal .pxab-price-modal__close{position:absolute;right:1rem;top:1rem;width:36px;height:36px;border:0!important;border-radius:999px;background:transparent!important;color:#111827!important;font-size:0;line-height:1;box-shadow:none!important;cursor:pointer;display:grid;place-items:center}.pxab-request-booking>.pxab-price-modal .pxab-price-modal__close .pxab-icon{width:18px;height:18px;stroke-width:2.4}

/* v1.0.60 request-summary notice polish overrides. */
.pxab-request-discount-applied.pxab-discount-notice{border:1px solid var(--pxab-discount-notice-border,var(--pxab-positive-message-border,#bbf7d0));background:var(--pxab-discount-notice-bg,var(--pxab-positive-message-bg,#ecfdf5));color:var(--pxab-discount-notice-text,var(--pxab-positive-message-text,#166534))!important}.pxab-request-discount-applied.pxab-discount-notice .pxab-positive-message__icon{background:var(--pxab-discount-notice-icon,var(--pxab-positive-message-icon,#16a34a));color:#fff!important;aspect-ratio:1/1}.pxab-price-breakdown__notice{border-color:var(--pxab-price-notice-border,#bfdbfe);background:var(--pxab-price-notice-bg,#eff6ff);color:var(--pxab-price-notice-text,#334155)!important}.pxab-price-breakdown__notice .pxab-price-notice__icon{background:var(--pxab-price-notice-icon,#2563eb);color:#fff!important}

/* v1.0.77: upsell-added nights applied notice and discount styling. */
.pxab-quote-upsell{margin:0 0 16px;}
.pxab-quote-upsell__button.pxab-positive-message,
.pxab-quote-upsell__applied.pxab-positive-message{
  display:flex!important;
  align-items:center;
  gap:12px;
  width:100%;
  min-height:0;
  padding:14px 16px!important;
  border:1px solid var(--pxab-upsell-notice-border,var(--pxab-positive-message-border,#bbf7d0))!important;
  border-radius:var(--pxab-single-radius,16px)!important;
  background:var(--pxab-upsell-notice-bg,var(--pxab-positive-message-bg,#ecfdf5))!important;
  color:var(--pxab-upsell-notice-text,var(--pxab-positive-message-text,#166534))!important;
  box-shadow:0 12px 34px rgba(15,23,42,.08)!important;
  text-align:left;
}
.pxab-quote-upsell__button.pxab-positive-message{appearance:none;cursor:pointer;}
.pxab-quote-upsell__button.pxab-positive-message:hover,
.pxab-quote-upsell__button.pxab-positive-message:focus-visible{filter:brightness(.985);transform:translateY(-1px);}
.pxab-quote-upsell__button.pxab-positive-message:focus-visible{outline:2px solid var(--pxab-upsell-notice-icon,var(--pxab-positive-message-icon,#16a34a));outline-offset:2px;}
.pxab-quote-upsell__button.pxab-positive-message .pxab-positive-message__icon,
.pxab-quote-upsell__applied.pxab-positive-message .pxab-positive-message__icon{
  display:inline-grid;
  place-items:center;
  flex:0 0 calc(var(--pxab-single-discount-icon-size,20px) + 10px)!important;
  width:calc(var(--pxab-single-discount-icon-size,20px) + 10px)!important;
  min-width:calc(var(--pxab-single-discount-icon-size,20px) + 10px)!important;
  height:calc(var(--pxab-single-discount-icon-size,20px) + 10px)!important;
  min-height:calc(var(--pxab-single-discount-icon-size,20px) + 10px)!important;
  border-radius:999px;
  background:var(--pxab-upsell-notice-icon,var(--pxab-positive-message-icon,#16a34a))!important;
  color:#fff!important;
}
.pxab-quote-upsell__button.pxab-positive-message .pxab-positive-message__icon .pxab-icon,
.pxab-quote-upsell__applied.pxab-positive-message .pxab-positive-message__icon .pxab-icon{width:16px;height:16px;stroke-width:3;}
.pxab-quote-upsell__button.pxab-positive-message > span:last-child,
.pxab-quote-upsell__applied.pxab-positive-message > span:last-child{display:grid;gap:3px;min-width:0;}
.pxab-quote-upsell__button.pxab-positive-message strong,
.pxab-quote-upsell__applied.pxab-positive-message strong{display:block;color:var(--pxab-upsell-notice-text,var(--pxab-positive-message-text,#166534))!important;font-size:.95rem;line-height:1.25;}
.pxab-quote-upsell__button.pxab-positive-message em,
.pxab-quote-upsell__applied.pxab-positive-message em,
.pxab-quote-upsell__applied.pxab-positive-message small{display:block;font-style:normal;color:var(--pxab-upsell-notice-text,var(--pxab-positive-message-text,#166534))!important;opacity:.84;font-size:.84rem;line-height:1.35;}
.pxab-quote-upsell__button.pxab-positive-message u{display:inline-block;margin-top:3px;text-decoration:underline;text-underline-offset:2px;font-weight:900;color:var(--pxab-upsell-notice-text,var(--pxab-positive-message-text,#166534))!important;}
.pxab-quote-upsell--anim-pulse .pxab-positive-message__icon{animation:pxabPromoPulse 1.8s ease-in-out infinite;}
.pxab-quote-upsell--anim-wobble .pxab-positive-message__icon{animation:pxabPromoWobble 2.2s ease-in-out infinite;}
.pxab-quote-upsell--anim-bounce .pxab-positive-message__icon{animation:pxabPromoBounce 1.9s ease-in-out infinite;}
.pxab-quote-upsell--anim-glow .pxab-positive-message__icon{filter:drop-shadow(0 0 7px rgba(22,163,74,.55));animation:pxabPromoGlow 2s ease-in-out infinite;}
.pxab-quote-upsell--anim-none .pxab-positive-message__icon{animation:none!important;filter:none!important;}
@media(prefers-reduced-motion:reduce){.pxab-quote-upsell__button.pxab-positive-message,.pxab-quote-upsell__applied.pxab-positive-message{transition:none!important;transform:none!important}.pxab-quote-upsell__button.pxab-positive-message .pxab-positive-message__icon,.pxab-quote-upsell__applied.pxab-positive-message .pxab-positive-message__icon{animation:none!important;transition:none!important;filter:none!important}}

/* v1.0.137 full-width listing sections use side padding. */
.pxab-marketplace-fullwidth .pxab-marketplace-section{padding-left:15px;padding-right:15px;}

/* v1.0.267 amenity detail interactions */
.pxab-amenity-list__item.has-details{display:block!important;min-height:0!important}.pxab-amenity-list__detail-trigger{appearance:none!important;display:grid!important;grid-template-columns:28px minmax(0,1fr) 20px!important;align-items:flex-start!important;gap:16px!important;width:100%!important;min-height:32px!important;margin:0!important;padding:0!important;border:0!important;border-radius:10px!important;background:transparent!important;color:inherit!important;text-align:left!important;font:inherit!important;line-height:inherit!important;box-shadow:none!important;cursor:pointer!important}.pxab-amenity-list__detail-trigger:hover .pxab-amenity-list__label,.pxab-amenity-list__detail-trigger:focus-visible .pxab-amenity-list__label{text-decoration:underline;text-underline-offset:3px}.pxab-amenity-list__detail-trigger:focus-visible{outline:2px solid currentColor!important;outline-offset:6px!important}.pxab-amenity-list__detail-label{display:block;margin-top:4px;color:var(--pxab-single-muted,#4b5563);font-size:.8rem;font-weight:700}.pxab-amenity-list__detail-chevron{display:grid;place-items:center;width:20px;height:24px;color:var(--pxab-single-muted,#4b5563)}.pxab-amenity-list__detail-chevron svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.pxab-amenity-list--modal .pxab-amenity-list__detail-trigger{padding:18px 0!important;border-bottom:1px solid var(--pxab-single-border,#e5e7eb)!important;border-radius:0!important}.pxab-amenity-list--modal .pxab-amenity-list__item.has-details{padding:0!important;border:0!important}.pxab-facility-detail-modal[hidden]{display:none!important}.pxab-facility-detail-modal{position:fixed;inset:0;z-index:100160;display:grid;place-items:center;padding:24px;background:transparent}.pxab-facility-detail-modal__overlay{position:absolute;inset:0;background:rgba(15,23,42,.5)}.pxab-facility-detail-modal__dialog{position:relative;z-index:1;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:34px 32px;border-radius:24px;background:#fff;color:#111827;box-shadow:0 30px 90px rgba(15,23,42,.3);outline:0}.pxab-facility-detail-modal__close{position:absolute;right:18px;top:18px;display:grid!important;place-items:center!important;width:38px!important;height:38px!important;padding:0!important;border:0!important;border-radius:999px!important;background:#f3f4f6!important;color:#111827!important}.pxab-facility-detail-modal__close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.pxab-facility-detail-modal__eyebrow{margin:0 50px 5px 0;color:#64748b;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.pxab-facility-detail-modal h2{margin:0 50px 22px 0;font-size:1.55rem}.pxab-facility-detail-modal__item header{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:start}.pxab-facility-detail-modal__facility-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:#f8fafc}.pxab-facility-detail-modal__facility-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8}.pxab-facility-detail-modal__item h3{margin:0 0 7px;font-size:1.3rem}.pxab-facility-detail-modal__item dl{display:grid;gap:0;margin:22px 0 0;border-top:1px solid #e5e7eb}.pxab-facility-detail-modal__item dl div{display:grid;grid-template-columns:minmax(130px,.65fr) 1fr;gap:16px;padding:13px 0;border-bottom:1px solid #e5e7eb}.pxab-facility-detail-modal__item dt{font-weight:800}.pxab-facility-detail-modal__item dd{margin:0;color:#475569}.pxab-facility-detail-modal__notes{margin-top:18px;color:#475569}.pxab-facility-detail-modal__notes p:last-child{margin-bottom:0}@media(max-width:600px){.pxab-facility-detail-modal{padding:0;align-items:end}.pxab-facility-detail-modal__dialog{width:100%;max-height:calc(100dvh - 16px);padding:30px 20px;border-radius:24px 24px 0 0}.pxab-facility-detail-modal__item dl div{grid-template-columns:1fr;gap:4px}}
.pxab-facility-detail-modal.is-open .pxab-facility-detail-modal__overlay{animation:pxabFacilityDetailBackdropIn .18s ease both}@keyframes pxabFacilityDetailBackdropIn{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.pxab-facility-detail-modal.is-open .pxab-facility-detail-modal__overlay{animation:none!important}}
