/** Shopify CDN: Minification failed

Line 4450:12 Expected identifier but found whitespace
Line 4450:14 Unexpected "{"
Line 4450:23 Expected ":"
Line 4450:57 Expected ":"
Line 4451:12 Expected identifier but found whitespace
Line 4451:14 Unexpected "{"
Line 4451:23 Expected ":"
Line 4452:13 Expected identifier but found whitespace
Line 4452:15 Unexpected "{"
Line 4452:24 Expected ":"
... and 143 more hidden warnings

**/


/* CSS from section stylesheet tags */
.bloco-autoridade-wrapper {
    position: relative;
    width: 100%;
    min-height: 700px;
    background-size: cover;
    background-position: right center;
    background-repeat: no-repeat;
    font-family: 'Montserrat', sans-serif !important;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }

  .bloco-autoridade-container {
    max-width: 1400px;
    width: 100%;
    padding: 0 40px;
    margin: 0 auto;
    z-index: 2;
  }

  .bloco-autoridade-text {
    max-width: 600px;
  }

  .bloco-autoridade-title {
    font-size: 2.8rem;
    font-weight: 800;
    margin-bottom: 10px;
    margin-right: -150px;
  }

  .bloco-autoridade-subtitle {
    font-size: 1.3rem;
    font-weight: 400;
    margin-right: -150px;
  }

  @media (max-width: 768px) {
    .bloco-autoridade-container {
      padding: 0;
      text-align: center;
    }

    .bloco-autoridade-text {
      max-width: 100%;
    }

    .bloco-autoridade-title {
      font-size: 1.8rem;
      margin: 0 auto 10px;
      padding-left: 15px;
      padding-right: 15px;
    }

    .bloco-autoridade-subtitle {
      font-size: 1rem;
      margin: 0 auto;
      padding-left: 15px;
      padding-right: 15px;
    }
  }
/* ===== Reseta e layout ===== */
  .abc{ position:relative; width:100%; overflow:hidden; }
  .abc-track{
    display:flex; width:100%;
    will-change: transform;
    transition: transform .35s ease;
  }
  .abc-slide{ min-width:100%; flex:0 0 100%; align-items:center; }
  .abc-slide img{ display:block; width:100%; height:auto; }

  /* Altura adaptada ao maior banner (definida via JS) */
  .abc{ height:auto; }
  .abc--fixed-height{ height:var(--abc-max-h, auto); }

  /* Setas */
  .abc-arrow{
    position:absolute; top:50%; transform:translateY(-50%);
    width:38px; height:38px; border-radius:999px; border:none;
    background:rgba(0,0,0,.4); color:#fff; font-size:22px; line-height:38px;
    display:none;
    align-items:center; justify-content:center; cursor:pointer;
  }
  .abc-prev{ left:8px; }
  .abc-next{ right:8px; }

  /* Dots */
  .abc-dots{
    position:absolute; left:0; right:0; bottom:10px;
    display:flex; gap:6px; justify-content:center; align-items:center;
    pointer-events:auto;
  }
  .abc-dot{
    width:8px; height:8px; border-radius:999px;
    background:rgba(255,255,255,.6); border:0; padding:0; cursor:pointer;
  }
  .abc-dot[aria-current="true"]{ background:#fff; }

  /* Mostra controles só quando precisa */
  .abc--has-nav .abc-arrow{ display:flex; }
  .abc--has-nav .abc-dots{ display:flex; }
.banner-super {
    width: 100%;
    position: relative;
    overflow: hidden;
    text-align: center;
    color: var(--text-color, #000);
    padding: var(--section-padding, 40px 20px);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .banner-super-content {
    max-width: 900px;
    margin: 0 auto 30px auto;
    text-align: center;
  }

  .banner-super h1 {
    font-size: var(--title-font-size, 32px);
    font-weight: var(--title-font-weight, 700);
    color: var(--title-color, #111);
    margin-bottom: 12px;
  }

  .banner-super h2 {
    font-size: var(--subtitle-font-size, 20px);
    font-weight: var(--subtitle-font-weight, 400);
    color: var(--subtitle-color, #333);
    margin-bottom: 0;
  }

  .banner-super img.overlay-image {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0 auto;
  }

  /* ======= VISIBILIDADE ======= */
  .banner-desktop {
    display: block;
  }

  .banner-mobile {
    display: none;
  }

  @media (max-width: 768px) {
    .banner-desktop {
      display: none !important;
    }
    .banner-mobile {
      display: block !important;
    }
  }
/* ===== visibilidade ===== */
.ani--mobile {
    display: block;
}

.ani--desktop {
    display: none;
}

@media (min-width:768px) {
    .ani--mobile {
        display: none;
    }

    .ani--desktop {
        display: block;
    }
}

/* ===== base (compartilhado) ===== */
.ani {
    --ani-fg: #222222;
    --ani-gap: 12px;
    --ani-radius: 16px;
    width: 100%;
    color: var(--ani-fg);
    padding: 8px;
    font-family: inherit;
    background-color: #ededed;
}

.ani__grid {
    display: grid;
    gap: var(--ani-gap);
}

.ani__grid--squares {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: start;
}

.ani__grid--chips {
    margin-top: 15px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
}

.ani__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.ani__link--nolink {
    pointer-events: none;
}

.ani__card {
    border-radius: var(--ani-radius);
    transition: transform .15s ease, box-shadow .15s ease;
    display: flex;
    height: 100%;
    will-change: transform;
}

.ani__card--raised {
    box-shadow: 2px 2px 4px -1px rgba(0, 0, 0, .15), -2px -2px 5px #fff;
}

.ani__card--inset {
    box-shadow: inset 6px 6px 12px rgba(0, 0, 0, .14), inset -6px -6px 12px #fff;
}

.ani__card--square {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px;
    text-align: center;
    margin-bottom: 6px;
}

.ani__icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ani__icon--lg {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: transparent;
    box-shadow: none;
}

.ani__icon--sm {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: transparent;
    box-shadow: none;
    flex: 0 0 28px;
}

.ani__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.ani__txt--center {
    text-align: center;
}

.ani__txt--left {
    text-align: left;
}

.ani__title--square {
    font-weight: 400;
    font-size: 10px;
    line-height: 1.25;
}

.ani__sub--square {
    font-size: 12px;
    line-height: 1.2;
    color: rgba(0, 0, 0, .75);
    margin-top: 2px;
}

.ani__card--chip {
    align-items: center;
    gap: 10px;
    padding: 10px;
}

.ani__title--chip {
    font-weight: 400;
    font-size: 11px;
    line-height: 1.25;
}

.ani__sub--chip {
    font-size: 13px;
    line-height: 1.25;
    color: rgba(0, 0, 0, .75);
    margin-top: 2px;
}

.ani__link:not(.ani__link--nolink) .ani__card--raised:hover {
    transform: translateY(-1px);
}

.ani__link:not(.ani__link--nolink) .ani__card--raised:active {
    transform: translateY(1px);
}

/* ===== Desktop: texto DENTRO do card do topo ===== */
@media (min-width:768px) {

    /* grid e respiro */
    .ani--desktop {
        padding: 12px 40px;
    }

    .ani--desktop .ani__grid--squares-d {
        gap: 12px;
    }

    .ani--desktop .ani__grid--chips-d {
        gap: 16px;
        margin-top: 18px;
    }

    /* coloca o conteúdo DENTRO do card */
    .ani--desktop .ani__card--square {
        margin-bottom: 0;
        text-align: left;
    }

    .ani--desktop .ani__card--square-in {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 10px;
        padding: 12px 14px;
        min-height: 56px;
        /* aparência de “pill” */
    }

    .ani--desktop .ani__icon--lg-d {
        width: 40px;
        height: 40px;
        border-radius: 6px;
    }

    .ani--desktop .ani__txt--inside {
        display: flex;
        flex-direction: column;
    }

    .ani--desktop .ani__title--inside {
        font-size: 13px;
        font-weight: 500;
        line-height: 1.25;
    }

    .ani--desktop .ani__sub--inside {
        font-size: 12px;
        opacity: .8;
        margin-top: 2px;
    }

    /* chips um pouco mais altos */
    .ani--desktop .ani__card--chip-d {
        padding: 14px 16px;
        min-height: 64px;
        justify-content: center;
    }

    .ani--desktop .ani__icon--sm-d {
        width: 42px;
        height: 42px;
        border-radius: 10px;
        flex-basis: 32px;
    }

    .ani--desktop .ani__title--chip-d {
        font-size: 18px;
    }

    .ani--desktop .ani__sub--chip-d {
        font-size: 14px;
    }
}

/* ===== Limite e centralização do bloco ===== */
.ani{
  box-sizing: border-box;
}

/* cada grid (topo e base) ocupa 100% até 1440px e fica centralizado */
.ani > .ani__grid{
  width: 100%;
  max-width: 1440px;   /* limite máximo */
  margin: 0 auto;      /* centraliza */
}

/* garante espaço entre os grids de cima e de baixo */
.ani > .ani__grid--chips {
  margin-top: var(--ani-gap);
}
.section-header-beneficios {
            text-align: center;
            margin-bottom: 40px;
          }

          .section-header-beneficios h2 {
            font-size: var(--section-title-font-size_mobile);
              font-weight: var(--section-title-font-weight-beneficios);
              color: var(--section-subtitle-color-beneficios);
            margin: 0;
            margin-bottom: 20px;
          }

          .section-header-beneficios p {
            font-size: var(--section-subtitle-font-size_mobile);
            font-weight: var(--section-subtitle-font-weight-beneficios);
            color: var(--section-subtitle-color-beneficios);
          }
            .card-beneficios-wrapper {
              padding: 20px;
              max-width: 1200px;
              margin: 0 auto;
            }
            .card-beneficios-mobile {
              display: block;
            }
            .card-beneficios-desktop {
              display: none;
            }

            .card-beneficios-sticky-container {
              position: sticky;
              top: 0;
              z-index: 20;
              display: flex;
              flex-direction: column;
            }

      .benefit-stacked {
        background: #FFF;
        color: #E33170;
        font-weight: 700;
        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
        border-radius: 8px;
        padding: 8px 16px;
        margin-bottom: 4px;
        transform: translateY(10px);
        opacity: 0;
        animation: fadeInStack 0.5s ease forwards;
      }

      .benefit-stacked.exit {
        animation: fadeOutStack 0.3s ease forwards;
      }

      @keyframes fadeInStack {
        0% {
          opacity: 0;
          transform: translateY(10px);
        }
        100% {
          opacity: 1;
          transform: translateY(0);
        }
      }

      @keyframes fadeOutStack {
        0% {
          opacity: 1;
          transform: translateY(0);
        }
        100% {
          opacity: 0;
          transform: translateY(10px);
        }
      }

            .benefit-card {
              margin-bottom: 40px;
            }
            .benefit-card-header {
              background: #fff;
              padding: 12px 16px;
              border-radius: var(--card-radius-beneficios);
              margin-bottom: 16px;
              box-shadow: 0 4px 10px rgba(0,0,0,0.1);
              display: flex;
              align-items: flex-start;
              gap: 12px;
              background: linear-gradient(-180deg, #F487A4, #E33170);
              flex-direction: column;
            }

      .benefit-block-image img {
        border-radius: var(--card-radius-beneficios);
    }
            .benefit-card-header .benefit-icon {
              width: 32px;
              height: 32px;
              flex-shrink: 0;
            }
            .benefit-card-header h3 {
              margin: 0;
              font-size: var(--title-font-size-beneficios);
              font-weight: var(--title-font-weight-beneficios);
              color: var(--title-color-beneficios);
            }
            .benefit-card-header p {
              margin: var(--title-subtitle-gap-beneficios) 0 0;
              font-size: var(--subtitle-font-size-beneficios);
              font-weight: var(--subtitle-font-weight-beneficios);
              color: var(--subtitle-color-beneficios);
            }

            .card-beneficios-illustration {
              margin-top: 30px;
              text-align: center;
            }
            .card-beneficios-illustration img {
              max-width: 100%;
              height: auto;
              border-radius: 12px;
            }

            /* Desktop layout */
            @media (min-width: 1024px) {
              .card-beneficios-mobile {
                display: none;
              }
              .card-beneficios-desktop {
                display: block;
              }
              .card-beneficios-desktop-inner {
                display: flex;
                flex-direction: row-reverse;
                gap: 60px;
                align-items: flex-start;
              }

              .section-header-beneficios h2 {
            font-size: var(--section-title-font-size_desktop);
              font-weight: var(--section-title-font-weight-beneficios);
            margin: 0;
            margin-bottom: 20px;
          }

          .section-header-beneficios p {
            font-size: var(--section-subtitle-font-size_desktop);
            font-weight: var(--section-subtitle-font-weight-beneficios);
          }

              .sticky-image {
                position: sticky;
                top: 100px;
                flex: 1;
                text-align: center;
              }

              .sticky-image img {
                max-width: 100%;
                height: auto;
              }

              .benefits-cards-left {
                flex: 1;
                display: flex;
                flex-direction: column;
                gap: 40px;
              }
              .card-beneficios-bg {
                width: 100%;
                background-size: cover;
                background-repeat: no-repeat;
                background-position: center;
              }
            .benefit-block-image {
                margin-bottom: 16px;
                text-align: center;
              }
            .benefit-block-image img {
                max-width: 100%;
                height: auto;
                border-radius: 8px;
            }
              .benefit-desktop-card {
                opacity: 0;
                border-radius: var(--card-radius-beneficios);
                padding: 20px 30px;
                box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.25);
                transform: translateY(40px);
                transition: opacity 0.6s ease, transform 0.6s ease;
                background: linear-gradient(-180deg, #F487A4, #E33170);
              }

              .benefit-desktop-card.show {
                opacity: 1;
                transform: translateY(0);
              }

              .benefit-desktop-card-header {
                display: flex;
                align-items: flex-start;
                gap: 12px;
                margin-bottom: 16px;
              }

              .benefit-desktop-card-header .benefit-icon {
                width: 32px;
                height: 32px;
                flex-shrink: 0;
              }

              .benefit-desktop-card-header h3 {
                font-size: var(--title-font-size-beneficios);
                font-weight: var(--title-font-weight-beneficios);
                color: var(--title-color-beneficios);
                margin: 0;
              }

              .benefit-desktop-card-header p {
                font-size: var(--subtitle-font-size-beneficios);
                font-weight: var(--subtitle-font-weight-beneficios);
                margin-top: var(--title-subtitle-gap-beneficios);
                color: var(--subtitle-color-beneficios);
              }
            }

    .cta-beneficios-container {
    margin-top: 40px;
    text-align: center;
    padding: 0px 0px 50px 0px;
  }

  .cta-beneficios-button {
    background-color: #3eb04a;
    color: white;
    padding: 16px 32px;
    border: none;
    border-radius: 50px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    animation: pulseCTA 2s infinite;
    transition: background-color 0.3s ease;
    display: inline-block;
  }

  .cta-beneficios-button:hover {
    background-color: #3eb04a;
  }

  @keyframes pulseCTA {
    0% {
      transform: scale(1);
      box-shadow: 0 0 0 0 rgba(227, 49, 112, 0.7);
    }
    70% {
      transform: scale(1.05);
      box-shadow: 0 0 0 10px rgba(227, 49, 112, 0);
    }
    100% {
      transform: scale(1);
      box-shadow: 0 0 0 0 rgba(227, 49, 112, 0);
    }
  }
/* ===== visibilidade ===== */
.dni--mobile {
    display: block;
}

.dni--desktop {
    display: none;
}

@media (min-width:768px) {
    .dni--mobile {
        display: none;
    }

    .dni--desktop {
        display: block;
    }
}

/* ===== base (compartilhado) ===== */
.dni {
    --dni-fg: #222222;
    --dni-gap: 12px;
    --dni-radius: 16px;
    width: 100%;
    color: var(--dni-fg);
    padding: 8px;
    font-family: inherit;
    background-color: white;
}

.dni__grid {
    display: grid;
    gap: var(--dni-gap);
}

.dni__grid--squares {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: start;
}

.dni__grid--chips {
    margin-top: 15px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
}

.dni__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.dni__link--nolink {
    pointer-events: none;
}

.dni__card {
    border-radius: var(--dni-radius);
    transition: transform .15s ease, box-shadow .15s ease;
    display: flex;
    height: 100%;
    will-change: transform;
}

.dni__card--raised {
    box-shadow:  inset 6px 6px 12px rgba(0, 0, 0, .14), inset -6px -6px 12px rgba(0, 0, 0, .14);
}

.dni__card--inset {
    box-shadow: inset 6px 6px 12px rgba(0, 0, 0, .14), inset -6px -6px 12px rgba(0, 0, 0, .14);
}

.dni__card--square {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px;
    text-align: center;
    margin-bottom: 6px;
}

.dni__icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.dni__icon--lg {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: transparent;
    box-shadow: none;
}

.dni__icon--sm {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: transparent;
    box-shadow: none;
    flex: 0 0 28px;
}

.dni__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.dni__txt--center {
    text-align: center;
}

.dni__txt--left {
    text-align: left;
}

.dni__title--square {
    font-weight: 400;
    font-size: 10px;
    line-height: 1.25;
}

.dni__sub--square {
    font-size: 12px;
    line-height: 1.2;
    color: rgba(0, 0, 0, .75);
    margin-top: 2px;
}

.dni__card--chip {
    align-items: center;
    gap: 10px;
    padding: 10px;
}

.dni__title--chip {
    font-weight: 400;
    font-size: 11px;
    line-height: 1.25;
}

.dni__sub--chip {
    font-size: 13px;
    line-height: 1.25;
    color: rgba(0, 0, 0, .75);
    margin-top: 2px;
}

.dni__link:not(.dni__link--nolink) .dni__card--raised:hover {
    transform: translateY(-1px);
}

.dni__link:not(.dni__link--nolink) .dni__card--raised:active {
    transform: translateY(1px);
}

/* ===== Desktop: texto DENTRO do card do topo ===== */
@media (min-width:768px) {

    /* grid e respiro */
    .dni--desktop {
        padding: 12px 40px;
    }

    .dni--desktop .dni__grid--squares-d {
        gap: 12px;
    }

    .dni--desktop .dni__grid--chips-d {
        gap: 16px;
        margin-top: 18px;
    }

    /* coloca o conteúdo DENTRO do card */
    .dni--desktop .dni__card--square {
        margin-bottom: 0;
        text-align: left;
    }

    .dni--desktop .dni__card--square-in {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 10px;
        padding: 12px 14px;
        min-height: 56px;
        /* aparência de “pill” */
    }

    .dni--desktop .dni__icon--lg-d {
        width: 40px;
        height: 40px;
        border-radius: 6px;
    }

    .dni--desktop .dni__txt--inside {
        display: flex;
        flex-direction: column;
    }

    .dni--desktop .dni__title--inside {
        font-size: 13px;
        font-weight: 500;
        line-height: 1.25;
    }

    .dni--desktop .dni__sub--inside {
        font-size: 12px;
        opacity: .8;
        margin-top: 2px;
    }

    /* chips um pouco mais altos */
    .dni--desktop .dni__card--chip-d {
        padding: 14px 16px;
        min-height: 64px;
        justify-content: center;
    }

    .dni--desktop .dni__icon--sm-d {
        width: 42px;
        height: 42px;
        border-radius: 10px;
        flex-basis: 32px;
    }

    .dni--desktop .dni__title--chip-d {
        font-size: 18px;
    }

    .dni--desktop .dni__sub--chip-d {
        font-size: 14px;
    }
}

/* ===== Limite e centralização do bloco ===== */
.dni{
  box-sizing: border-box;
}

/* cada grid (topo e base) ocupa 100% até 1440px e fica centralizado */
.dni > .dni__grid{
  width: 100%;
  max-width: 1440px;   /* limite máximo */
  margin: 0 auto;      /* centraliza */
}

/* garante espaço entre os grids de cima e de baixo */
.dni > .dni__grid--chips {
  margin-top: var(--dni-gap);
}
.benefits-section {
  max-width: 1920px;
  margin: 0 auto;
  background: white;
  padding: 0px 10px;
  display: flex;
  justify-content: center;
}

.benefits-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  align-items: center;
  justify-items: center;
}

.benefit-item {
  display: flex;
  align-items: center;
  gap: 15px;
  text-align: left;
}

.benefit-item img {
  width: 50px;
  height: 50px;
  object-fit: contain;
}

.benefit-text {
  display: flex;
  flex-direction: column;
}

.benefit-text span {
  font-size: 14px;
  color: #000;
  font-weight: 500;
}

.benefit-text strong {
  font-size: 16px;
  font-weight: 700;
  color: #000;
}

/* MOBILE */
@media (max-width: 768px) {
  .benefits-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    justify-items: start; 
  }

  .benefit-item {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    text-align: left; 
    gap: 5px;
  }

  .benefit-item img {
    width: 45px;
    height: 45px;
  }

  .benefit-text span {
    font-size: 11
    px;
  }

  .benefit-text strong {
    font-size: 12px;
  }
}
/* ===== Bordô Friday – Fullscreen Hero (schema mínimo + inversão opcional) =====
   Ajustes rápidos (edite direto no CSS quando quiser):
   - Paddings: .bf-bf { --pad-* }
   - Tipografia base: .bf-bf { --h1-*, --h2-*, --body-* }
   - Gap entre elementos: .bf-bf { --gap-between }
   - Cores do botão (fallback): inline style no <a> (muda direto no HTML ou aqui se preferir)
*/

.bf-bf {
  /* Paddings padrão (mobile) */
  --pad-mt: 16px;
  --pad-mr: 16px;
  --pad-mb: 16px;
  --pad-ml: 16px;

  /* Paddings padrão (desktop) */
  --pad-dt: 40px;
  --pad-dr: 40px;
  --pad-db: 40px;
  --pad-dl: 40px;

  /* Tipografia base (ajuste direto no CSS) */
  --h1-mobile: 35px;
  --h1-desktop: 60px;
  --h2-mobile: 19px;
  --h2-desktop: 24px;
  --body-mobile: 16px;
  --body-desktop: 18px;

  /* Espaçamento entre textos */
  --gap-between: 15px;
}

/* Wrapper principal */
.bf-bf-hero {
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100vh;
  padding: var(--pad-mt) var(--pad-mr) var(--pad-mb) var(--pad-ml);
  background-image: var(--bg-mobile);
}

@media (min-width: 1024px) {
  .bf-bf-hero {
    padding: var(--pad-dt) var(--pad-dr) var(--pad-db) var(--pad-dl);
    background-image: var(--bg-desktop);
  }
}

/* Container interno */
.bf-bf-container {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
  height: 100%;
  max-width: 1600px;
  margin: 0 auto;
}

/* Mobile ≤ 768px */
@media (max-width: 768px) {

  .bf-bf-container {
    height: 100%;
    justify-content: flex-end;
    align-items: stretch;
    gap: 0;
  }
}

  /* Ordem padrão no mobile: imagem em cima, texto no “rodapé” */
  .bf-bf-media {
    order: 1;
    display: flex; justify-content: center; align-items: flex-start;
  }
  .bf-bf-text {
    order: 2; margin-top: auto;
    display: flex; align-items: flex-end; justify-content: center;
    text-align: left; padding-bottom: 12px;
  }
  .bf-bf-text-inner { width: 90%; margin: 0 auto; }

  /* Inverter no mobile (texto em cima, imagem abaixo) quando flag estiver ativa */
  .is-invert-mobile .bf-bf-text  { order: 1; margin-top: 0; align-items: flex-start; padding-bottom: 0; }
  .is-invert-mobile .bf-bf-media { order: 2; }

/* Desktop ≥ 1024px: 50/50 lado a lado */
@media (min-width: 1024px) {
  .bf-bf-container { flex-direction: row; justify-content: space-between; }
  .bf-bf-text, .bf-bf-media { width: 50%; }

  /* Ordem padrão no desktop: texto à esquerda, imagem à direita */
  .bf-bf-text  { order: 1; }
  .bf-bf-media { order: 2; }

  /* Inverter no desktop (imagem à esquerda, texto à direita) quando flag estiver ativa */
  .is-invert-desktop .bf-bf-text  { order: 2; }
  .is-invert-desktop .bf-bf-media { order: 1; }
}

/* Texto à esquerda (sempre) */
.bf-bf-text {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  text-align: left;
}
.bf-bf-text-inner {
  max-width: 600px; width: 100%;
  display: flex; flex-direction: column;
  gap: var(--gap-between);
}

/* Tipografia (ajuste aqui se quiser) */
.bf-bf-text-inner h1 { font-size: var(--h1-mobile); line-height: 1.15; color: white; font-weight: 900}
.bf-bf-text-inner h2 { font-size: var(--h2-mobile); line-height: 1.2; color: white; }
.bf-bf-text-inner div { font-size: var(--body-mobile); line-height: 1.55; color: white; }
@media (min-width: 1024px) {
  .bf-bf-text-inner h1 { font-size: var(--h1-desktop); color: white; font-weight: 900;}
  .bf-bf-text-inner h2 { font-size: var(--h2-desktop); color: white; }
  .bf-bf-text-inner div { font-size: var(--body-desktop); color: white;}
}

/* Imagem */
.bf-bf-media {
  position: relative;
  display: flex; align-items: center; justify-content: center;
  height: 100%;
}
.bf-bf-media img {
  width: auto; max-height: 100vh; height: 100%;
  object-fit: contain; background: transparent; border: none; box-shadow: none;
}

/* Botão circular centralizado (60x60) */
.bf-bf-cta { display: flex; justify-content: center; margin-top: 5px; }
.bf-bf-btn {
  width: 60px; height: 60px; border-radius: 9999px;
  padding: 0; display: inline-flex; align-items: center; justify-content: center;
  line-height: 1; text-align: center; overflow: hidden; text-decoration: none;
}

/* Efeito pulse (mantido) */
.bf-bf-pulse { animation: bf-bf-pulse-zoom 2s ease-in-out infinite; transition: transform .3s; will-change: transform; }
@keyframes bf-bf-pulse-zoom { 0%{transform:scale(1)} 50%{transform:scale(1.05)} 100%{transform:scale(1)} }

/* Remover padding extra em template page, se necessário */
.template-page #MainContent { padding-bottom: 0 !important; }
html {
  scroll-behavior: smooth;
}
      .captacaov2-hero {
        width: 100%;
        height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        padding-left: 20px;
        padding-right: 20px;
        box-sizing: border-box;
        background-size: cover;
        background-position: center;
        margin-top: -40px;
      }

      .captacaov2-container {
        max-width: 700px;
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;

      }

      .captacaov2-center h1{
        font-size: var(--font-size-desktop-h1);
        color: var(--color-h1);
        font-weight: var(--font-weight-h1);
        text-align: center;
        padding-bottom: 30px;
        text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 4px;
      }

      .captacaov2-center {
        flex: 1;
        min-width: 300px;
        display: flex;
        flex-direction: column;
        align-items: center;
      }

      .captacaov2-timer {
        display: flex;
        gap: 10px;
        font-weight: 700;
        font-size: 18px;
        text-align: center;
      }

      .timer-box-captacaov2 {
        background: #000;
        color: #fff;
        padding: 10px 15px;
        border-radius: 12px;
        min-width: 70px;
      }

      .captacaov2-form {
        width: 100%;
        max-width: 360px;
      }

      .captacaov2-form h4 {
        margin-bottom: 15px;
        margin-top: 15px;
        text-align: center;
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
        font-weight: 700;
      }

      .captacaov2-form input {
        width: 100%;
        margin-bottom: 10px;
        padding: 12px 15px;
        border: none;
        border-radius: 30px;
        font-size: 14px;
        font-weight:400;
        box-sizing: border-box;
        background-color: #fff;
        color: #000;
      }

      .captacaov2-button {
        width: 100%;
        padding: 15px;
        font-size: 20px;
        font-weight: 700;
        border: none;
        border-radius: 32px;
        cursor: pointer;
        transition: background 0.3s ease;
        text-align: center;
      }

      .captacaov2-button.pulse {
        animation: pulse 1.6s infinite;
      }

      @keyframes pulse {
        0% { transform: scale(1); }
        50% { transform: scale(1.05); }
        100% { transform: scale(1); }
      }

      .form-status {
        margin-top: 10px;
        font-size: 14px;
        color: green;
        text-align: center;
      }

  .captacaov2-timer-bg {
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      padding: 15px 10px;
      border-radius: 20px;
  }

  .captacaov2-container {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 30px 34px;       /* tamanho da área */
  border-radius: 30px;     /* pill perfeito */
  /* vidro transparente */
  background: rgba(255, 255, 255, 0.08); /* leve névoa */
  backdrop-filter: blur(12px) saturate(150%);
  -webkit-backdrop-filter: blur(12px) saturate(150%);
  /* borda branca suave */
  border: 1px solid rgba(255, 255, 255, 0.4);
  /* sombra externa sutil pra destacar */
  box-shadow:
    0 4px 20px rgba(0,0,0,0.25),
    0 1px 4px rgba(0,0,0,0.15);
  color: #111;
  font-weight: 700;
  overflow: hidden;
}

/* borda interna fina pra dar volume */
.captacaov2-container::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.4),
    inset 0 1px 6px rgba(255, 255, 255, 0.3),
    inset 0 -4px 8px rgba(0, 0, 0, 0.15);
}

      /* Responsivo mobile */
      @media (max-width: 768px) {
        .captacaov2-container {
          flex-direction: column;
          align-items: center;
          padding: 30px 15px;
        }

         .captacaov2-center {
          flex: unset;
          width: 100%;
          text-align: center;
        }

        .captacaov2-center h1 {
          font-size: var(--font-size-mobile-h1);
          text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
          color: white;
        }
        
        .timer-box-captacaov2 {
        padding: 5px 10px;
        font-size: 17px;
    }
        .captacaov2-hero{
          padding: 30px 10px;
          height: 100%;
          
        }

        .captacaov2-button {
          padding: 5px;
          font-size: 22px;
        }

        .captacaov2-timer-bg {
          padding: 10px 10px;
      }
      .faq-image-section{
        padding: 20px 20px;
      }
      .faq-image-section{
        background-position: center ;
    }
  }
.section-header-empilhamento {
              text-align: center;
              margin-bottom: 40px;
            }

            .section-header-empilhamento h2 {
              font-size: var(--section-title-font-size_mobile);
                font-weight: var(--section-title-font-weight-empilhamento);
                color: var(--section-subtitle-color-empilhamento);
              margin: 0;
              margin-bottom: 20px;
            }

            .section-header-empilhamento p {
              font-size: var(--section-subtitle-font-size_mobile);
              font-weight: var(--section-subtitle-font-weight-empilhamento);
              color: var(--section-subtitle-color-empilhamento);
            }
              .card-empilhamento-wrapper {
                padding: 20px;
                max-width: 1200px;
                margin: 0 auto;
              }
              .card-empilhamento-mobile {
                display: block;
              }
              .card-empilhamento-desktop {
                display: none;
              }

              .card-empilhamento-sticky-container {
                position: sticky;
                top: 0;
                z-index: 20;
                display: flex;
                flex-direction: column;
              }

              .benefit-stacked-empilhamento {
                background: #fff;
                box-shadow: 0 4px 10px rgba(0,0,0,0.1);
                border-radius: 8px;
                padding: 8px 16px;
                margin-bottom: 4px;
                font-weight: 700;
                transition: transform 0.3s ease, opacity 0.3s ease;
                opacity: 0;
                transform: translateY(10px);
                background: #FFF;
                Color: #E33170;
              }
              .benefit-stacked-empilhamento.enter {
                opacity: 1;
                transform: translateY(0);
              }

              .benefit-card-empilhamento {
                margin-bottom: 40px;
              }
              .benefit-card-header-empilhamento {
                background: #fff;
                padding: 12px 16px;
                border-radius: var(--card-radius-empilhamento);
                margin-bottom: 16px;
                box-shadow: 0 4px 10px rgba(0,0,0,0.1);
                display: flex;
                align-items: flex-start;
                gap: 12px;
                background: linear-gradient(-180deg, #F487A4, #E33170);
                min-height: 350px;
              }
              .benefit-card-header-empilhamento .benefit-icon-empilhamento {
                width: 32px;
                height: 32px;
                flex-shrink: 0;
              }
              .benefit-card-header-empilhamento h3 {
                margin: 0;
                font-size: var(--title-font-size-empilhamento);
                font-weight: var(--title-font-weight-empilhamento);
                color: var(--title-color-empilhamento);
              }
              .benefit-card-header-empilhamento p {
                margin: var(--title-subtitle-gap-empilhamento) 0 0;
                font-size: var(--subtitle-font-size-empilhamento);
                font-weight: var(--subtitle-font-weight-empilhamento);
                color: var(--subtitle-color-empilhamento);
              }

            .card-empilhamento-illustration {
      margin-top: 5px;
      text-align: center;
    }

    @media (min-width: 1024px) {
      .card-empilhamento-illustration {
        margin-top: 100px;
      }
    }
              .card-empilhamento-illustration-empilhamento img {
                max-width: 100%;
                height: auto;
                border-radius: 12px;
              }

              /* Desktop layout */
              @media (min-width: 1024px) {
                .card-empilhamento-mobile {
                  display: none;
                }
                .card-empilhamento-desktop {
                  display: block;
                }
                .card-empilhamento-desktop-inner {
                  display: flex;
                  flex-direction: row-reverse;
                  gap: 60px;
                  align-items: flex-start;
                }

                .section-header-empilhamento h2 {
              font-size: var(--section-title-font-size_desktop-empilhamento);
                font-weight: var(--section-title-font-weight-empilhamento);
              margin: 0;
              margin-bottom: 20px;
            }

            .section-header-empilhamento p {
              font-size: var(--section-subtitle-font-size_desktop-empilhamento);
              font-weight: var(--section-subtitle-font-weight-empilhamento);
            }

                .sticky-image-empilhamento {
                  position: sticky;
                  top: 100px;
                  flex: 1;
                  text-align: center;
                }

                .sticky-image-empilhamento img {
                  max-width: 100%;
                  height: auto;
                }

                .benefits-cards-left-empilhamento {
                  flex: 1;
                  display: flex;
                  flex-direction: column;
                  gap: 40px;
                }
                .card-empilhamento-bg {
            width: 100%;
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
          }

                .benefit-desktop-card-empilhamento {
                  opacity: 1;
                  border-radius: var(--card-radius-empilhamento);
                  padding: 20px 30px;
                  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.25);
                  transform: none !important;
                  background: linear-gradient(-180deg, #F487A4, #E33170);
                }

                .benefit-desktop-card-empilhamento.show {
                  opacity: 1;
                  transform: translateY(0);
                }

                .benefit-desktop-card-header-empilhamento {
                  display: flex;
                  align-items: flex-start;
                  gap: 12px;
                  margin-bottom: 16px;
                }

                .benefit-desktop-card-header-empilhamento .benefit-icon {
                  width: 32px;
                  height: 32px;
                  flex-shrink: 0;
                }

                .benefit-desktop-card-header-empilhamento h3 {
                  font-size: var(--title-font-size-empilhamento);
                  font-weight: var(--title-font-weight-empilhamento);
                  color: var(--title-color-empilhamento);
                  margin: 0;
                }

                .benefit-desktop-card-header-empilhamento p {
                  font-size: var(--subtitle-font-size-empilhamento);
                  font-weight: var(--subtitle-font-weight-empilhamento);
                  margin-top: var(--title-subtitle-gap-empilhamento);
                  color: var(--subtitle-color-empilhamento);
                }
              }

          .grid-mobile-2col {
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap: 16px;
        }

        @media (min-width: 1024px) {
          .grid-mobile-2col {
            display: block;
          }
        }

          .benefit-card-empilhamento {
          display: flex;
          flex-direction: column;
          justify-content: space-between;
        }

        .carousel-mobile {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        gap: 16px;
        padding-bottom: 12px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none; /* Firefox */
      }
      .carousel-mobile::-webkit-scrollbar {
        display: none;
      }

  .benefit-card-empilhamento.swiper-slide {
    flex: 0 0 100%;
    max-width: 100%;
    scroll-snap-align: center;
    border-radius: 12px;
  }
.custom-benefits-section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    padding: 60px 20px;
  }
  @media(max-width:768px) {
    .custom-benefits-section {
      flex-direction:column-reverse;
    }
  }

  .custom-benefits-left {
    flex: 1;
    max-width: 600px;
  }

  .custom-benefits-left h2 {
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 40px;
  }

  .custom-benefits-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
  }

  .custom-benefit-card {
    background-color: #fdf3e9;
    border-radius: 20px;
    padding: 24px;
    width: calc(50% - 12px);
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .custom-benefit-card img {
    width: 32px;
    height: auto;
  }

  .custom-benefit-card p {
    margin: 0;
    color: #2d1f0f;
    font-size: 16px;
    line-height: 1.4;
  }

  .custom-benefits-image {
    flex: 1;
    max-width: 480px;
  }

  .custom-benefits-image img {
    width: 100%;
    border-radius: 24px;
  }
.custom-benefits-section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    padding: 60px 20px;
  }
  @media(max-width:768px) {
    .custom-benefits-section {
      flex-direction:column-reverse;
    }
  }

  .custom-benefits-left {
    flex: 1;
    max-width: 600px;
  }

  .custom-benefits-left h2 {
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 40px;
  }

  .custom-benefits-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
  }

  .custom-benefit-card {
    background-color: #fdf3e9;
    border-radius: 20px;
    padding: 24px;
    width: calc(50% - 12px);
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .custom-benefit-card img {
    width: 32px;
    height: auto;
  }

  .custom-benefit-card p {
    margin: 0;
    color: #2d1f0f;
    font-size: 16px;
    line-height: 1.4;
  }

  .custom-benefits-image {
    flex: 1;
    max-width: 480px;
  }

  .custom-benefits-image img {
    width: 100%;
    border-radius: 24px;
  }
.como-tomar-wrapper {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 60px 20px;
  }
  .como-tomar-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 40px;
    font-family: 'Montserrat', sans-serif;
  }
  .como-tomar-inner {
    display: flex;
    flex-direction: column-reverse;
    gap: 40px;
  }
  .como-tomar-texts {
    flex: 1;
  }
  .como-tomar-title {
    font-size: 36px;
    font-weight: 900;
    margin-bottom: 20px;
  }
  .como-tomar-block {
    margin-bottom: 30px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 20px;
  }
  .como-tomar-block h3 {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 8px;
  }
  .como-tomar-block p {
    font-size: 15px;
    font-weight: 400;
    margin: 0;
  }
  .como-tomar-image {
    flex: 1;
    max-width: 600px;
  }
  .como-tomar-image img {
    width: 100%;
    border-radius: 20px;
  }
  .como-tomar-title{
  font-size: 24px;
  color: white;
  }

  .como-tomar-block p{
    color: #fff;
  }

  @media (min-width: 1024px) {
    .como-tomar-inner {
      flex-direction: row;
      align-items: center;
    }
      .como-tomar-title{
  font-size: 40px;
  }
  }
.faq-image-section {
      display: flex;
      flex-wrap: wrap;
      gap: 40px;
      padding: 60px 20px;
      align-items: center;
      justify-content:center;
    }

    .faq-image-left {
      flex: 1;
      max-width: 500px;
    }

    .faq-image-left img {
      width: 100%;
      border-radius: 24px;
      height: 100% !important;
    }

    .faq-right {
      flex: 1;
      max-width: 600px;
    }

    .faq-right h2 {
      font-size: 28px;
      font-weight: bold;
      margin-bottom: 10px;
    }

    .faq-right p {
      font-size: 16px;
      margin-bottom: 30px;
    }

    .faq-item {
      border: 1px solid #ccc;
      padding: 16px 10px;
      cursor: pointer;
      background:#fff9
    }

    .faq-question {
      display: flex;
      justify-content: space-between;
      font-weight: bold;
      font-size: 16px;
      color: #7c0000;
    }
    @media(max-width:768px) {
      .faq-image-section {
        flex-direction:column;
      }
    }

   .faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.4s ease;
    padding-top: 0;
    color: #333;
    font-size: 15px;
    line-height: 1.5;
  }


    .faq-item.active .faq-answer {
      display: block;
    }
  .faq-item.active .faq-answer {
    max-height: 300px; /* valor grande o suficiente */
    padding-top: 10px;
  }
    .faq-item.active .faq-toggle::after {
      content: "−";
    }

    .faq-toggle::after {
      content: "+";
      margin-left: 10px;
      font-weight: bold;
    }
.learning-section-wrapper {
    background-size: cover;
    background-repeat: no-repeat;
    font-family: 'Montserrat', sans-serif;
    width: 100%;
  }

  .learning-section-title {
    text-align: center;
    font-weight: 900;
    font-size: 3.6rem;
    padding: 60px 40px 20px;
  }

  .learning-section-subtitle {
    text-align: center;
    font-size: 1.2rem;
    font-weight: 400;
    margin-bottom: 30px;
    padding: 0 40px;
  }

  .learning-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    width: 100%;
    margin-bottom: 0;
  }

  .learning-block img {
    max-width: 100%;
    width: 100%;
    max-width: 400px;
    border-radius: 8px;
  }

  .learning-text {
    max-width: 600px;
    text-align: left;
    padding: 0 20px;
  }

  .learning-text h3 {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 12px;
  }

  .learning-text p {
    font-size: 1rem;
    line-height: 1.6;
    padding: 20px;
  }

  @media(min-width: 768px) {
    .learning-block {
      flex-direction: row;
      justify-content: center;
      align-items: center;
    }

    .learning-block.reverse {
      flex-direction: row-reverse;
    }
  }

  @media(max-width: 767px) {
    .learning-section-title {
      font-size: 2rem;
    }

    .learning-text {
      text-align: center;
      padding: 0;
    }
  }
.custom-progress-section-wrapper {
    background-position: center;
    background-repeat: no-repeat;
    padding: 60px 20px;
    background-color: #0f0f11;
    background-size: cover;
  }

  .custom-progress-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 40px;
  }

  @media(min-width: 768px) {
    .custom-progress-container {
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
    }
  }

  .progress-text-content {
    flex: 1;
  }

  .main-title {
    font-weight: 900;
    font-size: 2rem;
    margin-bottom: 10px;
  }

  .progress-bars {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .progress-label {
    font-size: 1rem;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 8px;
    gap: 8px;
  }

  .progress-subtext {
    font-weight: normal;
    font-size: 0.9rem;
    margin: 4px 0 0;
  }

  .percent-number {
    white-space: nowrap;
  }

  .progress-bar-wrapper {
    position: relative;
    background-color: #2a2a2a;
    border-radius: 50px;
    height: 26px;
    overflow: hidden;
  }

  .progress-bar {
    height: 100%;
    width: 0%;
    border-radius: 50px;
    transition: width 1.4s ease;
    position: absolute;
    top: 0;
    left: 0;
  }

  @media (max-width: 768px) {
    .main-title {
      font-size: 2.1rem;
    }

    p.description {
      font-size: 1.4rem;
    }
  }
.custom-cards-section-wrapper {

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .custom-cards-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 40px;
    display: flex;
    justify-content: center;
    flex-direction:column;
    align-items:center;
    margin-top:-40px;
    position:relative;
    z-index:10;

  }

  .custom-cards-header h2 {
    font-size: 2rem;
    margin-bottom: 10px;
    color: #1d1d1d;
  }

  .custom-cards-header p {
    font-size: 3rem;
    color: #82152E;
    line-height:1;
    font-weight:bold;
    margin-top:20px;
  }

  .custom-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
    max-width:1200px;
    margin:0 auto;
  }

  .custom-card {
    background: white;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    text-align: center;
    display: flex;
    flex-direction: column;
  }

  .custom-card img {
    max-width: 100%;
    border-radius: 12px;
    margin-bottom: 15px;
  }

  .custom-card h3 {
    font-size: 2rem;
    margin: 10px 0 10px;
    font-weight: 700;
    color: #3b2e2a;
    line-height:1;

  }

  .custom-card p {
    font-size: 1rem;
    color: #4e4e4e;
    line-height: 1.5;
  }

    @media (min-width: 768px) {
    .custom-cards-grid {
      grid-template-columns: repeat(3, 1fr); /* Desktop: 3 por linha */
    }
      .custom-card {
  box-shadow: 10px 10px 46px 0px rgba(0,0,0,0.17);
  -webkit-box-shadow: 10px 10px 46px 0px rgba(0,0,0,0.17);
  -moz-box-shadow: 10px 10px 46px 0px rgba(0,0,0,0.17);
      }
      .custom-card.card-2 {
        margin-top:50px;
      }
  .custom-card.card-4, .custom-card.card-6 {
    margin-top:-45px;
  }
      .custom-card.card-5 {
        margin-top:10px;
      }
      .custom-card {
        height:720px;
        transition:300ms;
      }
      .custom-card:hover {
        transform:scale(1.03)
      }
  }
.custom-cards-section-wrapper {

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .custom-cards-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 40px;
    display: flex;
    justify-content: center;
    flex-direction:column;
    align-items:center;
    margin-top:-40px;
    position:relative;
    z-index:10;

  }

  .custom-cards-header h2 {
    font-size: 2rem;
    margin-bottom: 10px;
    color: #1d1d1d;
  }

  .custom-cards-header p {
    font-size: 3rem;
    color: #82152E;
    line-height:1;
    font-weight:bold;
    margin-top:20px;
  }

  .custom-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
    max-width:1200px;
    margin:0 auto;
  }

  .custom-card {
    background: white;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    text-align: center;
    display: flex;
    flex-direction: column;
  }

  .custom-card img {
    max-width: 100%;
    border-radius: 12px;
    margin-bottom: 15px;
  }

  .custom-card h3 {
    font-size: 2rem;
    margin: 10px 0 10px;
    font-weight: 700;
    color: #3b2e2a;
    line-height:1;

  }

  .custom-card p {
    font-size: 1rem;
    color: #4e4e4e;
    line-height: 1.5;
  }

    @media (min-width: 768px) {
    .custom-cards-grid {
      grid-template-columns: repeat(3, 1fr); /* Desktop: 3 por linha */
    }
      .custom-card {
  box-shadow: 10px 10px 46px 0px rgba(0,0,0,0.17);
  -webkit-box-shadow: 10px 10px 46px 0px rgba(0,0,0,0.17);
  -moz-box-shadow: 10px 10px 46px 0px rgba(0,0,0,0.17);
      }
      .custom-card.card-2 {
        margin-top:50px;
      }
  .custom-card.card-4, .custom-card.card-6 {
    margin-top:-45px;
  }
      .custom-card.card-5 {
        margin-top:10px;
      }
      .custom-card {
        height:720px;
        transition:300ms;
      }
      .custom-card:hover {
        transform:scale(1.03)
      }
  }
*, *::before, *::after {
    box-sizing: border-box;
  }

  .results-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    overflow-x: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #fff;
  }

  .results-container {
    display: flex;
    max-width: 1400px;
    width: 100%;
    gap: 40px;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding: 60px 100px;
  }

  .results-video iframe {
    width: 480px;
    aspect-ratio: 9 / 16;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
    border: none;
    max-width: 100%;
  }

  .results-content {
    flex: 1;
    min-width: 300px;
  }

  .results-title {
    font-size: 2.4rem;
    font-weight: 800;
    margin-bottom: 12px;
  }

  .results-subtitle {
    font-size: 1.14rem;
    font-weight: 400;
    margin-bottom: 32px;
  }

  .results-topics {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .results-topic {
    display: flex;
    align-items: center;
    gap: 16px;
    background-color: var(--topic-bg, #1a1a1a);
    color: var(--topic-color, #fff);
    border-radius: 12px;
    padding: 15px 20px;
    min-height: 88px;
  }

  .results-topic img {
    width: 40px;
    height: 55px;
  }

  .results-topic-content h4 {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 700;
  }

  .results-topic-content p {
    margin: 4px 0 0;
    font-size: 0.95rem;
  }

  @media (max-width: 768px) {
    .results-container {
      flex-direction: column-reverse;
      text-align: center;
      padding: 50px 16px;
    }

    .results-topic {
      flex-direction: column;
      align-items: center;
      text-align: center;
    }

    .results-content {
      width: 100%;
      max-width: 90%;
    }

    .results-video iframe {
      width: 90vw;
    }
  }
/* Bloco Pack Offer Pro com personalizações completas */
.pack-offer-pro-wrapper {
  background-size: cover;
  background-position: center;
  padding: 40px 20px;
  text-align: center;
}

.pack-offer-pro-header h2 {
  font-size: var(--section-title-font-size, 28px);
  font-weight: var(--section-title-font-weight, 700);
  color: var(--section-title-color, #000);
  margin-bottom: 10px;
}

.pack-offer-pro-header p {
  font-size: var(--section-subtitle-font-size, 18px);
  font-weight: var(--section-subtitle-font-weight, 400);
  color: var(--section-subtitle-color, #555);
  margin-bottom: 30px;
}

.pack-offer-pro {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.pack-card-pro {
  background-color: var(--card-bg, #fff);
  border-radius: var(--card-radius, 20px);
  padding: 20px;
  width: 100%;
  max-width: 360px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  text-align: center;
  margin-bottom: var(--block-margin-bottom, 20px);
}

.pack-card-pro img.pack-image {
  margin: var(--image-margin-top, 0px) auto 0 auto;
  display: block;
  margin-top: -30px;
}

.pack-card-pro img.pack-image-2 {
  width: 300px !important;
  max-width: 100%;
  margin: var(--image-margin-top, 0px) auto 0 auto;
  display: block;
}

.pack-title-pro {
  font-size: 20px;
  font-weight: 700;
  color: #222;
  margin-bottom: 10px;
}

.pack-price-from-pro {
  font-size: 16px;
  font-weight: 400;
  color: #999;
  margin-top: 30px;
}

.pack-price-to-pro {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  margin: 5px 0;
}

.pack-installments-pro {
  font-size: 16px;
  font-weight: 400;
  color: #555;
  margin-bottom: 15px;
}

.pack-button-pro {
  background-color: #2e7d32;
  color: #fff;
  padding: 14px;
  border-radius: 30px;
  font-size: 16px;
  font-weight: 700;
  display: inline-block;
  text-decoration: none;
  animation: beat 2s infinite;
}

@keyframes beat {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); }
  100% { transform: scale(1); }
}

@media (max-width: 767px) {
  .pack-card-pro { max-width: 100%; }
  .pack-offer-pro-header p { font-size: 18px; }
  .pack-offer-pro-header h2 { font-size: 32px; }
  .why-choose-header h2 { font-size: 32px; }
}

.pack-extra-text,
.pack-extra-text-v2 {
  margin: 8px 0;
  line-height: 1.4;
}

/* === OVERRIDE DE LAYOUT: 4 colunas desktop / 2x2 mobile === */
.pack-offer-pro {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  justify-items: stretch;
}
.pack-card-pro {
  max-width: none;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
@media (max-width: 767px) {
  .pack-offer-pro { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .pack-card-pro { max-width: unset; width: 100%; }
}
.faq-centralizado-wrapper {
      padding: 60px 20px;
      max-width: 1200px;
      margin: 0 auto;
      text-align: center;
    }

    .faq-centralizado-wrapper h2 {
      font-size: var(--faq-titulo-desktop);
      font-weight: 900;
      color: var(--faq-cor-titulo);
      margin-bottom: 10px;
    }

    .faq-centralizado-wrapper p {
      font-size: var(--faq-subtitulo-desktop);
      color: var(--faq-cor-subtitulo);
      margin-bottom: 40px;
    }

    .faq-centralizado-item {
      border: 1px solid #fff;
      padding: 16px;
      cursor: pointer;
      text-align: left;
    }

    .faq-centralizado-pergunta {
      display: flex;
      justify-content: space-between;
      font-weight: 600;
      font-size: 16px;
      color: var(--faq-cor-pergunta);
    }

    .faq-centralizado-resposta {
      max-height: 0;
      overflow: hidden;
      padding-top: 0;
      transition: all 0.4s ease;
      font-size: 15px;
      color: var(--faq-cor-pergunta);
      line-height: 1.5;
    }

    .faq-centralizado-item.active .faq-toggle::after {
      content: "−";
      color: var(--faq-cor-toggle);
    }

    .faq-toggle::after {
      content: "+";
      margin-left: 10px;
      font-weight: bold;
      color: var(--faq-cor-toggle);
    }

    .faq-centralizado-bg {
    width: 100%;
  }

    @media (max-width: 768px) {
      .faq-centralizado-wrapper h2 {
        font-size: var(--faq-titulo-mobile);
      }

      .faq-centralizado-wrapper p {
        font-size: var(--faq-subtitulo-mobile);
      }
    }
.faq-image-section {
      display: flex;
      flex-wrap: wrap;
      gap: 40px;
      padding: 60px 20px;
      align-items: center;
      justify-content: center;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
    }

    .faq-image-left {
      flex: 1;
      max-width: 500px;
    }

    .faq-image-left img {
      width: 100%;
      border-radius: 24px;
      height: 700px;
    }

    .faq-right {
      flex: 1;
      max-width: 600px;
    }

    .faq-right h2 {
      font-size: 28px;
      font-weight: bold;
      margin-bottom: 10px;
    }

    .faq-right p {
      font-size: 16px;
      margin-bottom: 30px;
    }

    .faq-item {
      border: 1px solid #ccc;
      padding: 16px 10px;
      cursor: pointer;
      background: #fff9;
    }

    .faq-question {
      display: flex;
      justify-content: space-between;
      font-weight: bold;
      font-size: 16px;
      color: #7c0000;
    }

    @media(max-width: 768px) {
      .faq-image-section {
        flex-direction: column;
      }
    }

    .faq-image-left img {
    height: 400px;
    object-fit: cover;
  }

    .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.4s ease, padding 0.4s ease;
      padding-top: 0;
      color: #333;
      font-size: 15px;
      line-height: 1.5;
    }

    .faq-item.active .faq-answer {
      max-height: 300px;
      padding-top: 10px;
    }

    .faq-item.active .faq-toggle::after {
      content: "−";
    }

    .faq-toggle::after {
      content: "+";
      margin-left: 10px;
      font-weight: bold;
    }
/* ===== Base ===== */
.interactive-panels-section {
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    position: relative;
}

.interactive-panels-section .panels-wrapper {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 500px;
    min-height: 300px;
    max-height: 600px;
    position: relative;
}

/* ===== Panel: troca de bg por breakpoint usando vars ===== */
.interactive-panels-section .panel {
    flex: 1 1 0;
    position: relative;
    overflow: hidden;

    /* desktop por padrão */
    background-image: var(--panel-bg-desktop);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    transition: flex-grow .5s ease, opacity .3s ease;
}

@media (max-width: 767px) {
    .interactive-panels-section .panel {
        /* mobile override (se não houver, cai no desktop mesmo) */
        background-image: var(--panel-bg-mobile, var(--panel-bg-desktop));
    }
}

/* resto do seu CSS permanece igual */
.interactive-panels-section .panel.active {
    flex-grow: 3;
}

.interactive-panels-section .panel-inner {
    position: relative;
    width: 100%;
    height: 100%;
}

.interactive-panels-section .collapsed-state,
.interactive-panels-section .expanded-state {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.5s ease;
}

.interactive-panels-section .collapsed-state {
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0 32px;
    box-sizing: border-box;
}

.interactive-panels-section .collapsed-image-wrapper {
    flex: 0 0 auto;
    margin-right: 16px;
    display: flex;
    align-items: center;
}

.interactive-panels-section .collapsed-image {
    width: 230px;
    height: auto;
    display: block;
}

.interactive-panels-section .collapsed-overlay {
    flex: 1 1 auto;
    pointer-events: none;
}

/* Título colapsado com cor vinda da var */
.interactive-panels-section .collapsed-heading {
    margin: 0;
    padding: 0;
    font-size: clamp(32px, 5vw, 64px);
    font-weight: 900;
    color: var(--collapsed-heading-color, rgba(255, 255, 255, 0.15));
    text-transform: uppercase;
    white-space: nowrap;
}

.interactive-panels-section .expanded-state {
    opacity: 0;
    z-index: 2;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 32px;
    box-sizing: border-box;
}

.interactive-panels-section .collapsed-image {
    transform: scale(0.5);
    transition: transform .4s ease;
}

.interactive-panels-section .panels-wrapper.has-active-panel .panel:not(.active) .collapsed-image {
    transform: scale(0.3);
}

.interactive-panels-section .panel.active .expanded-state {
    opacity: 1;
}

.interactive-panels-section .panel.active .collapsed-state {
    opacity: 0;
}

.interactive-panels-section .expanded-content {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
}

.interactive-panels-section .expanded-image-wrapper {
    flex: 0 0 40%;
    max-width: 40%;
    text-align: center;
}

.interactive-panels-section .expanded-image {
    width: 200px;
    height: auto;
    display: block;
    margin: 0 auto;
}

.interactive-panels-section .expanded-text {
    flex: 1;
    padding-left: 32px;
    text-align: left;
    color: #fff;
}

.interactive-panels-section .expanded-heading {
    margin: 0 0 8px;
    font-size: 35px;
    font-weight: 900;
    text-transform: uppercase;
    color: #fff;
}

.interactive-panels-section .expanded-subtitle {
    margin: 0 0 8px;
    font-size: 19px;
    font-weight: 600;
    color: #fff;
}

.interactive-panels-section .expanded-description {
    margin: 0 0 16px;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 400;
    color: #fff;
    max-width: 500px;
}

.interactive-panels-section .expanded-button {
    display: inline-block;
    padding: 10px 40px;
    color: #fff;
    border-radius: 999px;
    font-weight: 700;
    text-decoration: none;
    transition: background-color .3s ease;
    backdrop-filter: blur(10px);
    background-color: rgba(255, 255, 255, 0.1);
    font-size: 14px;
    box-shadow:
        inset 2px 2px 8px rgba(0, 0, 0, 0.2),
        inset -2px -2px 8px rgba(255, 255, 255, 0.4);
}

.interactive-panels-section .expanded-button:hover {
    background-color: rgba(255, 255, 255, 0.3);
}

/* Tablet */
@media (max-width: 991px) {
    .interactive-panels-section .collapsed-heading {
        font-size: 12vw !important;
    }

    .interactive-panels-section .expanded-heading {
        font-size: 24px !important;
    }

    .interactive-panels-section .expanded-button {
        font-size: 14px !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .interactive-panels-section .panels-wrapper {
        flex-direction: row;
        height: 600px;
        min-height: 600px;
    }

    .interactive-panels-section .panel {
        flex-grow: 1;
    }

    .interactive-panels-section .panel.active {
        flex-grow: 3;
    }

    .interactive-panels-section .collapsed-image {
        transform: scale(0.9);
    }

    .interactive-panels-section .panels-wrapper.has-active-panel .panel:not(.active) .collapsed-image {
        transform: scale(0.6);
    }

    .interactive-panels-section .panel.active .collapsed-image {
        width: 90%;
        max-width: none;
        margin: 0 auto;
        padding: 0;
        display: block;
    }

    .interactive-panels-section .collapsed-overlay {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) rotate(-90deg);
        transform-origin: center;
        width: 100%;
        text-align: center;
    }

    .interactive-panels-section .collapsed-state {
        padding: 0;
    }

    .interactive-panels-section .collapsed-image-wrapper {
        position: absolute;
        bottom: 5%;
        left: 50%;
        transform: translateX(-50%);
        margin: 0;
    }

    .interactive-panels-section .panel:not(.active) .collapsed-image {
        width: 120px !important;
        height: auto !important;
        max-width: 250px;
    }

    .interactive-panels-section .expanded-state {
        flex-direction: column;
        align-items: flex-start;
        padding: 12px;
    }

    .interactive-panels-section .panel .expanded-text,
    .interactive-panels-section .panel .expanded-image-wrapper,
    .interactive-panels-section .panel .expanded-button {
        opacity: 0;
        transform: translateY(20px);
        transition: opacity .5s ease, transform .5s ease;
    }

    .interactive-panels-section .panel.active .expanded-text,
    .interactive-panels-section .panel.active .expanded-image-wrapper,
    .interactive-panels-section .panel.active .expanded-button {
        opacity: 1;
        transform: translateY(0);
    }

    .interactive-panels-section .expanded-content {
        flex-direction: column-reverse;
    }

    .interactive-panels-section .expanded-image-wrapper {
        width: auto;
        max-width: 100%;
        text-align: center;
    }

    .interactive-panels-section .expanded-image-wrapper,
    .interactive-panels-section .expanded-text {
        flex: none;
        width: 100%;
        max-width: none;
    }

    .interactive-panels-section .expanded-image {
        width: 100%;
        max-width: 500px;
        margin: 24px auto 0;
    }

    .interactive-panels-section .expanded-text {
        padding-left: 0;
    }

    .interactive-panels-section .expanded-heading {
        font-size: 26px;
    }

    .interactive-panels-section .expanded-subtitle {
        font-size: 16px;
    }

    .interactive-panels-section .expanded-description {
        font-size: 13px !important;
    }

    .interactive-panels-section .expanded-button {
        font-size: 14px;
        padding: 5px 8px;
    }
}

.collapsed-heading .marca-r,
.expanded-heading .marca-r {
    font-size: 35px;
    vertical-align: super;
    line-height: 1;
}
/* ---------- base ---------- */
.ab4d{
  width:100%;
  max-width:1440px;     /* limita a largura total da seção */
  margin:0 auto;        /* centraliza */
  padding:10px;         /* já existia: mantém os respiros */
  box-sizing:border-box;
}

    /* mobile padding 10px */
    .ab4d__title {
        margin: 0 0 10px;
        font-weight: 400;
        font-size: 22px;
        line-height: 1.2;
        color: #7F1429;
    }

    .ab4d__link {
        display: block;
        text-decoration: none;
        color: inherit;
    }

    .ab4d__link--nolink {
        pointer-events: none;
    }

    .ab4d__card {
        position: relative;
        display: block;
        overflow: hidden;
        background: #eaeaea;
        border-radius: 15px;
        /* mobile radius 15px */
        box-shadow: 6px 6px 12px rgba(0, 0, 0, .14), -6px -6px 12px #fff;
    }

    .ab4d__img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .ab4d__card:hover .ab4d__img {
        transform: scale(1.02);
        transition: transform .25s ease;
    }

    .ab4d__card:active .ab4d__img {
        transform: scale(1.00);
    }

    /* ---------- MOBILE 2x2 ---------- */
    .ab4d__grid--m {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .ab4d__card--m {
        aspect-ratio: 180/350;
    }

    /* ---------- DESKTOP GRID (1×3 e 1×2) ---------- */
    @media (min-width:1025px) {
        .ab4d {
            padding: 20px 0px;
        }

        /* desktop padding 20px */
        .ab4d__card {
            border-radius: 30px;
        }

        /* desktop radius 30px */
        .ab4d__grid--m {
            display: none;
        }

        .ab4d__grid--d {
            display: grid;
            /* duas colunas largas + uma mais larga para o banner alto (~ +40px) */
            grid-template-columns: 2fr 2fr 1.2fr;
            grid-template-rows: auto auto;
            gap: 15px;
        }

        /* 1º bloco: grande no topo, ocupa 2 colunas */
        .ab4d__grid--d>.ab4d__link:nth-child(1),
        .ab4d__grid--d>.ab4d__link:nth-child(1)>.ab4d__card--d {
            grid-column: 1 / span 2;
            grid-row: 1;
            aspect-ratio: 32/10;
        }

        /* 2º bloco: alto à direita, ocupa 2 linhas */
        .ab4d__grid--d>.ab4d__link:nth-child(2),
        .ab4d__grid--d>.ab4d__link:nth-child(2)>.ab4d__card--d {
            grid-column: 3;
            grid-row: 1 / span 2;
            height: 100%;
        }

        .ab4d__grid--d>.ab4d__link:nth-child(2) .ab4d__img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        /* 3º e 4º blocos: parte de baixo, 1 coluna cada */
        .ab4d__grid--d>.ab4d__link:nth-child(3),
        .ab4d__grid--d>.ab4d__link:nth-child(3)>.ab4d__card--d {
            grid-column: 1;
            grid-row: 2;
            aspect-ratio: 16/8;
        }

        .ab4d__grid--d>.ab4d__link:nth-child(4),
        .ab4d__grid--d>.ab4d__link:nth-child(4)>.ab4d__card--d {
            grid-column: 2;
            grid-row: 2;
            aspect-ratio: 16/8;
        }
    }
/* ---------- base ---------- */
.db4d{
  width:100%;
  max-width:1440px;     /* limita a largura total da seção */
  margin:0 auto;        /* centraliza */
  padding:10px;         /* já existia: mantém os respiros */
  box-sizing:border-box;
}

    /* mobile padding 10px */
    .db4d__title {
        margin: 0 0 10px;
        font-weight: 400;
        font-size: 22px;
        line-height: 1.2;
        color: #7F1429;
    }

    .db4d__link {
        display: block;
        text-decoration: none;
        color: inherit;
    }

    .db4d__link--nolink {
        pointer-events: none;
    }

    .db4d__card {
        position: relative;
        display: block;
        overflow: hidden;
        background: #eaeaea;
        border-radius: 15px;
        /* mobile radius 15px */
        box-shadow: 6px 6px 12px rgba(0, 0, 0, .14), -6px -6px 12px #fff;
    }

    .db4d__img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .db4d__card:hover .db4d__img {
        transform: scale(1.02);
        transition: transform .25s ease;
    }

    .db4d__card:active .db4d__img {
        transform: scale(1.00);
    }

    /* ---------- MOBILE 2x2 ---------- */
    .db4d__grid--m {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .db4d__card--m {
        aspect-ratio: 180/350;
    }

    /* ---------- DESKTOP GRID (1×3 e 1×2) ---------- */
    @media (min-width:1025px) {
        .db4d {
            padding: 20px 0px;
        }

        /* desktop padding 20px */
        .db4d__card {
            border-radius: 30px;
        }

        /* desktop radius 30px */
        .db4d__grid--m {
            display: none;
        }

        .db4d__grid--d {
            display: grid;
            /* duas colunas largas + uma mais larga para o banner alto (~ +40px) */
            grid-template-columns: 2fr 2fr 1.2fr;
            grid-template-rows: auto auto;
            gap: 15px;
        }

        /* 1º bloco: grande no topo, ocupa 2 colunas */
        .db4d__grid--d>.db4d__link:nth-child(1),
        .db4d__grid--d>.db4d__link:nth-child(1)>.db4d__card--d {
            grid-column: 1 / span 2;
            grid-row: 1;
            aspect-ratio: 32/10;
        }

        /* 2º bloco: alto à direita, ocupa 2 linhas */
        .db4d__grid--d>.db4d__link:nth-child(2),
        .db4d__grid--d>.db4d__link:nth-child(2)>.db4d__card--d {
            grid-column: 3;
            grid-row: 1 / span 2;
            height: 100%;
        }

        .db4d__grid--d>.db4d__link:nth-child(2) .db4d__img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        /* 3º e 4º blocos: parte de baixo, 1 coluna cada */
        .db4d__grid--d>.db4d__link:nth-child(3),
        .db4d__grid--d>.db4d__link:nth-child(3)>.db4d__card--d {
            grid-column: 1;
            grid-row: 2;
            aspect-ratio: 16/8;
        }

        .db4d__grid--d>.db4d__link:nth-child(4),
        .db4d__grid--d>.db4d__link:nth-child(4)>.db4d__card--d {
            grid-column: 2;
            grid-row: 2;
            aspect-ratio: 16/8;
        }
    }
.appmh-bar{
    position: sticky; top:0; left:0; right:0;
    height: var(--mh-h);
    background: var(--mh-bg);
    color: var(--mh-fg);
    border-bottom: 1px solid var(--mh-border);
    display: grid;
    grid-template-columns: 40px 1fr auto;
    align-items: center;
    padding: 0 10px;
    z-index: 9999;
    font-family: var(--mh-font);
    margin-top: -56px;
  }

  /* Centralização absoluta do brand */
  .appmh-brand{
    position: absolute; left: 50%; top: 50%;
    transform: translate(-50%, -50%);
    display:inline-flex; align-items:center; justify-content:center;
    text-decoration:none;
  }
  .appmh-brand-img{ height: 30px !important; width:auto !important; display:block !important; }

.appmh-btn{
  all: unset;
  display:inline-flex; align-items:center; justify-content:center;
  width: 36px; height: 36px;            /* caixa consistente */
  padding: 0; cursor:pointer;
  border-radius: 8px;                    /* leve arredondamento */
  line-height: 0;                        /* evita “puxar” altura */
}
.appmh-btn--icon{ background: transparent; }

.appmh-ic{
  width: 30px !important; height: 30px !important;
  fill: currentColor !important; display:block !important;
}

.appmh-actions{
  display:inline-flex; align-items:center; justify-self:end;
}

  /* Drawer */
  .appmh-overlay{ position:fixed; inset:0; background:rgba(0,0,0,.45); opacity:0; pointer-events:none; transition:opacity .2s ease; z-index:9998; }
  .appmh-drawer{ position:fixed; top:0; bottom:0; left:0; width:min(84vw,340px); background:#fff; transform:translateX(-100%); transition:transform .25s ease; display:flex; flex-direction:column; z-index:9999; box-shadow:0 10px 24px rgba(0,0,0,.24); }
  .appmh-drawer-head{ display:flex; align-items:center; justify-content:space-between; padding:14px 12px; border-bottom:1px solid #eee; }
  .appmh-drawer-title{ font-weight:700; }
  .appmh-nav{ padding:8px; display:flex; flex-direction:column; gap:4px; }
  .appmh-link{ padding:12px; border-radius:8px; color:#111; text-decoration:none; font-weight:600; }
  .appmh-link:active{ background:#f5f5f5; }
  .appmh-empty{ padding:12px; color:#666; font-size:14px; }

  .appmh--open .appmh-overlay{ opacity:1; pointer-events:auto; }
  .appmh--open .appmh-drawer{ transform:translateX(0); }
.landing-fullscreen-section-colageno {
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-top: var(--padding-hero-mobile-top);
    padding-right: var(--padding-hero-mobile-right);
    padding-bottom: var(--padding-hero-mobile-bottom);
    padding-left: var(--padding-hero-mobile-left);
    /* usa mobile por padrão */
    background-image: var(--bg-mobile);
  }

  @media (min-width: 1024px) {
    .landing-fullscreen-section-colageno {
      padding-top: var(--padding-hero-desktop-top);
      padding-right: var(--padding-hero-desktop-right);
      padding-bottom: var(--padding-hero-desktop-bottom);
      padding-left: var(--padding-hero-desktop-left);
      /* troca para desktop no >=1024px */
      background-image: var(--bg-desktop);
    }
  }

  .landing-container-colageno {
    display: flex;
    flex-direction: column;
    gap: 40px;
    width: 100%;
    height: 100%;
    max-width: 1600px;
    margin: 0 auto;
  }

  .landing-fullscreen-section-colageno {
    height: 80vh;
}

  @media (max-width: 768px) {
    .landing-image-colageno img{
      height: 400px !important;
    }
      .landing-fullscreen-section-colageno {
    height: 80vh !important;
    padding-bottom: 70px;
      }

    /* ===== Ajustes solicitados ===== */
.landing-container-colageno {
  height: 100%;
  justify-content: flex-end;
  align-items: stretch;
  gap: 0;
}

/* imagem sempre acima */
.landing-image-colageno {
  order: 1;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

/* texto sempre no rodapé */
.landing-text-colageno {
  order: 2;
  margin-top: auto;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
  padding-bottom: 12px;
}

.landing-text-inner-colageno {
  width: 90%;
  margin: 0 auto;
}
}

  @media (min-width: 1024px) {
    .landing-container-colageno {
      flex-direction: row;
      justify-content: space-between;
    }
    .landing-text-colageno,
    .landing-image-colageno {
      width: 50%;
    }
  }

  .landing-text-colageno {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: left;
  }

  .landing-text-inner-colageno {
    max-width: 600px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--gap-entre-elementos);
  }

  .template-page #MainContent {
    padding-bottom: 0px !important;
  }

  .landing-image-colageno {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
  }

  .landing-image-colageno img {
    width: auto;
    max-height: 100vh;
    height: 100%;
    object-fit: contain;
    background: transparent;
    border: none;
    box-shadow: none;
  }

  /* Pulse Zoom Effect */
  .pulse-effect {
    animation: pulse-zoom 2s ease-in-out infinite;
    transition: transform 0.3s ease;
    display: inline-block;
    will-change: transform;
  }
  @keyframes pulse-zoom {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.05); }
    100% { transform: scale(1); }
  }

  /* Fontes dinâmicas com variáveis */
  .landing-text-inner-colageno h1 { font-size: var(--titulo-font-size-mobile); }
  .landing-text-inner-colageno h2 { font-size: var(--subtitulo-font-size-mobile); }
  .landing-text-inner-colageno div { font-size: var(--texto-font-size-mobile); }
  .landing-text-inner-colageno a { font-size: var(--botao-font-size-mobile); }

  @media (min-width: 1024px) {
    .landing-text-inner-colageno h1 { font-size: var(--titulo-font-size-desktop); }
    .landing-text-inner-colageno h2 { font-size: var(--subtitulo-font-size-desktop); }
    .landing-text-inner-colageno div { font-size: var(--texto-font-size-desktop); }
    .landing-text-inner-colageno a { font-size: var(--botao-font-size-desktop); }
  }
.hero-responsive-section-wrapper {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    background-color: #000;
    min-height: 100vh;
  }

  .hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }

  .hero-background img {
    width: 100% !important;
    height: 100vh !important;
    object-fit: cover !important;
  }

  .hero-overlay {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 60px 20px 20px;
    box-sizing: border-box;
  }

  .hero-content {
    width: 100%;
  }

  .hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 20px;
  }

  .hero-buttons a {
    padding: 12px 24px;
    background-color: #28a745;
    border: 1px solid #01E59C;
    color: white;
    text-decoration: none;
    border-radius: 30px;
    font-size: 1rem;
    white-space: nowrap;
    display: inline-block;
  }

  .carousel-wrapper {
    width: 100%;
    margin-top: 20px;
    overflow: hidden;
  }

  .hero-carousel {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    transition: transform 0.6s ease-in-out;
    padding-right: 600px;
  }

  .carousel-slide {
    flex: 0 0 auto;
    width: 220px;
    opacity: 0.4;
    transform: scale(0.8);
    filter: blur(4px);
    transition: all 0.6s ease-in-out;
  }

  .carousel-slide:nth-child(2) {
    width: 320px;
    opacity: 1;
    transform: scale(1);
    filter: none;
    z-index: 2;
  }

  .carousel-slide img {
    width: 350px;
    display: block;
    border-radius: 16px;
    height: 170px;
  }

  @media (max-width: 768px) {
    .hero-responsive-section-wrapper {
      min-height: 100vh;
    }

    .hero-overlay {
      padding: 20px 16px 0;
      align-items: center;
      text-align: center;
      margin-top: 200px !important;
    }
    .hero-content {
      margin-top: -100px;
    }
    .hero-content h1 {
      font-size: 1rem;
    }
    .hero-content p {
      font-size: 1rem;
    }
    .hero-buttons {
      justify-content: center;
    }
    .carousel-wrapper {
      margin-top: 16px;
    }
    .hero-carousel {
      padding-right: 0;
      gap: 8px;
    }
    .carousel-slide {
      width: 300px;
      height: 200px;
    }
    .carousel-slide:nth-child(2) {
      width: 350px;
    }
  }
section .hero-responsive-section-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
  }
    .hero-responsive-section-wrapper picture {
      max-height: 840px;
      position: relative;
      width: 100%;
      display: block;
      min-height: 840px;
    }
  .hero-responsive-section-wrapper picture
  .hero-responsive-section {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    z-index: 1;
  }

  .hero-overlay {
    position: relative;
    z-index: 2;
    color: white;
    text-align: left;
    padding: 100px 20px;
    min-height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    max-width:1200px;
    margin:0 auto;
    height:100%;
  }

  .hero-content h1 {
    font-size: 2.5rem;
    margin-bottom: 10px;
  }

  .hero-content p {
    font-size: 1.2rem;
    margin-bottom: 20px;
  }

  .hero-buttons a {
    display: inline-block;
    padding: 12px 24px;
    border: none;
    background-color: #000;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    transition: background-color 0.3s ease;
  }
    .hero-content {
      max-width:590px;
    }

  .hero-responsive-section {
    position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-size: cover;
      background-position: center;
      z-index: 1;
      width: 100%;
      height: 100%;
      object-fit: cover;
  }
  .hero-buttons a:hover {
    background-color: #333;
  }

    .hero-overlay {
      position: absolute;
      z-index: 2;
      color: #fff;
      text-align: left;
      padding: 100px 20px;
      min-height: 400px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: start;
      max-width: 1200px;
      margin: 0 auto;
      height: 100%;
      width: 100%;
    }

    @media(max-width:768px){
      .hero-overlay {
        margin-top:135px;
      }
      .hero-buttons a {
        font-size:16px !important;
      }
    }
.hero-responsive-section-wrapper {
      position: relative;
      width: 100%;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      align-items: center;
      overflow: hidden;
      background-color: #000;
      min-height: 100vh;
    }

    .hero-background {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 0;
    }

    .hero-background img {
      width: 100% !important;
      height: 100vh !important;
      object-fit: cover !important;
    }

    .hero-overlay {
      position: relative;
      z-index: 2;
      width: 100%;
      max-width: 1200px;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center;
      padding: 60px 20px 20px;
      box-sizing: border-box;
    }

    .hero-content {
      width: 100%;
    }

    .hero-content h1 {
      margin-bottom: 10px;
      line-height: 1.2;
    }

    .hero-content p {
      margin-bottom: 20px;
      line-height: 1.4;
    }

    .hero-buttons {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-bottom: 20px;
      border: 0px !important;
    }

    /* Animação SUAVE customizada */
    @keyframes pulse-subtle-custom {
      0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(1, 229, 156, 0.5);
      }
      50% {
        transform: scale(1.05);
        box-shadow: 0 0 18px 4px rgba(1, 229, 156, 0.3);
      }
    }

  .hero-buttons a {
    color: white;
    text-decoration: none;
    border: none !important; /* força remoção de borda */
    outline: none !important; /* previne fallback */
    border-radius: 30px;
    white-space: nowrap;
    display: inline-block;
    animation: none !important;
    animation: pulse-subtle-custom 2.5s ease-in-out infinite !important;
  }

    .carousel-wrapper {
      width: 100%;
      margin-top: 20px;
      overflow: hidden;
    }

    .hero-carousel {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 16px;
      transition: transform 0.6s ease-in-out;
      padding-right: 600px;
    }

    .carousel-slide {
      flex: 0 0 auto;
      width: 220px;
      opacity: 0.4;
      transform: scale(0.8);
      filter: blur(4px);
      transition: all 0.6s ease-in-out;
    }

    .carousel-slide:nth-child(2) {
      width: 320px;
      opacity: 1;
      transform: scale(1);
      filter: none;
      z-index: 2;
    }

    .carousel-slide img {
      width: 350px;
      display: block;
      border-radius: 16px;
      height: 170px;
    }

    @media (max-width: 768px) {
      .hero-responsive-section-wrapper {
        min-height: 100vh;
      }

      .hero-overlay {
        padding: 20px 16px 0;
        align-items: center;
        text-align: center;
        margin-top: 200px !important;
      }

      .hero-content {
        margin-top: -40px;
      }

      .hero-buttons {
        justify-content: center;
      }

      .carousel-wrapper {
        margin-top: 16px;
      }

      .hero-carousel {
        padding-right: 0;
        gap: 8px;
      }

      .carousel-slide {
        width: 300px;
        height: 200px;
      }

      .carousel-slide:nth-child(2) {
        width: 300px;
      }
    }
*, *::before, *::after {
    box-sizing: border-box;
  }

  .why-choose-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #fff;
  }

  .why-choose-header {
    text-align: center;
    margin-bottom: 40px;
    max-width: 900px;
  }

  .why-choose-header h2 {
    font-size: 2.4rem;
    font-weight: 800;
    margin-bottom: 10px;
    padding: 10px 20px;
  }

  .why-choose-header p {
    font-size: 1.1rem;
    font-weight: 400;
    margin: 0 auto;
    padding: 0px 20px;
  }

  .why-choose-container {
    display: grid;
    grid-template-columns: minmax(0, 460px) auto minmax(0, 460px);
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    gap: 1px;
    align-items: center;
    padding-bottom: 60px;
  }

  .why-choose-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 460px;
  }

  .why-choose-image {
    margin-bottom: -63px !important;
    min-width: 100px !important;
  }

  .why-choose-image img {
    width: 100%;
    max-width: none;
    height: auto;
    border-radius: 16px;
  }

  .why-choose-topic {
    display: flex;
    align-items: center;
    gap: 16px;
    color: var(--topic-color, #fff);
    border-radius: 16px;
    padding: 20px;
    min-height: 88px;
    max-width: 400px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }

  .why-choose-topic:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);
  }

  .why-choose-topic img {
    width: 40px;
    height: 55px;
  }

  .why-choose-topic-content h4 {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 700;
  }

  .why-choose-topic-content p {
    margin: 4px 0 0;
    font-size: 0.95rem;
  }

  /* ===== Mobile ===== */
  @media (max-width: 768px) {
    .why-choose-container {
      grid-template-columns: 1fr;
    }

    .why-choose-image {
      order: -1;              /* imagem primeiro */
      margin-bottom: 32px;
      text-align: center;
    }

    .why-choose-column {
      flex-direction: column;
      width: 100%;
      max-width: 100%;        /* garante largura total */
      margin: 0 auto;
      gap: 16px;              /* espaçamento uniforme entre cards */
      padding-left: 20px;
      padding-right: 20px;
    }

    /* Cards em largura total no mobile e sem max-width limitando */
    .why-choose-topic {
      width: 100%;
      max-width: none;
      margin: 0;
      text-align: center;
      flex-direction: column;
      align-items: center;
    }

    /* Ordem das colunas no mobile: direita primeiro, depois esquerda */
    .why-choose-column--left { order: 0; margin-bottom: 16px; }
    .why-choose-column--right  { order: 1; }
  }

  html { scroll-behavior: smooth; }
#why-choose { scroll-margin-top: 100px; } /* ajuste conforme a altura do header */
/* Bloco Kit Oferta ext Desafio com personalizações completas */
.kit-oferta-ext-wrapper {
  background-size: cover;
  background-position: center;
  padding: 40px 20px;
  text-align: center;
}

.kit-oferta-ext-header h2 {
  font-size: var(--section-title-font-size, 28px);
  font-weight: var(--section-title-font-weight, 700);
  color: var(--section-title-color, #000);
  margin-bottom: 10px;
}

.kit-oferta-ext-header p {
  font-size: var(--section-subtitle-font-size, 18px);
  font-weight: var(--section-subtitle-font-weight, 400);
  color: var(--section-subtitle-color, #555);
  margin-bottom: 30px;
}

.kit-oferta-ext {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.kit-card-ext {
  background-color: var(--card-bg, #fff);
  border-radius: var(--card-radius, 20px);
  padding: 20px;
  width: 100%;
  max-width: 360px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  text-align: center;
  margin-bottom: var(--block-margin-bottom, 20px);
}

.kit-card-ext img.kit-image {
  max-width: 400px;
  margin: var(--image-margin-top, 0px) auto 0 auto;
  display: block;
}

.kit-card-ext img.kit-image-2 {
  width: 300px !important;
  max-width: 100%;
  margin: var(--image-margin-top, 0px) auto 0 auto;
  display: block;
}

.kit-text-flag,
.kit-text-oferta {
  padding: 5px 20px;
  border-radius: 30px;
  display: inline-block;
  margin: 10px 0;
  animation: pulse 2s infinite;
}

.kit-title-ext {
  font-size: 20px;
  font-weight: 700;
  color: #222;
  margin-bottom: 10px;
}

.kit-price-from-ext {
  font-size: 16px;
  font-weight: 400;
  color: #999;
  margin-top: 30px;
}

.kit-price-to-ext {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  margin: 5px 0;
}

.kit-installments-ext {
  font-size: 16px;
  font-weight: 400;
  color: #555;
  margin-bottom: 15px;
}

.kit-button-ext {
  background-color: #2e7d32;
  color: #fff;
  padding: 14px;
  border-radius: 30px;
  font-size: 16px;
  font-weight: 700;
  display: inline-block;
  text-decoration: none;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); }
  100% { transform: scale(1); }
}

@media (max-width: 767px) {
  .kit-card-ext { max-width: 100%; }
  .kit-oferta-ext-header p { font-size: 18px; }
  .kit-oferta-ext-header h2 { font-size: 32px; }
  .why-choose-header h2 { font-size: 32px; }
}

.kit-extra-text,
.kit-extra-text-v2 {
  margin: 8px 0;
  line-height: 1.4;
}
.amf{
    width:100%;
    background: var(--amf-bg);
    color: var(--amf-fg);
    border-radius: var(--amf-radius);
    overflow:hidden;
  }

  .amf__bar{
    min-height: var(--amf-h);
    display:flex;
    align-items:center;
    justify-content:center;
    gap: 10px;
    padding: 10px 12px;
    text-align:center;
  }

  .amf__logo{
    width: 22px; height: 22px; object-fit: contain; display:block;
    filter: none; /* mantém as cores originais do arquivo */
  }

  .amf__text{
    font-size: 11px;
    line-height: 1.3;
    font-weight: 400;
    color: inherit;
    /* evita quebra feia por conta do ©/R$ etc */
    word-break: keep-all;
  }

  @media (min-width: 768px){
    .amf__text{ font-size: 15px; }
    .amf__logo{ width: 24px; height: 24px; }
  }
.footer-nm {
        background: var(--ft-bg);
        color: var(--ft-text);
        width: 100%;
    }

    .footer-nm__band {
        padding: 16px 15px 28px;
    }

    .footer-nm__container {
        max-width: 1440px;
        margin: 0 auto;
    }

    /* superfície FLUIDA (sem height fixa) */
    .footer-nm__surface {
        background: var(--ft-surface);
        border-radius: var(--ft-radius);
        padding: 24px;
        box-shadow:
            inset 5px 5px 10px rgba(0, 0, 0, .4),
            inset -11px -11px 11px 4px rgba(255, 255, 255, 1);
        height: auto;
        min-height: 400px;
        display: flex;
        align-content: center;
        align-items: center;
    }

    .footer-nm__grid {
        display: grid;
        grid-template-columns: 1.4fr 1fr 1fr 1fr;
        gap: var(--ft-gap);
        align-items: start;
    }

    .footer-nm__col--about .footer-nm__logo {
        margin-bottom: 10px;
    }

    .footer-nm__about {
        font-size: 14px;
        line-height: 1.35;
        max-width: 420px;
        color: var(--ft-text);
    }

    /* ===== Acordeão ===== */
    .footer-nm__acc {
        margin: 0;
        padding: 0;
        border: 0;
    }

    .footer-nm__title {
        margin: 4px 0 8px;
        font-size: 18px;
        font-weight: 800;
        list-style: none;
        cursor: default;
    }

    .footer-nm__acc>summary::-webkit-details-marker {
        display: none;
    }

    .footer-nm__list {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .footer-nm__list li+li {
        margin-top: 6px;
    }

    .footer-nm__list a {
        font-size: 14px;
        text-decoration: none;
        color: var(--ft-text);
    }

    .footer-nm__list a:hover {
        text-decoration: underline;
    }

    .footer-nm__support p {
        margin: 0 0 6px;
        font-size: 14px;
    }

    .footer-nm__muted {
        color: var(--ft-muted);
    }

    /* ===== Redes sociais (neumórfico) ===== */
    .footer-nm__socials {
        display: flex;
        align-items: center;
        gap: 16px;
        margin-top: 18px;
        flex-wrap: wrap;
        margin-bottom: 20px;
    }

    .footer-nm__socials a {
        width: 56px;
        height: 56px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        background: #e6e6e6;
        box-shadow:
            1px 1px 5px rgba(0, 0, 0, .25),
            -1px -1px 5px rgba(255, 255, 255, .9);
        color: #111;
        text-decoration: none;
        transition: transform .15s ease, box-shadow .15s ease;
    }

    .footer-nm__socials a:hover {
        transform: translateY(-2px);
        box-shadow:
            8px 10px 16px rgba(0, 0, 0, .28),
            -6px -6px 12px rgba(255, 255, 255, .95);
    }

    .footer-nm__socials svg {
        display: block;
        width: 24px;
        height: 24px;
    }

    .footer-nm__whats {
        text-decoration: none;
        color: var(--ft-text);
    }

    .footer-nm__whats:hover {
        text-decoration: underline;
    }

    /* Barra inferior */
    .footer-nm__bottom {
        display: grid;
        grid-template-columns: auto 1fr;
        align-items: center;
        gap: 10px;
        padding: 10px 6px 0;
        color: #fff;
    }

    .footer-nm__brand img {
        display: block;
        width: 24px;
        height: auto;
    }

    .footer-nm__legal {
        font-size: 11px;
        line-height: 1.35;
        opacity: .95;
        text-align: center;
    }

    .footer-nm__legal a {
        color: #fff;
        text-decoration: underline;
    }

    /* ===== Responsivo ===== */
    @media (max-width:1024px) {
        .footer-nm__grid {
            grid-template-columns: 1.2fr 1fr 1fr 1fr;
            gap: 18px;
        }

        .footer-nm__title {
            font-size: 16px;
        }
    }

    @media (max-width:768px) {
        .footer-nm__surface {
            padding: 18px;
        }

        .footer-nm__grid {
            grid-template-columns: 1fr;
            gap: 16px;
        }

        .footer-nm__col--about {
            grid-column: 1/-1;
        }

        .footer-nm__acc>summary {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 10px 0;
            cursor: pointer;
            border-top: 1px solid rgba(0, 0, 0, .08);
        }

        .footer-nm__acc:first-of-type>summary {
            border-top: 0;
        }

        .footer-nm__acc>summary::after {
            content: "";
            width: 10px;
            height: 10px;
            border-right: 2px solid currentColor;
            border-bottom: 2px solid currentColor;
            transform: rotate(-45deg);
            transition: transform .2s ease;
            opacity: .7;
        }

        .footer-nm__acc[open]>summary::after {
            transform: rotate(45deg);
        }

        .footer-nm__acc>*:not(summary) {
            overflow: hidden;
            transition: max-height .25s ease;
            max-height: 1000px;
        }

        .footer-nm__acc:not([open])>*:not(summary) {
            max-height: 0;
        }
    }

    @media (max-width:520px) {
        .footer-nm__title {
            font-size: 15px;
        }

        .footer-nm__about {
            font-size: 13px;
        }

        .footer-nm__list a {
            font-size: 13px;
        }

        .footer-nm__bottom {
            grid-template-columns: 1fr;
            text-align: center;
        }

        .footer-nm__brand {
            display: none;
        }

        .footer-nm__socials a {
            width: 52px;
            height: 52px;
        }
    }
.lm-wrap {
  --lm-maxw: {{ section.settings.container_max_width }}px;
  --lm-text: {{ section.settings.color_text }};
  --lm-muted: {{ section.settings.color_muted }};
  --lm-accent: {{ section.settings.color_accent }};
  --lm-btn-bg: {{ section.settings.button_bg }};
  --lm-btn-text: {{ section.settings.button_text }};
  --lm-btn-bg-hover: {{ section.settings.button_bg_hover }};
  --lm-btn-text-hover: {{ section.settings.button_text_hover }};
  --lm-overlay: {{ section.settings.overlay_color }};
  --lm-overlay-op: {{ section.settings.overlay_opacity | divided_by: 100.0 }};
  --lm-gap: {{ section.settings.block_gap }}px;

  color: var(--lm-text);
  position: relative;
  overflow: hidden;
}

.lm-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
}
.lm-bg::after{
  content:"";
  position:absolute; inset:0;
  background: var(--lm-overlay);
  opacity: var(--lm-overlay-op);
}

.lm-container {
  max-width: var(--lm-maxw);
  margin: 0 auto;
  padding: {{ section.settings.pad_v_mobile }}px {{ section.settings.pad_h_mobile }}px;
  position: relative;
  z-index: 1;
}
@media (min-width: 1024px) {
  .lm-container {
    padding: {{ section.settings.pad_v_desktop }}px {{ section.settings.pad_h_desktop }}px;
  }
}

/* Header topo (logo + nav simples) */
.lm-header {
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom: clamp(24px, 4vw, 56px);
}
.lm-logo img{display:block; height:{{ section.settings.logo_height_mobile }}px;}
@media (min-width:1024px){ .lm-logo img{height:{{ section.settings.logo_height_desktop }}px;} }
.lm-nav{
  display:flex; gap: clamp(12px, 3vw, 28px); font-weight: {{ section.settings.nav_weight }};
  color: var(--lm-muted);
}
.lm-nav a{color:inherit; text-decoration:none; transition:opacity .2s;}
.lm-nav a:hover{opacity:.7}

/* HERO */
.lm-hero {
  display:grid;
  grid-template-columns: 1fr;
  gap: var(--lm-gap);
  align-items:center;
  margin-bottom: clamp(40px, 8vw, 100px);
}
@media (min-width:1024px) {
  .lm-hero {
    grid-template-columns: 1.1fr .9fr;
  }
}

.lm-hero-media {
  position:relative;
  min-height: 280px;
}
.lm-hero-media .lm-hero-img-left {
  position:relative;
  width: min(100%, 680px);
  height:auto;
  display:block;
  filter: drop-shadow(0 30px 60px rgba(0,0,0,.35));
}
.lm-hero-media .lm-hero-watermark{
  position:absolute; inset:auto 0 0 0; 
  font-size: clamp(56px, 14vw, 220px);
  line-height:.8; font-weight:800; opacity:.04; color:#000;
  pointer-events:none; user-select:none;
}

.lm-hero-copy .lm-kicker{
  font-size: {{ section.settings.kicker_size_mobile }}px;
  font-weight: {{ section.settings.kicker_weight }};
  letter-spacing:.02em; color: var(--lm-muted);
  margin-bottom: 6px;
}
@media (min-width:1024px){
  .lm-hero-copy .lm-kicker{ font-size: {{ section.settings.kicker_size_desktop }}px; }
}
.lm-hero-copy .lm-title{
  font-size: {{ section.settings.title_size_mobile }}px;
  font-weight: {{ section.settings.title_weight }};
  line-height: 1.05;
  margin: 0 0 12px;
}
@media (min-width:1024px){
  .lm-hero-copy .lm-title{ font-size: {{ section.settings.title_size_desktop }}px; }
}
.lm-hero-copy .lm-title .accent{ color: var(--lm-accent); }

.lm-hero-copy .lm-desc{
  color: var(--lm-muted);
  font-size: {{ section.settings.desc_size_mobile }}px;
  line-height: 1.55;
  margin-bottom: 18px;
}
@media (min-width:1024px){
  .lm-hero-copy .lm-desc{ font-size: {{ section.settings.desc_size_desktop }}px; }
}

.lm-cta{
  display:inline-flex; align-items:center; justify-content:center;
  padding: {{ section.settings.btn_pad_v }}px {{ section.settings.btn_pad_h }}px;
  border-radius: 999px;
  background: var(--lm-btn-bg); color: var(--lm-btn-text);
  text-decoration:none; font-weight: {{ section.settings.btn_weight }};
  border: 1px solid rgba(255,255,255,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 10px 30px rgba(0,0,0,.25);
  transition: transform .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
}
.lm-cta:hover{ background: var(--lm-btn-bg-hover); color: var(--lm-btn-text-hover); transform: translateY(-1px); box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 18px 40px rgba(0,0,0,.35); }

.lm-hero-right-media{
  position:relative; display:flex; align-items:flex-start; justify-content:center;
}
.lm-hero-right-media img{
  width: min(100%, 480px); height:auto; display:block;
  filter: drop-shadow(0 30px 60px rgba(0,0,0,.35));
}

/* Paleta (Black/White/Brown) */
.lm-swatches{
  display:flex; gap:16px; margin-top:16px; align-items:center; color: var(--lm-muted);
  font-size: 13px;
}
.lm-swatch{display:flex; align-items:center; gap:8px}
.lm-dot{
  width:12px; height:12px; border-radius:50%; border:1px solid rgba(255,255,255,.25);
}

/* BLOCO 2: Horas de bateria */
.lm-block {
  display:grid; grid-template-columns: 1fr; gap: var(--lm-gap); align-items:center;
  margin-bottom: clamp(40px, 8vw, 100px);
}
@media (min-width:1024px){
  .lm-block{ grid-template-columns: 1.05fr .95fr; }
}
.lm-photo img{
  width:100%; height:auto; display:block; border-radius: 8px;
  box-shadow: 0 30px 60px rgba(0,0,0,.35);
}
.lm-block .lm-bigtitle{
  font-size: {{ section.settings.bigtitle_size_mobile }}px;
  font-weight: {{ section.settings.bigtitle_weight }};
  line-height: .95; letter-spacing:-.01em;
  margin:0 0 12px;
}
@media (min-width:1024px){
  .lm-block .lm-bigtitle{ font-size: {{ section.settings.bigtitle_size_desktop }}px; }
}
.lm-block .lm-bigtitle .accent{ color: var(--lm-accent); }
.lm-block .lm-text{
  color: var(--lm-muted); line-height:1.6;
  font-size: {{ section.settings.block_desc_size_mobile }}px;
}
@media (min-width:1024px){
  .lm-block .lm-text{ font-size: {{ section.settings.block_desc_size_desktop }}px; }
}
.lm-arrow{
  width:52px; height:52px; display:grid; place-items:center; border-radius:50%;
  border:1px solid rgba(255,255,255,.15); color: var(--lm-text);
  backdrop-filter: blur(6px); background: rgba(255,255,255,.06);
  margin-top: 22px;
}

/* BLOCO 3: Som assinatura */
.lm-block-rev{
  display:grid; grid-template-columns: 1fr; gap: var(--lm-gap); align-items:center;
}
@media (min-width:1024px){
  .lm-block-rev{ grid-template-columns: .95fr 1.05fr; }
}
.lm-block-rev .lm-image-right img{
  width:min(100%, 620px); height:auto; display:block;
  filter: drop-shadow(0 30px 60px rgba(0,0,0,.35));
}
.lm-eyebrow{
  color: var(--lm-muted);
  font-weight: {{ section.settings.eyebrow_weight }};
  margin-bottom: 6px; letter-spacing:.08em; text-transform:uppercase;
  font-size: {{ section.settings.eyebrow_size_mobile }}px;
}
@media (min-width:1024px){ .lm-eyebrow{ font-size: {{ section.settings.eyebrow_size_desktop }}px; } }

.lm-footer-note{
  margin-top: clamp(24px, 6vw, 48px);
  color: var(--lm-muted);
  font-size: 12px;
  text-align:center;
  opacity:.7;
}

/* iOS/mobile: evita glitch de fixed + blur */
@media (max-width: 1024px){
  .lm-bg{ background-attachment: scroll !important; }
}
/* ===== BF — Oferta Principal Dinâmica (Product Picker + Qty + AJAX) ===== */

.bf-dyn-wrap {
  background-size: cover;
  background-position: center;
  padding: 40px 20px;
  text-align: center;
}

.bf-dyn-head h2 {
  font-size: 28px;
  font-weight: 700;
  color: white;
  margin-bottom: 10px;
}
.bf-dyn-head p {
  font-size: 18px;
  color: #555;
  margin-bottom: 30px;
}

.bf-dyn-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.bf-dyn-card {
  background: #1c1c1c;
  border-radius: 20px;
  padding: 20px;
  width: 100%;
  max-width: 360px;
  text-align: center;
  box-shadow: inset 2px 3px 12px rgba(256, 256, 256, 0.14),
              inset -2px -3px 12px rgba(256, 256, 256, 0.14);
}

.bf-dyn-img-top,
.bf-dyn-img-bottom {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

.bf-dyn-img-top {
  width: auto;
  max-width: 75%;
  height: auto;
}
@media (min-width: 1024px) {
  .bf-dyn-img-top {
    max-width: 65%;
  }
}

.bf-dyn-img-bottom {
  margin-top: 16px;
  width: 300px;
}

.bf-dyn-pill {
  padding: 6px 14px;
  border-radius: 999px;
  display: inline-block;
  background: #d32f2f;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  margin: 10px 0;
}
.bf-dyn-offer {
  padding: 6px 14px;
  border-radius: 999px;
  display: inline-block;
  background: #a01d38;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  margin: 10px 0;
}

.bf-dyn-title {
  font-size: 20px;
  font-weight: 700;
  color: white;
  margin: 8px 0 10px;
}

.bf-dyn-price-from {
  font-size: 16px;
  color: white;
  margin-top: 14px;
}
.bf-dyn-price-to {
  font-size: 24px;
  font-weight: 900;
  color: white;
  margin: 6px 0;
}
.bf-dyn-installments {
  font-size: 16px;
  color: white;
  margin-bottom: 14px;
}

/* Variant + Qty */
.bf-dyn-variant {
  margin: 10px auto 8px;
}
.bf-dyn-variant select {
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #e5e5e5;
}

.bf-dyn-qty {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 8px 0 16px;
}
.bf-dyn-qty button {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  border: 1px solid #e5e5e5;
  background: #fff;
  cursor: pointer;
}
.bf-dyn-qty input {
  width: 56px;
  text-align: center;
  padding: 8px 6px;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
}

/* CTA */
.bf-dyn-btn {
  background-color: #2e7d32;
  color: #fff;
  padding: 14px 60px;
  border-radius: 30px;
  font-size: 16px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  transition: transform 0.2s ease;
}
.bf-dyn-btn:hover {
  transform: scale(1.05);
}
.bf-dyn-btn[disabled] {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Mobile - duas colunas */
@media (max-width: 767px) {
  .bf-dyn-grid {
    justify-content: center;
    gap: 5px;
  }

  .bf-dyn-btn{
      padding: 14px 16px;
  }
  .bf-dyn-wrap{
    padding: 40px 0px;
  }
  
  .bf-dyn-card {
    flex: 0 1 calc(50% - 12px);
    max-width: calc(50% - 12px);
    padding: 16px;
  }
  .bf-dyn-img-top {
    max-width: 90%;
    border-radius: 13px
  }
  .bf-dyn-head h2 {
    font-size: 26px;
  }
  .bf-dyn-title{
    font-size: 17px;
  }
}
.kit-oferta-colageno-wrapper {
        display: flex;
        flex-direction: column;
        width: 100%;
        padding-top: var(--padding-oferta-colageno-mobile-top);
        padding-right: var(--padding-oferta-colageno-mobile-right);
        padding-bottom: var(--padding-oferta-colageno-mobile-bottom);
        padding-left: var(--padding-oferta-colageno-mobile-left);
        background-size: cover;
        background-position: center;
      }

      @media (min-width: 1024px) {
        .kit-oferta-colageno-wrapper {
          padding-top: var(--padding-oferta-colageno-desktop-top);
          padding-right: var(--padding-oferta-colageno-desktop-right);
          padding-bottom: var(--padding-oferta-colageno-desktop-bottom);
          padding-left: var(--padding-oferta-colageno-desktop-left);
        }
      }

      .kit-oferta-colageno-header {
        text-align: center;
        margin-bottom: 40px;
      }

      .kit-oferta-colageno-header h2 {
        color: var(--section-title-color);
        font-weight: var(--section-title-font-weight);
        font-size: var(--section-title-font-size-mobile);
        margin: 0 auto;
      }

      .kit-oferta-colageno-header p {
        color: var(--section-subtitle-color);
        font-weight: var(--section-subtitle-font-weight);
        font-size: var(--section-subtitle-font-size-mobile);
        margin: 0 auto;
        margin-top: 8px;
      }

      @media (min-width: 1024px) {
        .kit-oferta-colageno-header h2 {
          font-size: var(--section-title-font-size-desktop);
        }

        .kit-oferta-colageno-header p {
          font-size: var(--section-subtitle-font-size-desktop);
        }
      }

      .kit-oferta-colageno {
        display: grid;
        grid-template-columns: 1fr;
        gap: 50px;
      }

      @media (min-width: 768px) {
        .kit-oferta-colageno {
          grid-template-columns: repeat(3, 1fr);
          gap: 32px;
        }
      }

      .kit-card-colageno {
        background-color: var(--card-bg);
        border-radius: var(--card-radius);
        padding: 24px;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom: var(--block-margin-bottom);
        box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.25);
    }

      .kit-image {
        width: 100%;
        height: auto;
        margin-top: var(--image-margin-top);
      }

      .kit-image-2 {
      width: 100%;
      /* max-width: 160px; */
      height: 20px;
      margin: 0 auto;
      /* max-height: 20px; */
  }

      .kit-text-flag {
        margin-top: 12px;
        padding: 6px 12px;
        border-radius: var(--kit_flag_radius, 30px);
        font-size: var(--kit_flag_font_size_mobile, 14px);
        font-weight: var(--kit_flag_font_weight, 600);
      }

      .kit-title-colageno {
        margin-top: 16px;
        font-size: var(--title-font-size_mobile);
        font-weight: var(--title-font-weight);
      }

      .kit-text-oferta {
        margin-top: 12px;
        padding: 4px 10px;
        border-radius: var(--offer_flag_radius, 30px);
        font-size: var(--offer_flag_font_size_mobile, 14px);
        font-weight: var(--offer_flag_font_weight, 600);
        animation: pulse 2s infinite;
      }

      .kit-price-from-colageno {
        margin-top: 8px;
        text-decoration: line-through;
        font-size: var(--price-from-font-size_mobile);
        font-weight: var(--price-from-font-weight);
      }

      .kit-price-to-colageno {
        margin-top: 4px;
        font-size: var(--price-to-font-size_mobile);
        font-weight: var(--price-to-font-weight);
      }

      .kit-installments-colageno {
        margin-top: 4px;
        font-size: var(--installments-font-size_mobile);
        font-weight: var(--installments-font-weight);
      }

      .kit-button-colageno {
        display: inline-block;
        margin-top: 20px;
        padding: 12px 24px;
        border-radius: var(--button-radius, 30px);
        font-size: var(--button-font-size_mobile);
        font-weight: var(--button-font-weight);
        text-decoration: none;
        animation: pulse 2s infinite;
      }

      .kit-button-colageno:hover {
        opacity: 0.9;
      }

  .kit-oferta-colageno-inner {
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
}

        @keyframes pulse {
        0% { transform: scale(1); }
        50% { transform: scale(1.05); }
        100% { transform: scale(1); }
      }

      @media (max-width: 767px) {
        .kit-card-desafio {
          max-width: 100%;
        }
      }

        @media (min-width: 1024px) {
      .kit-text-flag {
        font-size: var(--kit_flag_font_size_desktop, 14px);
        }
         .kit-title-colageno {
        margin-top: 16px;
        font-size: var(--title-font-size_desktop);
         }
        .kit-text-oferta {
        font-size: var(--offer_flag_font_size_desktop, 14px);
      }
        .kit-price-from-colageno {
        margin-top: 8px;
        text-decoration: line-through;
        font-size: var(--price-from-font-size_desktop);
        font-weight: var(--price-from-font-weight);
      }
        .kit-button-colageno {
        font-size: var(--button-font-size_desktop);
        }
      .kit-price-to-colageno {
        font-size: var(--price-to-font-size_desktop);
      }

        .kit-installments-colageno {
        font-size: var(--installments-font-size_desktop);
        }
      }
.captacao-hero {
        width: 100%;
        height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        padding-left: 20px;
        padding-right: 20px;
        box-sizing: border-box;
        background-size: cover;
        background-position: center;
        margin-top: -40px;
      }

      .captacao-container {
        max-width: 1440px;
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;

      }

      .captacao-left {
        flex: 1;
        min-width: 300px;
      }

      .captacao-left img {
        max-width: 100%;
        height: auto;
        margin-bottom: 20px;
      }

      .captacao-left h1,
      .captacao-left h2,
      .captacao-left h3 {
        margin-bottom: 15px;
        line-height: 1.2;
      }
      .captacao-left h1{
        font-size: var(--font-size-desktop-h1);
        color: var(--color-h1);
        font-weight: var(--font-weight-h1);
      }
        .captacao-left h2{
        font-size: var(--font-size-desktop-h2);
        color: var(--color-h2);
        font-weight: var(--font-weight-h2);
      }
        .captacao-left h3{
        font-size: var(--font-size-desktop-h3);
        color: var(--color-h3);
        font-weight: var(--font-weight-h3);
      }

      .captacao-center {
        flex: 1;
        min-width: 300px;
        display: flex;
        flex-direction: column;
        align-items: center;
      }

      .captacao-timer {
        display: flex;
        gap: 10px;
        font-weight: 700;
        font-size: 18px;
        text-align: center;
      }

      .timer-box {
        background: #000;
        color: #fff;
        padding: 10px 15px;
        border-radius: 12px;
        min-width: 70px;
      }

      .captacao-form {
        width: 100%;
        max-width: 360px;
      }

      .captacao-form h4 {
        margin-bottom: 15px;
        margin-top: 15px;
        text-align: center;
      }

      .captacao-form input {
        width: 100%;
        margin-bottom: 10px;
        padding: 12px 15px;
        border: none;
        border-radius: 30px;
        font-size: 14px;
        font-weight:400;
        box-sizing: border-box;
        background-color: #fff;
        color: #000;
      }

      .captacao-button {
        width: 100%;
        padding: 15px;
        font-size: 20px;
        font-weight: 700;
        border: none;
        border-radius: 32px;
        cursor: pointer;
        transition: background 0.3s ease;
        text-align: center;
      }

      .captacao-button.pulse {
        animation: pulse 1.6s infinite;
      }

      @keyframes pulse {
        0% { transform: scale(1); }
        50% { transform: scale(1.05); }
        100% { transform: scale(1); }
      }

      .form-status {
        margin-top: 10px;
        font-size: 14px;
        color: green;
        text-align: center;
      }

  .captacao-timer-bg {
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      padding: 15px 10px;
      border-radius: 20px;
  }

      /* Responsivo mobile */
      @media (max-width: 768px) {
        .captacao-container {
          flex-direction: column;
          align-items: center;
        }

        .captacao-left, .captacao-center {
          flex: unset;
          width: 100%;
          text-align: center;
        }

        .captacao-left h1 {
          font-size: var(--font-size-mobile-h1);
          text-align: left;
        }
        .captacao-left h2 {
          font-size: var(--font-size-mobile-h2);
          text-align: left;
        }
        .captacao-left h3 {
          font-size: var(--font-size-mobile-h3);
          text-align: left;
        }
          .captacao-left img {
        margin-bottom: 5px;
      }
        .timer-box {
        padding: 5px 10px;
        font-size: 11px;
    }
        .captacao-hero{
          padding-top: 50px;
          padding-bottom: 30px;
          height: 100%;
        }

        .captacao-button {
          padding: 5px;
          font-size: 18px;
        }

        .captacao-timer-bg {
          padding: 10px 10px;
      }
      .faq-image-section{
        padding: 20px 20px;
      }
      .faq-image-section{
        background-position: center ;
    }
  }
.page-obrigado {
      width: 100%;
      height: 100vh;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 40px 20px;
      box-sizing: border-box;
      font-family: 'Montserrat', sans-serif;
    }

  .page-obrigado-container {
    max-width: 1100px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    margin-top: -80px;
  }

    .page-obrigado img {
      max-width: 300px;
      height: auto;
      margin: 0 auto 20px auto;
      display: block;
    }

    .page-obrigado h1 {
      font-size: var(--font-h1-desktop);
      font-weight: var(--font-h1-weight);
      color: var(--font-h1-color);
      margin-bottom: 15px;
    }

    .page-obrigado h2 {
      font-size: var(--font-h2-desktop);
      font-weight: var(--font-h2-weight);
      color: var(--font-h2-color);
      margin-bottom: 25px;
    }

    .page-obrigado h3 {
      font-size: var(--font-h3-desktop);
      font-weight: var(--font-h3-weight);
      color: var(--font-h3-color);
      margin-bottom: 10px;
    }

    .page-obrigado h4 {
      font-size: var(--font-h4-desktop);
      font-weight: var(--font-h4-weight);
      color: var(--font-h4-color);
      margin-bottom: 30px;
    }

    .page-obrigado .cta-button {
      color: var(--cta-color);
      font-size: var(--cta-font-size);
      font-weight: var(--cta-font-weight);
      padding: var(--cta-padding);
      border-radius: var(--cta-radius);
      border: none;
      cursor: pointer;
      transition: all 0.3s ease;
      text-decoration: none;
      display: inline-block;
    }

    .page-obrigado .cta-button:hover {
      filter: brightness(1.1);
    }

      /* Animação pulsar */
    @keyframes pulse-zoom {
      0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 211, 0, 0.7);
      }
      70% {
        transform: scale(1.05);
        box-shadow: 0 0 0 10px rgba(255, 211, 0, 0);
      }
      100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 211, 0, 0);
      }
    }

    .page-obrigado .cta-button {
      animation: pulse-zoom 2s infinite;
    }

    @media (max-width: 768px) {
      .page-obrigado h1 {
        font-size: var(--font-h1-mobile);
      }

      .page-obrigado h2 {
        font-size: var(--font-h2-mobile);
      }

      .page-obrigado h3 {
        font-size: var(--font-h3-mobile);
      }

      .page-obrigado h4 {
        font-size: var(--font-h4-mobile);
      }
    }
.iprail{
  --bg:#f1f3f2;
  --card:#2e5a3e;
  --text:#fff;
  --muted:rgba(255,255,255,.85);
  --radius:24px;
  --gap:16px;
  --rail-w-m:96px;
  --rail-h-d:120px;
}
.iprail__inner{
  display:grid;
  grid-template-columns: var(--rail-w-m) 1fr;
  gap:var(--gap);
  background:var(--bg);
  border-radius:var(--radius);
  padding:var(--gap);
}
@media(min-width:768px){
  .iprail__inner{
    grid-template-columns:1fr;
    grid-template-rows: auto 1fr;
  }
}
/* Rail */
.iprail__rail{ display:flex; flex-direction:column; gap:12px; }
@media(min-width:768px){ .iprail__rail{ flex-direction:row; overflow-x:auto; padding-bottom:6px; } }
.iprail__item{
  display:flex; align-items:center; gap:10px; background:#fff; border:0; border-radius:14px; padding:8px;
  cursor:pointer; text-align:left; outline-offset:2px;
}
.iprail__item.is-active{ box-shadow:0 0 0 2px #1a7f46 inset; }
.iprail__thumb img{ width:64px; height:64px; object-fit:cover; border-radius:12px; display:block; }
.iprail__name{ font-size:13px; font-weight:600; color:#2a2a2a; line-height:1.2; }

/* Painel */
.iprail__panelwrap{ background:var(--card); border-radius:20px; overflow:hidden; position:relative; }
.iprail-card{ display:grid; grid-template-columns:1fr; color:var(--text); }
.iprail-card__media{ position:relative; min-height:220px; }
.iprail-card__media img{ width:100%; height:100%; object-fit:cover; }
.iprail-card__body{ display:grid; gap:10px; padding:18px; background:linear-gradient(180deg, rgba(0,0,0,.05), transparent 40%); }
.iprail-card__title{ font-size:22px; font-weight:800; line-height:1.08; }
.iprail-card__price{ font-size:16px; font-weight:700; }
.iprail-card__badges{ display:flex; gap:8px; align-items:center; opacity:.95; }
.iprail-card__badge{ font-size:12px; border:1px solid rgba(255,255,255,.35); padding:4px 8px; border-radius:999px; }
.iprail-card__desc{ font-size:14px; line-height:1.5; color:var(--muted); }
.iprail-card__cta{ display:flex; gap:10px; margin-top:6px; }
.iprail-btn{ appearance:none; border:0; border-radius:999px; padding:10px 16px; font-weight:700; cursor:pointer; }
.iprail-btn--primary{ background:#21c15c; color:#0b1a0f; }
.iprail-btn--ghost{ background:transparent; border:1px solid rgba(255,255,255,.45); color:#fff; }

/* Desktop */
@media(min-width:1024px){
  .iprail-card{ grid-template-columns:1.2fr 1fr; min-height:420px; }
  .iprail-card__media{ order:2; }
  .iprail-card__body{ order:1; padding:28px; background:linear-gradient(180deg, rgba(0,0,0,.08), transparent 50%); }
  .iprail__inner{ grid-template-rows: var(--rail-h-d) 1fr; }
  .iprail__rail .iprail__thumb img{ width:80px; height:80px; }
}
*, *::before, *::after {
    box-sizing: border-box;
  }

    .review-header-section {
    text-align: center;
    margin-bottom: 32px;
  }

  .review-header-section h2 {
    font-size: var(--section-title-font-size-desktop, 40px);
    font-weight: var(--section-title-font-weight, 900);
    color: var(--section-title-color, #111);
    margin: 0;
  }

  .review-header-section p {
    font-size: var(--section-subtitle-font-size-desktop, 20px);
    font-weight: var(--section-subtitle-font-weight, 400);
    color: var(--section-subtitle-color, #555);
    margin-top: 8px;
  }

  @media (max-width: 767px) {
    .review-header-section h2 {
      font-size: var(--section-title-font-size-mobile, 26px);
    }
    .review-header-section p {
      font-size: var(--section-subtitle-font-size-mobile, 16px);
    }
  }
      .review-swiper-wrapper {
        padding: 40px 20px;
        font-family: "Montserrat", sans-serif;
        overflow-x: hidden;
      }

      .review-block {
        background-color: #ffffff;
        border-radius: 20px;
        padding: 24px;
        box-shadow: 0 0 0 1px #eaeaea;
        width: 100%;
        max-width: 100%;
        min-height: 485px;
      }

      .review-header {
        display: flex;
        align-items: center;
        gap: 12px;
        margin-bottom: 12px;
      }

      .review-avatar {
        width: 32px;
        height: 32px;
        border-radius: 100%;
        background-color: #f0f0f0;
        display: flex;
        align-items: center;
        justify-content: center;
      }

      .review-name {
        font-weight: 600;
        font-size: 16px;
      }

      .review-verified {
        font-size: 12px;
        font-weight: 600;
        background-color: #3ab92f;
        color: #fff;
        padding: 2px 8px;
        border-radius: 12px;
        margin-left: 6px;
      }

      .review-date {
        font-size: 12px;
        color: #888;
        margin-left: auto;
      }

      .review-stars {
        display: flex;
        gap: 4px;
        margin-bottom: 8px;
        color: #e8cc4d !important;
        justify-content: center;
      }

      .review-stars svg {
        display: inline-block;
        vertical-align: middle;
      }

      .review-text {
        font-weight: 500;
        margin-bottom: 16px;
      }

      .review-questions {
        background-color: #fafafa;
        border-radius: 20px;
        padding: 16px;
        font-size: 14px;
      }

      .review-questions strong {
        display: block;
        margin-top: 12px;
        font-weight: 600;
        text-transform: lowercase;
      }

      .review-questions p {
        margin: 4px 0 0 0;
      }

      .swiper-review {
        position: relative;
        max-width: 1100px;
        margin: 0 auto;
        z-index: 1;
        padding-bottom: 40px;
        overflow: hidden;
      }

      .swiper-review .swiper-wrapper {
        display: flex;
      }

      .swiper-review .swiper-slide {
        display: flex;
        justify-content: center;
        box-sizing: border-box;
        border-radius: 40px;
        padding-bottom: 40px;
      }

      .swiper-review .swiper-slide img {
        width: 100%;
        max-width: 800px;
        height: auto;
        object-fit: cover;
        border-radius: 30px;
      }

      .swiper-review .swiper-pagination {
        position: absolute;
        bottom: 10px;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        background-color: rgba(0, 0, 0, 0.3);
        padding: 6px 10px;
        border-radius: 20px;
        width: auto;
        z-index: 2;
      }

      .swiper-review .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
        background-color: #ffffff;
        border-radius: 50%;
        opacity: 0.4;
        transition: all 0.3s ease;
        margin: 0;
        box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
      }

      .review-header-section h2 {
        font-size: 36px;
        color: #e33471;
      }

  .review-header-section p {
    font-size: 26px;
    color: #e33471;
  }
      .swiper-review .swiper-pagination-bullet-active {
        opacity: 1;
        transform: scale(1.2);
        background-color: #ffffff;
      }

      @media (min-width: 768px) {
      .swiper-review .swiper-slide {
        max-width: 50%;
      }
    }

    @media (max-width: 767px) {
      .swiper-review .swiper-slide {
        max-width: 100%;
      }
      .review-header-section h2 {
        font-size: 36px;
      }
      .review-header-section p {
    font-size: 18px;
  }
    }
/* === Container da seção === */
.agbc-wrap{
  width: 100%;
  box-sizing: border-box;
  padding: 15px;
  display: flex;
  justify-content: center;
}
@media (min-width:1025px){
  .agbc-wrap{ padding: 40px 40px 20px; }
}

/* === Frame do carrossel (capado e centralizado) === */
@media (min-width: 1025px) {
  .agbc-frame{ max-width: 1440px; }
}
.agbc-frame{
  position: relative;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 40px;
  transition: height .28s ease;
}

.agbc-track {
  display: flex;
  width: 100%;
  will-change: transform;
  transition: transform .35s ease;
  transform: translate3d(0, 0, 0);
}

.agbc-slide {
  position: relative;
  width: 100%;
  flex: 0 0 100%;
}

.agbc-slide img {
  width: 100%;
  height: auto; /* sem altura fixa */
  display: block;
  object-fit: cover;
}

.agbc-link { display: block; }

/* Dots */
.agbc-dots {
  position: absolute;
  right: 14px;
  z-index: 3;
  display: none;
  gap: 8px;
}
.agbc-dot {
  width: 8px; height: 8px;
  border-radius: 999px; border: 0; padding: 0;
  cursor: pointer;
  background: rgba(255,255,255,.65);
  transition: transform .2s, background-color .2s, opacity .2s;
}
.agbc-dot[aria-current="true"] { background:#fff; transform:scale(1.12); }

/* Mostrar dots quando houver 2+ slides */
.agbc--has-dots .agbc-dots { display:flex; }

/* Orientação */
.agbc--horizontal .agbc-track { flex-direction: row; }
.agbc--horizontal .agbc-dots {
  bottom: 14px;
  flex-direction: row; align-items:center; justify-content:flex-end; padding-right: 30px;
}

.agbc--vertical .agbc-track { flex-direction: column; }
.agbc--vertical .agbc-dots {
  top: 50%; transform: translateY(-50%);
  flex-direction: column; align-items:center; justify-content:center;
}

/* Interação de arraste */
.agbc-frame{ cursor: grab; }
.agbc--dragging .agbc-frame{ cursor: grabbing; }
.agbc-frame, .agbc-frame *{
  user-select: none;
  -webkit-user-drag: none;
}
.agbc--horizontal .agbc-frame{ touch-action: pan-y; }
.agbc--vertical   .agbc-frame{ touch-action: pan-x; }

@media (max-width: 1024px) {
  .agbc-frame { border-radius: 15px; }
}
.carousel-colageno-wrapper {
    padding: 60px 20px;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .carousel-colageno-title,
  .carousel-colageno-subtitle {
    text-align: center;
    margin-bottom: 10px;
  }

  .carousel-colageno-subtitle {
    margin-bottom: 40px;
  }

  .swiper-colageno {
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
    z-index: 1;
    padding-bottom: 60px;
  }

  .swiper-colageno .swiper-wrapper {
    display: flex;
  }

  .swiper-colageno .swiper-slide {
    display: flex;
    justify-content: center;
    box-sizing: border-box;
    padding: 10px;
    border-radius: 40px;
    padding-bottom: 30px;
  }

  .swiper-colageno .swiper-slide img {
    width: 100%;
    max-width: 800px;
    height: auto;
    object-fit: cover;
    border-radius: 30px;
    box-shadow: 0px 0px 13px rgba(0, 0, 0, 0.25);
  }

  .swiper-colageno .swiper-pagination {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background-color: rgba(0, 0, 0, 0.3);
    padding: 6px 10px;
    border-radius: 20px;
    width: auto;
    z-index: 2;
  }

  .swiper-colageno .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background-color: #ffffff;
    border-radius: 50%;
    opacity: 0.4;
    transition: all 0.3s ease;
    margin: 0;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
  }

  .swiper-colageno .swiper-pagination-bullet-active {
    opacity: 1;
    transform: scale(1.2);
    background-color: #ffffff;
  }
.carousel-ferritin-wrapper {
    padding: 60px 20px;
    font-family: 'Montserrat', sans-serif;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .carousel-ferritin-title,
  .carousel-ferritin-subtitle {
    text-align: center;
    margin-bottom: 10px;
  }

  .carousel-ferritin-subtitle {
    margin-bottom: 40px;
  }

  .swiper-container-ferritin-{{ section.id }} {
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
  }

  .swiper-container-ferritin-{{ section.id }} .swiper-slide {
    display: flex;
    justify-content: center;
    box-sizing: border-box;
    padding: 10px;
    border-radius: 50px;
  }

  .swiper-container-ferritin-{{ section.id }} .swiper-slide img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 50px;
  }

  .swiper-container-ferritin-{{ section.id }} .swiper-pagination {
    position: absolute !important;
    bottom: 10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    background-color: rgba(0, 0, 0, 0.3) !important;
    padding: 6px 10px !important;
    border-radius: 20px !important;
    z-index: 20 !important;
    width: auto !important;
  }

  .swiper-container-ferritin-{{ section.id }} .swiper-pagination-bullet {
    width: 10px !important;
    height: 10px !important;
    background-color: #ffffff !important;
    border-radius: 50% !important;
    opacity: 0.4 !important;
    transition: all 0.3s ease !important;
    margin: 0 !important;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
  }

  .swiper-container-ferritin-{{ section.id }} .swiper-pagination-bullet-active {
    opacity: 1 !important;
    transform: scale(1.2) !important;
    background-color: #ffffff !important;
  }
.custom-carousel-section-osa {
    padding: 60px 20px;
    font-family: 'Montserrat', sans-serif;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .custom-carousel-title-osa,
  .custom-carousel-subtitle-osa {
    text-align: center;
    margin-bottom: 10px;
  }

  .custom-carousel-subtitle-osa {
    margin-bottom: 40px;
  }

  .carousel-wrapper-osa-{{ section.id }} {
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
  }

  .carousel-wrapper-osa-{{ section.id }} .swiper-slide {
    display: flex;
    justify-content: center;
    box-sizing: border-box;
    padding: 10px;
    border-radius: 50px;
  }

  .carousel-wrapper-osa-{{ section.id }} .swiper-slide img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 50px;
  }

  .carousel-wrapper-osa-{{ section.id }} .swiper-pagination {
    position: absolute !important;
    bottom: 10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    background-color: rgba(0, 0, 0, 0.3) !important;
    padding: 6px 10px !important;
    border-radius: 20px !important;
    z-index: 20 !important;
    width: auto !important;
  }

  .carousel-wrapper-osa-{{ section.id }} .swiper-pagination-bullet {
    width: 10px !important;
    height: 10px !important;
    background-color: #ffffff !important;
    border-radius: 50% !important;
    opacity: 0.4 !important;
    transition: all 0.3s ease !important;
    margin: 0 !important;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
  }

  .carousel-wrapper-osa-{{ section.id }} .swiper-pagination-bullet-active {
    opacity: 1 !important;
    transform: scale(1.2) !important;
    background-color: #ffffff !important;
  }
.custom-carousel-section {
      background-size: cover;
      background-position: bottom;
      padding: 60px 20px;
      color: #111;
    }

    .carousel-header {
      text-align: center;
      margin-bottom: 40px;
    }

    .carousel-header h2 {
      font-size: 2rem;
      font-weight: bold;
      margin-bottom: 10px;
    }

    .carousel-header p {
      font-size: 1.1rem;
      color: #444;
    }

    .swiper {
      max-width:1200px;
      margin:0 auto;
      width: 100%;

    }

    .swiper-slide {
      border-radius: 16px;
      text-align: center;
    }

    .swiper-slide img {
      max-width: 100%;
      border-radius: 8px;
      margin-bottom: 15px;
    }

    .swiper-button-prev,
    .swiper-button-next {
      color: #252525;
    }


    .swiper-button-next,
  .swiper-button-prev {
    width: 24px;
    height: 24px;
    color: #000; /* Make arrow black */
    background: none;
    font-size: 16px;
    display:none;
  }

  .swiper-button-next::after,
  .swiper-button-prev::after {
    font-size: 24px; /* Adjust arrow icon size */
    color: #000;     /* Ensure icon is black */
  }
.tab-nutri-image-section-colageno {
            display: flex;
            flex-wrap: wrap;
            gap: 40px;
            padding: 60px 20px 1px;
            align-items: center;
            justify-content: center;
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
          }

          .tab-nutri-image-left-colageno {
            flex: 1;
            max-width: 500px;
          }

          .tab-nutri-image-left-colageno img {
            width: 100%;
            border-radius: 24px;
            height: 700px;
            object-fit: cover;
          }

          .tab-nutri-right-colageno {
            flex: 1;
            max-width: 600px;
          }

          .tab-nutri-right-colageno h2 {
            font-size: var(--title-font-size-desktop);
            font-weight: var(--peso-tab-nutri-titulo);
            margin-bottom: 10px;
          }

          .tab-nutri-right-colageno p {
            font-size: var(--subtitle-font-size-desktop);
            margin-bottom: 30px;
            font-weight: var(--peso-tab-nutri-subtitulo);
          }

          .tab-nutri-item-colageno {
            border: 1px solid #e33471;
            padding: 16px 10px;
            cursor: pointer;
            background: #fff9;
          }

          .tab-nutri-question-colageno {
            display: flex;
            justify-content: space-between;
            font-weight: var(--peso-tab-nutri-menu);
            font-size: 16px;
            color: var(--cor-tab-nutri-titulo-item) !important;
          }

          .tab-nutri-answer-colageno {
        max-height: 0;
        overflow: hidden;
        padding-top: 0;
        transition: all 0.4s ease;
        color: #e33471;
        font-size: 15px;
        line-height: 1.5;
      }

          .tab-nutri-item-colageno.active .tab-nutri-toggle-colageno::after {
            content: "−";
              color: var(--cor-tab-nutri-toggle);
          }

          .tab-nutri-toggle-colageno::after {
            content: "+";
            margin-left: 10px;
            font-weight: bold;
            color: var(--cor-tab-nutri-toggle);
          }

          @media(max-width: 768px) {
            .tab-nutri-image-section-colageno {
              flex-direction: column;
            }

            .tab-nutri-image-left-colageno img {
              height: 400px;
            }

                  .tab-nutri-right-colageno h2 {
            font-size: var(--title-font-size-mobile);
          }

          .tab-nutri-right-colageno p {
            font-size: var(--subtitle-font-size-mobile);
          }
          }

      .cta-nutri-btn:hover {
      transform: scale(1.05);
    }

    a.cta-nutri-btn {
    background-color: #3eb04a !important;
    color: white !important;
    padding: 16px 32px !important;
    border: none !important;
    border-radius: 50px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    animation: pulseCTA 2s infinite !important;
    transition: background-color 0.3s ease !important;
    display: inline-block !important;
  }

    .button-link {
      display: flex;
      align-items: center;
      justify-content: center;
      padding-bottom: 40px;
    }