/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
@import url('https://fonts.googleapis.com/css2?family=Questrial&display=swap');

body {
    font-weight: 400;
    font-family: 'Questrial', sans-serif;
}

.txt-m-0 * {
    margin:0!important;
}

.mb-0 {
    margin-bottom:0!important;
}

h1, .banner h1, h2, .banner h2, h3, .banner h3, h4, .banner h4, h5, .banner h5, h6, .banner h6, .fake-font-size {
    line-height:inherit;
    font-size:1em;
	font-weight:400;
     letter-spacing:.025em;
}

.ls-positive {
    letter-spacing:.025em;
}

.banner {
    background:none;
}


.banner a.fill {
    z-index: 2;
}

.banner:has(a.fill) .text-box {
    z-index: 1;
}

.banner-height-fit {
    height:100%;
}

.balance {
    text-wrap: balance;
}

.pretty {
    text-wrap: pretty;
}

.fw-200, .fw-200 > * {
    font-weight:200!important;
}

.fw-300, .fw-300 > * {
    font-weight:300!important;
}

.fw-400, .fw-400 > * {
    font-weight:400!important;
}

.fw-500, .fw-500 > * {
    font-weight:500!important;
}

.fw-600, .fw-600 > * {
    font-weight:600!important;
}

.fw-700, .fw-700 > * {
    font-weight:700!important;
}

.fw-800, .fw-800 > * {
    font-weight:800!important;
}

.pad-left-col>.col-inner {
    padding-left: max(15px,calc((100vw - 1830px)/2))!important
}

.pad-right-col>.col-inner {
    padding-right: max(15px,calc((100vw - 1830px)/2))!important
}

.doubled-font > * {
    font-size: 2em;
}
.uppercase {
    letter-spacing: 0;
}
.image-height-fit .col-inner, .image-height-fit .img:not(.logo), 
.image-height-fit .img:not(.logo) > div, .image-height-fit .img:not(.logo) .img-inner {
    height:100%;
}

.image-height-fit .img:not(.logo) .img-inner > img {
    height:100%;
    object-fit:cover;
    object-position:center center;
}

.image-height-fit .img.logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
} 

.image-height-fit .img.logo img {
    margin:0 auto;
}

.logo.centered-image img {
    margin:0 auto;
}

/*buttons*/
.button {
    font-size: unset;
    line-height: 1 !important;
    min-height: unset;
    letter-spacing: 1.5px;
    position: relative;
    padding:12px 20px 12px 20px;
}

.button span {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.3;
}
.button i:before {
    display: none;
}
.button i{
    width: 17px;
    height: 17px;
    line-height: 1.3;
    background-size: contain;
    position: relative;
    vertical-align: unset;
    top: 3px;
}

.button i.icon-chat {
    background: url(/wp-content/uploads/2025/12/custom-icon-chat.svg) center center no-repeat;
}

.button.white i.icon-checkmark {
    background: url(/wp-content/uploads/2025/12/Frame.svg) center center no-repeat;
}
.button.white i.icon-chat {
    background: url(/wp-content/uploads/2025/12/chat-black.svg) center center no-repeat;
}
.button.white i.icon-search {
    background: url(/wp-content/uploads/2025/12/custom-search.svg) center center no-repeat;
}

.button.primary:hover {
    box-shadow: inset 0 0 0 100px rgba(255, 255, 255, .15);
}

.button.white:hover {
    box-shadow: inset 0 0 0 100px rgba(0, 0, 0, .1);
}


.button.white span {
    color:#1E1E1E;
}

.col-5-stack > .icon-box {
    padding:0 3%;
    width: 100%;
}


/* HEADER */

.header-wrapper.stuck {
	box-shadow:unset;
}

.header-wrapper .button {
    font-size: 1rem;
    letter-spacing: 1.5px;
}  

.nav-spacing-xlarge>li {
    margin: 0 25px;
}

.nav-left > li > a {
	color: white;
}

.header .header-main .nav-right:not(.mobile-nav) {
    background:rgba(210, 210, 210, 0.30);
    padding:10px 30px;
    justify-content: center;
    border-radius: 100px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(221, 221, 221, 0.30);
    backdrop-filter: blur(12px);
    margin: auto;
    max-width: fit-content;
    padding:5px 8px 5px 30px;
}

.header .header-main .header-nav a:not(.button) {
    color: hsla(0, 0%, 7%, .75);
}

.header .header-main .header-nav a:not(.button):hover {
    color: hsla(0, 0%, 7%, 1);
}

#content .custom-slider-rows .slider .flickity-viewport {
    overflow: visible;
}

#content .custom-slider-rows .row {
    width: 32%!important;
    opacity: 1!important;
    margin-right: 30px;
}

#content .flota-slider .row {
    width: 40%!important;
    opacity: 1!important;
    padding:0 30px;
}

#content .flota-slider .flickity-viewport {
    overflow: visible;
}
#content .flota-slider .row .img {
    transform: scale(1.0);
    transition: .8s transform ease-in;
}

#content .flota-slider .row p {
    opacity: 0;
    transition: .5s transform ease-in;
}

#content .flota-slider .row.is-selected .img {
     transform: scale(1.3);
}

#content .flota-slider .row.is-selected p {
    opacity: 1;
    transition: .5s opacity ease-in;
    transition-delay:1.3s;
}

#content .flota-slider .flickity-prev-next-button {
    opacity: 1;
    top: unset;
    bottom: 10%;
}

#content .flota-slider .flickity-prev-next-button.previous {
    left:20%;
}
#content .flota-slider .flickity-prev-next-button.next {
    left:unset;
    right:20%;
}



#content .flota-slider .flickity-page-dots {
    display: flex;
    flex-flow: row nowrap;
    bottom: 0;
}

#content .flota-slider .flickity-page-dots .dot {
    width: 100%;
    height: 2px;
    background: #E8E8E8;
    opacity: 1 !important;
    border: none;
    transition: .2s background ease-in;
}

#content .flota-slider .flickity-page-dots .dot.is-selected {
    background: #000;
}
.marcas-gallery img {
    opacity: 1;
    position: relative;
    z-index: 3;
}
.marcas-gallery .overlay {
    background-color: rgba(255, 255, 255, 0.10)!important;
    backdrop-filter: blur(12px);
    z-index: 2;
}  

.soluciones-flotas-col .text {
    padding-right:clamp(20px,10%,70px);
}

.elegir-flota-list ul {
list-style-type: none;
margin:0;
}

.elegir-flota-list ul li {
    margin-bottom: 30px;
    padding-left:100px;
    position: relative;
}

.elegir-flota-list ul li:after {
    content:"";
    width: 75px;
    height: 1px;
    background: #fff;
    position: absolute;
    top: 11px;
    left: 0;
}

.row.expanding-banners-row {
    flex-flow: row nowrap;
}

.row.expanding-banners-row .col {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 260px;
    transition: .4s min-width ease-in;
}

.row.expanding-banners-row .col:hover {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 500px;
}

.row.expanding-banners-row .col .text.title-text {
    max-width: 240px;
}

.row.expanding-banners-row .col .text.description-text {
    max-height: 0;
    overflow: hidden;
  
}

.row.expanding-banners-row .col .text.description-text > p {
    min-height: fit-content;
    min-width: 420px;
}

.row.expanding-banners-row .col:hover .text.description-text {
    max-height: 200px;
    transition: .4s max-height ease-in;
    transition-delay:.5s;
}
#content .resultados-slider .flickity-viewport {
    overflow: visible;
}
#content .resultados-slider .row {
    width:25%!important;
    opacity: 1;
    margin-right:10px;
}

#content .resultados-slider .flickity-prev-next-button {
    opacity: 1!important;
    top: -60px;
    bottom: unset;
    transform: none!important;
}

#content .resultados-slider .flickity-prev-next-button.previous {
    left:unset;
    right:70px;
}
#content .resultados-slider .flickity-prev-next-button.next {
    left:unset;
    right:0;
}

#content .resultados-slider .row .description-text {
    position:relative;
    top: -50px;
    opacity: 0;

}

#content .resultados-slider .row:hover .description-text {
    position:relative;
    top: 0px;
    opacity: 1;
    transition: .4s top ease-in,.6s opacity ease-in;
    transition-delay:0s,.2s;
}

/*Form Footer*/


/*formulario*/

 .form-footer .frm_forms > form,  .frm_forms fieldset {
    margin-bottom:0;
}

  .form-footer .frm_form_field ::placeholder {
  color: #000;
  font-weight: 400;
  opacity: .7;
}

  .form-footer .frm_form_field {
  margin-bottom:30px;
}

  .form-footer .frm_error_style,  .frm_error {
  color:red;
  font-size: .875rem;
}

  .form-footer .frm_form_fields input {
  margin-bottom:5px;
}

  .form-footer .frm_fields_container .frm_checkbox label,  .frm_fields_container .frm_radio label {
    position: relative;
    padding-left: 24px;
    font-size: 1rem;
    font-weight: 400;
    color:#000;
    padding-top:0;
}

  .form-footer .frm_fields_container .frm_checkbox label a {
  text-decoration:underline;
  color:#000;
  font-weight:400;

}

  .form-footer .frm_form_field input[type=email],  .frm_form_field input[type=number],  .frm_form_field input[type=search],  .frm_form_field input[type=tel],  .frm_form_field input[type=text],  .frm_form_field input[type=url],  .frm_form_field textarea,  .frm_form_field select {
  appearance:none;
  -moz-appearance:none; /* Firefox */
    -webkit-appearance:none; /* Safari and Chrome */
  margin-bottom:0;
  height:unset;
  line-height:1.6;
  padding:10px 1.5rem 10px 0;
  font-size:1.125rem;
  box-shadow:unset;
  border:0;
  border-bottom:1px solid #000;
  color:#000;
  border-radius:0;
  font-weight: 400;
}

  .form-footer .frm_form_field textarea {
    min-height: 0;
}

  .form-footer .frm_fields_container input[type="checkbox"],  .frm_fields_container input[type="radio"]  {
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  margin:0;
  min-width: 16px;
  width:16px;
  height:16px;
  border:1px solid #000;
  background:transparent;
  position:absolute;
  top:4px;
  left:0;
  display: flex;
  align-items:center;
  justify-content:center;
  border-radius:3px;
}

  .form-footer .frm_fields_container input[type="checkbox"]::before,  .frm_fields_container input[type="radio"]::before {
  content: "";
    width: calc(100% - 3px);
    height: calc(100% - 3px);
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em #000;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  border-radius: 0;
}

 .form-footer .frm_fields_container input[type="checkbox"]:checked::before,  .frm_fields_container input[type="radio"]:checked::before  {
  transform: scale(1);
  position:relative;
}


  .form-footer .frm_form_field .frm_submit button {
  margin:20px 0 0 0;
  border-radius:99px;
} 

  .form-footer .frm_form_field .frm_submit button span {
    text-transform: none;
    padding:0 60px;
  }

.sin-limites-banner .description-text {
      max-height: 0;
      opacity: 0;
      transition: .3s max-height ease-in;
      transition-delay: 0s;

}

.sin-limites-banner:hover .description-text {
      max-height: 160px;
      opacity: 1;
      transition: .3s max-height ease-in,.3s opacity ease-in;
      transition-delay: 0s,.3s;


}

.sin-limites-banner .description-text > * {
    max-height: fit-content;
}

.presupuesto-col h1 {
    font-size: 2rem;
    margin-bottom:20px;
    line-height: 1.4;
}

.presupuesto-col h1 + p {
    font-size: 1.125rem;
    letter-spacing: .5px;
}

.presupuesto-col .frm_submit {
    margin-top: 80px;
    flex-direction: row-reverse;
}

.presupuesto-col .frm_submit .frm_prev_page {
    border: 1px solid #000;
    border-radius: 99px;
    padding: 0 40px;
}


.presupuesto-col .frm_button_submit  {
    padding-left:40px;
    padding-right:40px;
    border-radius:99px;
}

.presupuesto-col .frm_button_submit, .presupuesto-col .frm_prev_page span {
        text-transform: capitalize;
}


.presupuesto-col .frm_page_bar > li {
    flex:unset;
    justify-content: center;
    padding:0;
}
.presupuesto-col .frm_page_bar > li:first-child input {
    margin-left:0;
}

.presupuesto-col .frm_page_bar > li input[type="button"] {
    width: 35px;
    height: 35px;
    border-radius:99px;
    border:1px solid #000;
    flex:unset;
    margin-right:0;
    background: #fff;
    position: relative;
    z-index: 1;
}

.presupuesto-col ul.frm_rootline {
    justify-content: space-between;
    position: relative;
}

.presupuesto-col ul.frm_rootline:after {
    content:"";
    position: absolute;
    width:100%;
    height: 1px;
    background:#000;
    top: 50%;
    left:0;
    z-index: 0;
    transform: translateY(-6px);

}

.frm_rootline > .frm_rootline_single {
    min-width: 35px;
}

.frm_forms .frm_rootline .frm_current_page input[type="button"] {
    background-color:#000;
    color:#fff;
    border:1px solid #000;
}

.presupuesto-col .frm_primary_label {
    font-size: 1.5rem;
    margin-bottom:20px;
}

.presupuesto-col .frm_rootline_group {
    margin-bottom:80px;
 }

 .presupuesto-col .frm_radio, .presupuesto-col .frm_checkbox {
    padding: 10px 20px;
    border: 1px solid #000;
    border-radius: 99px;
    width: 100%;
    font-weight: 400!important;
    font-size: 1.125rem;
 }

  .presupuesto-col .frm_radio:hover, .presupuesto-col .frm_checkbox:hover {
    background:#f2f2f2;
  }

  .presupuesto-col .frm_checkbox label {
    font-weight: 400;
  }

  .presupuesto-col .frm_radio:has(input:checked), .presupuesto-col .frm_checkbox:has(input:checked) {
        background: #000;
  }

  .presupuesto-col .frm_radio:has(input:checked) label, .presupuesto-col .frm_checkbox:has(input:checked) label {
        color: #fff;
  }

  /**/

  .presupuesto-col .frm_form_field input[type=email], .presupuesto-col input[type=number], .presupuesto-col input[type=search], .presupuesto-col input[type=tel], .presupuesto-col input[type=text], .presupuesto-col input[type=url], .presupuesto-col textarea, .presupuesto-col select {
        appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    margin-bottom: 0;
    height: unset;
    line-height: 1.6;
    padding: 10px 1.5rem 10px 0;
    font-size: 1.125rem;
    box-shadow: unset;
    border: 0;
    border-bottom: 1px solid #000;
    color: #000;
    border-radius: 0;
    font-weight: 400;
    margin-bottom:30px;
  }



/*Absolute Footer*/
.absolute-footer {
    display: none;
}


/* Accordion */

.accordion .accordion-item {
  border:1px solid #f2f2f2;
  border-radius:0;
  margin-bottom:0;
  overflow: hidden;
  margin-bottom: 20px;
}

.accordion .accordion-item .accordion-title {
   font-weight:400;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 1.5px;
  border-top:0;
    padding:25px 50px 25px 40px;
}
.accordion .accordion-item .accordion-title > * {
    text-wrap:balance;
    display: block;
}

.accordion .accordion-item .accordion-title.active {
    padding-bottom:20px;
    color:#000
}

.accordion .toggle {
 width: 48px;
height: 48px;
  min-height:unset;
  position:absolute;
  top:50%;
  right:30px;
  left:unset;
  margin-right:0;
  tansform-origin:unset;
  transform:translateY(-50%);
  opacity: 1;
}



.accordion .toggle i {
  display:none;
}

.accordion .toggle:before {
  content:"";
  width:28px;
  height: 1px;
  background:#000;
  transition:.2s transform linear;
  transform-origin:center center;
  position:absolute;
  left:10px;
  top:18px;
}

.accordion .toggle:after {
  content:"";
  width:28px;
  height: 1px;
  transform:rotate(90deg);
  background:#000;
  transition:.2s transform linear;
  transform-origin:center center;
  position:absolute;
  left:10px;
  top:18px;
}


.accordion .accordion-item .accordion-title.active  .toggle:after {
  transform:rotate(0);
}

.accordion .accordion-item .accordion-title.active, .accordion .accordion-item .accordion-title.active + .accordion-inner  {
  background:#fcfcfc
}

@media (max-width: 1440px) {
    .row.expanding-banners-row .col {
        min-width: unset;
    }
    .row.expanding-banners-row {
        flex-flow: row wrap;
    }
}

@media (max-width: 1280px) {
    .nav-spacing-xlarge>li {
        margin: 0 15px;
    }
}

@media (max-width: 850px) {
    #content .custom-slider-rows .row {
        width: 42%!important;
        opacity: 1!important;
        margin-right: 30px;
    }
    .col-5-stack {
        flex-flow:row wrap;
    }

    .col-5-stack > .icon-box {
        width: 33.333333%;
        margin-bottom:50px!important;
    }

    #content .flota-slider .row {
        width: 70% !important;
        opacity: 1 !important;
        padding: 0 30px;
    }

    #content .flota-slider .flickity-prev-next-button.previous {
        left:10%;
    }

    #content .flota-slider .flickity-prev-next-button.next {
        right:10%;
    }
    #content .flota-slider .flickity-prev-next-button {
        bottom: 15%;
    }

    .row.expanding-banners-row .col {
        min-width: unset;
    }

    .row.expanding-banners-row .col {
        min-width: 33.3333333%!important;
        flex-basis: 33.3333333%!important;
    }

    .row.expanding-banners-row .col .text.description-text {
        max-height: unset!important;
    }

    .row.expanding-banners-row .col .text.description-text > p {
        min-width: unset;
    }

    #content .resultados-slider .row {
        width: 33.33333% !important;
        opacity: 1;
        margin-right: 10px;
    }

    #content .resultados-slider .row > .col > .col-inner > *:not(.img) {
        margin-right:20px;
    }

    #content .resultados-slider .row .description-text {
        position: relative;
        top: 0;
        opacity: 1;
    }

    .header:not(.transparent) .header-inner {
        background:#fff;
        border-bottom:1px solid rgba(245,245,245,1);
    }

    .mobile-nav.nav>li>a>i.icon-menu {
        font-size:2rem;
        color: #000;
    }

    .off-canvas-left .mfp-content, .off-canvas-right .mfp-content {
        background:#fff;
     }
     .off-canvas .mobile-sidebar {
        position: relative;
        height: 100%;
        min-height: 560px;
     }
     .off-canvas .sidebar-menu {
        padding-top:0;
     }

     .nav-sidebar .logo-mobile {
        margin-bottom:60px;
     }
     .nav-sidebar .logo-mobile img {
        max-width: 150px;
     } 

     .nav-sidebar.nav-vertical {
        position: static;
     }
     .nav-sidebar.nav-vertical>li+li {
        border-top: 0;
     }

     .nav-sidebar .header-button .button span {
         font-size: 0.875rem;
        font-weight: 400;
        letter-spacing: 1.5px;
     }

     .off-canvas:not(.off-canvas-center) .nav-vertical li>a {
        color:#000;
         font-size: 1.125rem;
        font-weight: 400;
        letter-spacing: 1.5px;
     }

       .off-canvas .sidebar-menu .html.header-button-1 {
        position: absolute;
        bottom:0;
        left: 0;
        width: 100%;
        display: flex;
        justify-content: space-between;
        background: #fff;
    }
    .nav-sidebar .toggle {
        opacity: 1;
    }
    .nav-sidebar .toggle .icon-angle-down {
        font-size: 1.3rem;
        color:#000;
    }

    .off-canvas:not(.off-canvas-center) li.html {
        padding:20px 15px;
    }

    .sin-limites-banner .description-text {
        max-height: unset!important;
        opacity: 1!important;
    }


}

@media (max-width: 550px) {
    #content .custom-slider-rows .row {
        width: 90%!important;
        opacity: 1!important;
        margin-right: 30px;
        margin-right:15px;
    }
    #content .flota-slider .row {
        width: 92% !important;
        opacity: 1 !important;
        padding: 0px;
    }

    #content .flota-slider .flickity-prev-next-button {
        display: block;
    }

     .row.expanding-banners-row .col {
        min-width: 100%!important;
        flex-basis: 100%!important;
    }

    #content .flota-slider .flickity-prev-next-button.previous {
        left:-5px;
    }

    #content .flota-slider .flickity-prev-next-button.next {
        right:-5px;
    }
    #content .flota-slider .flickity-prev-next-button {
        bottom: 25%;
    }

    .col-5-stack > .icon-box {
        width: 100%;
        margin-bottom:30px!important;
    }

    #content .resultados-slider .row {
        width: 90% !important;
        opacity: 1;
        margin-right: 10px;
    }

    .accordion .accordion-item .accordion-title {
        font-size: 1.125rem;
        padding: 15px 50px 15px 20px;
        letter-spacing: 0.5px;
    }

    .accordion .toggle  {
        right: 0;
        top: 10px;
        transform: none;
    }

    .accordion .toggle:before,.accordion .toggle:after {
        width: 20px;
    }
    .accordion-inner {
        padding: 1rem;
    }

    .button span {
       font-size: 0.875rem; 
    }

    .frm_form_field.frm_two_col .frm_opt_container, .frm_form_field.frm_three_col .frm_opt_container, .frm_form_field.frm_four_col .frm_opt_container { 
        grid-template-columns: repeat(1, 1fr);
    }

}