/* ===== s1-hero ===== */
.hero{position:relative;background:var(--bg-dark);overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;z-index:0;
  background-image:url(/img/bg.webp);background-position:center center;background-repeat:no-repeat;background-size:cover;opacity:1}

.hero__container{position:relative;z-index:1;max-width:1140px;margin:0 auto;
  padding:40px 20px 56px;display:flex;flex-direction:column;align-items:center;gap:32px}

.hero__content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;max-width:520px;width:100%}

.hero__logo{width:55%;max-width:300px;filter:brightness(2) drop-shadow(2px 3px 15px rgba(0,0,0,.78));margin-bottom:4px}

.hero__title{font-family:var(--font);font-weight:800;text-transform:uppercase;
  color:var(--white);font-size:24px;line-height:1.2;margin:0}
.hero__highlight{color:var(--green-highlight)}

.hero__subtitle{font-family:var(--font);font-size:15px;color:var(--white);margin:0}
.hero__subtitle strong{font-weight:700}

.hero__cta{padding:15px 38px 20px;font-size:16px;
  border:1px solid var(--green-300);
  box-shadow:0 0 28px rgba(180,240,78,.5);
  animation:hero-pulse 1s ease-in-out alternate infinite}
@keyframes hero-pulse{from{transform:scale(1.06)}to{transform:scale(1)}}

.hero__visual{position:relative;width:100%;max-width:300px;aspect-ratio:615/1024}
.hero__phone{position:relative;z-index:4;width:100%;height:100%;object-fit:contain;display:block}

.hero__float{position:absolute;z-index:7;display:block;width:20%;
  filter:drop-shadow(0 6px 20px rgba(0,0,0,.5));
  animation:hero-float 2.4s ease-in-out infinite alternate}
@keyframes hero-float{from{transform:translateY(14px)}to{transform:translateY(0)}}

.hero__float--1{left:8%;top:23%;width:21%}
.hero__float--2{left:72%;top:37%;width:22%}
.hero__float--3-mobile{left:18%;top:7%;width:20%}
.hero__float--3-desktop{display:none}
.hero__float--4{left:69%;top:5%;width:20%}
.hero__float--5{left:14%;top:42%;width:15%}
.hero__float--6{left:65%;top:24%;width:15%}

@media (min-width:768px){
  .hero__container{flex-direction:row;align-items:center;justify-content:center;
    gap:40px;padding:56px 32px 64px;min-height:554px}
  .hero__content{align-items:flex-start;text-align:left;max-width:460px}
  .hero__logo{width:40%;max-width:220px;align-self:flex-start}
  .hero__title{font-size:32px}
  .hero__visual{max-width:420px}

  .hero__float--1{left:8%;top:67%;width:20%}
  .hero__float--2{left:56%;top:74%;width:28%}
  .hero__float--4{left:4%;top:18%;width:24%}
  .hero__float--5{left:10%;top:38%;width:28%}
  .hero__float--6{left:73%;top:53%;width:15%}
}

@media (min-width:1024px){
  .hero::before{background-image:url(/img/bg-hero-2025.webp);opacity:.58}
  .hero{background:linear-gradient(349deg,var(--bg-dark),var(--green-olive))}

  .hero__container{min-height:800px;padding:70px 20px}
  .hero__content{max-width:520px}
  .hero__logo{width:40%;max-width:260px}
  .hero__title{font-size:43px;font-weight:700}
  .hero__subtitle{font-size:20px;max-width:90%}
  .hero__cta{font-size:18px;padding:15px 45px 20px}
  .hero__visual{max-width:500px}

  .hero__float--1{left:19%;top:85%;width:15%}
  .hero__float--2{left:70%;top:74%;width:22%}
  .hero__float--3-mobile{display:none}
  .hero__float--3-desktop{display:block;left:64%;top:27%;width:20%}
  .hero__float--4{left:21%;top:25%;width:17%}
  .hero__float--5{left:10%;top:60%;width:17%}
  .hero__float--6{left:66%;top:52%;width:15%}
}

/* ===== s2-vsl ===== */
.vsl{
  background:var(--bg-dark);
  padding:3em 0;
}

.vsl__container{
  max-width:1393px;
  margin:0 auto;
  padding:0 20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}

.vsl__kicker{
  width:60%;
  max-width:280px;
  margin:0 0 1.5em;
}

.vsl__title{
  width:100%;
  max-width:100%;
  padding:0 1em;
  font-family:var(--font);
  font-weight:700;
  font-size:25px;
  line-height:1.1em;
  text-transform:uppercase;
  color:var(--white);
  margin:0;
}

.vsl__title-hl{
  color:var(--green-200);
}

.vsl__player-wrap{
  width:100%;
  margin:2em 0 0;
  min-height:540px;
  position:relative;
  z-index:10;
}

.vsl__cta{
  margin-top:1em;
  font-size:15px;
  padding:15px 45px 20px;
  box-shadow:0 0 28px 0 rgba(179.80898393194707,239.7,77.64195652173913,.5);
  border:1px solid var(--green-300);
}

@media (min-width:768px){
  .vsl__container{
    padding:0 40px;
  }

  .vsl__kicker{
    max-width:340px;
  }
}

@media (min-width:1024px){
  .vsl{
    padding:5em 0;
  }

  .vsl__container{
    padding:0;
  }

  .vsl__title{
    max-width:53%;
    font-size:43px;
  }

  .vsl__player-wrap{
    max-width:65%;
    min-height:0;
  }

  .vsl__cta{
    font-size:16px;
  }
}

/* ===== s3-funcoes ===== */
.funcoes{
  background:var(--bg-dark-2);
  padding:3em 0 4em;
  overflow:hidden;
}

.funcoes__head{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:0 1em;
}

.funcoes__kicker{
  font-family:var(--font);
  font-weight:400;
  font-size:17px;
  letter-spacing:6.6px;
  color:#A0CB67;
  margin:0;
}

.funcoes__title{
  font-family:var(--font);
  font-weight:700;
  font-size:23px;
  line-height:1.2;
  text-transform:uppercase;
  color:var(--white);
  margin:4px 0 0;
}

.funcoes__title-hl{
  color:var(--green-200);
}

.funcoes__lead{
  margin-top:10px;
  font-family:var(--font);
  font-size:15px;
  line-height:1.5;
  color:var(--gray-300);
}

.funcoes__body{
  display:flex;
  flex-direction:column;
  margin-top:0;
  padding:0 1em;
}

.funcoes__content{
  display:flex;
  flex-direction:column;
  width:100%;
}

.funcoes__subtitle{
  font-family:var(--font);
  font-weight:400;
  font-size:26px;
  color:var(--white);
  margin:0;
  text-align:center;
}

.funcoes__list{
  list-style:none;
  margin:13px 0 0;
  padding:0;
}

.funcoes__list--two{
  margin-top:6px;
}

.funcoes__list li{
  display:flex;
  align-items:flex-start;
  gap:8px;
  font-family:var(--font);
  font-weight:600;
  font-size:16px;
  line-height:1.5;
  color:var(--white);
  padding-block-end:6px;
}

.funcoes__list li + li{
  margin-top:6px;
}

.funcoes__icon{
  flex:none;
  width:1em;
  height:1em;
  margin-top:.2em;
  color:#A0CB67;
}

.funcoes__btn{
  align-self:center;
  margin-top:1.5em;
  font-size:13px;
  text-transform:uppercase;
}

.funcoes__media{
  margin-top:2em;
  display:flex;
  justify-content:center;
}

.funcoes__img{
  width:70%;
  max-width:420px;
}

@media (min-width:768px){
  .funcoes__kicker{ font-size:19px; }
  .funcoes__title{ font-size:32px; }
  .funcoes__lead{ font-size:16px; max-width:70%; margin-left:auto; margin-right:auto; }
  .funcoes__subtitle{ text-align:left; }
}

@media (min-width:1024px){
  .funcoes{ padding:5em 0 4em; }

  .funcoes__head{ padding:0; }
  .funcoes__kicker{ font-size:19px; }
  .funcoes__title{ font-size:43px; max-width:71%; }
  .funcoes__lead{ font-size:18px; max-width:70%; }

  .funcoes__body{
    flex-direction:row-reverse;
    align-items:center;
    max-width:1393px;
    margin:0 auto;
    gap:2em;
    padding:0;
  }

  .funcoes__content{
    width:50%;
    padding:0 1em;
  }

  .funcoes__subtitle{
    font-size:28px;
    text-align:left;
  }

  .funcoes__list{
    margin-top:13px;
  }

  .funcoes__list--two{
    margin-top:-18px;
  }

  .funcoes__list li{
    font-size:18px;
  }

  .funcoes__btn{
    align-self:flex-start;
    font-size:17px;
  }

  .funcoes__media{
    width:50%;
    margin-top:0;
  }

  .funcoes__img{
    width:100%;
    max-width:none;
  }
}

/* ===== s4-quemsomos ===== */
.quem{
  --quem-hl:#6f9339;
  background:var(--bg-light);
  color:var(--bg-dark-3);
  padding:2em 0;
  overflow:hidden;
}

.quem__inner{
  display:flex;
  flex-direction:column;
  align-items:center;
}

.quem__media{
  position:relative;
  width:83%;
  display:flex;
  justify-content:center;
}

.quem__img{
  width:100%;
  border-radius:0;
}

.quem__img--desktop{display:none}
.quem__img--mobile{display:block}

.quem__content{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  width:100%;
  padding:2em 1em 0;
}

.quem__eyebrow{
  font-family:var(--font);
  font-weight:400;
  font-size:20px;
  line-height:1.2;
  text-transform:uppercase;
  color:var(--bg-dark-3);
  margin:0 0 .5em;
}

.quem__title{
  font-family:var(--font);
  font-weight:800;
  font-size:32px;
  line-height:1.1;
  text-transform:uppercase;
  color:var(--bg-dark-3);
  margin:0;
}

.quem__title-hl{
  color:var(--quem-hl);
  font-style:italic;
}

.quem__text{
  margin-top:10px;
  font-family:var(--font);
  font-size:16px;
  line-height:1.5;
}

.quem__text p + p{
  margin-top:1em;
}

.quem__text strong{
  font-weight:700;
}

@media (min-width:768px){
  .quem{
    background:var(--bg-light);
  }
  .quem__title{
    font-size:35px;
    line-height:1.2;
  }
  .quem__text{
    font-size:15px;
  }
}

@media (min-width:1024px){
  .quem__inner{
    flex-direction:row-reverse;
    max-width:1393px;
    align-items:center;
  }

  .quem__media{
    width:63%;
    transform:translateY(-27px) scale(1.2);
  }

  .quem__img--desktop{display:block}
  .quem__img--mobile{display:none}

  .quem__content{
    width:42%;
    align-items:flex-start;
    text-align:left;
    padding:2em 0;
  }

  .quem__title{
    font-size:45px;
  }

  .quem__text{
    width:70%;
    font-size:18px;
  }
}

/* ===== s5-garantia ===== */
.garantia{
  position:relative;
  background-color:var(--bg-guarantee);
  background-image:linear-gradient(319deg,var(--bg-guarantee),var(--green-400)),url('/img/bg-3.webp');
  background-blend-mode:normal;
  background-size:cover;
  background-position:center center;
  padding:5em 0;
  overflow:hidden;
}

.garantia__inner{
  display:flex;
  flex-direction:column-reverse;
  align-items:center;
  gap:32px;
  padding:0 20px;
}

.garantia__content{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  text-align:center;
  width:100%;
}

.garantia__title{
  font-family:var(--font);
  font-weight:700;
  font-size:32px;
  line-height:1.1;
  color:var(--white);
  text-transform:uppercase;
  max-width:340px;
}

.garantia__title span{
  color:var(--green-highlight);
  font-style:italic;
}

.garantia__text{
  font-family:var(--font);
  font-size:15px;
  line-height:1.5;
  color:var(--white);
  max-width:520px;
}

.garantia__btn{
  font-size:14px;
  text-transform:uppercase;
  padding:15px 45px 20px;
  background:linear-gradient(180deg,var(--green-600),var(--green-500));
  border:1px solid var(--green-300);
  border-radius:100px;
  box-shadow:0 0 28px rgba(179.8,239.7,77.64,0.5);
  animation:garantia-pulse 1s ease-in-out alternate infinite;
}

@keyframes garantia-pulse{
  from{transform:scale(1.07)}
  to{transform:scale(1)}
}

.garantia__badge{
  display:flex;
  justify-content:center;
}

.garantia__badge img{
  width:150px;
  height:auto;
}

@media (min-width:768px){
  .garantia__title{
    font-size:38px;
    max-width:520px;
  }

  .garantia__text{
    font-size:16px;
  }

  .garantia__badge img{
    width:190px;
  }
}

@media (min-width:1024px){
  .garantia__inner{
    flex-direction:row-reverse;
    justify-content:center;
    align-items:center;
    gap:0;
    max-width:1160px;
  }

  .garantia__content{
    align-items:flex-start;
    text-align:left;
    width:67%;
    gap:16px;
  }

  .garantia__title{
    font-size:43px;
    line-height:1.2;
    max-width:640px;
  }

  .garantia__text{
    font-size:18px;
    max-width:70%;
  }

  .garantia__btn{
    font-size:17px;
  }

  .garantia__badge{
    width:22%;
    justify-content:center;
  }

  .garantia__badge img{
    width:230px;
  }
}

/* ===== s6-planos ===== */
.planos{
  background:var(--bg-dark-2);
  padding:1em 1em 3em;
  text-align:center;
  overflow:visible;
}

.planos__head{padding-top:1em}

.planos__title{
  font-family:var(--font);
  font-weight:700;
  text-transform:uppercase;
  font-size:36px;
  line-height:1;
  color:var(--white);
  margin:0 auto 1em;
  max-width:20ch;
}
.planos__title-hl{color:var(--green-highlight);font-style:italic}

.planos__grid{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  max-width:1012px;
  width:100%;
  margin:0 auto;
}

.planos__card{
  display:flex;
  flex-direction:column;
  align-items:center;
  position:relative;
  padding:2em 1.25em;
}

/* card 1 — destaque (1 ano) */
.planos__card--destaque{
  background:linear-gradient(180deg,var(--green-400) 0%,var(--green-700) 100%);
  z-index:5;
}
.planos__badge{
  position:absolute;
  top:-21px;
  width:min(90%,340px);
  height:auto;
}
.planos__label{
  font-family:var(--font);
  font-weight:300;
  font-size:20px;
  color:var(--white);
  line-height:1.2;
  margin:1.6em 0 0;
}
.planos__nome{
  font-family:var(--font);
  font-weight:700;
  font-style:italic;
  text-transform:uppercase;
  font-size:38px;
  line-height:1.2;
  color:var(--white);
  margin:0;
}
.planos__label--dark{color:#4e4e4e}
.planos__nome--dark{
  color:var(--green-olive);
  font-size:28px;
}

.planos__desc{
  font-family:var(--font);
  font-size:15px;
  line-height:1.3;
  color:var(--gray-300);
  max-width:32ch;
  margin:.7em auto 0;
}

.planos__lista{
  list-style:none;
  margin:1em 0 0;
  padding:16px;
  border-radius:11px;
  max-width:340px;
  width:100%;
  text-align:left;
}
.planos__lista li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-family:var(--font);
  font-size:15px;
  font-weight:700;
  line-height:1.35;
}
.planos__lista li + li{margin-top:12px}

.planos__lista--destaque{
  background:rgba(26,26,26,.15);
  color:#c8ebb9;
}
.planos__lista--empresarial{
  background:#ebebeb;
  color:#5f6368;
  border-radius:12px;
}

.planos__check{
  flex:none;
  width:15px;
  height:15px;
  margin-top:3px;
  fill:var(--green-200);
}
.planos__check--dark{fill:#a0cb67}

.planos__parcelas{
  font-family:var(--font);
  font-weight:500;
  font-size:16px;
  color:var(--white);
  margin:1.5em 0 0;
}
.planos__preco{
  font-family:var(--font);
  font-weight:800;
  font-style:italic;
  font-size:52px;
  line-height:1.2;
  color:var(--green-200);
  margin:0;
}
.planos__preco-moeda{font-size:20px;font-weight:400}
.planos__preco-mes{font-size:20px;font-weight:500;color:var(--white)}
.planos__avista{
  font-family:var(--font);
  font-weight:500;
  font-size:15px;
  color:var(--white);
  margin:-6px 0 0;
}
.planos__avista strong{font-weight:600}

.planos__cta{
  margin-top:1.4em;
  font-size:14px;
  border:1px solid var(--green-300);
  box-shadow:0 0 28px rgba(180,240,78,.5);
}
.planos__cta--pulse{animation:planos-pulse 2.2s ease-in-out infinite}
@keyframes planos-pulse{
  0%,100%{box-shadow:0 0 20px rgba(180,240,78,.4)}
  50%{box-shadow:0 0 34px rgba(180,240,78,.75)}
}

/* card 2 — empresarial */
.planos__card--empresarial{
  background:#f7f7f7;
  margin-top:3em;
  padding:3em 1.25em;
}

@media(min-width:768px){
  .planos{padding:3em 0 5em}
  .planos__title{font-size:43px;line-height:1.2;max-width:26ch}
  .planos__grid{width:98%}
}

@media(min-width:1024px){
  .planos__grid{
    flex-direction:row;
    align-items:flex-start;
    justify-content:center;
    width:84%;
  }
  .planos__card{flex:1 1 0;max-width:506px}
  .planos__card--destaque{
    transform:scale(1.1);
    padding:2em 1.5em 3em;
  }
  .planos__card--empresarial{margin-top:0}
}

/* ===== s7-footer ===== */
.footer{
  background:var(--bg-dark);
  padding:4em 0;
  text-align:center;
}

.footer__inner{
  width:84%;
  max-width:640px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.footer__logo{
  width:68%;
  max-width:320px;
  height:auto;
  filter:brightness(1.55) contrast(.9);
  margin:0 0 12px;
}

.footer__text{
  color:#b7cea1;
  font-size:15px;
  line-height:1.3;
  margin:-4px 0 16px;
}

.footer__copy,
.footer__links{
  color:#b7cea1;
  font-size:15px;
  line-height:1.3;
  margin:0;
}

.footer__links a{
  color:#339966;
  text-decoration:none;
}

.footer__links a:hover{
  text-decoration:underline;
}

@media (min-width:768px){
  .footer__inner{
    width:100%;
    max-width:720px;
  }

  .footer__logo{
    width:34%;
    max-width:280px;
  }

  .footer__text,
  .footer__copy,
  .footer__links{
    font-size:17px;
  }
}

@media (min-width:1024px){
  .footer__inner{
    width:54%;
    max-width:600px;
  }
}
