:root{
    --brand-2:#9c2c50; --stroke:#edeeef;
}

/* =========================================
   Container base
   ========================================= */
.wrap {
  width: min(1120px, 92vw);
  margin-inline: auto;
}

/* =========================================
   Seções base
   ========================================= */
.section {
  padding: 2.5rem 0;
  background: #fff;
}

.section--alt {
  background: var(--stroke);
}

.section > .wrap > h3 {
  margin: .4rem 0 1.8rem 0;
  font-size: clamp(1.6rem, 2.8vw, 2rem);
  color: #9c2c50;
}

.section > .wrap > p {
  color: black;
  text-align: center;
}

.prose {
  color: #334155;
  line-height: 1.8rem;
  max-width: 80ch;
}

.prose p + p {
  margin-top: .85rem;
}

/* =========================================
   Grid de conteúdo (texto + mídia)
   ========================================= */
.content-grid {
  display: grid;
  grid-template-columns: 1.3fr .7fr;
  gap: 4rem;
}

@media (max-width: 900px) {
  .content-grid { grid-template-columns: 1fr; }
}

/** DIFERENTE NO GERMICIDA */
#germicida .content-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 1.5rem;
  align-items: start;
}

#germicida .prose {
    max-width: 98%;
}

/* =========================================
   Mídia (figure, img)
   ========================================= */
.media img {
  max-width: 100%;
  width: auto;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 4px 18px rgba(0,0,0,.06);
}

.media figcaption {
  font-size: .9rem;
  color: #64748b;
  margin-top: .5rem;
}

/* ===== Mídia "inline" integrada ao texto ===== */
.prose .media--inline {
  float: right;
  /* largura responsiva com limites mínimo/máximo */
  max-width: 60%;
  margin: 1.4rem 0 1rem 2.2rem;
}

.prose .media--inline.left {
  float: left;
  margin: .25rem 1.25rem 1rem 0;
}

/* Garante que o float não “vaze” para blocos seguintes */
.prose::after {
  content: "";
  display: table;
  clear: both;
}

/* Mobile: imagem vira bloco cheio, sem float */
@media (max-width: 900px) {
  .prose .media--inline,
  .prose .media--inline.left {
    float: none;
    max-width: 100%;
    margin: .75rem 0 1rem;
  }
}


/* =========================================
   Hero
   ========================================= */
.hero {
  padding: 2.25rem 0 1.25rem;
  background: #0f172a;    /* azul bem escuro */
  color: #fff;
}

.hero__title {
  margin: 0;
  font-size: clamp(2rem, 4vw, 2.6rem);
  letter-spacing: .2px;
}

.hero__subtitle {
  margin-top: .35rem;
  color: rgba(255,255,255,.85);
}

/* =========================================
   Aplicações (5 colunas em círculos)
   ========================================= */
/* Grid base das aplicações */
.apps-grid {
  list-style: none;
  padding: 0;
  margin: .75rem 0 0 0;
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 1rem;
  justify-items: center; /* centraliza os círculos na célula */
}

/* Responsividade das colunas */
@media (max-width: 1100px) {
  .apps-grid { grid-template-columns: repeat(3, minmax(120px, 1fr)); }
}

@media (max-width: 700px) {
  .apps-grid { grid-template-columns: repeat(2, minmax(120px, 1fr)); }
}

@media (max-width: 420px) {
  .apps-grid { grid-template-columns: 1fr; }
}

#aplicacoes {
    margin-bottom: 2rem;
}

/* Círculo individual */
/*.app-circle {
  width: 100%;
  max-width: 170px;          
  aspect-ratio: 1 / 1;       
  border-radius: 9999px; 
  background: #ffffff;
  border: 2px solid #e5e7eb; 
  box-shadow: 0 4px 18px rgba(0,0,0,.06);
  display: grid;
  place-items: center;       
  text-align: center;
  padding: 1rem;
  transition: transform .18s ease, box-shadow .18s ease;
  font-weight: 700;
  color: #0f172a;
}

.app-circle span {
  display: inline-block;
  line-height: 1.2;
}

 Hover/foco com leve destaque (acessível)
.app-circle:hover,
.app-circle:focus-within {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,.10);
}*/

#controle-contaminacao h4 {
  color: #9a9a9a;
}


/* =========================================
   CTA final
/* ========================================= */
.cta {
  background: #0f172a;
  color: #fff;
  padding: 3rem 0;
}

.cta__box {
  text-align: center;
  padding-bottom: 3rem;
}

.cta__box h2 {
}

.cta__box p {
  color: rgba(255,255,255,.85);
  margin-bottom: 3.6rem;
  margin-top: 2.6rem;
}

.btn-primary{
  margin: 4rem auto 2rem auto;
  padding:.75rem 1.15rem;
  border-radius: .80rem;
  background-color: var(--brand-2) !important;
  border: transparent;
  color: #FFFFFF;
  font-weight: 600;
  overflow: hidden;
  clear: both;
}

.btn-primary:hover{
  box-shadow: 1px 1px 0.8px var(--stroke);
  text-decoration: none;
}

/* =========================================
   Botão de LINK
   ========================================= */
.btn.btn-link {
  margin-top: .4rem;
  display: inline-block;
  padding: .4rem .6rem;
  background: #2aa8de;
  color: #FFFFFF;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 600;
  float: right;
}

.btn.btn-link:hover {
  box-shadow: 1px 1px 0.8px #434343;
  text-decoration: none; /* mantém sem sublinhado no hover */
  color: #f5f5f5;
}

.app-circle i {
  font-size: 3rem;   /* deixa o ícone grande */
  margin-bottom: 0.6rem;
  color: black
}


.aplicacoes {
  text-align: center;
  margin: 50px 0;
}

.aplicacoes h2 {
  color: #800040; /* cor título */
  margin-bottom: 10px;
}

.aplicacoes p {
  color: #000000;
  margin-bottom: 40px;
  text-align: center;
}

#aplicacoes ul {
  color: #000000;
}

.aplicacoes-grid {
  display: flex;
  justify-content: center;
  gap: 60px; /* espaço entre os itens */
  flex-wrap: wrap; /* quebra em telas menores */
}

.aplicacao-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 150px;
}

.aplicacao-item img {
  width: 80px;
  height: auto;
  margin-bottom: 10px;
}

.aplicacao-item span {
  font-weight: bold;
  color: #800040; /* mesma cor do exemplo */
}

