/* HEADER */
header{background-color:var(--bs-body-bg)}
header .logo-desktop,header .logo-mobile-menu{width:160px;margin:1rem 0}

#topo-bootstrap{border-bottom:1px solid var(--bs-border-color)}
#topo-bootstrap address{font-size:.875rem}
#topo-bootstrap address a{color:var(--bs-body-color);transition:var(--transition)}
#topo-bootstrap address a:hover{color:var(--bs-primary)}
#topo-bootstrap address i{margin-right:.375rem}

#header-nav{padding-block:.5rem 1rem}
#header-nav .navbar-nav{gap:.25rem}
#header-nav .nav-link{padding:.75rem 1.25rem;border-radius:50rem;font-weight:500;font-size:.9375rem;color:var(--bs-body-color);transition:var(--transition);white-space:nowrap}
#header-nav .nav-link:hover,#header-nav .nav-link:focus{background-color:var(--bs-tertiary-bg);color:var(--bs-primary)}
#header-nav .nav-item[data-icon-menu]>.nav-link{padding:.75rem;font-size:1.125rem}

.widget__lang #google_translate_element2{display:none}
.widget__lang .translate-container{display:flex;align-items:center;gap:.5rem}
.widget__lang .translate-container a{display:block;line-height:0;border-radius:.25rem;overflow:hidden;border:1px solid var(--bs-border-color);transition:var(--transition)}
.widget__lang .translate-container a:hover,.widget__lang .translate-container a:focus{border-color:var(--bs-primary)}
.widget__lang .translate-container img{display:block;width:24px;height:18px;object-fit:cover}

/* BREADCRUMB HERO */
.bread--default{padding-block:3.5rem;margin-bottom:3rem;background:var(--bs-tertiary-bg) url('../imagens/breadcrumb-bg.webp') center right/cover no-repeat}
.bread--default .bread__row{display:flex;flex-direction:column-reverse;align-items:center;gap:.75rem;text-align:center}
.bread--default .bread__title{margin:0;font-size:2rem;font-weight:600;color:var(--bs-primary)}
.bread--default #breadcrumb{justify-content:center}

/* FOOTER */
footer{position:relative;margin-top:5rem;padding-top:1px;background-color:var(--primary-color-dark);color:var(--bs-white)}
footer .footer-wave{position:absolute;top:-4.9rem;left:0;width:100%;height:5rem;line-height:0}
footer .footer-wave svg path{fill:var(--primary-color-dark)}
footer .footer-inner{padding-block:5rem}
footer .logo-desktop{max-width:220px}
footer .logo-desktop--white{filter:brightness(0) invert(1)}
footer h3{margin-top:0;font-size:1.125rem;color:var(--bs-white)}
footer .footer__nav li a:not(.btn){display:block;padding:5px 0;font-size:.875rem;color:var(--bs-white);opacity:.85;transition:.3s}
footer .footer__nav li a i{font-size:.625rem}
footer .footer__nav li a:hover{opacity:1;color:var(--secondary-color)}
footer .address :is(span,a):not(.btn){color:var(--bs-white);font-size:.875rem;line-height:25px;transition:.3s;opacity:.85}
footer .address a:not(.btn):hover{opacity:1;color:var(--secondary-color)}
footer .footer-map{aspect-ratio:475/240;width:100%;border:0;border-radius:var(--bs-border-radius-lg)}
footer .btn-footer-cta{--bs-btn-bg:var(--secondary-color);--bs-btn-border-color:var(--secondary-color);--bs-btn-hover-bg:var(--secondary-color-light);--bs-btn-hover-border-color:var(--secondary-color-light);--bs-btn-color:var(--bs-white);--bs-btn-hover-color:var(--bs-white);border-radius:50rem}

.copyright-footer{background-color:var(--primary-color-dark);border-top:1px solid rgba(255,255,255,.15)}
.copyright-footer p{color:var(--bs-white);opacity:.85}
.copyright-footer .btn.selos { min-height: unset; }
.copyright-footer .btn-back-to-top{--bs-btn-bg:var(--secondary-color);--bs-btn-border-color:var(--secondary-color);--bs-btn-hover-bg:var(--secondary-color-light);--bs-btn-hover-border-color:var(--secondary-color-light);--bs-btn-color:var(--bs-white);--bs-btn-hover-color:var(--bs-white);border-radius:50rem;width:2rem;height:2rem;padding:0}

/* Widget flutuante de "voltar ao topo" (js/geral.js) fica duplicado com o botão do footer acima — desativado */
#scrollUp{display:none!important}
@media screen and (max-width: 992.05px) {
  footer .social { justify-content: center; }
}

.card.card--23{all:unset;box-sizing:border-box;display:flex;align-items:flex-start;justify-content:space-between;flex-flow:column nowrap;gap:1rem;background-color:var(--dark);background-image:linear-gradient(-45deg,var(--dark),var(--grey)),var(--card-background);background-size:cover;background-repeat:no-repeat;background-position:center;background-blend-mode:multiply,normal;border-radius:1rem;padding:1rem;position:relative;height:100%}
.card.card--23:focus-within,.card.card--23:hover{box-shadow:0 0 0 2px var(--secondary-color)}
.card.card--23 .card__title{color:#fff;font-size:1.25rem;text-shadow:0 0 .25rem var(--dark);margin:0;min-height:calc(1.25rem * 2 * 1.3)}
.card.card--23 .card__link{z-index:1;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;flex-flow:row nowrap;padding:.5rem .75rem;font-size:.875rem;text-transform:uppercase;transition:var(--transition);color:var(--light);font-weight:600;border:2px solid currentColor;border-radius:99px}
.card.card--23 .card__link>span{width:0;max-width:fit-content;opacity:0;transition:var(--transition)}
.card.card--23 .card__link:focus>span,.card.card--23 .card__link:hover>span{width:100px;opacity:1;margin-right:.5rem}
.card.card--23 .card__link::before{content:"";display:block;width:100%;height:100%;position:absolute;left:0;top:0;z-index:-1;backface-visibility:visible}
.card.card--23 .card__link:focus,.card.card--23 .card__link:hover{border-color:var(--primary-color);background-color:var(--primary-color)}

.shadow-19{box-shadow:rgba(50,50,93,.25) 0 2px 5px -1px,rgba(0,0,0,.3) 0 1px 3px -1px}

.title-subtitle{margin-bottom:0}
.title-subtitle span{display:block;font-size:.9rem;color:#000;line-height:1rem;letter-spacing:.25rem;text-transform:uppercase}

/* ================= CLIENTES ================= */
.clientes .clientes__item{display:grid;place-items:center;padding:1rem;border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius);overflow:hidden}
.clientes .clientes__item img{width:100%;aspect-ratio:1/1;object-fit:contain;margin:0 auto;opacity:.75;border-radius:var(--bs-border-radius-sm);transition:opacity var(--transition)}
.clientes .clientes__item:hover img{opacity:1}

/* ================= DEPOIMENTOS ================= */
.testimonial .testimonial-author-image {
  width: 100%;
  max-width: 64px;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 999px;
}

/* Evita o navegador iniciar o "drag" nativo de imagem dentro de qualquer slider Splide, o que trava o arraste manual do carrossel */
.splide__slide img{-webkit-user-drag:none;user-select:none}

/* Mantém a track do Splide em sua própria camada de composição: sem isso, um arraste rápido ou o scroll da página pode deixar os slides em branco até o navegador repintar */
.splide__list{will-change:transform}

/* ================= BANNER (SIG) ================= */
.splide-banner .splide__slide{position:relative;display:flex;align-items:center;min-height:32rem;background:var(--background) center/cover no-repeat;}
.splide-banner .splide__content{position:relative;z-index:1;max-width:640px;padding-block:3rem;}
.splide-banner .splide__content h2{font-size:2.75rem;font-weight:900;line-height:1.2}
.splide-banner .splide__content p{font-size:1.125rem}
@media only screen and (max-width:991.98px){
  .splide-banner .splide__slide{min-height:26rem}
  .splide-banner .splide__content{max-width:100%;padding-block:2rem}
  .splide-banner .splide__content h2{font-size:2rem}
}

/* Banner padrão (exibido enquanto nenhum slide é cadastrado no SIG) */
/* !important pois o Splide (type:fade) define a altura da track/list/slide via JS inline; com 1 slide só, a altura deve seguir o conteúdo, não o cálculo do carrossel */
.splide-banner--default .splide__track,
.splide-banner--default .splide__list,
.splide-banner--default .splide__slide{height:auto!important;margin-bottom: 3rem;}
.splide-banner.splide-banner--default .splide__slide{min-height:32rem;background:var(--bs-tertiary-bg) url('../imagens/home/hero-bg.webp') center right/cover no-repeat}
.banner-hero__content{max-width:660px;display:flex;flex-direction:column;justify-content:center;padding-block:3rem}
.banner-hero__title{font-size:3.5rem;font-weight:900;line-height:1.2;color:var(--primary-color);margin:0 0 1rem}
.banner-hero__title span{color:var(--secondary-color)}
.banner-hero__subtitle{font-size:1.125rem;color:var(--bs-body-color);margin:0 0 2rem}
.banner-hero__features{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem}
.banner-hero__feature{flex:1 1 110px;display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center}
.banner-hero__feature:not(:last-child){border-right:1px solid var(--bs-border-color);padding-right:1.5rem}
.banner-hero__feature-icon{display:block}
/* Sobrescreve ".splide-banner .splide__slide img{width:100%;height:100%}" do Splide (splide.min.css),
   que esticava o ícone (pensada para a imagem de fundo dos slides dinâmicos do SIG, não para este ícone) */
.splide-banner .splide__slide .banner-hero__feature-icon{width:32px;height:32px;object-fit:contain}
.banner-hero__feature span{font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--bs-secondary-color)}
@media only screen and (max-width:991.98px){
  .splide-banner--default .splide__slide{min-height:auto;background-position:right bottom}
  .banner-hero__content{max-width:100%;padding-block:2.5rem}
  .banner-hero__title{font-size:2.25rem}
  .banner-hero__feature{flex:1 1 45%;border-right:none!important;padding-right:0!important}
}

/* ================= HOME: QUEM SOMOS ================= */
.quem-somos-home__image{aspect-ratio:676/426;object-fit:cover}
.quem-somos-home, /* Adicione esta classe na tag <section> ou <div> principal do Quem Somos */
.splide-banner + div,
.splide-banner--default + div {
  padding-top: 5rem;
}

.quem-somos-home__image {
  aspect-ratio: 676/426;
  object-fit: cover;
}

/* ================= HOME: DIFERENCIAIS (Por que nos escolher) ================= */
.diferenciais{background-color:rgba(var(--bs-secondary-rgb),.08)}
.diferenciais__item{text-align:center;padding:.5rem;height:100%}
.diferenciais__item i{font-size:2rem;color:var(--secondary-color-dark);margin-bottom:1rem}
.diferenciais__item h3{font-size:1.125rem;color:var(--bs-secondary-color);margin:0 0 .5rem}
.diferenciais__item p{font-size:.9375rem;color:var(--bs-secondary-color);margin:0}
.diferenciais .col:not(:last-child){border-right:1px solid var(--bs-border-color)}
@media only screen and (max-width:767.98px){
  .diferenciais .col:not(:last-child){border-right:0;border-bottom:1px solid var(--bs-border-color);padding-bottom:1.5rem;margin-bottom:1rem}
}

/* ================= HOME: CERTIFICAÇÕES ================= */
.certificacoes{max-width:73.5rem;margin-inline:auto;padding-inline:7rem}
.certificacoes__badge{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--bs-border-radius-xl)}
.certificacoes .splide__slide{display:flex;align-items:center;justify-content:center}
.certificacoes .splide__arrow{background-color:var(--secondary-color);opacity:1;width:52px;height:52px}
.certificacoes .splide__arrow:hover,.certificacoes .splide__arrow:focus{background-color:var(--secondary-color-dark)}
.certificacoes .splide__arrow svg{fill:var(--bs-white);width:14px;height:26px}
.certificacoes .splide__arrow--prev{left:0}
.certificacoes .splide__arrow--next{right:0}
@media (max-width:1200px){
  .certificacoes{max-width:53.5rem;padding-inline:5rem}
  .certificacoes .splide__arrow{width:44px;height:44px}
  .certificacoes .splide__arrow svg{width:12px;height:22px}
}
@media (max-width:992px){
  .certificacoes{max-width:36rem;padding-inline:3.5rem}
  .certificacoes .splide__arrow{width:40px;height:40px}
  .certificacoes .splide__arrow svg{width:10px;height:20px}
}
@media (max-width:768px){
  .certificacoes{max-width:23.5rem;padding-inline:2.5rem}
  .certificacoes .splide__arrow{width:36px;height:36px}
}
@media (max-width:576px){
  .certificacoes{max-width:15rem;padding-inline:1.75rem}
  .certificacoes .splide__arrow{width:32px;height:32px}
  .certificacoes .splide__arrow svg{width:8px;height:16px}
}

/* ================= HOME: APLICAÇÕES INDUSTRIAIS ================= */
.card--app{background-color:var(--primary-color-darker);border:1px solid rgba(255,255,255,.08);border-radius:var(--bs-border-radius-xl);padding:1.5rem;height:100%;min-height:320px;color:var(--bs-white)}
.card--app__icon{display:block;margin-bottom:1.25rem}
.card--app h3{font-size:1.125rem;font-weight:500;color:var(--bs-white);margin:0 0 .5rem}
.card--app p{font-size:1rem;color:var(--bs-white);margin:0}

/* ================= PRODUTO: APLICAÇÕES ================= */
.applications__item{height:100%}
.applications__icon{display:block;margin-bottom:1rem}
.applications__title{font-size:1.125rem;font-weight:500;color:var(--bs-primary);margin:0 0 .5rem}
.applications__text{font-size:1rem;color:var(--bs-secondary-color);margin:0}


/* ================= EMPRESA (QUEM SOMOS) ================= */

.eyebrow {
  letter-spacing: .175rem;
}

/* CARROSSEL DE IMAGENS */
.quem-somos__carousel {
  width: 95%;
  max-width: 540px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  border-radius: 18px;
  background: var(--bs-tertiary-bg);
}

.quem-somos__carousel-image {
  display: block;
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.quem-somos__carousel .carousel-indicators {
  margin-bottom: .75rem;
}

.quem-somos__carousel .carousel-indicators button {
  width: 9px;
  height: 9px;
  border: 0;
  border-radius: 50%;
  opacity: .65;
}

.quem-somos__carousel .carousel-indicators button.active {
  opacity: 1;
}

.quem-somos__carousel .carousel-control-prev,
.quem-somos__carousel .carousel-control-next {
  width: 12%;
}

/* IMAGEM ORIGINAL ABAIXO DO TEXTO */
.quem-somos__image {
  display: block;
  width: 100%;
  aspect-ratio: 920 / 494;
  object-fit: cover;
}

/* IMAGEM INFERIOR */
.quem-somos__bottom-image {
  display: block;
  width: 100%;
  height: 280px;
  min-height: 0;
  max-height: 320px;
  object-fit: cover;
  border-radius: 16px;
}

/* POLÍTICA DA QUALIDADE */
.quem-somos__policy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  border-radius: 16px;
  line-height: 1.7;
}

/* TEXTOS INSTITUCIONAIS */
.quem-somos__content p {
  line-height: 1.7;
}

/* TABLETS E CELULARES */
@media (max-width: 991.98px) {
  .quem-somos__carousel {
    width: 100%;
    max-width: 100%;
  }

  .quem-somos__carousel-image {
    height: 280px;
  }

  .quem-somos__bottom-image {
    height: auto;
    max-height: none;
    aspect-ratio: 16 / 9;
  }
}

/* CELULARES PEQUENOS */
@media (max-width: 575.98px) {
  .quem-somos__carousel-image {
    height: 220px;
  }

  .quem-somos__policy {
    padding: 1rem;
  }
}


/* ================= TIMELINE (HISTÓRICO DE CERTIFICAÇÕES) ================= */
.timeline__divider{display:flex;align-items:center;justify-content:center;gap:1rem;max-width:460px;margin:1rem auto 0;color:var(--bs-primary)}
.timeline__divider span{flex:1 1 auto;height:1px;background-color:var(--bs-border-color)}

.timeline__track{display:flex;align-items:flex-start;gap:2rem;overflow-x:auto;padding:3.5rem .5rem 1rem}
.timeline__group{flex:1 1 0;min-width:220px}
.timeline__group--pair{min-width:320px}

.timeline__marker{position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.5rem}
.timeline__marker::after{content:'';position:absolute;top:2.375rem;left:50%;width:100%;height:2px;background-color:var(--bs-border-color);z-index:0}
.timeline__group:last-child .timeline__marker::after{display:none}
.timeline__year{position:relative;z-index:1;font-weight:700;color:var(--bs-primary)}
.timeline__dot{position:relative;z-index:1;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:50%;background-color:var(--bs-body-bg);border:2px solid var(--bs-primary);color:var(--bs-primary)}

.timeline__cards{display:flex;gap:1rem;height:100%}
.timeline__card{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius-xl);padding:1.5rem 1rem;box-shadow:0 1px 4px rgba(27,27,27,.05)}
.timeline__card-logo{max-width:100%;max-height:70px;width:auto;object-fit:contain}
.timeline__card hr{width:60%;margin:0;opacity:.15}
.timeline__card-title{margin:0;font-weight:600;color:var(--bs-secondary-color)}
.timeline__card-desc{margin:0;font-size:.8125rem;color:var(--bs-secondary-color)}

.timeline__note{display:flex;align-items:center;gap:1rem;max-width:800px;margin:2.5rem auto 0;padding:1.25rem 1.5rem;background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius-lg);box-shadow:0 2px 8px rgba(27,27,27,.04)}
.timeline__note-icon{display:grid;place-items:center;flex-shrink:0;width:2.75rem;height:2.75rem;border-radius:50%;background-color:var(--bs-tertiary-bg);color:var(--bs-primary)}
.timeline__note p{font-size:.875rem;color:var(--bs-secondary-color)}

@media screen and (max-width:768px) {
  .timeline__track{flex-direction:column;overflow-x:visible;padding-top:1rem}
  .timeline__marker::after{display:none}
  .timeline__group--pair{min-width:0}
}

/* ================= CARD MVV (MISSÃO / VISÃO / VALORES / DIFERENCIAIS) ================= */
.card--mvv{border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius-xl);background-color:var(--bs-body-bg);box-shadow:0 1px 2px rgba(27,27,27,.05)}
.card--mvv .card__icon{color:var(--bs-primary);margin-bottom:1rem}
.card--mvv .card-title{color:var(--bs-primary);font-weight:600;text-transform:uppercase;letter-spacing:.02rem}
.card--mvv .card-text :is(p,li){color:var(--bs-secondary-color)}
.card--mvv .card-text :last-child{margin-bottom:0}

 @media (min-width: 992px) {
    .diferenciais-list {
      column-count: 2;
      column-gap: 2.5rem;
    }
    .diferenciais-list li {
      break-inside: avoid;
      margin-bottom: .5rem;
    }
  }

/* ================= PRODUTO - PÁGINA DE DETALHE ================= */
.prod-gallery .splide__slide{border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius);overflow:hidden;cursor:pointer;transition:var(--transition)}
.prod-gallery .splide__slide.is-active{outline:2px solid var(--bs-primary);outline-offset:-2px}
.product-info h2{font-size:1.75rem;font-weight:600;color:var(--bs-body-color)}
.product-specs dt{font-size:.8125rem;text-transform:uppercase;letter-spacing:.03em;color:var(--bs-secondary-color);font-weight:600;margin-bottom:.25rem}
.product-specs dd{color:var(--bs-body-color)}
.product-description p{color:var(--bs-secondary-color)}
.product-tabs .nav-link{border-radius:50rem;font-weight:500;color:var(--bs-body-color)}
.product-tabs-content{color:var(--bs-secondary-color);line-height:1.7}
.product-tabs-content :is(h1,h2,h3,h4,h5,h6){color:var(--bs-body-color);font-weight:600}

.product-card-gallery {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 70%;
  margin: 20px auto 0;
}

.product-card-gallery__image {
  display: block;
  width: 100%;
  height: auto;
}

.product-card-cover {
  width: 50%;
  margin: 0 auto;
}

.product-card-cover img {
  width: 100%;
  height: auto;
  display: block;
}

/* ============================================================
   PREMIX - CARDS DE USO
   ============================================================ */

.premix-recipes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-top: 25px;
}

.premix-recipe-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  min-height: 250px;
  padding: 28px 22px 22px;
  overflow: hidden;
  text-decoration: none;
  color: #242424;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 18px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .05);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.premix-recipe-card:hover {
  color: #242424;
  border-color: #006b35;
  transform: translateY(-5px);
  box-shadow: 0 12px 28px rgba(0, 0, 0, .10);
}


/* ÍCONE */

.premix-recipe-card__image {
  width: 125px;
  height: 125px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
}

.premix-recipe-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform .25s ease;
}

.premix-recipe-card:hover .premix-recipe-card__image img {
  transform: scale(1.06);
}


/* TÍTULO */

.premix-recipe-card__title {
  display: block;
  max-width: 250px;
  margin: auto;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
}


/* SETA */

.premix-recipe-card__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin-top: 18px;
  color: #fff;
  background: #006b35;
  border-radius: 50%;
  font-size: 13px;
  transition: transform .25s ease, background-color .25s ease;
}

.premix-recipe-card:hover .premix-recipe-card__arrow {
  background: #00552b;
  transform: translateX(4px);
}

.premix-book {
  margin-top: 45px;
}

/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 991px) {

  .premix-recipes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 575px) {

  .premix-recipes {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .premix-recipe-card {
    min-height: 220px;
  }

}


/* MIDIA */

.midia-item {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
  padding: 2rem 0;
}

.midia-thumb {
  flex: 0 0 240px;
  width: 240px;
}

.midia-thumb img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 10px;
}

.midia-info {
  flex: 1;
  padding-top: 1.25rem;
}

.midia-info h2 {
  font-size: 1.35rem;
  font-weight: 600;
  margin: 0 0 1rem;
  text-transform: uppercase;
}

.midia-info h2 a {
  color: inherit;
  text-decoration: none;
}

.midia-info h2 a:hover {
  text-decoration: underline;
}

.midia-info p {
  font-size: 1.05rem;
  margin: 0;
  color: #7a7a7a;
}

.midia-divider {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: .5rem 0;
}

.midia-divider::before,
.midia-divider::after {
  content: "";
  flex: 1;
  border-top: 2px dotted #b5b5b5;
}

.midia-divider svg {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
}

@media (max-width: 991.98px) {
  .midia-thumb {
    flex: 0 0 200px;
    width: 200px;
  }

  .midia-info h2 {
    font-size: 1.15rem;
  }

  .midia-info p {
    font-size: 1rem;
  }
}

@media (max-width: 575.98px) {
  .midia-item {
    flex-direction: column;
    gap: 1rem;
    padding: 1.5rem 0;
  }

  .midia-thumb {
    flex: none;
    width: 100%;
    max-width: 280px;
  }

  .midia-info {
    padding-top: 0;
  }

  .midia-info h2 {
    font-size: 1.05rem;
  }
}

/*====== REFERENCIA MERCADO ======*/
.referencia-mercado {
  padding: 70px 20px 80px;
  background: #fff;
}

.referencia-container {
  max-width: 1300px;
  margin: 0 auto;
  text-align: center;
}

.referencia-titulo {
  margin: 0 0 20px;
  font-size: 32px;
  font-weight: 600;
  color: #00522b;
}

.referencia-texto {
  max-width: 1000px;
  margin: 0 auto 40px;
  font-size: 17px;
  line-height: 1.6;
  color: #555;
}

/* Alterado para Flexbox para centralizar perfeitamente os vídeos */
.referencia-videos {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 30px;
}

.referencia-card {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  background: #00522b;
  border-radius: 14px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  width: 100%;
  max-width: 540px; /* Limita a largura para não ficarem gigantescos em telas grandes */
  box-sizing: border-box;
}

.referencia-video {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
  overflow: hidden;
  border-radius: 8px; /* Adicionado um arredondamento interno opcional para o vídeo */
}

.referencia-video iframe,
.referencia-video video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  object-fit: cover;
}

/* Tablet */
@media (max-width: 992px) {
  .referencia-videos {
    flex-direction: column; /* Empilha os vídeos um abaixo do outro no tablet */
    align-items: center;
  }
  .referencia-card { 
    max-width: 600px;
    padding: 28px; 
  }
}

/* Celular */
@media (max-width: 576px) {
  .referencia-mercado { padding: 50px 16px 60px; }
  .referencia-titulo { font-size: 26px; }
  .referencia-texto { font-size: 15px; }
  .referencia-card { padding: 16px; }
}

/* Centralizar títulos dos cards de produtos */
.card--product .card-title {
    width: 100%;
    text-align: center !important;
    align-self: center;
}

/* TERCEIRIZAÇÃO — imagem maior */
.card.card--terceirizacao {
    grid-template-columns: minmax(0, 45%) minmax(0, 1fr) !important;
    column-gap: 20px !important;
}

.card.card--terceirizacao > .card--blog__image.product-card-cover {
    width: 100% !important;
    padding: 10px !important;
}

.card.card--terceirizacao > .card--blog__image.product-card-cover img.card-img-top {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
}

.card.card--terceirizacao > .card-body {
    padding-right: 20px !important;
}


@media (max-width: 767px) {
    .card.card--terceirizacao {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .card.card--terceirizacao > .card--blog__image.product-card-cover,
    .card.card--terceirizacao > .card-body {
        grid-column: 1 !important;
        grid-row: auto !important;
    }

    .card.card--terceirizacao > .card-body {
        padding: 16px !important;
    }
}

/* Garante que a imagem principal e da galeria na página de detalhe apareçam inteiras */
.prod-inc-custom-cover .splide__slide img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center;
}

/* ============================================================
   AJUSTE FINO DO BANNER NO MOBILE
   ============================================================ */
@media only screen and (max-width: 991.98px) {
  /* Mantém a imagem cobrindo toda a área do slide */
  .splide-banner.splide-banner--default .splide__slide {
    min-height: auto !important;
    background-size: cover !important;
    background-position: center bottom !important;
    padding: 1.5rem 1rem 2rem !important;
  }

  /* Reduz o container do conteúdo */
  .banner-hero__content {
    padding-block: 0.5rem !important;
    max-width: 100% !important;
  }

  /* Reduz o título principal */
  .banner-hero__title {
    font-size: 1.65rem !important;
    line-height: 1.25 !important;
    margin-bottom: 0.75rem !important;
  }

  /* Reduz o texto descritivo */
  .banner-hero__subtitle {
    font-size: 0.875rem !important;
    line-height: 1.4 !important;
    margin-bottom: 1.25rem !important;
  }

  /* Ajusta os ícones e recursos do banner */
  .banner-hero__features {
    gap: 0.75rem !important;
    margin-bottom: 1.25rem !important;
  }

  .banner-hero__feature span {
    font-size: 0.6875rem !important;
  }

  /* Ajusta a margem do topo da próxima seção para não encostar nos botões */
  .splide-banner + div,
  .splide-banner--default + div {
    padding-top: 18rem !important;
  }
}


/*========== MENU MOBILE ================*/
@media screen and (max-width: 576px) {
  .nav-item .dropdown-menu {
    display: none !important;
  }
}
