/* ==========================================================================
   Identidade visual — Plínio Freitas Personal Trainer
   Paleta e tipografia do manual de marca oficial dele.

   Verde limão #E0FF3C · Azul marinho #002851 · Preto #19191B · Branco
   Títulos: Poppins · Texto: Bricolage Grotesque

   Carregada DEPOIS do CSS do Elementor. Só sobrescreve cor e tipografia,
   nunca layout. Para voltar ao visual do tema, remova o <link> no <head>.
   ========================================================================== */

@import url('/assets/fontes/marca.css');

:root{
  --pf-verde:#E0FF3C;
  --pf-verde-escuro:#B8D62B;
  --pf-azul:#002851;
  --pf-azul-claro:#0A3C73;
  --pf-preto:#19191B;
  --pf-grafite:#101012;
  --pf-branco:#FFFFFF;
  --pf-verde-10:rgb(224 255 60 / .10);
  --pf-verde-25:rgb(224 255 60 / .25);
  --pf-verde-45:rgb(224 255 60 / .45);
  --pf-azul-40:rgb(0 40 81 / .40);
}

/* --- tipografia da marca ------------------------------------------------
   O tema vinha com Exo nos títulos e Roboto no texto. */
.elementor-11 .elementor-heading-title,
.elementor-11 .elementor-image-box-title,
.elementor-11 .elementor-icon-box-title,
.elementor-11 .elementor-button,
.elementor-11 .elementor-toggle-title,
.marquee-content{
  font-family:'Poppins','Exo',sans-serif!important;
  letter-spacing:-.01em;
}
.elementor-11 .elementor-image-box-description,
.elementor-11 .elementor-icon-box-description,
.elementor-11 .elementor-tab-content,
.elementor-11 .elementor-icon-list-text,
.elementor-11 p{
  font-family:'Bricolage Grotesque','Roboto',sans-serif!important;
}

/* --- fundo: preto da marca em vez do cinza do tema --------------------- */
body{background:var(--pf-preto)}

/* --- seleção e barra de rolagem ---------------------------------------- */
::selection{background:var(--pf-verde);color:var(--pf-preto)}
html{scrollbar-color:var(--pf-verde-45) var(--pf-preto)}

cor{color:var(--pf-verde)!important}

/* --- faixas rolantes: verde limão com texto azul marinho --------------- */
.elementor-11 .elementor-element-be1eca7>.elementor-widget-container,
.elementor-11 .elementor-element-633c78fd>.elementor-widget-container{
  background-image:linear-gradient(180deg,var(--pf-verde) 0%,var(--pf-verde-escuro) 100%)!important;
}
.marquee-content{color:var(--pf-azul)!important;font-weight:700}

/* --- botões: verde limão, texto azul marinho --------------------------- */
.elementor-11 .elementor-button{
  background:linear-gradient(-45deg,transparent 20px,var(--pf-verde) 0)!important;
  border:1px solid var(--pf-verde)!important;
  color:var(--pf-azul)!important;
  fill:var(--pf-azul)!important;
  font-weight:800;letter-spacing:.04em;
}
.elementor-11 .elementor-button:hover{
  background:linear-gradient(-45deg,transparent 20px,var(--pf-branco) 0)!important;
  border-color:var(--pf-branco)!important;
  color:var(--pf-azul)!important;fill:var(--pf-azul)!important;
  box-shadow:0 0 34px 0 var(--pf-verde-45)!important;
}

/* --- cartões: contorno e brilho na cor da marca ------------------------ */
.elementor-11 .elementor-widget-container[style*="radial-gradient"]{
  border-color:var(--pf-verde-25)!important;
}
.caixa{
  border-color:var(--pf-verde-25)!important;
  background:linear-gradient(290deg,rgb(0 40 81 / .45).1%,#fff0 60.17%)!important;
}
.caixa:before{
  background:var(--pf-verde)!important;
  box-shadow:0 17px 10px 0 var(--pf-verde-25),0 7px 7px 0 var(--pf-verde-25),
             0 2px 4px 0 var(--pf-verde-45)!important;
}
.elementor-11 .elementor-element.elementor-element-2d7654f3::after,
.elementor-11 .elementor-element.elementor-element-327b9299::after,
.elementor-11 .elementor-element.elementor-element-3f555a78::after,
.elementor-11 .elementor-element.elementor-element-4d320d25::after,
.elementor-11 .elementor-element.elementor-element-6c408a37::after{
  background:var(--pf-verde)!important;
}

/* --- ícones ------------------------------------------------------------- */
.elementor-11 .elementor-icon-box-icon svg path{fill:var(--pf-verde)!important}
.elementor-11 .elementor-social-icon svg{fill:var(--pf-verde)}
.elementor-11 .elementor-social-icon:hover svg{fill:var(--pf-branco)}
.elementor-11 .elementor-icon-list-icon svg{fill:var(--pf-verde)}

/* --- perguntas frequentes ---------------------------------------------- */
.elementor-11 .elementor-toggle-item{border:1px solid var(--pf-verde-10)}
.elementor-11 .elementor-tab-title .elementor-toggle-icon i:before{color:var(--pf-verde)!important}
.elementor-11 .elementor-tab-title.elementor-active .elementor-toggle-title,
.elementor-11 .elementor-tab-title.elementor-active .elementor-toggle-icon,
.elementor-11 .elementor-tab-title.elementor-active .elementor-toggle-icon i:before{
  color:var(--pf-verde)!important;
}

/* --- links -------------------------------------------------------------- */
.elementor-11 .elementor-image-box-title a{color:var(--pf-branco);transition:color .3s ease}
.elementor-11 .elementor-image-box-title a:hover{color:var(--pf-verde)}

/* --- logo oficial (empilhada, proporção ~1,27:1) -----------------------
   Os espaços do tema foram feitos para uma logo horizontal e baixa. */
.elementor-11 .elementor-element-c1d4d9d .elementor-image-box-img{width:auto!important;max-width:100%}
.elementor-11 .elementor-element-c1d4d9d .elementor-image-box-img img{width:150px;max-width:100%;height:auto}
.elementor-11 .elementor-element-79deaa52 .elementor-image-box-img{width:auto!important;max-width:100%}
.elementor-11 .elementor-element-79deaa52 .elementor-image-box-img img{width:140px;max-width:100%;height:auto}
@media(max-width:767px){
  .elementor-11 .elementor-element-c1d4d9d .elementor-image-box-img img{width:124px}
  .elementor-11 .elementor-element-79deaa52 .elementor-image-box-img img{width:118px}
}
.elementor-11 .elementor-element.elementor-element-2fddff55 img{width:74%!important;height:auto}
.elementor-11 .elementor-element.elementor-element-316f9716{--container-widget-width:26%!important;width:26%!important;max-width:26%!important}

/* --- antes e depois: duas faixas rolando em sentidos opostos -----------
   Cada trilho leva os mesmos cards duas vezes. A animação anda exatamente
   metade do trilho e recomeça, então o ciclo não tem emenda visível. */
.pf-antes-depois{
  width:100%;max-width:100%;display:flex;flex-direction:column;gap:22px;
}
.pf-ad-faixa{
  overflow:hidden;width:100%;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.pf-ad-trilho{
  display:flex;gap:22px;width:max-content;
  will-change:transform;
}
.pf-ad-esq .pf-ad-trilho{animation:pf-desliza-esq 46s linear infinite}
.pf-ad-dir .pf-ad-trilho{animation:pf-desliza-dir 52s linear infinite}
@keyframes pf-desliza-esq{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-50% - 11px),0,0)}   /* metade do trilho + metade do vão */
}
@keyframes pf-desliza-dir{
  from{transform:translate3d(calc(-50% - 11px),0,0)}
  to{transform:translate3d(0,0,0)}
}
.pf-antes-depois:hover .pf-ad-trilho{animation-play-state:paused}
.pf-ad-item{
  margin:0;flex:0 0 300px;width:300px;
  border-radius:14px;overflow:hidden;
  box-shadow:0 18px 40px rgb(0 0 0 / .5);
  border:1px solid var(--pf-verde-25);
}
.pf-antes-depois img{display:block;width:100%;height:auto}
@media(max-width:767px){
  .pf-ad-item{flex-basis:70vw;width:70vw}
  .pf-ad-esq .pf-ad-trilho{animation-duration:34s}
  .pf-ad-dir .pf-ad-trilho{animation-duration:38s}
}
@media(prefers-reduced-motion:reduce){
  .pf-ad-trilho{animation:none!important;flex-wrap:wrap;width:100%;justify-content:center}
  .pf-ad-faixa{-webkit-mask-image:none;mask-image:none}
  .pf-ad-item[aria-hidden="true"]{display:none}
}

/* --- terceiro card de depoimento ---------------------------------------
   Veio de uma sessão anterior sem estilo nenhum: o texto ficava solto fora
   da caixa. Aqui ele recebe o mesmo tratamento dos outros dois. */
.elementor-11 .elementor-element.elementor-element-pf-card3,.elementor-11 .elementor-element.elementor-element-pf-card4{
  --display:flex;--min-height:500px;--justify-content:flex-end;
  --overflow:hidden;--width:23%;
  position:relative;border-radius:10px;border:1px solid var(--pf-verde-25);
  background-image:url("/wp-content/uploads/2024/11/Frame-10.webp");
  background-position:center;background-size:cover;background-repeat:no-repeat;
}
.elementor-11 .elementor-element.elementor-element-pf-card3::before,.elementor-11 .elementor-element.elementor-element-pf-card4::before{
  content:"";position:absolute;inset:0;border-radius:10px;
  background:linear-gradient(180deg,rgb(0 40 81 / .10) 35%,rgb(15 15 17 / .92) 100%);
}
.elementor-11 .elementor-element.elementor-element-pf-card3::after,.elementor-11 .elementor-element.elementor-element-pf-card4::after{
  content:"";position:absolute;top:0;left:0;right:0;margin:0 30px;height:5px;
  width:16.5%;border-radius:0 0 5px 5px;background:var(--pf-verde);
  box-shadow:0 2px 12px 0 var(--pf-verde-45);transition:width .5s ease-in-out;
}
.elementor-11 .elementor-element.elementor-element-pf-card3:hover::after,.elementor-11 .elementor-element.elementor-element-pf-card4:hover::after{width:66.5%}
.elementor-11 .elementor-element.elementor-element-pf-card3 .elementor-widget-container,.elementor-11 .elementor-element.elementor-element-pf-card4 .elementor-widget-container{position:relative;z-index:1}
@media(max-width:1024px){.elementor-11 .elementor-element.elementor-element-pf-card3,.elementor-11 .elementor-element.elementor-element-pf-card4{--width:48%}}
@media(max-width:767px){.elementor-11 .elementor-element.elementor-element-pf-card3,.elementor-11 .elementor-element.elementor-element-pf-card4{--width:100%}}
/* --- fotos dos depoimentos (vieram do grupo de suporte no WhatsApp) ---
   Artes montadas por _brief-imagens/depoimentos/montar-cards.py */
.elementor-11 .elementor-element.elementor-element-6c408a37:not(.elementor-motion-effects-element-type-background){background-image:url("/wp-content/uploads/depoimentos/nicole-avelino.webp")}
.elementor-11 .elementor-element.elementor-element-327b9299:not(.elementor-motion-effects-element-type-background){background-image:url("/wp-content/uploads/depoimentos/daiana-pacheco.webp")}
.elementor-11 .elementor-element.elementor-element-pf-card3{background-image:url("/wp-content/uploads/depoimentos/danielle-soares.webp")}
.elementor-11 .elementor-element.elementor-element-pf-card4{background-image:url("/wp-content/uploads/depoimentos/aluno-02-10.webp")}
.elementor-11 .elementor-element.elementor-element-6c408a37,
.elementor-11 .elementor-element.elementor-element-327b9299{background-position:top center;background-size:cover}

/* o card da consultoria fica sozinho na segunda linha: centraliza ele mesmo */
.elementor-11 .pf-card-online{margin-left:auto!important;margin-right:auto!important}

/* cards 3 e 4: mesmo acabamento de texto dos cards 1 e 2 (regras do 40914582) */
.elementor-11 .elementor-element.elementor-element-pf-card3-content>.elementor-widget-container,.elementor-11 .elementor-element.elementor-element-pf-card4-content>.elementor-widget-container{padding:1.4em}
.elementor-11 .elementor-element.elementor-element-pf-card3-content .elementor-icon-box-wrapper,.elementor-11 .elementor-element.elementor-element-pf-card4-content .elementor-icon-box-wrapper{text-align:left}
.elementor-11 .elementor-element.elementor-element-pf-card3-content .elementor-icon-box-title,.elementor-11 .elementor-element.elementor-element-pf-card4-content .elementor-icon-box-title{margin-bottom:8px;font-family:"Exo",Sans-serif;font-size:1.5em;font-weight:700}
.elementor-11 .elementor-element.elementor-element-pf-card3-content .elementor-icon-box-description,.elementor-11 .elementor-element.elementor-element-pf-card4-content .elementor-icon-box-description{font-family:"Exo",Sans-serif;font-size:.95em;font-weight:300}

/* --- certificado na seção "Sobre" -------------------------------------
   Card de credencial abaixo da bio. Abre o certificado em tamanho real. */
.pf-certificado{
  display:flex;align-items:center;gap:18px;
  margin-top:28px;padding:14px 18px 14px 14px;max-width:460px;
  background:rgb(16 16 18 / .72);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  border:1px solid var(--pf-verde-25);border-left:3px solid var(--pf-verde);
  border-radius:12px;text-decoration:none!important;color:var(--pf-branco);
  transition:border-color .25s ease,transform .25s ease,background .25s ease;
}
.pf-certificado:hover,.pf-certificado:focus-visible{
  border-color:var(--pf-verde-45);border-left-color:var(--pf-verde);
  background:rgb(16 16 18 / .85);transform:translateY(-2px);
}
.pf-certificado:focus-visible{outline:2px solid var(--pf-verde);outline-offset:3px}
.pf-cert-thumb{flex:0 0 132px;border-radius:6px;overflow:hidden;
  box-shadow:0 6px 18px rgb(0 0 0 / .45);transform:rotate(-2deg);
  transition:transform .25s ease}
.pf-certificado:hover .pf-cert-thumb{transform:rotate(0)}
.pf-cert-thumb img{display:block;width:100%;height:auto}
.pf-cert-info{display:flex;flex-direction:column;gap:3px;min-width:0}
.pf-cert-rotulo{font-family:'Poppins',sans-serif;font-size:.68em;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--pf-verde)}
.pf-cert-titulo{font-family:'Poppins',sans-serif;font-size:1.02em;font-weight:700;line-height:1.25;color:var(--pf-branco)}
.pf-cert-meta{font-size:.82em;color:rgb(255 255 255 / .72)}
.pf-cert-ver{margin-top:4px;font-size:.78em;font-weight:600;color:var(--pf-verde)}
@media (max-width:767px){
  .pf-certificado{gap:14px;padding:12px;margin-top:22px}
  .pf-cert-thumb{flex-basis:104px}
  .pf-cert-titulo{font-size:.95em}
}
