:root {
  --bg-main: #f7f5e0;
  --green-main: #5e6a40;
  --text-main: #2a2a2a;
  --white: #ffffff;
  --orange-main: #f6c02a;
  --container-padding: 16px;
  --radius: 14px;
  --green-light: rgba(94, 106, 64, 0.45);
}
*,
*::before,
*::after {
  box-sizing: border-box;
}

html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}
.carousel,
.proof-carousel {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.proof-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  width: 100%;
}

.proof-track::-webkit-scrollbar {
  display: none;
}

.proof-track img {
  width: 100%;
  height: auto;
  object-fit: cover;
  scroll-snap-align: center;
}

.proof-dots {
  display: flex;
  gap: .5rem;
  justify-content: center;
  margin-top: .75rem;
}

.proof-dots button {
  width: .50rem;
  height: .50rem;
  padding: .25rem;
  border-radius: 50%;
  border: none;
  background-color: #5e6a40b3;
  cursor: pointer;
}



.proof-dots button.active {
  background-color: #5fbe4a;
}

svg {
  max-width: 100%;
  height: auto;
}
.container {
  width: 100%;
  max-width: 1200px;
  max-height: 4800px;
  padding-left: 16px;
  padding-right: 16px;
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: "Poppins", system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", Roboto, Arial, sans-serif;
  background-color: var(--bg-main);
  color: var(--text-main);
  line-height: 1.4;
}
.container {
  width: 100%;
  max-width: 1100px;
  text-align: center;
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
  margin: 0 auto;
}
.hero {
  padding-top: 48px;
  padding-bottom: 42px;
}
.hero-image{
  display:block;
  width:100%;
  max-width:520px;   /* controla o tamanho real */
  height:auto;
  margin:0 auto 12px; /* centraliza */
}

/* opcional: deixa um pouco maior em telas grandes sem estourar */
@media (min-width:768px){
  .hero-image{max-width:620px;}
}
@media (min-width:1100px){
  .hero-image{max-width:680px;}
}

.hero-text {
  margin: 0 0 24px;
  font-size: 0.91rem;
  font-weight: 600;
  color: var(--green-main);
  text-align: center;
  line-height: 1.25;
}
.carousel {
  position: relative;
  width: 100%;
  max-width: 326px;
  margin: 0 auto 30px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.carousel-track {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
}

.carousel-track::-webkit-scrollbar {
  display: none;
}

.carousel-track img {
  flex: 0 0 100%;
  width: 100%;
  aspect-ratio: 4 / 6;
  min-height: 320px;
  border-radius: 15px;
  object-fit: contain;
  background-color: var(--bg-main);
  scroll-snap-align: center;
}

.cta-button {
  display: inline-block;
  margin-top: -10px;
  font-size: 20px;
  font-weight: 500;
  padding: 16px 64px;
  background-color: var(--green-main);
  color: var(--white);
  text-decoration: none;
  border-radius: var(--radius);
  animation: ctaPulse 2.8s ease-in-out infinite;
}
@keyframes ctaPulse {
  0% {
    background-color: var(--green-main);
  }
  50% {
    background-color: #5caa52;
  }
  100% {
    background-color: var(--green-main);
  }
}
.features {
  margin-top: 0;
  padding-top: 0;
  background-color: var(--orange-main);
  padding-top: 1px;
  padding-bottom: 20px;
}
.features-text {
  color: var(--white);
  font-size: 1.56rem;
  font-weight: 550;
  margin-bottom: 5px;
}
.features-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-bottom: 18px;
  margin-top: 18px;
}
.features-divider span {
  width: 160px;
  height: 4px;
  background-color: rgba(255, 255, 255, 0.7);
}
.features-divider svg {
  width: 36px;
  height: 36px;
}
.features-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.feature-card {
  background-color: var(--bg-main);
  border-radius: 12px;
  padding: 2px 12px;
  margin-bottom: 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.feature-card svg {
  width: 30px;
  height: 30px;
  color: var(--orange-main);
  margin-top: 8px;
}
.feature-card p {
  color: var(--orange-main);
  font-size: 0.95rem;
  font-weight: 400;
  line-height: 1.15;
}

.feature-card-odd-size-icon p {
  margin: 0;
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  .features-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.recipes-section {
  background-color: var(--bg-main);
  padding: 42px 0 24px;
  overflow: visible;
}
.section-title.green {
  color: var(--green-main);
  font-weight: 600;
  font-size: 1.55rem;
  margin: 0 0 18px;
  text-align: center;
  line-height: 1 !important;
  position: relative;
  z-index: 10;
}
.section-title .highlight {
  color: var(--orange-main);
}
.recipes-grid {
  display: flex;
  flex-direction: column;
}
.recipe-item {
  position: relative;
  width: 100%;
  text-align: center;
  padding-top: 45px;
  padding-bottom: 16px;
}
.recipe-base {
  width: 100%;
  height: 388px;
  background-color: var(--green-main);
  border-radius: 10px;
}
.recipe-media-card {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
  width: 85%;
  background-color: var(--bg-main);
  padding: 0;
  border-radius: 0 0 16px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.recipe-thumb {
  width: 100%;
  margin: 0;
  border-radius: 12px 12px 0 0;
  overflow: hidden;
  position: relative;
}
.recipe-thumb img {
  width: 100%;
  height: auto;
  display: block;
}
.recipe-thumb::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: rgba(94, 106, 64, 0.35);
}
.recipe-title {
  margin: 12px 0 6px;
  padding: 0 12px;
  font-size: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--green-main);
}
.recipe-meta {
  margin: 0 0 14px;
  padding: 0 12px;
  font-size: 0.82rem;
  font-weight: 400;
  text-transform: uppercase;
  color: var(--green-main);
}
.pipe {
  margin: 0 8px;
  font-weight: 700;
  color: var(--green-main);
}
.recipe-item-more {
  position: relative;
  overflow: hidden; /* 🔒 trava qualquer vazamento */
}
.recipe-item-more::before{
  content:"";
  position:absolute;
  inset: 0;
  height:380px;
  background:linear-gradient(
    to top,
    var(--bg-main) 30%,
    rgba(247,245,224,0.85) 55%,
    transparent 100%
  );
  z-index:2;
  pointer-events:none;
}

.recipe-item-more::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-120px;
  height:240px;
  background-color:var(--bg-main);
  z-index:1;
}

.recipe-item-more .plus-icon {
  position: absolute;
  top: 54%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 54px;
  height: 56px;
  color: var(--green-main);
  z-index: 6;
}
.recipe-item-more .more-text {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 24px;
  font-size: 1.58rem;
  font-weight: 600;
  line-height: 1.62rem;
  text-transform: uppercase;
  color: var(--green-main);
  z-index: 6;
}
.recipes-section .cta-button.secondary {
  position: relative;
  z-index: 10;
  width: 360px;
  height: 44px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-125px);
}
.desserts-section {
  position: relative;
  top: -100px;
  z-index: 30;
}
.desserts-section .sobremesas-divider {
  position: relative;
  z-index: 60;
}
.sobremesas-divider span {
  background-color: var(--green-main);
}
.sobremesas-divider svg path {
  fill: var(--green-main);
}
.desserts-section .recipe-base {
  height: 435px;
}
.desserts-section .recipe-item-more .recipe-media-card {
  top: 14px;
}
.desserts-section .recipe-item-more .plus-icon {
  top: 66%;
}
.desserts-section .recipe-item-more .more-text {
  bottom: 10px;
}
.desserts-section .cta-button.secondary {
  position: relative;
  top: -24px;
}
.feature-icon {
  width: 38px;
  height: 38px;
  display: block;
  color: #ffffff;
}
.feature-icon-cart {
  width: 46px !important;
  height: 46px !important;
  margin-top: 6px;
}
.feature-icon-spoon {
  width: 62px !important;
  height: 62px !important;
  margin-top: 2px;
}

.features.features-whatsapp {
  position: relative;
  z-index: 50;
}
.whatsapp-divider-block {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 100%;
  margin-top: 12px;
  margin-bottom: 12px;
}
.whatsapp-divider-block span {
  display: block;
  flex: 1;
  max-width: 180px;
  height: 3px;
  background-color: rgba(255, 255, 255, 0.7);
}
.features-divider .whatsapp-icon {
  flex: 0 0 auto;
  display: block;
  width: 34px;
  height: 34px;
  color: #ffffff;
}
.whatsapp-access {
  text-align: center;
  color: var(--bg-main);
}
.whatsapp-small {
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.1;
  margin: 24px 0 0;
  letter-spacing: 0.5px;
}
.whatsapp-big {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  margin: 4px 0 0;
}
.features.features-whatsapp .whatsapp-divider-block span {
  background-color: rgba(255, 255, 255, 0.85);
}
.features.features-whatsapp .whatsapp-divider-block .whatsapp-icon {
  width: 34px;
  height: 34px;
  color: #ffffff;
}
.bonus-receba {
  background-color: var(--bg-main);
  padding: 36px 0 60px;
  position: relative;
  z-index: 20;
}
.bonus-title {
  margin: 0;
  font-size: 2.4rem;
  font-weight: 700;
  color: var(--green-main);
  line-height: 1;
  text-transform: uppercase;
}
.bonus-subtitle {
  margin: 6px 0 22px;
  font-size: 1.65rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.1;
}
.bonus-green {
  color: var(--green-main);
}
.bonus-highlight-light {
  color: #54c445;
  margin-left: 8px;
}
.bonus-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  margin-bottom: 26px;
}
.bonus-image {
  width: 96%;
  max-width: 420px;
  display: block;
  border-radius: 8px;
  border: 3px solid var(--green-main);
  box-sizing: border-box;
}
.bonus-plus {
  display: flex;
  align-items: center;
  justify-content: center;
}
.bonus-plus svg {
  width: 56px;
  height: 56px;
  color: var(--green-main);
  display: block;
}
.bonus-cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 16px 64px;
  font-size: 17px;
  font-weight: 600;
  background-color: var(--green-main);
  color: var(--white);
  text-decoration: none;
  border-radius: 999px;
  animation: ctaPulse 2.8s ease-in-out infinite;
}
.features-indicated {
  background-color: var(--orange-main);
  padding-top: 26px;
  padding-bottom: 36px;
}
.features-title-split {
  color: var(--white);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.1;
  margin: 0 0 6px;
}
.features-title-split span {
  display: block;
  font-size: 1.45rem;
  font-weight: 500;
  margin-top: 2px;
}
.features-indicated .features-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-bottom: 22px;
}
.features-indicated .features-divider span {
  width: 160px;
  height: 4px;
  background-color: rgba(255, 255, 255, 0.7);
}
.features-indicated .features-divider svg {
  width: 36px;
  height: 36px;
}
.features-indicated .features-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
@media (min-width: 768px) {
  .features-indicated .features-grid {
    grid-template-columns: repeat(3, 1fr);
  }

}
.indicated-card {
  background-color: var(--bg-main);
  border-radius: 12px;
  padding: 14px 14px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  min-height: 112px;
}
.check-icon {
  width: 28px;
  height: 28px;
  border: 2px solid var(--orange-main);
  border-radius: 50%;
  position: relative;
  display: block;
  margin-bottom: 8px;
}
.check-icon::after {
  content: "";
  position: absolute;
  left: 9px;
  top: 4px;
  width: 7px;
  height: 12px;
  border-right: 3px solid var(--orange-main);
  border-bottom: 3px solid var(--orange-main);
  transform: rotate(45deg);
}
.indicated-card p {
  color: var(--orange-main);
  font-size: 0.88rem;
  font-weight: 400;
  line-height: 1.2;
  margin: 0;
  text-align: center;
}
.features-indicated .cta-button.secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 98%;
  max-width: 420px;
  height: 42px;
  border-radius: 999px;
  font-size: 1.05rem;
  margin: 16px auto 0;
  line-height: 1;
  padding: 0 24px;
}
.social-proof-section {
  background-color: var(--green-main);
  padding: 60px 0 48px;
}
.social-box {
  background-color: var(--bg-main);
  border-radius: 14px;
  padding: 22px 16px;
  overflow: hidden;
  position: relative;
}
.social-title {
  color: var(--green-main);
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.05;
  margin: 0 0 10px;
}
.social-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-bottom: 14px;
}
.social-divider span {
  width: 140px;
  height: 3px;
  background-color: var(--green-main);
}
.heart-check {
  width: 34px;
  height: 34px;
  color: var(--green-main);
}
.proof-carousel {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.proof-track {
  display: flex;
  align-items: center;
  gap: 16px;
  transition: transform 0.6s ease;
  will-change: transform;
}
.proof-track img {
  flex: 0 0 auto;
  width: 360px;
  max-width: 90vw;
  height: auto;
  border-radius: 14px;
  display: block;
  position: relative;
  z-index: 1;
}
@media (min-width: 1200px) {
  .proof-track img {
    width: 520px;
  }
}
.social-line {
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.4);
  margin: 24px 0;
}
.receive-whatsapp {
  color: #ffffff;
  font-size: 1.7rem;
  font-weight: 600;
  margin-top: 2px;
}
.receive-whatsapp span {
  display: block;
  color: #48cc53;
  font-size: 2.9rem;
  font-weight: 600;
  line-height: 0.8;
}
.social-proof-section .whatsapp-divider-block {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 100%;
  margin: 12px 0;
}
.social-proof-section .whatsapp-divider-block span {
  display: block;
  flex: 1;
  max-width: 180px;
  height: 3px;
  background-color: rgba(255, 255, 255, 0.9);
}
.receive-whatsapp-divider {
  background-color: #fff !important;
}
.social-proof-section .whatsapp-divider-block .whatsapp-icon {
  width: 36px;
  height: 36px;
  color: var(--bg-main);
}
.offer-box {
  background-color: #ffffff;
  border-radius: 14px;
  padding: 22px 18px;
  margin-top: 18px;
  position: relative;
  overflow: visible;
}
.offer-box img {
  position: relative;
  top: -20px;
  width: 100%;
  max-width: 480px;
  margin-bottom: -20px;
}
.offer-main {
  text-align: center;
  color: var(--green-main);
  font-weight: 700;
  font-size: 1.55rem;
  line-height: 0.7;
  margin-top: -10px;
}
.offer-main .line-1,
.offer-main .line-2,
.offer-main .line-3 {
  display: block;
  margin: 6px 0;
}
.offer-main .zero-sugar {
  display: block;
  color: var(--orange-main);
  font-weight: 700;
}
.offer-list p {
  font-size: 0.9rem;
  margin: 6px 0;
}
.offer-list {
  margin-top: -8px;
}
.offer-text {
  margin: 6px 0;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.2;
  color: var(--green-main);
  text-align: center;
}
.offer-plus-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 10px 0;
}
.offer-plus-divider span {
  width: 120px;
  height: 3px;
  background-color: var(--green-main);
}
.offer-plus-divider .plus {
  font-size: 2.2rem;
  font-weight: 800;
  color: var(--green-main);
  line-height: 1;
}
.offer-sub {
  color: var(--green-main);
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.2;
}
.offer-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 100%;
  margin: 10px 0;
}
.offer-row span {
  display: block;
  flex: 1;
  max-width: 160px;
  height: 2px;
  background-color: var(--green-main);
}
.plus-mini {
  width: 26px;
  height: 26px;
  color: var(--green-main);
}
.offer-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 10px 0;
}
.offer-divider span:first-child,
.offer-divider span:last-child {
  width: 120px;
  height: 2px;
  background-color: var(--green-main);
}
.offer-divider .icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: var(--green-main);
  position: relative;
  display: inline-block;
}
.offer-divider .icon.plus::before,
.offer-divider .icon.plus::after {
  content: "";
  position: absolute;
  background-color: var(--bg-main);
}
.offer-divider .icon.plus::before {
  width: 14px;
  height: 3px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.offer-divider .icon.plus::after {
  width: 3px;
  height: 14px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.offer-divider .icon.check::after {
  content: "";
  position: absolute;
  width: 7px;
  height: 12px;
  border-right: 3px solid var(--bg-main);
  border-bottom: 3px solid var(--bg-main);
  transform: rotate(45deg);
  top: 6px;
  left: 10px;
}
.price-box {
  margin: 12px 0;
}
.old-price {
  color: #444;
  font-weight: 600;
  font-size: 1.55rem;
  margin-bottom: 4px;
  text-decoration: none;
}
.old-value {
  text-decoration: line-through;
}
.new-price {
  font-size: 4.1rem;
  font-weight: 800;
  color: #5cbd61;
  line-height: 1;
  margin: 2px 0;
}
.installments {
  font-size: 1.55rem;
  font-weight: 500;
  color: #666666;
  margin-top: 2px;
}
.urgency {
  font-size: 0.95rem;
  font-style: italic;
  margin-top: 0;
  margin-bottom: 12px;
}
.buy-now {
  width: 100%;
  height: 42px;
  border-radius: 999px;
  font-size: 1rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  text-align: center;
}




@media (max-width: 768px) {

  .recipe-item-more .more-text {
    transform: translateY(-28px);
  }

  .feature-icon-clock {
  margin: 22px !important;
  }

}

@media (max-width: 768px) {

  .desserts-section .recipe-item-more .more-text {
    transform: translateY(-18px);
  }

}

@media (max-width: 768px) {

  .recipes-section .cta-button.secondary,
  .desserts-section .cta-button.secondary {
    margin-top: -16px;
  }

}

@media (max-width: 768px) {

  .recipe-item-more {
    padding-bottom: 20px;
  }

}

@media (max-width: 768px) {

  .dessert-cta {
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

}

@media (max-width: 768px) {

  .desserts-section .cta-button.secondary {
    margin-top: -28px;
  }

}

@media (max-width: 768px) {

  .recipes-grid {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

}

@media (max-width: 768px) {

  .recipe-item-more {
    margin-bottom: -48px;
  }

}

@media (max-width: 768px) {

  .desserts-section .cta-button.secondary {
    margin-top: 0 !important;
  }

}

@media (max-width: 768px) {

  /* 🔒 trava o segundo bloco (195 opções) */
  .desserts-section .recipe-item-more {
    margin-bottom: -16px !important;
  }

  /* ✅ sobe apenas o PRIMEIRO bloco (95 opções de jantar) */
  .recipes-section > .container > .recipes-grid {
    margin-bottom: -18px;
  }

}



/* ===== FAQ FINAL AJUSTADO (CORREÇÃO DEFINITIVA) ===== */

.faq-section {
  background-color: var(--bg-main);
  padding: 36px 0 28px;
}

/* TÍTULOS */
.faq-title,
.faq-subtitle {
  font-size: 1.75rem;
  font-weight: 700;
  margin: 0;
  color: var(--green-main);
  line-height: 1.05;
  text-align: center;
}

.faq-subtitle {
  margin-bottom: 10px;
}

/* DIVISÓRIA */
.faq-divider {
  margin-bottom: 16px;
}

.faq-divider span {
  background-color: var(--green-main);
}

/* =========================
   BOX NUTRI (FORA DO ACCORDION)
========================= */

.nutri-box {
  background-color: var(--green-main);
  border: 3px solid var(--green-light);
  border-radius: var(--radius);
  padding: 18px;
  margin-bottom: 14px;
  text-align: center;
}

/* IMAGEM */
.nutri-image {
  width: 100%;
  border-radius: 10px;
  margin-bottom: 10px;
}

/* TÍTULO */
.nutri-title {
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--bg-main);
  margin-bottom: 6px;
  text-align: center;
}

/* TEXTO */
.nutri-text {
  font-size: 0.95rem;
  line-height: 1.35;
  color: var(--bg-main);
  text-align: center;
}

/* =========================
   FAQ ACCORDION (APENAS PERGUNTAS)
========================= */

.faq-box {
  background-color: var(--green-main);
  border: 3px solid var(--green-light);
  border-radius: var(--radius);
  padding: 14px 18px;
  margin-bottom: 12px;
  text-align: left;
  overflow: hidden;
}

/* PERGUNTA */
.faq-question {
  width: 100%;
  background: none;
  border: none;
  padding: 0;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  color: var(--bg-main);
  display: flex;
  justify-content: space-between; /* texto à esquerda, seta à direita */
  align-items: center;            /* alinhamento vertical correto */
  text-align: left;               /* ✅ ESSENCIAL */
  cursor: pointer;
}

/* SETA */
.faq-arrow {
  width: 12px;
  height: 12px;
  border-right: 3px solid var(--bg-main);
  border-bottom: 3px solid var(--bg-main);
  transform: rotate(45deg);
  transition: transform 0.35s ease;
}

/* RESPOSTA */
.faq-answer {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition:
    max-height 0.45s ease,
    opacity 0.35s ease;
  font-size: 0.95rem;
  line-height: 1.35;
  color: var(--bg-main);
  margin-top: 6px;
}

/* ABERTO */
.faq-box.open .faq-answer {
  max-height: 600px;
  opacity: 1;
}

.faq-box.open .faq-arrow {
  transform: rotate(-135deg);
}

/* =========================
   IMAGEM FINAL
========================= */

.faq-image {
  display: block;
  width: 100%;
  max-width: 520px;
  margin: 26px auto 14px;
}

/* FOOTER */
.faq-footer {
  font-size: 0.8rem;
  font-weight: 700;
  color: #555;
  text-align: center;
  margin-top: 6px;
}

/* =========================
   CORREÇÃO FINAL — PROVA SOCIAL
========================= */

/* trava o carrossel para UMA imagem visível */
.proof-carousel {
  height: 340px;              /* controla altura real */
  overflow: hidden;
  display: flex;
  align-items: center;    /* 🔼 sobe a imagem */
}

/* alinha tudo no topo */
.proof-track {
  align-items: flex-start;    /* 🔥 ESSENCIAL */
}

/* imagem central, sem laterais aparecendo */
.proof-track img {
  margin: 0 auto;             /* centraliza visualmente */
}

/* remove influência do gap lateral visual */
.proof-track {
  gap: 0;
}

/* mobile mais compacto */
@media (max-width: 768px) {
  .proof-carousel {
    height: 460px;
  }

  .proof-track img {
    width: 100%;
    height: 100%;
  }
}

@media (max-width: 768px) {

  /* aumenta o espaço do card verde (background) */
  .recipe-base {
    height: 410px; /* antes ~388px */
  }

  /* dá mais respiro entre o branco e o verde */
  .recipe-item {
    padding-bottom: 10px;
  }

}

@media (max-width: 768px) {

  /* desce APENAS o texto "95 OPÇÕES DE JANTAR" */
  .recipe-item-more .more-text {
    bottom: -6px;
  }

}

@media (max-width: 768px) {

  /* desce o botão e dá respiro */
  .recipes-section .cta-button.secondary {
    transform: translateY(-125px); /* antes -125px */
    margin-top: 24px;
    margin-bottom: 32px;
  }

}



@media (max-width: 768px) {

  /* encurta as linhas laterais das divisões */
  .features-divider span,
  .recipes-divider span,
  .sobremesas-divider span,
  .whatsapp-divider span,
  .faq-divider span {
    width: 140px; /* antes estava maior */
  }

}




@media (max-width: 768px) {

  /* divisões da seção "Veja aqui tudo o que você recebe" */
  .features-divider.whatsapp-divider span {
    width: 140px;
  }

  /* divisões "Receitas indicadas para quem" */
  .features.features-indicated .features-divider span {
    width: 140px;
  }

  /* divisões "Adquira e receba no WhatsApp" */
  .whatsapp-divider-block .whatsapp-line,
  .whatsapp-divider-block span {
    width: 140px;
  }

}


@media (max-width: 768px) {

  /* aproxima o título do bloco de sobremesas */
  .sobremesas-title {
    margin-top: 24px; /* antes estava maior */
  }

  /* aproxima o título "Receitinhas deliciosas para o jantar" */
  .recipes-section .section-title {
    margin-bottom: 0; /* reduz o respiro excessivo */
  }

}


/* =========================
   AJUSTE DIVIDER WHATSAPP
   ========================= */

/* container do divider */
.whatsapp-divider-block {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
}

/* linhas laterais */
.whatsapp-divider-block .whatsapp-line {
  width: 38px;          /* 🔽 diminui o tamanho das linhas */
  height: 4px;
  background-color: currentColor;
}

/* garante que não estique em mobile */
@media (max-width: 768px) {
  .whatsapp-divider-block .whatsapp-line {
    width: 140px;        /* ainda mais curto no mobile */
  }
}





/* =========================
   PAGE DIVIDER (PADRÃO REAL)
========================= */

.page-divider {
  display: block;
  width: 100%;
  overflow: hidden;
  background: transparent;

  /* evita micro-linhas entre seções */
  margin-top: -1px;
  margin-bottom: -1px;
}

.page-divider svg {
  display: block;
  width: 100%;

  /* garante visibilidade em todos os devices */
  height: clamp(42px, 6vw, 48px);

  line-height: 0;
}

/* =========================
   ORIENTAÇÃO DO DIVIDER
========================= */

/* padrão: divisor normal */
.page-divider {
  transform: rotate(180deg);
}

/* quando quiser fechar a seção (invertido) */
.page-divider.inverted {
  transform: rotate(0deg);
}

/* =========================
   CONTRASTE ESPECÍFICO
========================= */


/* =========================
   CORREÇÕES DE GAP
========================= */

section + .page-divider {
  margin-top: 0;
}


/* =========================
   FIX FUNDO BRANCO ANTES DA PROVA SOCIAL
========================= */

.features-indicated + .page-divider {
  background-color: var(--green-main);
}


.page-divider {
  position: relative;   /* 🔑 ativa o z-index */
  z-index: 9999;        /* fica à frente de tudo */
}