/*********************
Spacing System *******/

:root {
    /* Global Padding Variables - Editable */
    /* Left and Right Padding All /Sections/Containers*/
    --fluid-side-padding-min: 1.25rem; /* 20px */
    --fluid-side-padding-max: 5rem;   /* 80px */

    /* Top and Bottom Padding All Containers*/
    --section-xxl-padding-min: 9.375rem; /* 150px */
    --section-xxl-padding-max: 10rem; /* 160px */ 
  
    --section-xl-padding-min: 6.875rem; /* 110px */
    --section-xl-padding-max: 7.5rem; /* 120px */
  
    --section-l-padding-min: 5.625rem; /* 90px */
    --section-l-padding-max: 6.25rem; /* 100px */
  
    --section-m-padding-min: 5rem; /* 80px */
    --section-m-padding-max: 5rem; /* 80px */
  
    --section-s-padding-min: 3.75rem; /* 60px */
    --section-s-padding-max: 3.75rem; /* 60px */
  
    --section-xs-padding-min: 2.5rem; /* 40px */
    --section-xs-padding-max: 2.5rem; /* 40px */
  
    --section-xxs-padding-min: 1.5rem; /* 24px */
    --section-xxs-padding-max: 1.5rem; /* 24px */
    
    --section-header-padding-min: 1.25rem; /* 20px */
    --section-header-padding-max: 1.25rem; /* 20px */

  
    /* Hero Sections Height Variable */
    --section-hero-height: 95vh; /* 100% the screen height */
  
    /* Offset Padding for Overlay Headers */
    --section-offset-header: 96px; /* Adjust to the overlay header's negative margin */

    /* Width For Narrow Sections*/
    --section-narrow: 62.5rem; /* 1000px */
    --section-narrow-xs: 45rem; /* 720px */
  }

/* CSS Template (do not edit below) */ 
  
  /* Section/Container Padding - Fluid Variants */
  .section-xxl {
    padding-top: clamp(var(--section-xxl-padding-min), 1.087vw + 9.13rem, var(--section-xxl-padding-max));
    padding-bottom: clamp(var(--section-xxl-padding-min), 1.087vw + 9.13rem, var(--section-xxl-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-xl {
    padding-top: clamp(var(--section-xl-padding-min), 1.087vw + 6.63rem, var(--section-xl-padding-max));
    padding-bottom: clamp(var(--section-xl-padding-min), 1.087vw + 6.63rem, var(--section-xl-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-l {
    padding-top: clamp(var(--section-l-padding-min), 1.087vw + 5.38rem, var(--section-l-padding-max));
    padding-bottom: clamp(var(--section-l-padding-min), 1.087vw + 5.38rem, var(--section-l-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-m {
    padding-top: clamp(var(--section-m-padding-min), 0vw + 5rem, var(--section-m-padding-max));
    padding-bottom: clamp(var(--section-m-padding-min), 0vw + 5rem, var(--section-m-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-s {
    padding-top: clamp(var(--section-s-padding-min), 0vw + 3.75rem, var(--section-s-padding-max));
    padding-bottom: clamp(var(--section-s-padding-min), 0vw + 3.75rem, var(--section-s-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-xs {
    padding-top: clamp(var(--section-xs-padding-min), 0vw + 2.5rem, var(--section-xs-padding-max));
    padding-bottom: clamp(var(--section-xs-padding-min), 0vw + 2.5rem, var(--section-xs-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-xxs {
    padding-top: clamp(var(--section-xxs-padding-min), 0vw + 1.5rem, var(--section-xxs-padding-max));
    padding-bottom: clamp(var(--section-xxs-padding-min), 0vw + 1.5rem, var(--section-xxs-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-header {
    padding-top: clamp(var(--section-header-padding-min), 0vw + 1.25rem, var(--section-header-padding-max));
    padding-bottom: clamp(var(--section-header-padding-min), 0vw + 1.25rem, var(--section-header-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  /* Hero Container/Sections Height */
  .section-hero {
    min-height: var(--section-hero-height)!important;
  }

  .section-hero .e-con-inner {
    justify-content: center!important;
}
  
  /* Full Width Sections - No Side Padding */

  .section-full div {
    max-width: 100%!important;
  }

  /* Narrow Sections */
  .section-narrow .e-con-inner {
    max-width: var(--section-narrow)!important;
  }

  .section-narrow-xs .e-con-inner {
    max-width: var(--section-narrow-xs)!important;
  }

  /* Offset Padding for Overlay Headers */
  .section-offset {
    padding-top: calc(var(--section-offset-header) + var(--section-s-padding-min));
  }

/***************************
Mis ajustes globales *******/


@media only screen and (max-width: 766px){

.section-hero {
background-image: none!important;}
}

/* Glassmorphism */

.glass-dark {
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  background-color: rgba(4, 20, 46, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.125);
}

.glass-light {
    backdrop-filter: blur(1px) saturate(100%);
    -webkit-backdrop-filter: blur(1px) saturate(100%);
    background-color: rgb(255 255 255 / 40%);
    border: 1px solid rgb(209 213 219 / 25%);
}

/* Buttons */
.elementor-button:hover{
transform: translateY(-0.25em);
box-shadow: 0 0.3259259164px 0.7333333492px 0 rgba(0, 0, 0, .12), 0 1.5407407284px 2.8666665554px 0 rgba(0, 0, 0, .07), 0 4px 9px 0 rgba(0, 0, 0, .05);}

.secondary-button {
  color:#05299E;
  cursor: pointer;
}

.secondary-button:hover {
  color:#000;
}

/* Highlighted items */
span.highlighted {
    background-color: #D6F3E6;
    color:#000;
}

/* Textos Marketing */

.pmarketing--l {
font-size: clamp(1.125rem, 1.098rem + 0.12vw, 1.2rem);
font-weight: 600;
}

h3.h5-style {
    font-size: clamp(1rem, 1.098rem + 0.12vw, 1.125rem);
    line-height: 1.2em;
   /* margin-top: 1.2em;*/
   margin-top: 0 !important;
}

/*********************
Clicable cards *******/

/* Add the class name "dd-link-card" to the parent container and "dd-link-card__trigger" to the post title link */
.dd-link-card{
    position: relative;
}

.dd-link-card :not(.elementor-element-overlay, .elementor-element-overlay *, .elementor-shape, .ui-resizable-handle, .dd-link-card--excluded) {
    position: static;
}

.dd-link-card .dd-main-link a::after {
    content: "";
    position: absolute;
    inset: 0;
    cursor: pointer!important;
    display: flex;
    z-index: 99;
}

.dd-link-card:hover{
  transform: translateY(-0.25em);
}

/***********************
Services Cards**********/

.service-card {
  border: 1px solid var(--e-global-color-primary);
  padding: 30px;
  --justify-content: space-between;
}

.service-card-cta {
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-accent-font-weight);
  line-height: var(--e-global-typography-primary-line-height);
  color: var(--e-global-color-accent);
}

.service-card:hover  {
  background-color: #05299E;
  color:white;
  border: 1px solid var(--e-global-color-accent);
}

.service-card:hover h3,
.service-card:hover span {
  color:var(--e-global-color-text);
}

.service-card-alt {
  //border: 1px solid var(--e-global-color-primary);
  padding: 30px;
  --justify-content: space-between;
  border: 1px dashed #05299E3B;
 
}
/************************
Portfolio Item Card*****/

.portfolio-itemcard {
padding:1.5rem;
height: 100%;
}

.pitem-card-head {
    background-color: #0A0B0B30;
}

.pitem-card-head--light {
  background-color:#f9eac8d4;
}

/**************************
Cost Calculator***********/

.novisible {
  display:none !important;
}

.calc-group .calc-group-wrapper {
    background: #f6f4f3;
    padding: 1.5rem;
    border-bottom: none !important;
}

span.sub-item-title {
    text-transform: none;
}

.sub-list-item {
    border-bottom: 1px dashed #f6f4f3 !important;
    gap: 0px !important;
}

button.calc-btn-action.success {
    border-radius: 0;
    font-weight: inherit;
    letter-spacing: inherit;
}

/* Quita precios de cada item dentro de una lista */
.calc-container .calc-list .calc-subtotal-list .sub-list-item.inner .sub-inner .sub-item-value {
  display:none;
}
