:root {
  /* Fundo escuro principal */
  --clr-bg-dark:    #0D0D0D;  
  /* Texto claro principal */
  --clr-text:       #EFEFEF;  
  /* Branco puro */
  --clr-white:      #FFFFFF;
  /* Roxo vibrante */
  --clr-purple:     #6C63FF;
  /* Azul ciano */
  --clr-cyan:       #00D8FF;
  /* Degradê principal */
  --gradient-main:  linear-gradient(135deg, var(--clr-purple) 0%, var(--clr-cyan) 100%);
  /* Sombra suave em contexto escuro */
  --shadow-dark:    rgba(0,0,0,0.6);
  /* Sombra leve em contexto claro */
  --shadow-light:   rgba(0,0,0,0.1);
  
  /* Fontes permanecem Poppins / padrão */
  --ff-base: 'Poppins', sans-serif;
  --ff-head: 'Poppins', sans-serif;
}
/* IMPORTAÇÃO FONTES (no <head>) */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap');
body {
  background-color: var(--clr-bg-dark);
  color:            var(--clr-text);
  font-family:      var(--ff-base);
}

/* RESET BÁSICO */
* { margin:0; padding:0; box-sizing:border-box; }
body {
  font-family: "Poppins", sans-serif;;
  color: var(--clr-primary);
}
/* ——— 0. HEADER e LOGO ——— */
#site-header {
  background-color: #faf2e7;      /* mantém seu tom claro */
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);  /* sombra suave */
}

/* Logo */
#site-header .logo {
  display: block;
  height: auto;
  width: auto;
  max-height: 50px;              /* altura máxima no desktop */
  max-width: 100%;                /* nunca ultrapassa o container */
  transition: max-height .3s ease;
}

/* Tablet */
@media (max-width: 991px) {
  #site-header .logo {
    max-height: 100px;
  }
}

/* Mobile */
@media (max-width: 575px) {
  #site-header {
    padding: 1.5rem 0;            /* um pouco menos de espaçamento vertical */
  }
  #site-header .logo {
    max-height: 80px;
  }
}

/* ============================= */
/* 1. HERO – ULTRAMODERNO DARK   */
/* ============================= */
.section-hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  padding: 2rem 0;
  position: relative;
  overflow: hidden;

  /* degradê + fundo escuro de base */
  background:
    linear-gradient(
      135deg,
      rgba(108,  99, 255, 0.9) 0%,
      rgba(0, 216, 255, 0.9)   100%
    ),
    var(--clr-bg-dark);
}

/* ---------- Shapes decorativos ---------- */
.section-hero::before,
.section-hero::after {
  content: '';
  position: absolute;
  width: 250px;
  height: 250px;
  background: rgba(255,255,255,0.1);  /* mais visíveis */
  transform: rotate(45deg);
  border-radius: 8px;
  filter: blur(30px);
}
.section-hero::before { top: -60px;  left: -60px; }
.section-hero::after  { bottom: -60px; right: -60px; }

/* ---------- Texto principal ---------- */
.hero-tagline {
  font-size: 1rem;
  color: var(--clr-white);
  opacity: 0.85;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .05em;
  margin-bottom: 1rem;
}

.hero-heading {
  font-family: var(--ff-head);
  font-size: 3rem;
  line-height: 1.2;
  color: var(--clr-white);
  margin-bottom: 1rem;
}
@media (max-width: 767px) {
  .hero-heading { font-size: 2.25rem; }
}

/* ---------- Destaques inline ---------- */
.highlight {
  display: inline-block;
  background:linear-gradient(135deg, #ddaa1e 0%, #fcd302 100%) ;
  color: var(--clr-bg-dark);
  padding: 0.1rem 0.4rem;
  border-radius: .25rem;
  font-weight: 600;
}

/* ---------- Subheadline ---------- */
.hero-subheading {
  font-size: 1.125rem;
  color: rgba(255,255,255,0.9);
  max-width: 500px;
  line-height: 1.5;
  margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
  .hero-subheading {
    max-width: 100%;
    font-size: 1rem;
  }
}

/* ---------- Lista de Features ---------- */
.hero-features {
  list-style: none;
  margin: 0 0 2rem;
  padding: 0;
}
.hero-features li {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: .75rem;
  color: var(--clr-white);
  font-size: 1rem;
  font-weight: 500;
}
.hero-features li::before {
  content: '✔';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--clr-purple);
  font-weight: bold;
}

/* ——— Efeito Pulse para o botão hero ——— */

@keyframes pulse {
  0%   { transform: scale(1);   box-shadow: 0 8px 24px var(--shadow-dark); }
  50%  { transform: scale(1.05); box-shadow: 0 12px 36px var(--shadow-dark); }
  100% { transform: scale(1);   box-shadow: 0 8px 24px var(--shadow-dark); }
}

.btn-hero {
  display: inline-block;
  background-color: var(--clr-purple);
  color: var(--clr-white);
  font-weight: 700;
  padding: .85rem 1.75rem;
  border: none;
  border-radius: .5rem;
  box-shadow: 0 8px 24px var(--shadow-dark);
  text-decoration: none;
  
  /* animação de pulso */
  animation: pulse 3s ease-in-out infinite;
  transition: background .3s, transform .2s, box-shadow .3s;
}

.btn-hero:hover {
  background-color: var(--clr-cyan);
  color: var(--clr-bg-dark);
  /* pausa o pulse no hover (opcional) */
  animation-play-state: paused;
  transform: translateY(-3px) scale(1.05);
  box-shadow: 0 12px 36px var(--shadow-dark);
}

/* ---------- Imagem do Hero ---------- */
.hero-image .image-wrapper {
  position: relative;
  display: inline-block;
}
.hero-image .image-wrapper::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.3);
  border-radius: .75rem;
}
.hero-image img {
  display: block;
  width: 100%;
  max-width: 450px;
  height: auto;
  border-radius: .75rem;
  box-shadow: 0 12px 32px var(--shadow-dark);
}

/* ---------- Shape decorativo sobre a imagem ---------- */
.hero-image .img-shape {
  content: '';
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 100px;
  height: 100px;
  background: var(--clr-cyan);
  border-radius: 50%;
  opacity: .6;
  filter: blur(8px);
}

/* ---------- Responsividade ---------- */
@media (max-width: 767px) {
  .section-hero {
    padding-top: 3rem;
    padding-bottom: 3rem;
    text-align: center;
  }
  .hero-text { margin-bottom: 2rem; }
  .hero-features li { font-size: .95rem; }
}
		
		/*FIM HERO*/
		
/* ————————————————
   2. AMPLIAÇÃO – AGITAR A DOR
   ———————————————— */
.section-agitate {
  --gap: 2rem;
  background: #f9fbfd;       /* tom muito claro para contraste */
  padding: 5rem 1rem;
}

.section-agitate .section-header {
  max-width: 600px;
  margin: 0 auto 3rem;
  text-align: center;
}
.section-agitate .section-header h2 {
  font-family: "Poppins", sans-serif;
  font-size: 2.25rem;
  color: var(--clr-primary);
  margin-bottom: .5rem;
}
.section-agitate .section-header p {
  font-family: font-family: "Poppins", sans-serif;
  font-size: 1rem;
  color: var(--clr-primary);
  line-height: 1.6;
}

/* grid responsivo */
.agitate-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--gap);
}

/* cards */
.agitate-item {
  background: #fff;
  border-left: 4px solid var(--clr-secondary);
  border-radius: 6px;
  padding: 2rem 1.5rem;
  box-shadow: 0 4px 16px rgba(0,0,0,0.04);
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp 0.6s ease-out forwards;
}
.agitate-item:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.08);
}

/* delay por posição */
.agitate-item:nth-child(1) {
  animation-delay: 0.1s;
}
.agitate-item:nth-child(2) {
  animation-delay: 0.2s;
}
.agitate-item:nth-child(3) {
  animation-delay: 0.3s;
}
.agitate-item:nth-child(4) {
  animation-delay: 0.4s;
}
.agitate-item:nth-child(5) {
  animation-delay: 0.5s;
}
.agitate-item:nth-child(6) {
  animation-delay: 0.6s;
}
.agitate-item:nth-child(7) {
  animation-delay: 0.7s;
}
.agitate-item:nth-child(8) {
  animation-delay: 0.8s;
}
.
.agitate-item .agitate-icon {
  font-size: 2.5rem;
  margin-bottom: 1rem;
}
.agitate-item h3 {
  font-family: "Poppins", sans-serif;
  font-size: 1.25rem;
  color: var(--clr-primary);
  margin-bottom: .5rem;
}
.agitate-item p {
  font-family: "Poppins", sans-serif;
  font-size: .95rem;
  color: var(--clr-primary);
  line-height: 1.5;
}

/* animação */
@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* responsividade */
@media (max-width: 767px) {
  .section-agitate {
    padding: 3rem 1rem;
  }
  .section-agitate .section-header h2 {
    font-size: 1.75rem;
  }
  .section-agitate .section-header p {
    font-size: .95rem;
  }
  .agitate-item {
    padding: 1.5rem 1rem;
  }
  .agitate-item h3 {
    font-size: 1.1rem;
  }
  .agitate-item p {
    font-size: .9rem;
  }
}
		
		/*Fim BLOCO 2*/

		
		
/* ——— 3. Solução ——— */
.section-solution {
  background-color: var(--clr-primary);
  color: var(--clr-white);
  padding: 80px 0;
}
.section-solution .solution-title {
  font-family: "Poppins", sans-serif;
  font-size: 2.5rem;
  margin-bottom: 1rem;
}
.section-solution .solution-desc {
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 1.5rem;
  color: var(--clr-support);
}
.section-solution .solution-features {
  list-style: none;
  padding: 0;
  margin-bottom: 2rem;
}
.section-solution .solution-features li {
  position: relative;
  padding-left: 1.8rem;
  margin-bottom: .75rem;
  font-size: 1rem;
  color: var(--clr-support);
}
.section-solution .solution-features li::before {
  content: '✔';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--clr-secondary);
  font-weight: bold;
}
.section-solution .btn-solution {
  display: inline-block;
  background: linear-gradient(135deg, #ddaa1e 0%, #fcd302 100%);
  color: #000
  font-weight: 600;
  padding: .75rem 1.5rem;
  border-radius: .25rem;
  text-decoration: none;
  transition: background .3s, color .3s;
}
.section-solution .btn-solution:hover {
  background-color: var(--clr-white);
  color: var(--clr-primary);
}
/* ——— Imagem da seção “Solution” alinhada ao tamanho do Header ——— */
.section-solution .solution-img {
  display: block;
  width: auto;           /* mantém proporção */
  max-width: 100%;       /* não estoura o container */
  max-height: 500px;     /* igual ao max-height da logo no desktop */
  margin: 0 auto;        /* centra horizontalmente */
  box-shadow: 0 8px 24px rgba(0,0,0,0.1);
  transition: max-height .3s ease;
}

/* Tablet */
@media (max-width: 991px) {
  .section-solution .solution-img {
    max-height: 500px;   /* mesmo ajuste da logo em tablet */
  }
}

/* Mobile */
@media (max-width: 575px) {
  .section-solution .solution-img {
    max-height: 500px;    /* segue o mesmo padrão do header */
  }
}

/* responsividade */
@media (max-width: 767px) {
  .section-solution {
    padding: 50px 0;
  }
  .section-solution .solution-title {
    font-size: 2rem;
  }
  .section-solution .solution-desc,
  .section-solution .solution-features li {
    font-size: .95rem;
  }
}
		
		
		/*FIM BLOCO 3*/

/* ——— 4-7. TRUST – AUTORIDADE, PROVA SOCIAL, GALERIA E VÍDEOS ——— */
.sect-trust {
  background: var(--clr-white);
  color: var(--clr-primary);
  padding: 6rem 1rem;
}
@media (max-width: 575px) {
  .sect-trust { padding: 2.5rem 1rem; }
}

/* Espaçamento entre linhas internas */
.sect-trust .row {
  row-gap: 3.5rem;
}
.sect-trust .row + .row {
  margin-top: 4rem;
}

/* TÍTULOS */
.sect-trust .section-title,
.sect-trust .subtitle {
  font-family: var(--ff-head);
  color: var(--clr-primary);
  text-align: center;
}
.sect-trust .section-title {
  font-size: 2.5rem;
  line-height: 1.2;
  margin-bottom: 2.5rem;
}
.sect-trust .subtitle {
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
}
@media (max-width: 575px) {
  .sect-trust .section-title { font-size: 2rem; margin-bottom: 1.75rem; }
  .sect-trust .subtitle       { font-size: 1.25rem; }
}

/* ===== AUTORIDADE (NÚMEROS) ===== */
.sect-trust .authority-card {
  background: var(--clr-support);
  padding: 1.5rem .75rem;
  border-radius: .5rem;
  text-align: center;
  box-shadow: 0 6px 20px rgba(0,0,0,0.05);
  transition: transform .3s;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.sect-trust .authority-card:hover {
  transform: translateY(-4px);
}
.sect-trust .authority-icon {
  font-size: 2rem;
  color: var(--clr-secondary);
  margin-bottom: .5rem;
}
.sect-trust .authority-number {
  font-family: var(--ff-head);
  font-size: 1.75rem;
  color: var(--clr-primary);
  margin-bottom: .25rem;
}
.sect-trust .authority-label {
  font-size: .9rem;
  color: #555;
  margin: 0;
}

/* ===== RESPONSIVIDADE GERAL ===== */
@media (max-width: 767px) {
  .sect-trust .row + .row {
    margin-top: 3rem;
  }
}
		
/*==========FIM do BLOCO 4=============*/

/* —— 4.2. Testemunhos —— */


/* ——— Sección Testimonios – Grid Boxed ——— */
#sect-testimonials {
  background: var(--gradient-main);
  padding: 6rem 0 4rem;
  overflow: visible;
  position: relative;
}
#sect-testimonials .container {
  overflow: visible;
  position: relative;
}

/* Grid responsivo de cards */
.testimonials-grid {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  margin: 0;
  padding: 0;
}

/* Cada card */
.testimonial-card {
  background: rgba(255,255,255,0.1);
  border-radius: 1rem;
  box-shadow: 0 8px 32px rgba(0,0,0,0.2);
  color: #fff;
  padding: 3rem 1.5rem 2rem;
  position: relative;
  overflow: visible;
  margin-top: 3rem; /* espaço para logo */
}

/* Logo flutuante */
.testimonial-source {
  position: absolute;
  top: 0; left: 50%;
  transform: translate(-50%, -50%);
  width: 64px; height: 64px;
  background: #fff;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 16px rgba(0,0,0,0.2);
}
.testimonial-source img,
.testimonial-source i {
  max-width: 60%;
  max-height: 60%;
}

/* Texto e autor */
.testimonial-text {
  font-style: italic;
  font-size: 1rem;
  line-height: 1.5;
  margin-top: 1.5rem;
}
.testimonial-author {
  margin-top: 1rem;
  text-align: right;
  font-weight: 600;
  font-size: .9rem;
  color: var(--clr-cyan);
}

/* Responsividade adicional */
@media (max-width: 576px) {
  #sect-testimonials { padding: 4rem 0 3rem; }
  .testimonial-card {
    padding: 2.5rem 1rem 1.5rem;
    margin-top: 2.5rem;
  }
}


/*==========FIM do BLOCO 4.2 Testemunhos=============*/

/* ================================
   Metodologia Softec – Estilo Boxed
   ================================ */
#sect-methodology {
  background: #000;
  color: #fff;
  padding: 6rem 0 4rem;
}
#sect-methodology .container {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 1rem;
}

/* --- Título --- */
.methodology-title {
  font-family: var(--ff-head);
  font-size: 2.75rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 3rem;
  position: relative;
}
.methodology-title span {
  background: linear-gradient(90deg, #ddaa1e, #fcd302);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* --- Passos --- */
.methodology-steps {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 2rem;
  margin-bottom: 4rem;
}
@media (max-width: 992px) {
  .methodology-steps { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 576px) {
  .methodology-steps { grid-template-columns: 1fr; }
}

.step {
  background: #111;
  border: 2px solid #ddaa1e;
  border-radius: .75rem;
  padding: 2.5rem 1.5rem 1.5rem;
  position: relative;
  text-align: center;
  transition: transform .3s, box-shadow .3s;
}
.step:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.8);
}
.step .icon {
  width: 60px; height: 60px;
  background: linear-gradient(135deg, #ddaa1e 0%, #fcd302 100%);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  color: #000;
  font-size: 1.5rem;
  position: absolute;
  top: -30px; left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 4px 12px rgba(0,0,0,0.5);
}
.step h3 {
  margin-top: 2.5rem;
  font-size: 1.25rem;
  color: #fcd302;
}
.step p {
  margin-top: .75rem;
  font-size: 1rem;
  line-height: 1.6;
  color: rgba(255,255,255,0.85);
}

/* --- Benefícios --- */
.methodology-benefits {
  text-align: center;
  margin-bottom: 4rem;
}
.methodology-benefits h3 {
  font-size: 2rem;
  margin-bottom: 1.5rem;
  color: #fff;
}
.benefits-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(180px,1fr));
  gap: 2rem;
}
.benefit {
  padding: 1rem;
}
.benefit-icon {
  width: 50px; height: 50px;
  background: linear-gradient(135deg, #ddaa1e 0%, #fcd302 100%);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 1rem;
  font-size: 1.25rem;
  color: #000;
  box-shadow: 0 4px 12px rgba(0,0,0,0.4);
}
.benefit p {
  margin: 0;
  color: #fff;
  font-size: .95rem;
  line-height: 1.4;
}

/* --- Diferenciais --- */
.methodology-differentials h3 {
  font-size: 1.75rem;
  text-align: center;
  margin-bottom: 1rem;
  color: #fff;
}
.diff-list {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
  gap: .5rem 1rem;
}
.diff-list li {
  position: relative;
  padding-left: 1.75rem;
  color: #fff;
}
.diff-list li::before {
  content: "✔";
  position: absolute;
  left: 0; top: 0;
  color: #ddaa1e;
}

/* --- Mobile Adjusts --- */
@media (max-width: 576px) {
  #sect-methodology { padding: 4rem 0 2rem; }
  .methodology-title { font-size: 2rem; }
  .step { padding: 2rem 1rem 1rem; }
  .benefits-grid { gap: 1.5rem; }
  .diff-list { grid-template-columns: 1fr; }
}


/*==========FIM do BLOCO 4.2 Metodologia=============*/

/* —— ================5. OFERTA ESPECIAL=============== —— */

/* =====================================
   CTA Metodologia – Integração & Escala
   ===================================== */
#sect-cta-method {
  background: linear-gradient(135deg, #ddaa1e 0%, #fcd302 100%);
  color: #fff;
  position: relative;
  overflow: hidden;
}
#sect-cta-method .container {
  max-width: 960px;
  margin: 0 auto;
  padding: 4rem 1rem 6rem;
  position: relative;
  z-index: 1;
}

/* título principal */
.cta-methodology-title {
  font-size: 2.75rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1rem;
  color: #111;
}
.cta-methodology-title span {
  display: inline-block;
  background: #111;
  padding: 0.2rem 0.6rem;
  border-radius: 0.25rem;
  color: #fcd302;
}

/* subtítulo */
.cta-methodology-subtitle {
  font-size: 1.1rem;
  margin-bottom: 2.5rem;
  color: rgba(17,17,17,0.85);
}

/* features rápidas */
.cta-methodology-features {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5rem 2.5rem;
  list-style: none;
  padding: 0;
  margin-bottom: 3rem;
}
.cta-methodology-features li {
  display: flex;
  align-items: center;
  font-size: 1rem;
  font-weight: 600;
  color: #111;
}
.cta-methodology-features li i {
  font-size: 1.5rem;
  margin-right: 0.5rem;
}

/* botão CTA */
.btn-cta-method {
  display: inline-block;
  background: #111;
  color: #fcd302;
  font-size: 1.15rem;
  font-weight: 700;
  text-transform: uppercase;
  padding: 0.9rem 2.5rem;
  border-radius: 50px;
  border: 2px solid rgba(255,255,255,0.3);
  transition: background 0.3s, color 0.3s, transform 0.3s;
}
.btn-cta-method:hover {
  background: #fff;
  color: #111;
  transform: translateY(-3px);
  text-decoration: none;
}

/* shape inferior para conexão com próxima seção */
#sect-cta-method::after {
  content: "";
  position: absolute;
  bottom: 0; left: 0;
  width: 100%; height: 100px;
  background: #000; /* cor da seção seguinte */
  clip-path: polygon(0 30%, 100% 0, 100% 100%, 0 100%);
}

/* responsividade */
@media(max-width: 767px) {
  .cta-methodology-title {
    font-size: 2rem;
  }
  .cta-methodology-features {
    gap: 1rem 1.5rem;
  }
  .btn-cta-method {
    font-size: 1rem;
    padding: 0.8rem 2rem;
  }
}
		
/*============FIM do BLOCO 5================*/


		
/* —— 8. FAQ —— */
.section-faq {
  background: #FFFFFF;
  padding: 5rem 1rem;
}
.section-faq .container {
  max-width: 800px;
  margin: 0 auto;
}
.faq-title {
  font-family: "Poppins", sans-serif;
  font-size: 2.25rem;
  color: #1B2A41;
  text-align: center;
  margin-bottom: 2rem;
}
.faq-list details {
  border-bottom: 1px solid #E0E4E8;
  padding: 1rem 0;
}
.faq-item summary {
  list-style: none;
  cursor: pointer;
  position: relative;
  font-family: 'Poppins', sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: #1B2A41;
  padding-right: 2rem;
}
.faq-item summary::marker {
  /* remove marcador padrão */
  content: "";
}
.faq-item summary::after {
  content: '+';
  position: absolute;
  right: 0;
  top: 0;
  font-size: 1.25rem;
  line-height: 1;
  color: #E29D2B;
  transition: transform .3s;
}
.faq-item[open] summary::after {
  content: '–';
  transform: rotate(0deg);
}
.faq-content {
  margin-top: .75rem;
  padding-left: 1rem;
}
.faq-content p {
  font-family: 'Poppins', sans-serif;
  font-size: .95rem;
  line-height: 1.6;
  color: #1B2A41;
  margin: 0;
}

/* responsivo */
@media (max-width: 767px) {
  .faq-title {
    font-size: 2rem;
  }
  .faq-item summary {
    font-size: .95rem;
  }
  .faq-content p {
    font-size: .9rem;
  }
}		
		
/* FOOTER */
/* —— RODAPÉ —— */
.site-footer {
  background: #1B2A41;        /* azul JurMinds */
  color:      #E29D2B;        /* amarelo JurMinds */
  padding:    1.5rem 1rem;
  text-align: center;
}
.site-footer .container {
  max-width: 960px;
  margin: 0 auto;
}
.site-footer p {
  font-family: 'Poppins', sans-serif;
  font-size: 0.875rem;
  line-height: 1.4;
  margin: 0;
}
/* —— BARRA DE DESENVOLVIMENTO —— */
.dev-bar {
  background: #2B2B2B;        /* cinza bem escuro */
  padding: 0.75rem 1rem;
  text-align: center;
}
.dev-bar p {
  margin: 0;
  font-family: 'Poppins', sans-serif;
  font-size: 0.875rem;
  color: #FFFFFF;            /* texto em branco */
}
.dev-bar a {
  color: #fff;            /* amarelo da JurMinds para destaque */
  text-decoration: none;
  font-weight: 400;
}
.dev-bar a:hover {
  text-decoration: underline;
}

/* responsividade */
@media (max-width: 576px) {
  .dev-bar p {
    font-size: 0.8rem;
  }
}
/* responsividade */
@media (max-width: 576px) {
  .site-footer p {
    font-size: 0.8rem;
  }
}
		/* —— 6. GARANTIA INCONDICIONAL —— */
.section-guarantee {
  background: #F6F8FA;    /* fundo claro */
  padding: 5rem 1rem;
}
.section-guarantee .container {
  max-width: 800px;
  margin: 0 auto;
}
.guarantee-card {
  background: #FFFFFF;           /* branco */
  border-left: 6px solid #E29D2B; /* destaque dourado */
  border-radius: .5rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 2rem;
}
.guarantee-icon {
  background: #E29D2B; /* dourado */
  color:      #FFFFFF;
  font-size: 2rem;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.guarantee-content h3 {
  font-family: "Poppins", sans-serif;
  font-size: 1.75rem;
  color: #1B2A41;    /* azul-escuro */
  margin: 0 0 .5rem;
}
.guarantee-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 1rem;
  color: #1B2A41;
  margin: 0;
}

/* responsividade */
@media (max-width: 767px) {
  .guarantee-card {
    flex-direction: column;
    text-align: center;
  }
  .guarantee-icon {
    margin-bottom: 1rem;
  }
  .guarantee-content h3 {
    font-size: 1.5rem;
  }
  .guarantee-content p {
    font-size: .95rem;
  }
}
/* ——— 7. GARANTIA DO FABRICANTE ——— */
.warranty-section {
  background: #fff;
  color: var(--clr-primary);
  padding-top: 75px;
  padding-bottom: 75px;
}
.warranty-section .warranty-title {
  font-family: var(--ff-head); font-size: 2rem;
  margin-bottom: 1rem;
}
.warranty-section .warranty-list {
  list-style: none; padding: 0; margin-bottom: 1.5rem;
}
.warranty-section .warranty-list li {
  position: relative; padding-left: 1.5rem; margin-bottom: .75rem;
}
.warranty-section .warranty-list li::before {
  content: '✔'; position: absolute; left: 0; top: 0;
  color: var(--clr-secondary); font-weight: bold;
}
.btn-warranty {
  display: inline-block; background: var(--clr-secondary);
  color: var(--clr-white); padding: .75rem 1.5rem;
  border-radius: .25rem; text-decoration: none;
}
.btn-warranty:hover {
  background: var(--clr-primary);
}
/* Ajuste da imagem circular na seção de garantia */
.warranty-img {
  max-width: 100%;
  width: 300px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 50%;
}
/* ——— 5. OFERTA ESPECIAL ——— */
/* ——— 5. OFERTA ESPECIAL ——— */
.section-offer {
  background: var(--clr-support);
  position: relative;
  overflow: hidden;
  padding: 6rem 1rem;              /* mais espaçamento top/bottom */
}

/* Mobile: reduzir um pouco o padding */
@media (max-width: 575px) {
  .section-offer {
    padding: 4rem 1rem;
  }
}

/* Shapes decorativos */
.section-offer .shape {
  position: absolute;
  left: 0; width: 100%; height: 80px;
  background: var(--clr-primary);
}
.section-offer .shape-top {
  top: 0;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
.section-offer .shape-bottom {
  bottom: 0;
  clip-path: polygon(0 100%, 100% 0, 100% 100%);
}

/* Wrapper para manter z-index acima dos shapes */
.offer-wrapper {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

/* Texto da oferta */
.offer-text {
  flex: 1 1 300px;
  max-width: 500px;
  text-align: center;
}
@media (min-width: 992px) {
  .offer-text {
    text-align: left;
    margin-right: 2rem;
  }
}

/* Tag “Oferta Imperdível” */
.offer-tag {
  display: inline-block;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--clr-primary);
  text-transform: uppercase;
  margin-bottom: .75rem;
  opacity: 1;
}

/* Título principal */
.offer-title {
  font-family: var(--ff-head);
  font-size: 2.75rem;
  line-height: 1.2;
  font-weight: 700;
  color: var(--clr-primary);
  margin-bottom: 1rem;
}
@media (max-width: 991px) {
  .offer-title {
    font-size: 2.25rem;
  }
}
@media (max-width: 575px) {
  .offer-title {
    font-size: 1.75rem;
  }
}

/* Subtítulo explicativo */
.offer-subtitle {
  font-family: var(--ff-base);
  font-size: 1.125rem;
  line-height: 1.5;
  color: var(--clr-primary);
  margin-bottom: 2rem;
}
@media (max-width: 575px) {
  .offer-subtitle {
    font-size: .95rem;
  }
}

/* Cartão de condições */
.offer-card {
  background: var(--clr-primary);
  color: var(--clr-white);
  border-radius: .75rem;
  box-shadow: 0 8px 32px rgba(0,0,0,0.1);
  max-width: 380px;
  width: 100%;
  padding: 2.5rem 1.5rem;
  text-align: center;
}
@media (max-width: 575px) {
  .offer-card {
    padding: 2rem 1rem;
    margin: 2rem auto 0;
  }
}

/* Badges com texto em verde escuro */
.offer-badges {
  margin-bottom: 1.5rem;
}
.offer-badges .badge {
  display: inline-block;
  background: var(--clr-secondary);
  color: #0b3d0b;           /* verde escuro no texto */
  padding: .75rem 1.5rem;
  border-radius: 2rem;
  font-size: 1rem;
  font-weight: 600;
  margin: 0 .5rem .75rem .5rem;
}

/* Botão de CTA */
.btn-offer {
  display: inline-block;
  background: var(--clr-white);
  color: var(--clr-primary);
  font-size: 1.125rem;
  font-weight: 700;
  text-transform: uppercase;
  padding: .85rem 1.75rem;
  border-radius: .375rem;
  transition: transform .2s, background .3s, color .3s;
  margin-top: 1.5rem;
}
.btn-offer:hover {
  background: var(--clr-secondary);
  color: var(--clr-white);
  transform: translateY(-2px);
}

/* Responsivo menor que 992px */
@media (max-width: 991px) {
  .offer-card {
    margin: 2rem auto 0;
  }
}
/* ——— RODAPÉ SOFTEC ——— */
.site-footer {
  background: linear-gradient(135deg, #ddaa1e 0%, #fcd302 100%);
  color: #111;
  font-family: var(--ff-base);
  font-size: 0.9rem;
}
.site-footer .footer-company,
.site-footer .footer-company b {
  color: #111;
  margin: 0;
}
.site-footer a {
  color: #111;
  text-decoration: underline;
  transition: opacity 0.3s;
}
.site-footer a:hover {
  opacity: 0.8;
}

/* ——— BARRA DE DESENVOLVIMENTO ——— */
.dev-bar {
  background-color: #000;
  color: var(--clr-primary);
}
.dev-bar a {
  color: var(--clr-secondary);
  text-decoration: none;
  font-weight: 600;
}
.dev-bar a:hover {
  text-decoration: underline;
  opacity: .8;
}

/* ——— Video Clean – Desktop até 720px + Responsivo ——— */
.video-clean {
  position: relative;
  width: 100%;
  height: 720px;        /* altura fixa em desktop */
  max-height: 720px;
  overflow: hidden;
}
.video-clean iframe {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/* Até 1199px – mantém proporção 16:9 */
@media (max-width: 1199px) {
  .video-clean {
    height: auto;            /* libera altura fixa */
    padding-bottom: 56.25%;  /* 16:9 */
  }
  .video-clean iframe {
    position: absolute;
    width: 100%;
    height: 100%;
  }
}

/* Mobile (até 599px) – altura fixa reduzida */
@media (max-width: 599px) {
  .video-clean {
    padding-bottom: 200px;   /* ajuste a gosto */
  }
}


/* =========================================
   Sección “¿Qué es Software a Medida?” – Preto
   ========================================= */
.section-product {
  background: #000;
  color: #fff;
}
.section-product .container {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 1rem;
}

/* Header */
.section-product-title {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: .5rem;
}
.section-product-title span {
  background: linear-gradient(90deg, #ddaa1e, #fcd302);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.section-product-lead {
  font-size: 1.05rem;
  color: rgba(255,255,255,0.85);
  max-width: 720px;
  margin: 0 auto 2rem;
}

/* Subtítulos */
.section-subtitle {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: #fcd302;
}

/* Lista de dores */
.pain-list {
  list-style: none;
  padding: 0;
  margin: 0 0 2rem;
}
.pain-list li {
  display: flex;
  align-items: start;
  margin-bottom: .75rem;
  font-size: .95rem;
  line-height: 1.4;
}
.pain-list li::before {
  content: "✖";
  color: #e74c3c;
  margin-right: .75rem;
}

/* Lista de benefícios */
.feature-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.feature-list li {
  display: flex;
  align-items: start;
  margin-bottom: .75rem;
  font-size: .95rem;
  line-height: 1.4;
}
.feature-list li::before {
  content: "✔";
  color: #fcd302;
  margin-right: .75rem;
}

/* Botão de CTA */
.btn-product {
  display: block;           /* garante centralização */
  margin: 2rem auto 0;      /* centraliza e espaça do conteúdo acima */
  background: #fcd302;
  color: #111;
  font-size: 1rem;
  font-weight: 700;
  padding: .85rem 2rem;
  border-radius: 50px;
  text-transform: uppercase;
  border: 2px solid #ddaa1e;
  transition: background .3s, color .3s, transform .2s;
  text-decoration: none;
}
.btn-product:hover {
  background: #ddaa1e;   /* dourado mais escuro */
  color: #fff;           /* texto agora branco para contraste */
  transform: translateY(-3px);
}

/* Responsividade */
@media (max-width: 992px) {
  .section-product-title { font-size: 2.25rem; }
}
@media (max-width: 767px) {
  .section-product-title { font-size: 2rem; }
  .pain-list li, .feature-list li { font-size: .9rem; }
  .btn-product {
    padding: .75rem 1.5rem;
    font-size: .9rem;
  }
}

/* ========= Sección Fit – Para quién sí / no ========= */
.section-fit {
  background: #f9f9f9;
  color: #111;
}
.section-fit .container {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 1rem;
}
.fit-title {
  font-size: 2rem;
  font-weight: 700;
}
.fit-lead {
  color: rgba(17,17,17,0.7);
  margin-top: 0.5rem;
}
.fit-box {
  background: #fff;
  border-radius: 8px;
  padding: 1.5rem;
  height: 100%;
  box-shadow: 0 4px 16px rgba(0,0,0,0.05);
}
.fit-for h3,
.fit-not-for h3 {
  margin-bottom: 1rem;
  font-size: 1.1rem;
}
.fit-for ul li {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: .75rem;
  color: #111;
}
.fit-for ul li::before {
  content: "✔";
  position: absolute;
  left: 0; top: 0;
  color: #28a745;
}
.fit-not-for ul li {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: .75rem;
  color: #111;
}
.fit-not-for ul li::before {
  content: "✖";
  position: absolute;
  left: 0; top: 0;
  color: #e74c3c;
}
.section-fit .btn-product {
  background: #111;
  color: #fcd302;
  border-color: #ddaa1e;
}
.section-fit .btn-product:hover {
  background: #ddaa1e;
  color: #111;
}
@media (max-width: 767px) {
  .fit-title { font-size: 1.75rem; }
}
/* ——— Divider simples ——— */
.section-divider {
  border: 0;
  height: 1px;
  background: rgba(0,0,0,0.1);
}

/* ——— Sección Sectores ——— */
.section-segments {
  background: #fff;
  color: #111;
}
.segments-title {
  font-size: 2rem;
  font-weight: 700;
}
.segments-lead {
  color: rgba(17,17,17,0.7);
  margin-top: .5rem;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

/* Cards de segmentos */
.segment-card {
  background: #f7f7f7;
  border-radius: 8px;
  text-align: center;
  padding: 2rem 1rem;
  transition: transform .3s, box-shadow .3s;
}
.segment-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.1);
}
.segment-icon {
  font-size: 2.5rem;
  margin-bottom: 1rem;
}
.segment-card h3 {
  font-size: 1.1rem;
  font-weight: 600;
  margin: 0;
}

/* Responsividade já abrange 4-col em lg, 3-col em md e 2-col em sm */
@media (max-width: 767px) {
  .segments-title { font-size: 1.75rem; }
  .segment-icon { font-size: 2rem; }
  .segment-card { padding: 1.5rem .75rem; }
}