
		:root {
  --clr-primary:    #0d2f44;
  --clr-secondary:  #bd9e69;
  --clr-support:    #e4edf7;
  --clr-white:      #ffffff;

  --ff-base:  'Poppins', sans-serif;
  --ff-head:  'Baskerville', serif; /* importe via @font-face ou link externo */
}

/* IMPORTAÇÃO FONTES (no <head>) */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap');

/* RESET BÁSICO */
* { margin:0; padding:0; box-sizing:border-box; }
body {
  font-family: var(--ff-base);
  color: var(--clr-primary);
}

/* LOGO */
.logo {
  max-height: 60px;
}

/* HERO */
#hero {
  min-height: 100vh;             /* ocupa tela cheia */
  display: flex;
  align-items: center;
  background: linear-gradient(
    135deg,
    var(--clr-primary) 0%,
    var(--clr-secondary) 100%
  );
}
* { margin:0; padding:0; box-sizing:border-box; }
body {
  font-family: var(--ff-base);
  color: var(--clr-primary);
}
h1,h2,h3,h4,h5,h6 {
  font-family: var(--ff-head);
  color: var(--clr-primary);
}
a { text-decoration:none; }
.preview-bg { background: var(--clr-support); }

/* LOGO */
.logo { max-height: 60px; }

/* TEXTO */
/* HERO */
#hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  background: linear-gradient(
    135deg,
    var(--clr-primary) 0%,
    var(--clr-secondary) 100%
  );
  padding: 2rem 0;
}

/* Público-alvo */
.hero-tagline {
  font-size: 1rem;
  color: var(--clr-support);
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: .75rem;
}

/* Headline */
.hero-heading {
  font-family: "Baskerville", serif;
  font-size: 2.8rem;
  line-height: 1.2;
  color: var(--clr-white);
  margin-bottom: 1rem;
}

/* Subheadline */
.hero-subheading {
  font-size: 1.15rem;
  color: var(--clr-white);
  margin-bottom: 1.5rem;
  max-width: 500px;
  line-height: 1.4;
}

/* Lista de Features */
.hero-features {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}
.hero-features li {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: .75rem;
  color: var(--clr-white);
  font-size: 1rem;
}
.hero-features li::before {
  content: '✔';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--clr-secondary);
  font-weight: bold;
}

/* Botão principal */
.btn-hero {
  display: inline-block;
  background-color: var(--clr-secondary);
  color: var(--clr-primary);
  font-weight: 600;
  padding: .75rem 1.75rem;
  border: none;
  border-radius: .25rem;
  transition: background .3s, color .3s;
  text-decoration: none;
}
.btn-hero:hover {
  background-color: var(--clr-white);
  color: var(--clr-primary);
}

/* Imagem */
.hero-image img {
  max-width: 400px;
  height: auto;
  box-shadow: 0 8px 24px rgba(0,0,0,0.15);
}

/* RESPONSIVIDADE */
@media (max-width: 767px) {
  .hero-tagline {
    font-size: .9rem;
  }
  .hero-heading {
    font-size: 2.2rem;
  }
  .hero-subheading {
    font-size: 1rem;
    max-width: 100%;
  }
  .hero-features li {
    font-size: .95rem;
  }
  #hero {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
		
		
		/*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: "Baskerville", serif;
  font-size: 2.25rem;
  color: var(--clr-primary);
  margin-bottom: .5rem;
}
.section-agitate .section-header p {
  font-family: var(--ff-base);
  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: var(--ff-head);
  font-size: 1.25rem;
  color: var(--clr-primary);
  margin-bottom: .5rem;
}
.agitate-item p {
  font-family: var(--ff-base);
  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: "Baskerville", serif;
  font-size: 2.5rem;
  margin-bottom: 1rem;
}
.section-solution .solution-desc {
  font-family: var(--ff-base);
  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-color: var(--clr-secondary);
  color: var(--clr-primary);
  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);
}
.section-solution .solution-img {
  max-width: 100%;
  height: auto;
  box-shadow: 0 8px 24px rgba(0,0,0,0.1);
}

/* 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*/
		
		
/* Seções alternadas */
.bg-light { background: var(--clr-support); }
#sect-agitate { background: var(--clr-white); }

.section-authors {
  background-color: #faf2e7;
  padding: 6rem 1rem;
}

.section-authors .section-title {
  font-family: "Baskerville", serif;
  font-size: 2.5rem;
  color: #0d2f44 !important; /* força a cor do root */
  text-align: center;
  margin-bottom: 2.5rem;
  font-weight: bold;
  letter-spacing: 0.5px;
  background: none !important;
  padding-top: 0;
  padding-bottom: 0.3em;
  line-height: 1.2;
}
.authors-description {
  color: var(--clr-primary);
  font-family: var(--ff-base);
  margin-bottom: 2rem;
  font-size: 1.08rem;
  text-align: center;
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

.author-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 2.5rem;
}

.author-card {
  background: var(--clr-support);
  border-radius: 1.1rem;
  /* Remover overflow: hidden para não cortar a foto circular! */
  box-shadow: 0 8px 24px rgba(0,0,0,0.07);
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp 0.7s ease-out forwards;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 350px;
  transition: box-shadow 0.18s, transform 0.18s;
  position: relative;
  /* NÃO usar overflow: hidden aqui! */
}

.author-card:nth-child(1) { animation-delay: 0.15s; }
.author-card:nth-child(2) { animation-delay: 0.3s; }

.author-card:hover {
  transform: translateY(-8px) scale(1.025);
  box-shadow: 0 14px 34px rgba(0,0,0,0.12);
}

.author-photo {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  border: 4px solid var(--clr-secondary);
  margin-top: 1.5rem;
  margin-bottom: 1.3rem;
  box-shadow: 0 2px 16px rgba(0,0,0,0.08);
  position: relative;
  z-index: 2;
  /* Remover margin negativa */
}

.author-info {
  padding: 1.4rem 1.3rem 1.3rem 1.3rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  text-align: center;
}

.author-name {
  font-family: "Baskerville", serif;
  font-size: 1.45rem;
  color: var(--clr-primary);
  margin-bottom: .25rem;
  font-weight: 700;
}

.author-role {
  font-weight: 600;
  color: var(--clr-secondary);
  margin-bottom: 0.8rem;
  font-size: 1.01rem;
}

.author-claims {
  list-style: none;
  padding: 0;
  margin: 0;
  flex: 1;
}

.author-claims li {
  position: relative;
  padding-left: 1.4rem;
  margin-bottom: .6rem;
  font-family: var(--ff-base);
  font-size: .95rem;
  color: var(--clr-primary);
  text-align: left;
}

.author-claims li::before {
  content: '✔';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--clr-secondary);
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* responsivo */
@media (max-width: 767px) {
  .section-authors {
    padding: 4rem 1rem;
  }
  .section-authors .section-title {
    font-size: 2rem;
  }
  .authors-description {
    font-size: 0.97rem;
  }
  .author-photo {
    width: 85px;
    height: 85px;
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
  .author-info {
    padding: 1rem 0.7rem 1rem 0.7rem;
  }
  .author-name {
    font-size: 1.13rem;
  }
  .author-claims li {
    font-size: .9rem;
  }
}
		
.section-offer {
  background: linear-gradient(135deg, var(--clr-support) 65%, #f5e9d4 100%);
  padding: 5rem 0 3rem 0;
  font-family: var(--ff-base);
  position: relative;
}

.offer-flex {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 2.5rem;
  max-width: 1100px;
  margin: 0 auto 2rem auto;
  flex-wrap: wrap;
}

.offer-info {
  flex: 1 1 340px;
  background: transparent;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 320px;
  max-width: 520px;
}

.offer-tag {
  color: var(--clr-secondary);
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
  font-size: 0.97rem;
  margin-bottom: .7rem;
  display: inline-block;
}

.offer-title {
  font-family: var(--ff-head);
  color: var(--clr-primary);
  font-size: 2.1rem;
  margin-bottom: 1.1rem;
  line-height: 1.2;
  font-weight: bold;
}

.offer-highlight {
  font-size: 1.16rem;
  color: var(--clr-primary);
  margin-bottom: 1.4rem;
}

.offer-list {
  list-style: none;
  padding: 0;
  margin: 0 0 0.5rem 0;
}
.offer-list li {
  font-size: 1.06rem;
  color: var(--clr-primary);
  margin-bottom: 0.6em;
  padding-left: 1.5em;
  position: relative;
}
.offer-list li::before {
  content: "✔";
  color: var(--clr-secondary);
  position: absolute;
  left: 0;
  top: 0;
  font-size: 1.18rem;
}

.offer-pricing-card {
  flex: 1 1 320px;
  background: var(--clr-white);
  border-radius: 1.3rem;
  box-shadow: 0 6px 32px rgba(13,47,68,0.10), 0 2px 8px rgba(189,158,105,0.09);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 290px;
  max-width: 370px;
  padding: 2.3rem 2rem 2rem 2rem;
  position: relative;
}

.price-box {
  text-align: center;
  margin-bottom: 1.2rem;
}
.price-now {
  color: var(--clr-primary);
  font-size: 2.7rem;
  font-weight: bold;
  letter-spacing: 1px;
  display: block;
  margin-bottom: 0.2em;
}
.price-installments {
  color: var(--clr-secondary);
  font-size: 1.19rem;
  font-weight: 700;
  display: block;
}
.price-note {
  color: var(--clr-primary);
  font-size: 0.97rem;
  opacity: 0.8;
  display: block;
  margin-top: 0.3em;
}

.btn-offer-cta {
  display: block;
  width: 100%;
  background: var(--clr-secondary);
  color: var(--clr-primary);
  font-weight: bold;
  font-size: 1.13rem;
  text-align: center;
  padding: 1.1em 0;
  border-radius: 0.7em;
  margin: 1.2rem 0 0.6rem 0;
  box-shadow: 0 2px 12px rgba(189,158,105,0.12);
  text-decoration: none;
  letter-spacing: 0.5px;
  transition: background 0.18s, color 0.18s, transform 0.11s;
}
.btn-offer-cta:hover {
  background: var(--clr-primary);
  color: var(--clr-white);
  transform: translateY(-3px) scale(1.03);
}

.price-guarantee {
  color: var(--clr-primary);
  font-size: 0.99rem;
  margin-top: 0.7rem;
  opacity: 0.85;
  text-align: center;
  display: flex;
  align-items: center;
  gap: .3em;
}

.offer-social-proof {
  text-align: center;
  color: var(--clr-secondary);
  background: none;
  font-size: 1.04rem;
  font-weight: 600;
  margin: 2.5rem auto 0 auto;
  letter-spacing: 0.2px;
}

/* Responsivo */
@media (max-width: 900px) {
  .offer-flex {
    flex-direction: column;
    align-items: stretch;
    gap: 1.6rem;
  }
  .offer-info, .offer-pricing-card {
    max-width: 100%;
    min-width: 0;
  }
  .offer-pricing-card {
    padding: 2rem 1rem 1.5rem 1rem;
  }
}

@media (max-width: 600px) {
  .section-offer {
    padding: 2.7rem 0 1.5rem 0;
  }
  .offer-title { font-size: 1.25rem; }
  .offer-pricing-card { padding: 1.3rem 0.7rem 1rem 0.7rem; }
  .price-now { font-size: 2rem; }
}
		
		/*FIM do BLOCO 5*/

.section-bonus {
  background: linear-gradient(120deg, #111a26 60%, #2f4157 100%);
  padding: 5rem 1rem 5.5rem 1rem;
  color: #fff;
  font-family: var(--ff-base);
  position: relative;
  overflow: hidden;
}

.bonus-header {
  text-align: center;
  margin-bottom: 3.5rem;
  position: relative;
}
.bonus-star {
  font-size: 2.2rem;
  display: inline-block;
  animation: starPulse 2s infinite alternate;
}
@keyframes starPulse {
  to { transform: scale(1.16) rotate(-8deg); opacity: 0.7; }
}
.bonus-title {
  font-family: var(--ff-head);
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 2px;
  color: #fff;
  margin-bottom: 0.5rem;
  margin-top: 0.1em;
}
.bonus-desc {
  color: #e4edf7;
  font-size: 1.18rem;
  max-width: 500px;
  margin: 0 auto;
  opacity: 0.92;
}

/* Cards layout */
.bonus-cards {
  display: flex;
  gap: 2.4rem;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
}
.bonus-card {
  background: rgba(17, 42, 68, 0.90);
  border-radius: 1.3rem;
  min-width: 340px;
  max-width: 410px;
  flex: 1 1 340px;
  box-shadow: 0 0 0 3px #bd9e69, 0 10px 36px rgba(189,158,105,0.18);
  margin-bottom: 1.5rem;
  position: relative;
  overflow: visible;
  display: flex;
  align-items: flex-start;
  transition: box-shadow .22s, transform .15s;
}
.bonus-card:hover {
  box-shadow: 0 0 0 5px #e4edf7, 0 18px 48px rgba(189,158,105,0.25);
  transform: translateY(-6px) scale(1.03);
  z-index: 2;
}

.bonus-badge {
  position: absolute;
  top: -22px;
  left: 22px;
  background: linear-gradient(135deg, #bd9e69 60%, #fffbe9 100%);
  color: #111a26;
  font-family: var(--ff-head);
  font-size: 1.5rem;
  font-weight: bold;
  border-radius: 50%;
  width: 2.7rem;
  height: 2.7rem;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 10px rgba(189,158,105,0.12);
  border: 2px solid #fff;
  z-index: 2;
}

.bonus-content {
  padding: 2.9rem 1.4rem 2.1rem 1.4rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  width: 100%;
  z-index: 1;
}

.bonus-icon {
  margin-bottom: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.bonus-emoji {
  font-size: 2.9rem;
  filter: drop-shadow(0 2px 8px #bd9e69aa);
  animation: floaty 2.2s infinite ease-in-out alternate;
}
@keyframes floaty {
  to { transform: translateY(-10px) scale(1.11);}
}

.bonus-card-title {
  font-family: var(--ff-head);
  font-size: 1.22rem;
  font-weight: 700;
  margin-bottom: 0.65rem;
  color: #fffbe9;
  line-height: 1.25em;
  letter-spacing: .5px;
}
.bonus-card-text {
  font-family: var(--ff-base);
  font-size: 1.05rem;
  color: #e4edf7;
  line-height: 1.65;
}
.bonus-list {
  color: #bd9e69;
  font-weight: 500;
  font-size: 1.04rem;
  margin-bottom: 0.4em;
  display: block;
}

@media (max-width: 900px) {
  .bonus-cards {
    flex-direction: column;
    align-items: center;
    gap: 1.4rem;
  }
  .bonus-card {
    min-width: 0;
    max-width: 98vw;
  }
  .bonus-content {
    padding: 2.3rem 0.9rem 1.4rem 0.9rem;
  }
}
@media (max-width: 600px) {
  .section-bonus {
    padding: 2.5rem 0.3rem 2.8rem 0.3rem;
  }
  .bonus-title { font-size: 1.15rem; }
  .bonus-badge { left: 14px; width: 2.1rem; height: 2.1rem; font-size: 1.1rem; top: -16px;}
  .bonus-content { padding: 1.6rem 0.5rem 1rem 0.6rem; }
  .bonus-emoji { font-size: 2rem; }
}
		/*Fim do Bloco Bônus*/
		
/* —— 8. FAQ —— */
.section-faq {
  background: #FFFFFF;
  padding: 5rem 1rem;
}
.section-faq .container {
  max-width: 800px;
  margin: 0 auto;
}
.faq-title {
  font-family: "Baskerville", 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: "Baskerville", 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;
  }
}

.section-beneficios {
  background: var(--clr-secondary);
  padding: 70px 0 80px 0;
  font-family: var(--ff-base);
  color: var(--clr-primary);
  position: relative;
  z-index: 1;
}

.beneficios-header {
  text-align: center;
  margin-bottom: 3rem;
}

.beneficios-title {
  font-family: var(--ff-head);
  font-size: 2.2rem;
  color: var(--clr-primary);
  margin-bottom: 0.4em;
  letter-spacing: 1px;
}

.beneficios-subtitle {
  max-width: 540px;
  margin: 0 auto;
  color: var(--clr-white);
  font-size: 1.1rem;
}

.beneficios-cards-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2.2rem;
  justify-content: center;
}

.beneficio-card {
  background: var(--clr-white);
  border-radius: 20px;
  box-shadow: 0 6px 32px 0 rgba(13,47,68,0.10), 0 2px 8px 0 rgba(189,158,105,0.12);
  padding: 2.2rem 1.5rem 1.7rem 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 320px;
  min-height: 260px;
  transition: 
    transform 0.2s cubic-bezier(.4,2,.6,1),
    box-shadow 0.2s cubic-bezier(.4,2,.6,1);
  position: relative;
  border: 2px solid transparent;
}

.beneficio-card:hover {
  transform: translateY(-12px) scale(1.03) rotate(-.7deg);
  border-color: var(--clr-primary);
  box-shadow: 0 14px 40px 0 rgba(13,47,68,0.16), 0 4px 14px 0 rgba(189,158,105,0.15);
  z-index: 2;
}

.beneficio-icon {
  font-size: 2.6rem;
  margin-bottom: 1.1rem;
  color: var(--clr-secondary);
  background: var(--clr-support);
  border-radius: 50%;
  padding: 0.5em;
  box-shadow: 0 2px 8px rgba(13,47,68,0.07);
  display: flex;
  align-items: center;
  justify-content: center;
}

.beneficio-title {
  font-size: 1.12rem;
  font-weight: 700;
  font-family: var(--ff-base);
  color: var(--clr-primary);
  margin-bottom: 0.4em;
}

.beneficio-desc {
  font-size: 1rem;
  color: var(--clr-primary);
  opacity: 0.85;
  margin: 0;
}

@media (max-width: 900px) {
  .beneficios-cards-row {
    gap: 1.2rem;
  }
  .beneficio-card {
    width: 100%;
    min-width: 0;
    margin: 0;
  }
}
@media (max-width: 600px) {
  .beneficios-header h2 { font-size: 1.3rem; }
  .beneficio-card { padding: 1.3rem 0.9rem; min-height: 180px; }
  .beneficio-icon { font-size: 2rem; }
}


@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@700;400&display=swap');

.garantia-exclusiva {
  min-height: 85vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #faf8f3 30%, #e6f1fa 100%);
  padding: 0 1rem;
}

.garantia-glass {
  background: rgba(255,255,255,0.21);
  border-radius: 2rem;
  padding: 2.7rem 1.5rem 2.3rem 1.5rem;
  max-width: 410px;
  width: 100%;
  text-align: center;
  box-shadow: 0 6px 44px 0 #ffbe6734, 0 1.5px 24px 0 #a2b6cf11, 0 0 0 2.5px #fff6e355;
  backdrop-filter: blur(15px) saturate(1.17);
  border: 1.5px solid #ffe6c930;
  animation: glassIn 1.1s cubic-bezier(.61,1.2,.55,1) forwards;
  opacity: 0;
  transform: translateY(35px) scale(0.985);
}

@keyframes glassIn {
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.garantia-svg {
  margin-bottom: 1.1rem;
}

.garantia-svg svg {
  filter: drop-shadow(0 4px 18px #ffbe6740);
  animation: svgPop 1.7s cubic-bezier(.23,1.33,.53,1) 1;
}

@keyframes svgPop {
  0% { opacity:0; transform:scale(.85);}
  55%{opacity:1;transform:scale(1.13);}
  100%{opacity:1; transform:scale(1);}
}

.garantia-titulo {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 1.17rem;
  font-weight: 700;
  color: #504737;
  margin-bottom: 1.3rem;
  letter-spacing: 0.2px;
}

.garantia-label {
  color: #FFBE67;
  font-weight: 700;
  font-size: 1.09em;
  font-family: 'Montserrat', Arial, sans-serif;
}

.garantia-texto {
  font-family: 'Montserrat', Arial, sans-serif;
  color: #6e6d6a;
  font-size: 1.12rem;
  margin-bottom: 2em;
  line-height: 1.48;
}

.garantia-btcta {
  display: inline-block;
  padding: 1.1em 2.2em;
  background: linear-gradient(91deg,#FFBE67 35%,#ffd6ac 100%);
  color: #403e3b;
  font-size: 1.09rem;
  font-weight: 700;
  font-family: 'Montserrat', Arial, sans-serif;
  border-radius: 1em;
  border: none;
  outline: none;
  box-shadow: 0 2px 18px #ffbe6747;
  cursor: pointer;
  text-decoration: none;
  transition: filter 0.16s, 
              transform 0.13s, 
              box-shadow 0.13s,
              background 0.19s;
}
.garantia-btcta:hover, .garantia-btcta:focus {
  filter: brightness(1.08) saturate(1.17);
  transform: scale(1.035) translateY(-2px);
  background: linear-gradient(91deg,#FFA933,#FFD8B3 100%);
  box-shadow: 0 4px 34px #ffd3a995, 0 2px 10px #ffbe671A;
}

@media (max-width: 600px) {
  .garantia-glass { 
    padding: 1.2rem 0.4rem 1.3rem 0.4rem; 
    max-width: 97vw; 
  }
  .garantia-titulo { font-size: .97rem; }
  .garantia-texto { font-size: .97rem; }
  .garantia-svg svg { width:33px; height:33px; }
}