/* DEC v3.2.6: Elementor widget + booking bar must flow with the page.
   Separate filename deliberately busts aggressive static-file caches. */
@media screen and (min-width:741px) {
  /* Only the Elementor widget containing DEC's booking shortcode is changed. */
  .elementor-widget.dec-responsive-booking-widget,
  .e-widget.dec-responsive-booking-widget {
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex-shrink:1!important;
    align-self:stretch!important;
  }
  .dec-responsive-booking-widget > .elementor-widget-container,
  .dec-responsive-booking-widget .elementor-shortcode,
  .dec-responsive-booking-container {
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  /* An Elementor widget set to Absolute/Fixed cannot participate in a
     responsive page. Put only that specific booking widget back in flow. */
  .elementor-widget.dec-responsive-booking-widget.dec-booking-positioned,
  .e-widget.dec-responsive-booking-widget.dec-booking-positioned {
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
  }
  .at24-booking.dec-reference-booking[data-version="3.2.6"] {
    display:block!important;
    box-sizing:border-box!important;
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    float:none!important;
    clear:both!important;
  }
  .at24-booking.dec-reference-booking[data-version="3.2.6"] :is(
    .at24-card,.at24-panel,.dec-reference-shell,.dec-main-surface,
    .at24-searchbar.dec-search-line
  ) {
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  /* JS uses actual widget width (not viewport width) to adapt at browser zoom.
     Container queries in the previous release remain a fallback without JS. */
  .at24-booking.dec-reference-booking[data-dec-fluid="two"] .at24-searchbar.dec-search-line {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .at24-booking.dec-reference-booking[data-dec-fluid="two"] .at24-searchbar.dec-search-line .dec-quote-button {
    grid-column:1/-1!important;
  }
  .at24-booking.dec-reference-booking[data-dec-fluid="one"] .at24-searchbar.dec-search-line {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  .at24-booking.dec-reference-booking[data-dec-fluid="one"] .at24-searchbar.dec-search-line .dec-quote-button {
    grid-column:1/-1!important;
  }
  .at24-booking.dec-reference-booking[data-dec-fluid="one"] .dec-top-tabs {
    max-width:calc(100% - 30px)!important;
  }
  .at24-booking.dec-reference-booking[data-dec-fluid="one"] .dec-main-tab {
    white-space:normal!important;
  }
  .at24-booking.dec-reference-booking[data-dec-fluid="one"] .at24-vehicles {
    grid-template-columns:minmax(0,1fr)!important;
  }
  /* If parent expands after resize, explicitly restore the five-column bar. */
  .at24-booking.dec-reference-booking[data-dec-fluid="five"] .at24-searchbar.dec-search-line {
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) minmax(0,1.12fr) minmax(0,.98fr) minmax(0,1fr) minmax(0,.85fr)!important;
  }
  .at24-booking.dec-reference-booking[data-dec-fluid="five"] .at24-searchbar.dec-search-line .dec-quote-button {
    grid-column:auto!important;
  }
}

/* DEC v3.2.6 — wider desktop, truly flexible AND clickable.
 * v3.2.5 used 1440px max and inherited Elementor's boxed container.
 * This section is placed at its parent centre and expands past a boxed
 * shortcode widget (without changing the rest of the page). 100vw means
 * browser zoom and window resizing naturally adapt without JavaScript.
 */
@media screen and (min-width:741px) {
  :is(.elementor-section,.e-con):has(.at24-booking.dec-reference-booking[data-version="3.2.6"]) {
    position:relative;
    z-index:30;
    overflow:visible!important;
  }
  :is(.elementor-widget,.e-widget):has(.at24-booking.dec-reference-booking[data-version="3.2.6"]) {
    z-index:35!important;
    pointer-events:auto!important;
    overflow:visible!important;
  }
  :is(.elementor-widget,.e-widget):has(.at24-booking.dec-reference-booking[data-version="3.2.6"]) :is(.elementor-widget-container,.elementor-shortcode) {
    overflow:visible!important;
    pointer-events:auto!important;
  }
  .at24-booking.dec-reference-booking[data-version="3.2.6"] {
    width:min(1550px, calc(100vw - 24px))!important;
    max-width:none!important;
    margin:0!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    z-index:25!important;
    pointer-events:auto!important;
    overflow:visible!important;
    isolation:isolate;
  }
  .at24-booking.dec-reference-booking[data-version="3.2.6"] :is(.at24-card,.dec-reference-shell,.dec-main-surface) {
    pointer-events:auto!important;
  }
  .at24-booking.dec-reference-booking[data-version="3.2.6"] .dec-top-tabs,
  .at24-booking.dec-reference-booking[data-version="3.2.6"] .dec-main-surface {
    position:relative;
    pointer-events:auto!important;
  }
  /* Quote must remain clickable even if an address dropdown is briefly visible. */
  .at24-booking.dec-reference-booking[data-version="3.2.6"] .dec-quote-button {
    position:relative!important;
    z-index:1500!important;
  }
  /* The fields and tabs are above decorative layers; don't obstruct inputs. */
  .at24-booking.dec-reference-booking[data-version="3.2.6"] :is(input,button,select,textarea,summary,a) {
    pointer-events:auto!important;
  }
}

@media screen and (max-width:740px) {
  .at24-booking.dec-reference-booking[data-version="3.2.6"] .dec-quote-button {
    position:relative!important;
    z-index:1500!important;
  }
}
