/* CASA FOLHA — UPGRADE */
:root{--bg:#0b0e0d;--footer:#171b1a;--text:#f7f7f5;--green:#6fbd93;--gold:#b78b4c;--gold-light:#c79c5d;--border:rgba(111,189,147,.48);--mentor-gap:18px}
*,*::before,*::after{box-sizing:border-box}
html,body{width:100%;max-width:100%;margin:0;overflow-x:hidden}
body{background:var(--bg);color:var(--text);font-family:"Lato",Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%}
.hero{
  position:relative;
  min-height:100svh;
  min-height:100dvh;
  padding:0;
  display:flex;
  align-items:center;
  overflow:hidden;
  /* background:
    radial-gradient(circle at 2% 8%,rgba(48,92,70,.36),transparent 27%),
    radial-gradient(circle at 96% 85%,rgba(48,92,70,.28),transparent 23%),
    var(--bg);
  */    
}






.hero-frame {
    position: absolute;
    z-index: 0;
    width: 95%; /* Alterado para 90% */
    height: 88%;
    left: 50%; /* Alterado de 540px para 50% */
    top: 50%;
    transform: translate(-50%, -50%);
    border: 1px solid rgba(111, 189, 147, .82);
    border-radius: 5px;
    pointer-events: none;
}


.hero-shell{--mentor-start:49.5%;--mentor-end:100%;
  position:relative;
  width:min(1632px,85vw);
  height:100dvh;
  min-height:560px;
  margin:0 auto;
  border:0;
  border-radius:0;
  overflow:visible;
  display:grid;
  grid-template-columns:minmax(430px,.92fr) minmax(540px,1.08fr);
  align-items:center;
  isolation:isolate;
}
.hero-content{position:relative;z-index:5;padding:clamp(46px,7vh,82px) clamp(32px,4vw,84px);max-width:650px}




img.footer-logo {
    width: 340px;
}

.brand{color:var(--green);font-size:clamp(2.1rem,3vw,3rem);line-height:.95;margin-bottom:clamp(30px,4vh,46px)}
h1 {
    margin: 0 0 20px;
    font-family: "Montserrat",Arial,sans-serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.045em;
    text-transform: uppercase;
}
h1 span:first-child,h1 span:nth-child(2){color:var(--gold)}
.hero-lead {
    max-width: 460px;
    margin: 0 0 12px;
    font-size: 20px;
    line-height: 1.2;
}
.hero-description {
    max-width: 500px;
    margin: 0;
    font-size: 17px;
    line-height: 1.3;
}
.hero-description strong{text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:2px;text-underline-offset:3px; color: var(--green);}
.hero-description em{font-weight:700}
.offer-kicker {
    display: block;
    font-size: 17px;
    line-height: 1;
    margin: 15px 0 5px;
}
.offer-price {
    display: flex;
    align-items: flex-end;
    color: var(--green);
    line-height: .8;
    position: relative;
}
.offer-plus {
    align-self: flex-start;
    font-size: 2rem;
    font-weight: 700;
    top: 20px;
    position: absolute;
}
.offer-currency{color:var(--text);margin:0 2px 4px 0;font-size:1rem;font-weight:700}
.offer-value {
    font-size: 48px;
    font-weight: 500;
    font-family: "Montserrat", Arial, sans-serif;
}
.offer-cents{margin:0 2px 5px 0;font-family:Georgia,"Times New Roman",serif;font-size:2rem;font-weight:900}
.offer-period{color:var(--text);margin-bottom:4px;font-size:1rem;font-weight:700}


.offer-note{display:block;margin-top:5px;font-size:17px;line-height:1}


.cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    margin-top: 18px;
    padding: 14px 28px;
    border-radius: 6px;
    background: var(--gold);
    color: #fff;
    font-family: "Montserrat",Arial,sans-serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
    transition: transform .2s ease,background-color .2s ease,box-shadow .2s ease;
    width: 260px;
}
.cta:hover{background:var(--green); color:#121212; transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.25)}
.cta:focus-visible{outline:3px solid var(--green);outline-offset:4px}


.mentors-area{
  position:relative;
  width:100%;
  max-width:100%;
  min-width:0;
  height:100dvh;
  min-height:560px;
  overflow:hidden;
  align-self:stretch;
  z-index:2;
  background: var(--bg);    
}
.mentor-columns{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--mentor-gap);
  width:100%;
  max-width:100%;
  padding:0 8px;
  pointer-events:auto;

}
.mentor-column{
  position:relative;
  min-width:0;
  overflow:hidden;
}
.mentor-track{position:absolute;top:0;left:0;right:0;will-change:transform}
.mentor-item {
    position: relative;
    width: 100%;
    aspect-ratio: 1/.9;
    margin-bottom: var(--mentor-gap);
    overflow: hidden;
    cursor: default;
    border-radius: 4px;
    border: 1px solid rgb(93 165 125 / 27%);
}
.mentor-item::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(
      135deg,
      rgb(120 210 158 / 18%) 0%,
      transparent 18%,
      transparent 78%,
      rgb(0 0 0 / 22%) 100%
    );
  box-shadow:
    inset 1px 1px 0 rgb(255 255 255 / 8%),
    inset -1px -1px 0 rgb(0 0 0 / 22%);
}

.mentor-item img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none;pointer-events:none}





.mentor-tooltip{position:fixed;z-index:100;display:none;padding:8px 12px;border:1px solid rgba(111,189,147,.55);border-radius:4px;background:rgba(10,14,13,.94);color:#fff;font-family:"Montserrat",Arial,sans-serif;font-size:.72rem;font-weight:700;line-height:1;white-space:nowrap;pointer-events:none;transform:translate3d(14px,14px,0);box-shadow:0 8px 22px rgba(0,0,0,.28)}
.mentor-tooltip.is-visible{display:block}.mentor-tooltip.is-mobile{
  max-width:calc(100vw - 16px);
  white-space:normal;
  text-align:center;
  line-height:1.2;
  pointer-events:none;
}.mentor-mobile{display:none}
.footer{position:relative;z-index:10;padding:60px max(6vw,28px) 60px;background:var(--footer)}
.footer-grid {
    width: min(1360px,100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.7fr .65fr 1.15fr 1.2fr;
    gap: 40px;
}
.footer p {
    font-size: 15px;
    line-height: 1.22;
    margin: 0 0 10px;
}

.footer a{color: #ffffff; text-decoration: none;}
.footer-label {
    margin-bottom: 12px!important;
    font-size: 17px!important;
    font-weight: 700;
}


section.hero {
background-image: url("images/bg.jpg");
background-position: center center;
}



.platforms {
    display: flex;
    gap: 24px;
    margin-top: 28px;
    font-size: 0.75rem;
    flex-direction: row;
}

.platforms div {
    display: flex;
    align-content: center;
    align-items: center;
    gap: 10px;
}


.footer-bottom{width:min(1360px,100%);margin:48px auto 0;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:40px}
.footer-logo{color:#fff;font-size:clamp(3rem,5vw,4.5rem);line-height:.85}.disclaimer{font-size:.68rem!important;line-height:1.25!important}




@media(max-width:1100px){
  .hero-shell{grid-template-columns:minmax(370px,.9fr) minmax(430px,1.1fr)}
  .hero-content{padding-left:42px;padding-right:24px}
}

@media(max-width:767px){
    
    .hero-frame{display:none;}    

  .hero-shell{
    width:100%;
    height:auto;
    min-height:0;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }

  .mentors-area{
    height:auto;
    min-height:0;
  }

  .mentor-mobile{
    gap:12px;
  }

  .mentor-row{
    gap:12px;
  }

  .mentor-row .mentor-item{
  position:relative;
  width:100%;
  aspect-ratio:1/.9;
  margin-bottom:var(--mentor-gap);
  overflow:hidden;
  cursor:default;
  border-radius:4px;
  border:1px solid rgb(93 165 125 / 27%);
  background:#111;
  box-shadow:
    0 2px 4px rgb(0 0 0 / 28%),
    0 8px 16px rgb(0 0 0 / 12%),
    inset 0 0 0 1px rgb(255 255 255 / 3%);
}

.footer {
    display: flex;
    flex-direction: column;
    padding: 36px 24px 30px;
    text-align: left;
}

.footer-bottom {
    display: contents;
}

.footer-logo {
    order: 1;
    width: 220px;
    height: auto;
    margin: 0 0 32px;
    align-self: flex-start;
}

.footer-grid {
    order: 2;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px 20px;
    justify-items: start;
}

.footer-grid > div,
.footer-about {
    text-align: left;
    justify-self: start;
}

.footer-about {
    grid-column: 1 / -1;
}

.disclaimer {
    order: 3;
    width: 100%;
    margin-top: 32px;
    text-align: left;
} 

  .platforms{
    justify-content:center;
  }

  .footer-bottom{
    justify-items:center;
    text-align:center;
  }

  .footer-intro{
    font-size:22px!important;
    line-height:1.25!important;
  }

  .footer-label{
    font-size:18px!important;
    font-weight:700!important;
  }


  .hero{min-height:100svh;min-height:85dvh;padding:18px 12px 28px;align-items:flex-start}
    
  .hero-shell{width:100%;height:auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}
    
  .hero-content{display:contents}
  .brand {
    order: 1;
    width: 95%;
    margin: 0;
    padding: 9px 22px 16px;
    font-size: 2rem;
}
  .mentors-area{order:2;width:100%;height:auto;min-height:178px;overflow:hidden;}
  .mentor-columns{display:none}
  .mentor-mobile{position:relative;display:flex;flex-direction:column;gap:10px;width:max-content;padding:10px 0 14px}
  .mentor-row{display:flex;gap:10px;width:max-content;will-change:transform}
  .mentor-row .mentor-item{flex:0 0 86px;width:86px;aspect-ratio:1/.92;margin:0}
    
/* Conteúdo textual: mesma largura e mesmo alinhamento */
.hero-content > h1,
.hero-content > .hero-lead,
.hero-content > .hero-description,
.hero-content > .offer,
.hero-content > .cta {
    order: 3;
    width: calc(100% - 44px);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    align-self: center;
}
 
    
.hero-content>h1 {
    margin-top: 5px;
}
h1 {
    font-size: 28px;
    line-height: 1.08;
}
.hero-lead {
    font-size: 22px;
    margin-top: 0px;
}
.hero-description {
    font-size: 17px;
    line-height: 1.34;
}
  .offer{margin-top:5px}
.offer-value {
    font-size: 38px;
}
.cta {
    width: calc(100% - 44px);
    min-height: 52px;
    margin-top: 18px;
    margin-bottom: 34px;
    font-size: 18px;
}
  .cta-mobile-break{display:block}
  .footer{padding:36px 24px 30px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}
  .footer-about{grid-column:1/-1}
  .footer-bottom{margin-top:38px;grid-template-columns:1fr;gap:28px}
  .footer-logo{font-size:3.4rem}
}
@media(max-width:480px){
    
p.hero-lead {
    display: none;
}   
    
    
h1 {
    margin: 0px 0 12px;
}    
    
.mentor-row .mentor-item {
    flex-basis: 28vw;
    width: 30vw;
}
  .mentors-area{min-height:164px}
      .footer-grid {
        grid-template-columns: 1fr 1fr;
    }

    .footer-about {
        grid-column: 1 / -1;
    }
}


@media(min-width:768px){

}


@media(min-width:1800px){

.hero-shell{--mentor-start:49.5%;--mentor-end:100%;
  position:relative;
  width:min(1632px,90vw);
  height:100dvh;
  min-height:560px;
  margin:0 auto;
  border:0;
  border-radius:0;
  overflow:visible;
  display:grid;
  grid-template-columns:minmax(430px,.92fr) minmax(540px,1.08fr);
  align-items:center;
  isolation:isolate;
}    
    
}

@media(max-width:767px){

  .mentor-item{
    border-radius:4px;
    border:1px solid rgb(93 165 125 / 27%);
    box-shadow:
      0 2px 4px rgb(0 0 0 / 24%),
      inset 1px 1px 0 rgb(255 255 255 / 5%),
      inset -1px -1px 0 rgb(0 0 0 / 18%);
  }
    
    
/* Ajuste final do rodapé — aplicar ao final do style.css */
  .footer-grid > div:last-child {
    grid-column: 1 / -1;
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    padding-left: 24px;
    padding-right: 24px;
    justify-self: start;
  }
  
    
}
