/** Shopify CDN: Minification failed

Line 293:16 Unexpected "{"
Line 293:25 Expected ":"
Line 296:14 Expected identifier but found whitespace
Line 296:16 Unexpected "{"
Line 296:25 Expected ":"
Line 296:49 Expected ":"
Line 299:16 Unexpected "{"
Line 299:25 Expected ":"
Line 307:16 Unexpected "{"
Line 307:25 Expected ":"
... and 75 more hidden warnings

**/
/* ===============================
   TWO CARDS SECTION (mobile first)
================================ */

.two-cards-section {
  width: 100%;
}

.two-cards-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: 1fr; /* mobile */
}

.two-cards-top-title {
  position: absolute;
  top: 30px; /* mobile: menos separación */
  left: 50%;
  transform: translateX(-50%);
  z-index: 6;
  width: 90%;
  max-width: 1000px;
  text-align: center;
  pointer-events: none;
}

.two-cards-top-title h2 {
  margin: 0;
  color: #fff;
  font-size: 30px; /* mobile */
  font-weight: 700;
  line-height: 1.1;
  text-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
}

.two-card-column {
  position: relative;
  min-height: 350px; /* mobile */
}

.two-card-background {
  position: relative;
  height: 100%;
  background-size: cover;
  background-position: center;

  display: flex;
  align-items: center;
  justify-content: center;

  /* espacio para integrar el título (mobile) */
  padding-top: 200px;
  padding-bottom: 80px;
}

.two-card-column:nth-child(3) .two-card-background {
  padding-top: 80px;
  padding-bottom: 80px;
}

.two-card-column:nth-child(2) .two-card-background {
  padding-top: 200px;
  padding-bottom: 80px;
}

.two-card-background .overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.card-inner {
  position: relative;
  background: #ffffff;
  padding: 24px; /* mobile */
  text-align: left;
  max-width: 420px;
  z-index: 2;
  text-decoration: none;
  color: inherit;
  transition: transform 0.3s ease;
  border-radius: 12px;
}

.card-inner:hover {
  transform: translateY(-6px);
}

.card-content img {
  max-width: 100%;
  margin-bottom: 20px;
  border-radius: 12px;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.card-content h3 {
  margin-top: 0;
  margin-bottom: 10px;
}

.card-content p {
  margin: 0;
}

/* ===============================
   BREAKPOINTS
================================ */

/* >= 768px */
@media (min-width: 768px) {
  .two-cards-wrapper {
    grid-template-columns: 1fr 1fr;
  }

  .two-cards-top-title {
    top: 40px;
  }

  .two-cards-top-title h2 {
    font-size: 42px;
  }

  .two-card-column {
    min-height: 400px;
  }

  .two-card-column:nth-child(3) .two-card-background, .two-card-column:nth-child(2) .two-card-background {
    padding-top: 210px;
    padding-bottom: 110px;
  }

  /* alineaciones en desktop (mantengo tu lógica original) */
  .two-card-column:nth-child(3) .two-card-background {
    justify-content: flex-start;
    padding-left: 15px;
  }

  .two-card-column:nth-child(2) .two-card-background {
    justify-content: flex-end;
    padding-right: 15px;
  }
}

/* >= 992px */
@media (min-width: 992px) {
  .two-card-column {
    min-height: 500px;
  }

  .two-card-column:nth-child(3) .two-card-background, .two-card-column:nth-child(2) .two-card-background {
    padding-top: 175px;
    padding-bottom: 75px;
  }

  .card-inner {
    padding: 30px;
  }
}


/* ===============================
   Multiple adaptive columns (MAC)
   Mobile first
================================ */

.mac-section {
  width: 100%;
}

/* grid base */
.mac-grid {
  display: grid;
  grid-template-columns: 1fr; /* mobile: 1 columna */
}

/* cada item */
.mac-item {
  min-width: 0;
}

/* fondo */
.mac-bg {
  position: relative;
  background-size: cover;
  background-position: center;
  min-height: var(--mac-min-h-m, 320px);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 28px 18px;
}

/* overlay */
.mac-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
}

/* contenido flotando (sin caja) */
.mac-content {
  position: relative;
  z-index: 2;
  max-width: 520px;
  margin: 0 auto;
}

.mac-title {
  margin: 0 0 12px 0;
  font-size: 28px;
  line-height: 1.15;
  margin-bottom: var(--mac-gap, 14px);
  color:white;
}

.mac-desc {
  margin: 0 auto;
}

.mac-desc p {
  margin: 0;
  line-height: 1.5;
}

.mac-btn {
  display: inline-block;
  margin-top: var(--mac-gap, 14px);
  padding: 12px 18px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 600;
  transition: transform 0.2s ease, opacity 0.2s ease;
  
}

.mac-btn:hover {
  transform: translateY(-2px);
  opacity: 0.95;
}

/* ===============================
   Breakpoints
================================ */

/* Tablet+ */
@media (min-width: 768px) {
  /* Desktop logic:
     - 1–5 => N columnas (igual ancho)
     - 6+ => 3 columnas por fila
     Lo pasamos desde Liquid con --mac-cols-desktop
  */
  .mac-grid {
    grid-template-columns: repeat(var(--mac-cols-desktop), minmax(0, 1fr));
  }

  .mac-bg {
    padding: 44px 28px;
    min-height: 420px;
    aspect-ratio: 1 / 1;
  }

  .mac-title {
    font-size: 34px;
  }
}

/* Desktop grande */
@media (min-width: 992px) {
  .mac-title {
    font-size: 38px;
  }
}



    #heat-risk-{{ section.id }}.heat-risk{
      background: var(--heat-bg);
      color: var(--heat-text);
      padding: {{ section.settings.padding_y }}px 0;
    }

    #heat-risk-{{ section.id }} .heat-risk__title{
      margin: 0 0 22px;
      font-size: clamp(26px, 3vw, 44px);
      line-height: 1.1;
      font-weight: 800;
      letter-spacing: -0.02em;
    }

    #heat-risk-{{ section.id }} .heat-risk__grid{
      display: grid;
      gap: var(--heat-gap);
      align-items: stretch;
    }

    /* Desktop columns rule:
       - if <=2 columns => render N columns
       - if >2 columns => 2 columns and wrap -> 2+1 or 2+2
    */
    @media (min-width: 990px){
      #heat-risk-{{ section.id }} .heat-risk__grid{
        grid-template-columns: repeat({% if use_two_col_grid %}2{% else %}{{ cols_count | at_least: 1 }}{% endif %}, minmax(0, 1fr));
      }
    }

    /* Mobile: 1 column */
    @media (max-width: 989px){
      #heat-risk-{{ section.id }} .heat-risk__grid{
        grid-template-columns: 1fr;
      }
      #heat-risk-{{ section.id }} .heat-risk__title{
        margin-bottom: 16px;
      }
    }

    #heat-risk-{{ section.id }} .heat-risk__card{
      background: var(--heat-card);
      border-radius: var(--heat-radius);
      padding: 26px 28px;
      box-shadow: 0 12px 30px rgba(0,0,0,.08);
      border: 1px solid rgba(0,0,0,.05);
    }

    #heat-risk-{{ section.id }} .heat-risk__card-title{
      margin: 0 0 16px;
      font-size: 24px;
      line-height: 1.15;
      font-weight: 800;
      color: var(--heat-accent);
    }

    #heat-risk-{{ section.id }} .heat-risk__content{
      color: var(--heat-text);
      font-size: 18px;
      line-height: 1.6;
    }

    #heat-risk-{{ section.id }} .heat-risk__content ul,
    #heat-risk-{{ section.id }} .heat-risk__content ol{
      margin: 12px 0 0;
      padding-left: 22px;
    }

    #heat-risk-{{ section.id }} .heat-risk__content li{
      margin: 10px 0;
      color: var(--heat-text);
    }

    #heat-risk-{{ section.id }} .heat-risk__icon-list{
      list-style: none;
      margin: 10px 0 0;
      padding: 0;
      display: grid;
      gap: 14px;
    }

    #heat-risk-{{ section.id }} .heat-risk__icon-item{
      display: grid;
      grid-template-columns: 30px 1fr;
      gap: 14px;
      align-items: start;
    }

    #heat-risk-{{ section.id }} .heat-risk__icon{
      width: 30px;
      height: 30px;
      display: grid;
      place-items: center;
      color: var(--heat-accent);
      flex: 0 0 auto;
    }

    #heat-risk-{{ section.id }} .heat-risk__icon img{
      width: 26px;
      height: 26px;
      object-fit: contain;
      display: block;
    }

    #heat-risk-{{ section.id }} .heat-risk__icon-text{
      font-size: 18px;
      line-height: 1.5;
      color: var(--heat-text);
    }



    /*Steps timelne*/
    
  .textSection {
    width: 100%;
    background: white;
    border-radius: 12px;
    padding: 21px;
    height: fit-content;
}

.headSectionIntegral {
    padding: 30px 0px 0px;
    text-align: center;
}

.textSectionIntegral {
    padding-bottom:40px;
    text-align: center;
}

.numberBox {
    background: #009688;
    width: fit-content;
    padding: 17px;
    border-radius: 50px;
    line-height: 1;
    height: 50px;
    width: 50px;
    color: white;
}

span.numero {
    padding-left: 3px;
    padding-bottom: 14px;
}

.colSectionIntegral {
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: center;
    padding: 12px 0px;
    margin: 0px 5vw;
}

.colSectionIntegral:nth-child(even) {
    flex-direction: column-reverse;
}

.photoSection {
    width: 100%;
}

.photoSection img {
    border-radius: 12px;
    max-width: 100%;
    height: auto;
}

.container, .ttc__container {
    max-width: 1100px !important;
    margin: 0 auto;
}

 @media (min-width: 1200px){

  .colSectionIntegral:nth-child(even) {
    flex-direction: row;
}

.colSectionIntegral {
  margin:0px;
}
    .textSection, .photoSection {
      width: 100%;
    }

  .colSectionIntegral {
    flex-direction: row;
  }

  .photoSection {
      width: 100%;
      text-align: center;
  }

  .photoSection img {
    max-width: 81%;
  }


 }


 /*CASOS EXITO*/

     /* SECTION WRAPPER */
    .sf-{{ section.id }}{
      position: relative;
      overflow: hidden;
      padding-top: {{ section.settings.padding_top }}px;
      padding-bottom: {{ section.settings.padding_bottom }}px;
    }

    .sf-{{ section.id }} .sf-bg{
      position: absolute;
      inset: 0;
      background-image: var(--sf-bg-image);
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      z-index: 0;
    }

    .sf-{{ section.id }} .sf-overlay{
      position: absolute;
      inset: 0;
      background: var(--sf-overlay-color);
      opacity: var(--sf-overlay-opacity);
      z-index: 1;
    }

    /* INNER BOX */
    .sf-{{ section.id }} .sf-box{
      position: relative;
      z-index: 2;
      max-width: var(--sf-max-width);
      margin: 0 auto;
      background-color: var(--sf-box-bg);
      border-radius: 8px;
      padding: 25px;
      color: var(--sf-text-color);
    }

    @media (min-width: 1024px){
      .sf-{{ section.id }} .sf-box{
        padding: 50px;
      }
    }

    /* TYPO */
    .sf-{{ section.id }} h2.sf-title{
      text-align: center;
      font-size: 40px;
      line-height: 42px;
      color: var(--sf-title-color);
      margin: 0 0 28px 0;
      font-weight: 800;
    }

    .sf-{{ section.id }} h3{
      font-size: 22px;
      line-height: 38px;
      margin: 0 0 10px 0;
      color:white;
    }

    .sf-{{ section.id }} p{
      font-size: 18px;
      line-height: 22px;
      padding: 0;
      margin: 0;
      color: var(--sf-text-color);
    }

    .sf-box span{
      font-weight: 700;
      font-size: 19px;
      display: inline-block;
      margin-top: 12px;
      color: var(--sf-text-color);
    }

    /* 3 COLS */
    .sf-{{ section.id }} .rowRSR{
      display: flex;
      flex-direction: column;
      gap: 50px;
    }

    section.marginsSection {
    padding: 80px 0px;
}

    @media (min-width: 1024px){
      .sf-{{ section.id }} .rowRSR{
        flex-direction: row;
        gap: 50px;
      }
      .sf-{{ section.id }} .colRSR{
        width: 33%;
      }
    }

    .sf-{{ section.id }} .colRSR{
      width: 100%;
    }

    /* TESTIMONIAL + IMAGES */
    .sf-{{ section.id }} .rowTestimonialImage{
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      padding-top: 50px;
      gap: 20px;
    }

    .sf-{{ section.id }} .colTestimonialImage{
      width: 100%;
    }

    @media (min-width: 1024px){
      .sf-{{ section.id }} .colTestimonialImage{
        width: 45%;
      }
    }

    .sf-{{ section.id }} .testimonial{
      background-color: var(--sf-testimonial-bg);
      padding: 25px;
      border-left: solid #fff 3px;
      border-radius: 8px;
    }

    .sf-{{ section.id }} .image.colTestimonialImage{
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 14px;
    }

    .sf-{{ section.id }} .image.colTestimonialImage img{
      width: 100%;
      height: auto;
      object-fit: cover;
      border-radius: 8px;
      display: block;
    }

    @media (min-width: 1024px){
      .sf-{{ section.id }} .image.colTestimonialImage img{
        width: 45%;
        height:auto;
      }
    }

    .image-banner__stack-image img {
    max-width: 100%;
    height: auto;
}


.banner__check-list {
  list-style: none;
  padding: 0;
  margin: 16px 0 0 0;
  display: grid;
  gap: 10px;
}

.banner__check-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  line-height: 1.4;
}

.banner__check-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  margin-top: 2px;
}

.banner__check-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.banner__check-text {
  flex: 1;
}