/* ==========================================================================
   DIFERENCIAIS V4 — composição editorial própria
   ========================================================================== */

/* Hero */
.diffv4-hero{
  background:#f3f7f9;
  padding:82px 0 84px;
}
.diffv4-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,.96fr) minmax(420px,1.04fr);
  gap:96px;
  align-items:center;
}
.diffv4-hero h1{
  max-width:690px;
  margin:10px 0 23px;
  color:#0f2d52;
  font-size:clamp(43px,4vw,62px);
  line-height:1.035;
  letter-spacing:-.038em;
}
.diffv4-hero h1 strong{color:#0fa36b}
.diffv4-hero__text{
  max-width:620px;
  margin:0 0 30px;
  color:#60728c;
  font-size:16px;
  line-height:1.75;
}
.diffv4-commitments{
  border-left:2px solid #0fa36b;
  padding-left:50px;
}
.diffv4-commitments__label{
  margin:0 0 28px;
  color:#8191a4;
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.diffv4-commitment{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:20px;
  align-items:start;
  padding:0 0 24px;
  margin-bottom:24px;
  border-bottom:1px solid #d7e1e7;
}
.diffv4-commitment:last-child{
  margin:0;
  padding-bottom:0;
  border-bottom:0;
}
.diffv4-commitment span{
  padding-top:5px;
  color:#0fa36b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
}
.diffv4-commitment strong{
  display:block;
  margin-bottom:6px;
  color:#0f2d52;
  font-size:25px;
  line-height:1.08;
  letter-spacing:-.025em;
}
.diffv4-commitment p{
  margin:0;
  color:#687891;
  font-size:12.5px;
  line-height:1.58;
}

/* Pillars */
.diffv4-pillars{
  padding:78px 0 82px;
}
.diffv4-pillars__head{
  max-width:760px;
  margin:0 auto 38px;
  text-align:center;
}
.diffv4-pillars__head h2{
  margin:8px 0 12px;
  color:#0f2d52;
  font-size:40px;
  line-height:1.1;
}
.diffv4-pillars__head>p:last-child{
  margin:0;
  color:#687891;
  font-size:15px;
  line-height:1.7;
}
.diffv4-pillars__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid #dbe4e9;
  border-bottom:1px solid #dbe4e9;
}
.diffv4-pillar{
  min-height:208px;
  padding:27px 28px 29px;
  border-right:1px solid #dbe4e9;
  transition:background-color 220ms ease,transform 220ms ease;
}
.diffv4-pillar:last-child{border-right:0}
.diffv4-pillar:hover{
  background:#f8fbfa;
  transform:translateY(-2px);
}
.diffv4-pillar__number{
  display:block;
  margin-bottom:20px;
  color:#0fa36b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
}
.diffv4-pillar h3{
  margin:0 0 9px;
  color:#0f2d52;
  font-size:17px;
  line-height:1.25;
}
.diffv4-pillar p{
  margin:0;
  color:#687891;
  font-size:13px;
  line-height:1.62;
}

/* Before deciding */
.diffv4-decision{
  background:#f3f7f9;
  padding:82px 0;
}
.diffv4-decision__grid{
  display:grid;
  grid-template-columns:.76fr 1.24fr;
  gap:88px;
  align-items:start;
}
.diffv4-decision__intro{
  position:sticky;
  top:120px;
}
.diffv4-decision__intro h2{
  margin:8px 0 17px;
  color:#0f2d52;
  font-size:clamp(34px,3.1vw,47px);
  line-height:1.08;
  letter-spacing:-.028em;
}
.diffv4-decision__intro p:last-child{
  max-width:470px;
  color:#687891;
  font-size:15px;
  line-height:1.75;
}
.diffv4-decision__list{
  border-top:1px solid #dbe4e9;
}
.diffv4-decision__item{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:20px;
  padding:21px 0 22px;
  border-bottom:1px solid #dbe4e9;
}
.diffv4-decision__item span{
  padding-top:3px;
  color:#0fa36b;
  font-size:10px;
  font-weight:800;
}
.diffv4-decision__item h3{
  margin:0 0 5px;
  color:#0f2d52;
  font-size:16px;
  line-height:1.35;
}
.diffv4-decision__item p{
  margin:0;
  color:#687891;
  font-size:12.8px;
  line-height:1.6;
}

/* Practice: before / during / after */
.diffv4-practice{
  padding:82px 0 88px;
}
.diffv4-practice__grid{
  display:grid;
  grid-template-columns:.68fr 1.32fr;
  gap:96px;
  align-items:start;
}
.diffv4-practice__statement h2{
  max-width:430px;
  margin:8px 0 18px;
  color:#0f2d52;
  font-size:clamp(34px,3vw,46px);
  line-height:1.06;
  letter-spacing:-.03em;
}
.diffv4-practice__statement p:last-child{
  max-width:440px;
  color:#687891;
  font-size:14px;
  line-height:1.72;
}
.diffv4-practice__phases{
  border-top:1px solid #dbe4e9;
}
.diffv4-phase{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:24px;
  padding:25px 0;
  border-bottom:1px solid #dbe4e9;
}
.diffv4-phase small{
  padding-top:4px;
  color:#0fa36b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.diffv4-phase h3{
  margin:0 0 6px;
  color:#0f2d52;
  font-size:18px;
}
.diffv4-phase p{
  margin:0;
  color:#687891;
  font-size:13px;
  line-height:1.62;
}

/* Manifesto */
.diffv4-manifesto{
  background:#123867;
  padding:72px 0 76px;
  color:#fff;
}
.diffv4-manifesto__inner{
  display:grid;
  grid-template-columns:.44fr 1.56fr;
  gap:72px;
  align-items:start;
}
.diffv4-manifesto__label{
  padding-right:38px;
  border-right:1px solid rgba(255,255,255,.18);
}
.diffv4-manifesto__label .eyebrow{
  color:#43dfac;
}
.diffv4-manifesto__copy h2{
  max-width:900px;
  margin:0 0 14px;
  color:#fff;
  font-size:clamp(36px,3.5vw,52px);
  line-height:1.05;
  letter-spacing:-.03em;
}
.diffv4-manifesto__copy h2 span{
  color:#b9cadb;
}
.diffv4-manifesto__copy p{
  max-width:770px;
  margin:0;
  color:#cbd6e3;
  font-size:13.5px;
  line-height:1.72;
}

/* International: pure typography */
.diffv4-intl{
  background:#0f2d52;
  color:#fff;
  padding:50px 0 54px;
}
.diffv4-intl__grid{
  display:grid;
  grid-template-columns:.48fr 1.52fr;
  gap:64px;
  align-items:start;
}
.diffv4-intl__label{
  padding-right:34px;
  border-right:1px solid rgba(255,255,255,.17);
}
.diffv4-intl__label .eyebrow{
  color:#43dfac;
  margin-bottom:9px;
}
.diffv4-intl__label strong{
  display:block;
  color:#fff;
  font-size:25px;
  line-height:1.12;
}
.diffv4-intl__copy h2{
  margin:0 0 10px;
  color:#fff;
  font-size:31px;
  line-height:1.12;
}
.diffv4-intl__copy p{
  max-width:780px;
  margin:0 0 12px;
  color:#cbd6e3;
  font-size:13px;
  line-height:1.7;
}
.diffv4-intl__copy .text-link{
  color:#43dfac;
  font-size:13px;
  font-weight:800;
}

/* FAQ */
.diffv4-faq{
  padding:80px 0;
}
.diffv4-faq .faq__grid{
  grid-template-columns:.8fr 1.2fr;
  align-items:start;
}
.diffv4-faq .faq__image{
  display:none;
}

/* Final CTA */
.diffv4-final{
  padding:0;
}
.diffv4-final .container{
  padding-top:34px;
  padding-bottom:34px;
}

@media(max-width:980px){
  .diffv4-hero__grid,
  .diffv4-decision__grid,
  .diffv4-practice__grid,
  .diffv4-manifesto__inner,
  .diffv4-intl__grid{
    grid-template-columns:1fr;
    gap:42px;
  }
  .diffv4-commitments{
    padding-left:32px;
  }
  .diffv4-pillars__grid{
    grid-template-columns:1fr 1fr;
  }
  .diffv4-pillar:nth-child(2){
    border-right:0;
  }
  .diffv4-pillar:nth-child(-n+2){
    border-bottom:1px solid #dbe4e9;
  }
  .diffv4-decision__intro{
    position:static;
  }
  .diffv4-manifesto__label,
  .diffv4-intl__label{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.16);
    padding:0 0 24px;
  }
}

@media(max-width:680px){
  .diffv4-hero{
    padding:58px 0 62px;
  }
  .diffv4-hero h1,
  .diffv4-pillars__head h2,
  .diffv4-decision__intro h2,
  .diffv4-practice__statement h2{
    font-size:34px;
  }
  .diffv4-commitments{
    padding-left:24px;
  }
  .diffv4-commitment{
    grid-template-columns:42px 1fr;
  }
  .diffv4-commitment strong{
    font-size:21px;
  }
  .diffv4-pillars__grid{
    grid-template-columns:1fr;
  }
  .diffv4-pillar,
  .diffv4-pillar:nth-child(2){
    border-right:0;
    border-bottom:1px solid #dbe4e9;
  }
  .diffv4-pillar:last-child{
    border-bottom:0;
  }
  .diffv4-phase{
    grid-template-columns:1fr;
    gap:8px;
  }
  .diffv4-manifesto{
    padding:58px 0 62px;
  }
  .diffv4-intl{
    padding:46px 0 50px;
  }
}