/* =====================================================================
   float-reset.css
   Load LAST, after style4.css and red2.css.

   Removes the float-based layout inherited from the legacy theme.
   Almost every float in style4.css is the pattern `float: left; width: 100%`
   on a section, which does nothing a block element does not already do —
   except require a clearfix somewhere, and cause the next section to slide
   up beside it when that clearfix is missing.

   The handful of floats that were doing real work are converted to flex
   here rather than simply dropped, so the layouts they produced survive.

   NOT TOUCHED ON PURPOSE:
   - Bootstrap 3 grid columns (.col-*). BS3 floats them itself and the
     whole page structure depends on it.
   - .pull-left / .pull-right / .navbar-left / .navbar-right utilities.
   - .slick-slide (see the SLICK block at the bottom).
   ===================================================================== */

/* ==============================================================
   1. FULL-WIDTH SECTIONS
   The `float: left; width: 100%` pattern. Nothing else needed —
   these are block elements and behave correctly without it.
   ============================================================== */

.button_center,
.main-video,
.luxury-text,
.service_areas1,
.winner-footer,
.welcome-section,
.infocol_section,
.contact-4,
.footer23_section,
.airport2,
.airports,
.airport-section,
.topheader_container,
.topheader_container_link,
.topheader_container_fixedheight,
.service_provider,
.navigation,
.navigation .navbar-collapse.collapse,
.navigation .inner_sec,
.modren,
.service,
.black,
.black .main_div,
.carousel-testi,
.highlight,
footer,
footer .in_sec_ft,
.copyright_top,
.contact-text,
.copyright,
.bottom_slider,
.service_bg,
.fleet_slide,
.make_reservation,
.make_reservation .inner_sec,
.blog,
.thumb_blog,
.thumb_blog .inner,
.thumb_blog .inner .txt,
.contact,
.way,
.way .left_sec .inner_form,
.way .right_sec,
.map,
.last_sec,
.detail_service,
.ride_trail,
.ride_trail .inner,
.ride_trail .loginr_btn,
.customlide #demo,
.banner,
.banner .enquiry_custom,
.faq_sec,
.in_service .shadow_service,
.in_testil .top_icon_social,
.ourteam_container,
.otfullwidth,
.bootom_bar,
.bootom_bar .steps-form-2,
.outer_userform,
.outer_userform .notes,
.outer_userform .payment,
.outer_userform .quote_btn,
.switch_puff,
.footercontactinfosection,
.footercontactinfosection .fcis-row,
.footercontactinfosection .vu_info-item,
.footercontactinfosection .vu_ii-details,
.foo-follow-cards,
.cardsection,
.portfolio.section,
.fullwidthmenu,
.fullwidthmenu ul,
.coninforow,
.coninfologo,
.coninfotitle,
.coninfocontent,
.applinksection,
.contactheader,
#navbar1,
.desktopfixedheadertopmargin,
.toprow2,
.owl-dots,
.welcome-tagline,
.company-description,
.greview {
  float: none;
}

/* ==============================================================
   2. TEXT AND INLINE ELEMENTS
   Headings, paragraphs and list items that were floated purely to
   force full width. They are block elements already.
   ============================================================== */

.service_areas1 h2,
.airports h2,
.airports .thumb,
.modren .trends h2,
.modren .trends h3,
.modren .trends p,
.service .thumb,
.service .btm_txt,
.black .main_div h4,
.carousel-testi h2,
.service_bg h1,
.service_bg h2,
.highlight .patren .inner_thumb .right_sec h3,
.highlight .patren .inner_thumb .right_sec p,
footer .in_sec_ft h3,
footer .copyright > p,
.copyright .d1 h3,
.in_sec_ft ul li,
.in_sec_ft ul li span,
.bottom_slider .item .inner_col h3,
.bottom_slider .item .inner_col span,
.bottom_slider .item .inner_col a,
.fleet_slide #slide-content h2,
.fleet_slide #slide-content h3,
.fleet_slide #slide-content p,
.fleet_slide #slide-content a,
.make_reservation .inner_sec > h2,
.thumb_blog .inner .txt h2,
.thumb_blog .inner .txt h6,
.thumb_blog .inner .txt p,
.thumb_blog .main_div h2,
.way .right_sec .inner li p,
.ride_trail .inner h3,
.ride_trail #demo .item .inner p,
.ride_trail #demo .item .inner h2,
.ride_trail #demo .inner .left_sec,
.ride_trail #demo .inner .custom_outer_lugage,
.ride_trail .map_sec ul li,
.ride_trail .customlide .item,
.detail_address .child_age,
.billing_addrs h4,
.outer_userform .nt_pd label,
.outer_userform .notes p,
.outer_userform .payment h5,
.switch_puff .switch-primary h5,
.enquiry_custom .main_div > h2,
.navigation .menu_btn,
.navigation .center_custom ul li a i,
.navigation .center_custom ul li a .txt,
.navigation .navbar-collapse.collapse ul li ul.subnav,
.navigation .navbar-collapse.collapse ul li:hover > ul.subnav,
.navigation .navbar-collapse.collapse ul li ul.subnav li,
.navigation .navbar-collapse.collapse ul li ul.subnav li a,
.banner .carousel-inner .homebannercaption p,
.otname,
.otdegiantion,
.otcontent,
.otleft,
.otright,
.social_top,
.social_top ul,
.social_top ul li,
.fullwidthmenu ul li a,
.section.portfolio .filters-content .item .p-inner h5,
.faq_sec #accordion .panel-title a.accordion-toggle::before,
.faq_sec #accordion a[data-toggle="collapse"]::before,
.switch + .lable::before,
.switch-square + .lable::before,
li.sy-slide.horizontal.useCSS.sy-active,
ul.showbullets {
  float: none;
}

/* .ride_trail .color_option p carries !important in the source */
.ride_trail .color_option p {
  float: none !important;
}

/* ==============================================================
   3. RIGHT-ALIGNED ELEMENTS
   These were `float: right`. Alignment is preserved with margin
   auto or text-align rather than the float.
   ============================================================== */

.navigation .book_btn,
.navigation .navbar-toggle,
.inner .dropon,
.submenu-icon,
.color_option > span,
.loginr_btn .btn.btn-mdb-color.navbar-right {
  float: none;
}

.navigation .navbar-toggle .icon-bar {
  float: none;
  margin-left: auto;
}

.billing_addrs a,
.make_reservation .inner_sec a,
.black .main_div a {
  float: none;
}

.social_top,
.social_top ul {
  text-align: right;
}

/* ==============================================================
   4. GENUINE COLUMN LAYOUTS → FLEX
   These floats were actually building multi-column rows. Dropping
   them without a replacement would stack everything full width.
   ============================================================== */

/* Our Team: 25% image / 70% copy */
.otfullwidth {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0;
}

.otleft {
  flex: 0 0 25%;
  max-width: 25%;
}

.otright {
  flex: 1 1 auto;
  max-width: 70%;
}

/* Highlight: 15% icon / 85% copy */
.highlight .patren .inner_thumb {
  float: none;
  display: flex;
  align-items: flex-start;
  width: 100%;
}

.highlight .patren .inner_thumb .left_sec {
  float: none;
  flex: 0 0 15%;
  max-width: 15%;
}

.highlight .patren .inner_thumb .right_sec {
  float: none;
  flex: 1 1 auto;
  max-width: 85%;
}

/* Footer contact info: three equal columns */
.footercontactinfosection .fcis-row {
  display: flex;
  flex-wrap: wrap;
}

.footercontactinfosection .fcis-col-md-4 {
  float: none;
  flex: 1 1 33.33%;
  max-width: 33.33%;
}

/* Fleet detail thumbnails: four across */
.DvCont .thumb-box .thumbs-ad {
  display: flex;
  flex-wrap: wrap;
}

.DvCont .thumb-box .thumbs-ad li {
  float: none;
  flex: 0 0 25%;
  max-width: 25%;
}

/* Footer information: two lists side by side */
footer .information .in_sec_ft {
  display: flex;
  flex-wrap: wrap;
}

footer .information .in_sec_ft ul {
  float: none;
  flex: 1 1 50%;
  max-width: 50%;
}

/* Reservation strip: heading left, button right */
.make_reservation .inner_sec {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

/* Black bar: heading left, button right */
.black .main_div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

/* Vehicle card: capacity left, options right */
.ride_trail #demo .inner ul {
  float: none;
  margin-left: auto;
}

.ride_trail .item .inner .color_option {
  float: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.ride_trail .color_option ul {
  float: none;
  margin-left: auto;
}

.ride_trail .color_option ul li {
  float: none;
  display: inline-block;
}

/* Owl navigation arrows */
.owl-nav {
  display: flex;
  gap: 10px;
}

.owl-nav .owl-prev {
  float: none;
  margin-right: 0;
}

/* ==============================================================
   5. RESPONSIVE OVERRIDES
   The media queries in style4.css re-declare float on some of the
   selectors above, so they need matching resets at those widths.
   ============================================================== */

@media (max-width: 767px) {
  .footercontactinfosection .fcis-col-md-4 {
    flex: 1 1 100%;
    max-width: 100%;
  }

  .otleft,
  .otright {
    flex: 1 1 100%;
    max-width: 100%;
    padding-left: 0;
  }

  .banner .enquiry_custom,
  .applinksection,
  .way .right_sec,
  .navigation .center_custom,
  .navigation .inner_sec .navbar-header,
  .navigation .book_btn,
  .book_btn.navbar-right.outr_txt_btn,
  .book_btn.navbar-right a,
  .navigation .center_custom ul li,
  .service .col-sm-4,
  .toprow2,
  ul.showbullets,
  .social_top,
  .social_top ul {
    float: none;
  }

  .highlight .patren .inner_thumb {
    flex-wrap: wrap;
  }

  .highlight .patren .inner_thumb .left_sec,
  .highlight .patren .inner_thumb .right_sec {
    flex: 1 1 100%;
    max-width: 100%;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .navigation .navbar-header,
  .navigation .center_custom,
  .navigation .book_btn,
  .book_btn.navbar-right a {
    float: none;
  }
}

/* ==============================================================
   6. SLICK — THE ONE EXCEPTION

   Slick positions its slides assuming floated children. If Slick is
   still initialised anywhere on any site, removing this breaks the
   slider silently. It is left floated on purpose.

   Once you have confirmed slick.min.js is gone from every site,
   uncomment the block below to remove the last float.
   ============================================================== */

/*
.slick-slide,
[dir="rtl"] .slick-slide,
.otsection.slick-slide,
.carousel-item > div {
  float: none;
}
*/

/* ==============================================================
   7. CLEANUP THAT IS NOT ABOUT FLOATS

   The universal transition in style4.css applies a half-second
   animation to EVERY property on EVERY element on the page. It is
   the single biggest cause of the site feeling sluggish, and it
   also makes hover states feel unresponsive.

   Scoped back to the elements that actually animate.
   ============================================================== */

* {
  transition: none;
}

a,
button,
.btn,
img,
i,
[class*="btn"],
[class*="thumb"] img,
.city-badge ul li,
.our_services_list ul li,
.our_fleet_list ul li,
.footer-social-icons ul li a,
.section.portfolio .filters-content .item,
.section.portfolio .filters-content .item img {
  transition: 0.3s ease;
}
