.recurso-page{
  background:
        radial-gradient(circle at top right, rgba(236,102,59,.06), transparent 28%),
        radial-gradient(circle at bottom left, rgba(63,69,72,.04), transparent 35%),
        #eef2f5;
  color:#2f3437;
}

.recurso-container{
  max-width:1340px;
  margin:0 auto;
  padding:0 20px;
}

.recurso-hero{
  padding:52px 0 42px;
    background:
        radial-gradient(circle at top left, rgba(236,102,59,.14), transparent 30%),
        linear-gradient(180deg,#ffffff 0%,#f4f6f8 100%);
    border-bottom:1px solid #e4e8ec;
}

.recurso-hero .recurso-container{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);
  gap:30px;
  align-items:center;
}

.recurso-hero-texto span{
  display:inline-flex;
  padding:8px 15px;
  border-radius:999px;
  background:rgba(236,102,59,.10);
  color:#ec663b;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.recurso-hero-texto h1{
  margin:18px 0 0;
  color:#2f3437;
  font-size:clamp(1.75rem,3vw,2.45rem);
  line-height:1.08;
  font-weight:850;
}

.recurso-hero-texto p{
  margin:18px 0 0;
  color:#667085;
  font-size:.92rem;
  line-height:1.58;
  max-width:620px;
}

.recurso-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:20px;
}

.recurso-tags em{
  font-style:normal;
  padding:7px 12px;
  border-radius:999px;
  background:#fff;
  color:#59636f;
  font-size:.78rem;
  font-weight:700;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
}

.recurso-hero-imagem{
  height:300px;
  padding:20px;
  border-radius:26px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 22px 56px rgba(15,23,42,.12);
  overflow:hidden;
}

.recurso-hero-imagem img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

.recurso-conteudo{
  padding:55px 0 45px;
}

.recurso-conteudo-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.recurso-bloco{
  padding:24px;
  border-radius:22px;
  /*background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.06);*/

  background:#ffffff;

  border:1px solid #e7eaef;

  box-shadow:
      0 10px 30px rgba(15,23,42,.05),
      0 1px 0 rgba(255,255,255,.8) inset;
}

.recurso-bloco h2{
  margin:0 0 20px;
  color:#2f3437;
  font-size:1.18rem;
  margin-bottom:16px;
  font-weight:850;
}

.recurso-lista{
  display:grid;
  gap:13px;
}

.recurso-item{
  display:flex;
  gap:11px;
  align-items:flex-start;
  color:#59636f;
  font-size:.88rem;
  line-height:1.45;
}

.recurso-item i{
  color:#ec663b;
  margin-top:2px;
}

.recurso-zoom-trigger{
    position:relative;
    cursor:zoom-in;
}

.recurso-zoom-label{
    position:absolute;
    right:18px;
    bottom:18px;

    padding:7px 12px;
    border-radius:999px;

    background:rgba(63,69,72,.88);
    color:#fff;

    font-size:.76rem;
    font-weight:700;

    opacity:0;
    transform:translateY(4px);
    transition:.25s ease;
}

.recurso-zoom-trigger:hover .recurso-zoom-label{
    opacity:1;
    transform:translateY(0);
}

.recurso-zoom-modal{
    position:fixed;
    inset:0;
    z-index:9999;

    display:none;
    align-items:center;
    justify-content:center;

    padding:30px;

    background:rgba(20,24,27,.86);
    backdrop-filter:blur(5px);
}

.recurso-zoom-modal.ativo{
    display:flex;
}

.recurso-zoom-modal img{
    max-width:min(1200px,94vw);
    max-height:88vh;

    object-fit:contain;

    border-radius:18px;
    background:#fff;
    padding:18px;

    box-shadow:0 30px 80px rgba(0,0,0,.38);
}

.recurso-zoom-close{
    position:absolute;
    top:22px;
    right:28px;

    width:32px;
    height:32px;

    border:0;
    border-radius:999px;

    background:#ec663b;
    color:#fff;

    font-size:2rem;
    line-height:1;

    cursor:pointer;
}
/*Inicio relacionadas*/
/* RELACIONADOS */
.recurso-relacionados{
    padding:52px 0 34px;
    background:
        radial-gradient(circle at top right, rgba(236,102,59,.08), transparent 28%),
        linear-gradient(180deg,#f8fafc 0%,#edf1f5 100%);
    border-top:1px solid #e1e6ec;
}

.recurso-relacionados-topo{
    max-width:720px;
    margin-bottom:26px;
}

.recurso-relacionados-topo span{
    display:inline-flex;
    padding:7px 13px;
    border-radius:999px;
    background:rgba(236,102,59,.10);
    color:#ec663b;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.recurso-relacionados-topo h2{
    margin:14px 0 0;
    color:#2f3437;
    font-size:clamp(1.45rem,2vw,2rem);
    line-height:1.15;
    font-weight:850;
}

.recurso-relacionados-topo p{
    margin:10px 0 0;
    color:#667085;
    font-size:.92rem;
    line-height:1.55;
}

.recurso-relacionados-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    align-items:stretch;
}

.recurso-relacionado-card{
    min-height:190px;

    display:grid;
    grid-template-columns:110px minmax(0,1fr);
    gap:15px;

    padding:16px;
    border-radius:20px;

    background:#fff;
    border:1px solid #dfe5eb;

    text-decoration:none;
    color:inherit;

    box-shadow:0 12px 32px rgba(15,23,42,.07);
    transition:.25s ease;
}

.recurso-relacionado-card:hover{
    transform:translateY(-4px);
    box-shadow:0 22px 48px rgba(15,23,42,.12);
    text-decoration:none;
}

.recurso-relacionado-img{
    height:100%;
    min-height:130px;
    border-radius:16px;
    background:#f4f6f8;

    display:flex;
    align-items:center;
    justify-content:center;

    overflow:hidden;
}

.recurso-relacionado-img img{
    width:100%;
    height:100%;
    object-fit:contain;
    padding:8px;
}

.recurso-relacionado-info{
    display:flex;
    flex-direction:column;
    min-width:0;
}

.recurso-relacionado-info small{
    display:block;
    color:#ec663b;
    font-size:.72rem;
    font-weight:800;
    margin-bottom:6px;
}

.recurso-relacionado-info h3{
    margin:0;
    color:#2f3437;
    font-size:.98rem;
    line-height:1.22;
    font-weight:850;
}

.recurso-relacionado-info p{
    margin:8px 0 0;
    color:#667085;
    font-size:.8rem;
    line-height:1.42;

    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.recurso-relacionado-info span{
    margin-top:auto;
    padding-top:12px;

    display:inline-flex;
    align-items:center;
    gap:4px;

    color:#ec663b;
    font-size:.78rem;
    font-weight:800;
    text-decoration:none;
}

.recurso-relacionado-card:hover .recurso-relacionado-info span{
    text-decoration:none;
}
/*fim relacionada*/

/*Inicio Conteudo Relacionado*/
/* VEJA TAMBÉM */

.recurso-veja-tambem{
    padding:18px 0 40px;
    background:#eef2f5;
    /*border-top:1px solid #e4e8ec;*/
}

.recurso-veja-tambem-titulo{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:22px;
}

.recurso-veja-tambem-titulo h2{
    margin:0;
    color:#2f3437;
    font-size:1.05rem;
    font-weight:850;
    white-space:nowrap;
}

.recurso-veja-tambem-titulo::after{
    content:"";
    flex:1;
    height:1px;
    background:#d7dde4;
}

.recurso-veja-tambem-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:34px;
}

.recurso-veja-tambem h3{
    margin:0 0 13px;
    color:#667085;
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.07em;
    font-weight:850;
}

.recurso-veja-tambem ul{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:10px;
}

.recurso-veja-tambem a{
    display:inline-flex;
    align-items:flex-start;
    gap:10px;
    color:#2f3437;
    font-size:.92rem;
    line-height:1.35;
    text-decoration:none;
    transition:.2s ease;
}

.recurso-veja-tambem a:hover{
    color:#ec663b;
    text-decoration:none;
}

.recurso-veja-tambem i{
    color:#ec663b;
    font-size:1rem;
    line-height:1.35;
    flex:0 0 auto;
}

/*Fim Conteudo Relacionado*/

/*cta*/
.recurso-cta{
  padding:16px 0 50px;
}

.recurso-cta-box{
  padding:24px 28px;
  border-radius:22px;
  background:#3f4548;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  box-shadow:0 18px 44px rgba(15,23,42,.14);
}

.recurso-cta-box h2{
  margin:0;
  font-size:1.25rem;
  font-weight:850;
}

.recurso-cta-box p{
  margin:8px 0 0;
  color:rgba(255,255,255,.72);
  font-size:.88rem;
}

.recurso-cta-box a{
  flex:0 0 auto;
  padding:12px 20px;
  border-radius:12px;
  background:linear-gradient(45deg,#ec663b,#ed8019);
  color:#fff;
  text-decoration:none;
  font-size:.9rem;
  font-weight:750;
}

.recurso-cta-box a:hover{
  filter:brightness(1.08);
  color:#fff;
}

@media(max-width:1100px){
  .recurso-hero .recurso-container{
    grid-template-columns:1fr;
  }

  .recurso-hero-imagem{
    height:320px;
  }
}

@media(max-width:768px){
  .recurso-hero{
    padding:38px 0 30px;
  }

  .recurso-hero-texto h1{
    font-size:1.9rem;
  }

  .recurso-hero-imagem{
    height:240px;
    border-radius:22px;
  }

  .recurso-conteudo-grid{
    grid-template-columns:1fr;
  }

  .recurso-bloco{
    padding:22px;
  }
  .recurso-relacionados{
    padding:40px 0 24px;
  }

  .recurso-relacionados-grid{
      grid-template-columns:1fr;
  }

  .recurso-relacionado-card{
      min-height:auto;
      grid-template-columns:88px minmax(0,1fr);
  }

  .recurso-relacionado-img{
      min-height:92px;
  }

  .recurso-relacionado-info p{
      -webkit-line-clamp:2;
  }
  .recurso-cta-box{
    flex-direction:column;
    align-items:flex-start;
    padding:24px;
  }

  .recurso-veja-tambem{
     padding:18px 0 34px;
  }

  .recurso-veja-tambem-grid{
     grid-template-columns:1fr;
     gap:24px;
  }

  .recurso-cta-box{
    text-align: center;
    align-items: center;
  }

}