
/* Layout: página única de marca; faixas brancas e menta alternadas, cada faixa com wrapper central de 1120px */
:root{
  --verde:#018B4D;
  --verde-escuro:#0A4D2C;
  --menta:#EAF5EE;
  --menta-forte:#CFE8D8;
  --branco:#FFFFFF;
  --tinta:#16271E;
  --tinta-suave:#4B5F54;
  --linha:#D5E6DB;
  --serif:"Cormorant Garamond","Cormorant",Georgia,"Times New Roman",serif;
  --sans:"Nunito Sans","Segoe UI",system-ui,-apple-system,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--branco);color:var(--tinta);font-family:var(--sans);font-size:17px;line-height:1.65}
img{max-width:100%;display:block}
a{color:var(--verde)}
a:focus-visible,button:focus-visible{outline:3px solid var(--verde);outline-offset:3px;border-radius:6px}
.faixa{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.miolo{max-width:1120px;margin:0 auto}
h1,h2,h3{font-family:var(--serif);color:var(--verde-escuro);font-weight:600;line-height:1.08;text-wrap:balance;margin:0}
h2{font-size:clamp(2rem,4.2vw,3rem);text-transform:uppercase;letter-spacing:.01em}
.rotulo{font-size:.75rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--verde)}
.ornato{display:flex;align-items:center;gap:14px;margin:18px 0 28px;color:var(--verde)}.ornato > cp-enfeite[data-pos="antes"],.ornato > cp-enfeite[data-pos="depois"]{content:"";height:2px;width:72px;background:var(--verde)}
.ornato svg{width:22px;height:16px}
p{margin:0}
.leve{color:var(--tinta-suave)}

/* Cabeçalho */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--linha)}
header .miolo{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:10px}
header img{height:46px;width:auto}
nav{display:flex;gap:22px;flex-wrap:wrap;justify-content:flex-end}
nav a{color:var(--tinta);text-decoration:none;font-weight:700;font-size:.9rem}
nav a:hover{color:var(--verde)}
@media (max-width:640px){nav{display:none} header img{height:38px}}

/* Abertura */
.abertura{background:linear-gradient(180deg,var(--branco) 0%,var(--menta) 100%);overflow:hidden}
.abertura .miolo{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding-block:56px 0}
.abertura .texto{min-width:0;padding-bottom:56px}
.abertura h1{font-size:clamp(2.6rem,6vw,4.6rem);text-transform:uppercase;margin:14px 0 22px}
.abertura h1 em{font-style:normal;color:var(--verde)}
.abertura p.lead{font-size:1.15rem;max-width:34em;color:var(--tinta-suave)}
.selos{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.selo{border:1.5px solid var(--verde);color:var(--verde-escuro);border-radius:999px;padding:7px 16px;font-weight:700;font-size:.88rem;background:var(--branco)}
.selo.cheio{background:var(--verde);color:var(--branco)}
.acoes{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.botao{display:inline-flex;align-items:center;gap:8px;background:var(--verde-escuro);color:var(--branco);text-decoration:none;font-weight:800;padding:13px 24px;border-radius:999px;border:0;font:inherit;font-weight:800;cursor:pointer}
.botao:hover{background:var(--verde)}
.botao.claro{background:transparent;color:var(--verde-escuro);border:1.5px solid var(--verde-escuro)}
.botao.claro:hover{background:var(--menta-forte)}
.garrafa{justify-self:center;align-self:end;max-width:300px;width:100%}
.garrafa img{width:100%;height:auto;mask-image:linear-gradient(180deg,#000 88%,transparent);-webkit-mask-image:linear-gradient(180deg,#000 88%,transparent)}
@media (max-width:820px){
  .abertura .miolo{grid-template-columns:1fr;padding-top:36px}
  .abertura .texto{padding-bottom:0}
  .garrafa{max-width:210px}
}

section{padding-block:84px}
@media (max-width:640px){section{padding-block:60px}}
.cabeca{max-width:680px}

/* Quem somos */
.quem .grade{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.quem .grade > *{min-width:0}
.quem .texto{display:grid;gap:18px}
.fotos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fotos figure{margin:0;display:grid;gap:8px}
.fotos figure:first-child{grid-column:1 / -1}
.fotos img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px}
.fotos figcaption{font-size:.82rem;font-weight:700;color:var(--tinta-suave)}
.dados{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--linha);margin-top:10px}
.dados div{padding:16px 12px 0 0}
.dados b{display:block;font-family:var(--serif);font-size:2rem;color:var(--verde);line-height:1;font-weight:700}
.dados span{font-size:.85rem;color:var(--tinta-suave)}
@media (max-width:820px){.quem .grade{grid-template-columns:1fr}}

/* Origem */
.origem{background:var(--menta)}
.origem .grade{display:grid;grid-template-columns:200px 1fr 1fr;gap:44px;align-items:start}
.origem .grade > *{min-width:0}
.perfil img{width:100%;height:auto;mix-blend-mode:multiply}
.camadas{list-style:none;margin:0;padding:0;display:grid;gap:0}
.camadas li{display:grid;grid-template-columns:70px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--menta-forte)}
.camadas li:last-child{border-bottom:0}
.camadas .prof{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--verde);padding-top:4px}
.camadas h3{font-family:var(--sans);font-size:1rem;font-weight:800;color:var(--verde-escuro);margin-bottom:2px}
.camadas p{font-size:.95rem;color:var(--tinta-suave)}
.sabia{background:var(--verde-escuro);color:#E7F3EC;border-radius:22px;padding:30px 28px;display:grid;gap:22px}
.sabia h3{color:var(--branco);font-size:1.9rem;text-transform:uppercase}
.sabia .fato{display:grid;gap:4px;padding-top:18px;border-top:1px solid rgba(255,255,255,.22)}
.sabia .fato b{font-family:var(--serif);font-size:2.1rem;line-height:1;color:var(--branco);font-weight:700}
.sabia .fato p{font-size:.93rem}
.galo{display:flex;gap:16px;align-items:center;background:var(--branco);border-radius:16px;padding:14px 16px;margin-top:26px}
.galo img{width:64px;flex:none}
.galo p{font-size:.9rem;color:var(--tinta-suave)}
.galo i{font-style:italic}
@media (max-width:980px){.origem .grade{grid-template-columns:150px 1fr}.sabia{grid-column:1 / -1}}
@media (max-width:600px){.origem .grade{grid-template-columns:1fr}.perfil{max-width:150px;margin:0 auto}}

/* Produto */
.produto .grade{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.produto .grade > *{min-width:0}
.produto .texto{display:grid;gap:18px}
.usos{display:flex;flex-wrap:wrap;gap:8px}
.usos span{background:var(--menta);color:var(--verde-escuro);font-weight:700;font-size:.85rem;padding:6px 14px;border-radius:999px}
.ficha{border:1px solid var(--linha);border-radius:20px;overflow:hidden}
.ficha .topo{background:var(--verde-escuro);color:var(--branco);text-align:center;padding:16px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;font-size:.85rem}
.tabela-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
td{padding:14px 20px;border-bottom:1px solid var(--linha);font-size:.98rem}
td.v{text-align:right;font-weight:700;color:var(--verde-escuro);white-space:nowrap}
.ficha .resumo{display:grid;grid-template-columns:repeat(3,1fr)}
.ficha .resumo div{padding:16px 10px;text-align:center;color:var(--branco)}
.ficha .resumo div:nth-child(1){background:var(--verde-escuro)}
.ficha .resumo div:nth-child(2){background:#036A3C}
.ficha .resumo div:nth-child(3){background:var(--verde)}
.ficha .resumo small{display:block;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;opacity:.85}
.ficha .resumo b{font-size:1rem}
.formato{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}
.formato div{background:var(--menta);border-radius:14px;padding:14px 16px}
.formato small{display:block;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--verde)}
.formato b{font-size:1.05rem;color:var(--verde-escuro)}
@media (max-width:820px){.produto .grade{grid-template-columns:1fr;gap:36px}}
@media (max-width:480px){td{padding:12px 14px}.formato{grid-template-columns:1fr 1fr}}

/* Contato */
.contato{background:var(--verde-escuro);color:#E7F3EC}
.contato h2{color:var(--branco)}
.contato .rotulo{color:#9FD8B6}
.contato .ornato{color:#9FD8B6}.contato .ornato > cp-enfeite[data-pos="antes"],.contato .ornato > cp-enfeite[data-pos="depois"]{background:#9FD8B6}
.contato .grade{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
.canal{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:22px;display:grid;gap:6px;align-content:start;min-width:0}
.canal small{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#9FD8B6}
.canal .valor{font-size:1.1rem;font-weight:700;color:var(--branco);overflow-wrap:anywhere;user-select:all}
.canal .linhas{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.mini{background:var(--branco);color:var(--verde-escuro);border:0;border-radius:999px;padding:6px 14px;font:inherit;font-size:.82rem;font-weight:800;cursor:pointer;text-decoration:none}
.mini:hover{background:var(--menta-forte)}
@media (max-width:820px){.contato .grade{grid-template-columns:1fr}}
footer{background:#073A21;color:#A9CDB7;font-size:.85rem}
footer .miolo{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-block:22px}


/* Websitesfy: estas faixas eram <div> no site original e viraram <section> (o editor só move <section>); não herdam o `section{}` genérico */
section#inicio{padding-block:0}

/* Websitesfy: menu do celular (o site original escondia o menu em telas pequenas) */
.menu-btn{display:none;background:none;border:0;padding:8px;cursor:pointer;flex-direction:column;gap:5px;align-items:center;justify-content:center}
.menu-btn span{display:block;width:24px;height:2px;background:#16271E;border-radius:2px;transition:transform .2s,opacity .2s}
.menu-mobile{display:none;position:fixed;inset:0;z-index:9;background:#FFFFFF;padding:84px 24px 24px;flex-direction:column;gap:6px;overflow:auto}
.menu-mobile a{display:flex;gap:14px;align-items:baseline;padding:14px 4px;border-bottom:1px solid rgba(0,0,0,.08);color:#16271E;text-decoration:none;font-weight:700;font-size:1.15rem}
.menu-mobile a span{font-size:.75rem;letter-spacing:.14em;color:#018B4D}
.menu-mobile a i{font-style:normal}
@media (max-width:640px){.menu-btn{display:flex}}
body.menu-on{overflow:hidden}
body.menu-on .menu-mobile{display:flex}
body.menu-on header{z-index:11}
body.menu-on .menu-btn span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.menu-on .menu-btn span:nth-child(2){opacity:0}
body.menu-on .menu-btn span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
/* Websitesfy: a logo é só a imagem (o nome fica escondido quando há logo) */
.cookies .btn,.privacidade .btn{background:#0A4D2C;color:#FFFFFF;border:0;border-radius:999px;font:inherit;font-weight:800;cursor:pointer;text-decoration:none}
.cookies .btn--vazado,.privacidade .btn--vazado,.cookies .btn.btn--vazado{background:transparent;color:#0A4D2C;border:1.5px solid #0A4D2C}
.header__logo{display:inline-flex;align-items:center}
.header__logo.logo-sem-nome [data-logo-nome]{display:none}

/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* formulário: a isca para robôs fica fora da tela; o aviso de envio aparece forte */
.campo--isca{ position:absolute !important; left:-9999px; width:1px; height:1px; overflow:hidden; }
.form .aviso--status{ opacity:1; font-size:.72rem; margin-top:10px; }
.creditos__vazio{ opacity:.7; }

/* links acadêmicos (contato e rodapé) e arquivos dos trabalhos */
.links-acad{ list-style:none; padding:0; margin:22px 0 0; display:flex; flex-wrap:wrap; gap:10px; }
.links-acad a{
  display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border-radius:999px;
  border:1px solid var(--linha-clara); color:var(--bege); font-size:.72rem; letter-spacing:.06em; transition:.3s var(--ease);
}
.links-acad a:hover{ background:var(--creme); color:var(--ocre); border-color:var(--creme); }
.rodape__links{ margin-top:14px !important; }
.rodape__links a{ display:inline-flex; align-items:center; gap:8px; }
.links-acad .is-vazio, .rodape__links .is-vazio{ opacity:.35; }
.artigo__acoes{ display:flex; flex-wrap:wrap; gap:12px; margin-top:clamp(30px,4vw,48px); }
.btn--vazado{ background:transparent; }
.trab__pdf{
  display:inline-block; margin-top:8px; font-size:.52rem; letter-spacing:.18em; padding:4px 7px; border-radius:2px;
  color:var(--ouro); border:1px solid rgba(var(--ouro-rgb),.45);
}

/* páginas novas: blocos em coluna de leitura, no ritmo do resto do site */
.blocos{ max-width:760px; margin-inline:auto; display:flex; flex-direction:column; gap:clamp(40px,5vw,64px); }
.bloco__titulo{ margin:0 0 16px; }
.bloco__corpo p{ font-size:1rem; line-height:1.75; }
.bloco--imagem{ margin-inline:calc(-1 * clamp(0px, 6vw, 110px)); }
.bloco__foto{ position:relative; margin:0; aspect-ratio:16/9; overflow:hidden; border-radius:2px; box-shadow:var(--s3); }
.bloco__foto img, .bloco__foto .preencher{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.bloco__legenda{ margin:12px 0 0; font-size:.72rem; letter-spacing:.08em; color:var(--texto); opacity:.8; text-align:center; }
.bloco--citacao blockquote{ margin:0; padding:clamp(20px,3vw,36px) 0 clamp(20px,3vw,36px) clamp(22px,3vw,40px); border-left:2px solid var(--ouro); }
.bloco--citacao blockquote p{ font-family:var(--serif); font-size:clamp(1.35rem,2.4vw,1.9rem); line-height:1.35; color:var(--tinta); margin:0; }
.bloco--citacao cite{ display:block; margin-top:14px; font-style:normal; font-size:.66rem; letter-spacing:.2em; text-transform:uppercase; color:var(--ouro); }
.bloco--botao{ text-align:center; }
.bloco--botao .bloco__titulo{ font-size:clamp(1.2rem,2vw,1.5rem); }
.bloco__galeria{ margin-bottom:22px; }
.bloco__vazio{ opacity:.6; font-style:italic; }

/* ===================================================== UCA: marca em texto
   Enquanto não há logo, o nome faz o papel dela. */
.marca-txt{ font-family:var(--serif); font-size:1.05rem; letter-spacing:.06em; line-height:1.15;
  text-transform:uppercase; display:inline-block; max-width:14ch; }
.header__logo .marca-txt{ color:var(--creme); max-width:none; white-space:nowrap; font-size:.92rem; letter-spacing:.14em; }
.rodape__logo .marca-txt{ color:var(--creme); font-size:1.15rem; margin-bottom:.8rem; }
.capa__marca .marca-txt{ color:var(--creme); font-size:1.3rem; max-width:none; }
@media (max-width:700px){
  .marca-txt{ font-size:.92rem; max-width:11ch; }
  .header__logo .marca-txt{ font-size:.72rem; letter-spacing:.1em; }
}

/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* ---- Bloco "lista de itens": cinco formatos, um modelo de item só.
   Usa os tokens deste modelo, então ele nasce com a cara do site em vez de
   parecer coisa colada de fora. */
.bloco__lista{ margin-top:clamp(18px,2.4vw,30px); }
.bloco__lista--cartoes{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:clamp(14px,2vw,24px); }
.itl{ margin:0; }
.itl h3{ margin:0 0 6px; }
.itl__corpo p{ margin:0; }
.itl--cartao{ display:flex; flex-direction:column; gap:10px; }
.itl__foto{ margin:0; position:relative; aspect-ratio:3/2; overflow:hidden; background:var(--creme-2); }
.itl__foto img, .itl__foto .preencher{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
/* pergunta e resposta: a sanfona é nativa do navegador, sem script */
.bloco__lista--perguntas{ border-top:1px solid var(--linha); }
.itl--pergunta{ border-bottom:1px solid var(--linha); padding:4px 0; }
.itl--pergunta summary{ cursor:pointer; padding:14px 0; list-style:none; display:flex; align-items:center; gap:10px; }
.itl--pergunta summary::-webkit-details-marker{ display:none; }
.itl--pergunta summary::after{ content:"+"; margin-left:auto; opacity:.5; font-size:1.2em; }
.itl--pergunta[open] summary::after{ content:"−"; }
.itl--pergunta .itl__corpo{ padding:0 0 16px; opacity:.85; }
.bloco__lista--precos{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:clamp(12px,1.8vw,20px); }
.itl--preco{ border:1px solid var(--linha); padding:clamp(16px,2vw,22px); display:flex; flex-direction:column; gap:8px; }
.itl--preco .itl__marca{ font-weight:700; font-size:clamp(1.3rem,2vw,1.7rem); color:var(--ouro); }
.bloco__lista--linha{ border-left:1px solid var(--linha); padding-left:clamp(16px,2.4vw,28px); }
.itl--linha{ position:relative; padding:0 0 clamp(18px,2.4vw,28px); }
.itl--linha .itl__marca{ display:block; font:600 10px/1 var(--sans); letter-spacing:.16em;
  text-transform:uppercase; color:var(--ouro); margin-bottom:5px; }
.itl--linha > cp-enfeite[data-pos="antes"]{ content:""; position:absolute; left:calc(clamp(16px,2.4vw,28px) * -1 - 4px);
  top:4px; width:7px; height:7px; border-radius:999px; background:var(--ouro); }
.bloco__lista--simples .itl--simples{ padding:14px 0; border-bottom:1px solid var(--linha); }

/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* Imagem livre na seção. */
body > section { position: relative; }
.imagem-livre { position: absolute; z-index: 2; left: 8%; top: 8%; width: min(280px, 42%); margin: 0; line-height: 0; }
.imagem-livre img { display: block; width: 100%; height: auto; border-radius: 8px; }
.imagem-livre--vazia { min-height: 140px; border: 2px dashed currentColor; border-radius: 8px; display: grid; place-items: center; line-height: 1.3; background: #fff; color: #445; }
@media (max-width: 540px) { .imagem-livre { width: min(220px, 55%); } }
/* Em tablet e celular a imagem solta não flutua por cima do texto: entra no fluxo da seção, centralizada.
   A posição escolhida para essa tela (arrastar no editor) continua valendo, como deslocamento a partir daí. */
@media (max-width: 900px) { .imagem-livre { position: relative; left: auto; top: auto; width: min(420px, 88%); margin: clamp(24px, 6vw, 40px) auto; } }


/* ---- Bloco "lista de itens": cinco formatos, um modelo de item só.
   Usa os tokens deste modelo, então ele nasce com a cara do site em vez de
   parecer coisa colada de fora. */
.bloco__lista{ margin-top:clamp(18px,2.4vw,30px); }
.bloco__lista--cartoes{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:clamp(14px,2vw,24px); }
.itl{ margin:0; }
.itl h3{ margin:0 0 6px; }
.itl__corpo p{ margin:0; }
.itl--cartao{ display:flex; flex-direction:column; gap:10px; }
.itl__foto{ margin:0; position:relative; aspect-ratio:3/2; overflow:hidden; background:var(--creme-2); }
.itl__foto img, .itl__foto .preencher{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
/* pergunta e resposta: a sanfona é nativa do navegador, sem script */
.bloco__lista--perguntas{ border-top:1px solid var(--linha); }
.itl--pergunta{ border-bottom:1px solid var(--linha); padding:4px 0; }
.itl--pergunta summary{ cursor:pointer; padding:14px 0; list-style:none; display:flex; align-items:center; gap:10px; }
.itl--pergunta summary::-webkit-details-marker{ display:none; }
.itl--pergunta summary::after{ content:"+"; margin-left:auto; opacity:.5; font-size:1.2em; }
.itl--pergunta[open] summary::after{ content:"−"; }
.itl--pergunta .itl__corpo{ padding:0 0 16px; opacity:.85; }
.bloco__lista--precos{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:clamp(12px,1.8vw,20px); }
.itl--preco{ border:1px solid var(--linha); padding:clamp(16px,2vw,22px); display:flex; flex-direction:column; gap:8px; }
.itl--preco .itl__marca{ font-weight:700; font-size:clamp(1.3rem,2vw,1.7rem); color:var(--ouro); }
.bloco__lista--linha{ border-left:1px solid var(--linha); padding-left:clamp(16px,2.4vw,28px); }
.itl--linha{ position:relative; padding:0 0 clamp(18px,2.4vw,28px); }
.itl--linha .itl__marca{ display:block; font:600 10px/1 var(--sans); letter-spacing:.16em;
  text-transform:uppercase; color:var(--ouro); margin-bottom:5px; }
.itl--linha > cp-enfeite[data-pos="antes"]{ content:""; position:absolute; left:calc(clamp(16px,2.4vw,28px) * -1 - 4px);
  top:4px; width:7px; height:7px; border-radius:999px; background:var(--ouro); }
.bloco__lista--simples .itl--simples{ padding:14px 0; border-bottom:1px solid var(--linha); }

/* Quem pode ser movido no editor não anima a própria posição nem o tamanho: a medida que grava o
   lugar novo depende do valor final, e uma transição "all" (como a dos botões) a falseava. */
[data-cp-mover], [data-cp-mover]:hover{ transition-property:color, background-color, border-color, box-shadow, opacity, transform, filter !important; }

/* Marcadores do bloco de texto: cada parágrafo vira um item; a marca sai do CSS, o texto fica sem marcação */
.bloco__corpo--pontos .artigo__par, .bloco__corpo--numeros .artigo__par{ position:relative; padding-left:1.6em; }
.bloco__corpo--pontos .artigo__par p::before{ content:"•"; position:absolute; left:.25em; color:var(--ouro, currentColor); font-weight:700; }
.bloco__corpo--numeros{ counter-reset:cp-par; }
.bloco__corpo--numeros .artigo__par p::before{ counter-increment:cp-par; content:counter(cp-par) "."; position:absolute; left:0; min-width:1.4em; text-align:right; color:var(--ouro, currentColor); font-weight:700; }

/* Bloco de vídeo: arquivo do próprio site, sem autoplay */
.bloco__video{ margin:0; }
.bloco__video-el{ display:block; width:100%; max-height:78vh; border-radius:10px; background:#000; }
.bloco__video-vazio{ display:grid; place-items:center; aspect-ratio:16 / 9; border:2px dashed currentColor; border-radius:10px; opacity:.55; font-size:.95rem; text-align:center; padding:1rem; }

/* Gráficos (bloco "grafico"): barras, linhas e pizza sem biblioteca; a tabela de dados fica escondida fora do editor */
.bloco__grafico{ margin:0; --g-cor:var(--ouro, #b98444); }
.grafico__barras{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.7rem; }
.grafico__barras li{ display:grid; grid-template-columns:minmax(5rem, 28%) 1fr auto; align-items:center; gap:.8rem; }
.grafico__rot{ font-size:.92rem; overflow-wrap:anywhere; }
.grafico__trilho{ display:block; height:14px; border-radius:7px; background:rgba(127,127,127,.18); overflow:hidden; }
.grafico__barra{ display:block; height:100%; border-radius:7px; background:var(--g-cor); }
.grafico__val{ font-weight:700; font-variant-numeric:tabular-nums; }
.grafico__linhas{ display:block; width:100%; height:auto; max-height:320px; }
.grafico__eixo{ stroke:rgba(127,127,127,.5); stroke-width:1; }
.grafico__linha{ fill:none; stroke:var(--g-cor); stroke-width:2.5; stroke-linejoin:round; stroke-linecap:round; }
.grafico__ponto{ fill:var(--g-cor); }
.grafico__tx{ fill:currentColor; font-size:11px; font-weight:700; }
.grafico__tx--rot{ font-weight:400; opacity:.75; }
.grafico__pizza{ display:flex; align-items:center; gap:1.6rem; flex-wrap:wrap; }
.grafico__pizza svg{ width:min(240px, 100%); height:auto; transform:rotate(0deg); }
.grafico__fundo{ fill:none; stroke:rgba(127,127,127,.15); stroke-width:6.5; }
.grafico__fatia{ fill:none; stroke-width:6.5; }
.grafico__fatia--0{ stroke:var(--g-cor); background:var(--g-cor); } .grafico__fatia--1{ stroke:var(--g-cor); background:var(--g-cor); opacity:.78; }
.grafico__fatia--2{ stroke:var(--g-cor); background:var(--g-cor); opacity:.58; } .grafico__fatia--3{ stroke:var(--g-cor); background:var(--g-cor); opacity:.42; }
.grafico__fatia--4{ stroke:var(--g-cor); background:var(--g-cor); opacity:.3; } .grafico__fatia--5{ stroke:var(--g-cor); background:var(--g-cor); opacity:.2; }
.grafico__legenda{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.5rem; flex:1 1 12rem; }
.grafico__legenda li{ display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.6rem; }
.grafico__amostra{ width:14px; height:14px; border-radius:4px; }
.grafico__vazio{ margin:0; padding:1.2rem; text-align:center; border:2px dashed currentColor; border-radius:10px; opacity:.55; }
.grafico__tabela{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.grafico__tabela--edicao{ position:static; width:100%; height:auto; overflow:visible; clip:auto; margin-top:1.2rem; border-collapse:collapse; font-size:.9rem; white-space:normal; }
.grafico__tabela--edicao th, .grafico__tabela--edicao td{ padding:.45rem .6rem; border-top:1px solid rgba(127,127,127,.3); text-align:left; }
.grafico__tabela--edicao td{ font-variant-numeric:tabular-nums; }
.bloco__video-iframe{ aspect-ratio:16 / 9; height:auto; border:0; }

.grafico__trilho{ position:relative; }
.grafico__barra{ position:absolute; top:0; }
.grafico__barra--neg{ background:var(--g-cor); opacity:.55; }
.grafico__zero{ position:absolute; top:-3px; bottom:-3px; width:1px; background:rgba(127,127,127,.7); }
.grafico__grade{ stroke:rgba(127,127,127,.25); stroke-width:1; stroke-dasharray:3 3; }
.grafico__tx--eixo{ font-weight:400; opacity:.65; font-size:10px; }

/* Texto solto numa seção: um parágrafo da própria seção, que se move livremente */
.texto-livre{ margin:1.2rem auto; padding:0 var(--gutter, 1.5rem); max-width:min(46rem, 100%); font-size:1.05rem; line-height:1.6; }
.imagem-livre--video video, .imagem-livre--video iframe{ display:block; width:100%; aspect-ratio:16 / 9; height:auto; border:0; border-radius:10px; background:#000; }

/* Elementos soltos do painel Elementos: um bloco dentro da seção, sem criar seção nova */
.elemento-livre{ position:relative; margin-block:clamp(20px,3vw,40px); }
.elemento-livre .bloco--imagem{ margin-inline:0; }
.elemento-livre .bloco{ margin-block:0; }

/* Formas e linhas (painel Elementos): um bloco de cor recortado; a cor é o fundo do item (--ouro é só o padrão) */
.bloco--forma{ display:flex; justify-content:center; }
.forma{ width:clamp(80px,22vw,180px); aspect-ratio:1; background-color:var(--ouro,#96642A); }
.forma--arredondado{ border-radius:18%; }
.forma--circulo{ border-radius:50%; }
.forma--triangulo{ clip-path:polygon(50% 4%,96% 92%,4% 92%); }
.forma--losango{ clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); }
.forma--hexagono{ clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0 50%); }
.forma--estrela{ clip-path:polygon(50% 2%,61% 36%,98% 36%,68% 57%,79% 92%,50% 71%,21% 92%,32% 57%,2% 36%,39% 36%); }
.forma--seta{ aspect-ratio:2 / 1; clip-path:polygon(0 30%,60% 30%,60% 0,100% 50%,60% 100%,60% 70%,0 70%); }
.forma--coracao{ -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 21s-8-5.4-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.6-8 11-8 11z'/></svg>") center / contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 21s-8-5.4-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.6-8 11-8 11z'/></svg>") center / contain no-repeat; }
.forma--linha, .forma--tracejada, .forma--pontilhada{ width:min(100%,520px); aspect-ratio:auto; height:6px; }
.forma--linha{ border-radius:3px; }
.forma--tracejada{ -webkit-mask:repeating-linear-gradient(90deg,#000 0 22px,transparent 22px 36px); mask:repeating-linear-gradient(90deg,#000 0 22px,transparent 22px 36px); }
.forma--pontilhada{ -webkit-mask:repeating-linear-gradient(90deg,#000 0 6px,transparent 6px 16px); mask:repeating-linear-gradient(90deg,#000 0 6px,transparent 6px 16px); }

/* Carrossel de imagens (elemento solto do painel Elementos): o formato (cvi--…) decide o desenho; --pos é a posição do slide em relação ao que está à vista */
.bloco--carrossel{ width:100%; }
.cvi{ position:relative; width:100%; max-width:960px; margin-inline:auto; border-radius:inherit; --q:16/9; --qn:1.7778; }
.cvi__palco{ position:relative; aspect-ratio:var(--q); overflow:hidden; border-radius:inherit; background:rgba(0,0,0,.05); }
.cvi__trilho{ position:absolute; inset:0; }
.cvi__slide{ position:absolute; inset:0; margin:0; border-radius:inherit; overflow:hidden; transition:transform .6s cubic-bezier(.2,.7,.2,1), opacity .6s ease, filter .6s ease; }
.cvi__slide img, .cvi__slide .preencher{ display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit; }
.cvi__slide figcaption{ position:absolute; left:0; right:0; bottom:0; padding:2.2rem 1.1rem .9rem; color:#fff; font-size:.95rem; line-height:1.4; background:linear-gradient(transparent, rgba(0,0,0,.62)); }
.cvi__slide figcaption:empty{ display:none; }
.cvi__seta{ position:absolute; top:50%; transform:translateY(-50%); z-index:6; width:42px; height:42px; border-radius:50%; border:0; cursor:pointer;
  background:rgba(255,255,255,.92); color:#1E3A5F; font-size:24px; line-height:1; box-shadow:0 4px 14px rgba(0,0,0,.22); }
.cvi__seta:hover{ background:#fff; }
.cvi__seta--ant{ left:12px; } .cvi__seta--prox{ right:12px; }
.cvi__pontos{ display:flex; justify-content:center; gap:8px; margin-top:12px; }
.cvi__pontos button{ width:9px; height:9px; padding:0; border:0; border-radius:50%; background:currentColor; opacity:.28; cursor:pointer; transition:opacity .2s, transform .2s; }
.cvi__pontos button.is-ativo{ opacity:.95; transform:scale(1.3); }
.cvi[data-controles="setas"] .cvi__pontos, .cvi[data-controles="nenhum"] .cvi__pontos{ display:none; }
.cvi[data-controles="pontos"] .cvi__seta, .cvi[data-controles="nenhum"] .cvi__seta{ display:none; }
/* clássico: uma imagem, as outras esperam ao lado */
.cvi--classico .cvi__slide{ transform:translateX(calc(var(--pos, 0) * 100%)); }
/* transição suave: as imagens se sobrepõem */
.cvi--fade .cvi__slide{ opacity:0; }
.cvi--fade .cvi__slide.is-ativo{ opacity:1; }
.cvi--fade .cvi__seta{ display:none; }
/* destaque central: a imagem grande no meio e as vizinhas menores dos dois lados, como prévias */
.cvi--central .cvi__palco{ overflow:visible; background:none; }
.cvi--central{ overflow-x:clip; overflow-y:visible; padding-block:clamp(14px,3.4%,40px); }      /* clip só dos lados: a sombra da foto central não pode ser cortada embaixo */
.cvi--central .cvi__slide{ inset:0 auto 0 17%; width:66%; opacity:0; pointer-events:none; }
.cvi--central .cvi__slide[data-pos="0"]{ opacity:1; z-index:3; pointer-events:auto; box-shadow:0 2px 6px rgba(0,0,0,.10), 0 14px 30px -10px rgba(0,0,0,.26), 0 30px 56px -24px rgba(0,0,0,.22); }
.cvi--central .cvi__slide[data-pos="-1"]{ opacity:.7; z-index:2; transform:translateX(-76%) scale(.74); filter:saturate(.8); pointer-events:auto; }
.cvi--central .cvi__slide[data-pos="1"]{ opacity:.7; z-index:2; transform:translateX(76%) scale(.74); filter:saturate(.8); pointer-events:auto; }
/* três por vez */
.cvi--cartas .cvi__palco{ aspect-ratio:calc(var(--qn) * 3.06); background:none; overflow:hidden; }
.cvi--cartas .cvi__slide{ inset:0 auto 0 0; width:32.6%; opacity:0; border-radius:10px; }
.cvi--cartas .cvi__slide[data-pos="0"], .cvi--cartas .cvi__slide[data-pos="1"], .cvi--cartas .cvi__slide[data-pos="2"]{ opacity:1; }
.cvi--cartas .cvi__slide{ transform:translateX(calc(var(--pos, 0) * 103%)); }
/* miniaturas */
.cvi--miniaturas-baixo .cvi__slide, .cvi--miniaturas-dir .cvi__slide, .cvi--miniaturas-esq .cvi__slide{ opacity:0; }
.cvi--miniaturas-baixo .cvi__slide.is-ativo, .cvi--miniaturas-dir .cvi__slide.is-ativo, .cvi--miniaturas-esq .cvi__slide.is-ativo{ opacity:1; }
.cvi--miniaturas-baixo .cvi__pontos, .cvi--miniaturas-dir .cvi__pontos, .cvi--miniaturas-esq .cvi__pontos{ display:none; }
.cvi__minis{ display:flex; gap:8px; margin-top:10px; overflow-x:auto; padding-bottom:2px; }
.cvi__mini{ flex:0 0 auto; width:calc(64px * var(--qn)); aspect-ratio:var(--q); padding:0; border:0; border-radius:6px; overflow:hidden; cursor:pointer; opacity:.5; outline:2px solid transparent; outline-offset:2px; transition:opacity .2s, outline-color .2s; background:rgba(0,0,0,.08); }
.cvi__mini img{ display:block; width:100%; height:100%; object-fit:cover; }
.cvi__mini.is-ativo{ opacity:1; outline-color:currentColor; }
.cvi--miniaturas-dir, .cvi--miniaturas-esq{ display:grid; grid-template-columns:minmax(0,1fr) 22%; gap:10px; align-items:stretch; }
.cvi--miniaturas-esq{ grid-template-columns:22% minmax(0,1fr); }
.cvi--miniaturas-esq .cvi__palco{ order:2; } .cvi--miniaturas-esq .cvi__minis{ order:1; }
.cvi--miniaturas-dir .cvi__minis, .cvi--miniaturas-esq .cvi__minis{ flex-direction:column; margin-top:0; overflow-y:auto; height:0; min-height:100%; }   /* a coluna tem a altura da imagem grande e rola */
.cvi--miniaturas-dir .cvi__mini, .cvi--miniaturas-esq .cvi__mini{ width:100%; }
/* cartas empilhadas */
.cvi--empilhado{ padding:0 30px 30px 0; }
.cvi--empilhado .cvi__palco{ overflow:visible; background:none; }
.cvi--empilhado .cvi__slide{ opacity:0; box-shadow:0 10px 24px rgba(0,0,0,.25); }
.cvi--empilhado .cvi__slide[data-pos="0"]{ opacity:1; z-index:4; }
.cvi--empilhado .cvi__slide[data-pos="1"]{ opacity:1; z-index:3; transform:translate(15px,15px) scale(.97); filter:brightness(.92); }
.cvi--empilhado .cvi__slide[data-pos="2"]{ opacity:1; z-index:2; transform:translate(30px,30px) scale(.94); filter:brightness(.84); }
/* faixa contínua: as imagens correm sem parar */
.cvi--faixa .cvi__palco{ aspect-ratio:auto; background:none; }
.cvi--faixa .cvi__trilho{ position:relative; inset:auto; display:flex; gap:12px; width:max-content; animation:cvi-faixa 36s linear infinite; }
.cvi--faixa .cvi__slide{ position:relative; inset:auto; flex:0 0 auto; width:calc(190px * var(--qn)); aspect-ratio:var(--q); border-radius:10px; }
.cvi--faixa .cvi__seta, .cvi--faixa .cvi__pontos{ display:none; }
.cvi--faixa:hover .cvi__trilho{ animation-play-state:paused; }
@keyframes cvi-faixa{ to{ transform:translateX(-50%); } }
html.cp-editando .cvi--faixa .cvi__trilho{ animation:none; }
@media (prefers-reduced-motion:reduce){ .cvi__slide{ transition:none; } .cvi--faixa .cvi__trilho{ animation:none; } }

/* ---- Abas (elemento): rótulos finos sobre uma linha, a aba aberta sublinhada; o conteúdo troca sem animação pesada ---- */
.abas{ width:100%; }
.abas__lista{ display:flex; gap:clamp(18px,3vw,36px); border-bottom:1px solid var(--linha, rgba(0,0,0,.14)); overflow-x:auto; scrollbar-width:none; }
.abas__lista::-webkit-scrollbar{ display:none; }
.abas__aba{ position:relative; flex:0 0 auto; padding:0 0 12px; font-size:.95rem; font-weight:500; letter-spacing:.01em; color:inherit; opacity:.55; cursor:pointer; white-space:nowrap; transition:opacity .2s; }
.abas__aba:hover{ opacity:.85; }
.abas__aba:focus-visible{ outline:2px solid currentColor; outline-offset:4px; border-radius:2px; }
.abas__aba::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .25s cubic-bezier(.2,.7,.2,1); }
.abas__aba.is-ativa{ opacity:1; }
.abas__aba.is-ativa::after{ transform:scaleX(1); }
.abas__painel{ padding-top:clamp(20px,3vw,32px); }
.abas__painel[hidden]{ display:none; }
.abas__texto{ max-width:62ch; margin:0 0 1.4rem; line-height:1.65; opacity:.85; }
.abas__docs{ display:flex; flex-direction:column; gap:0; }
.abas__docs .doc{ background:none; border:0; border-bottom:1px solid var(--linha, rgba(0,0,0,.12)); border-radius:0; box-shadow:none; padding:18px 0; }
.abas__docs .doc:first-child{ border-top:0; }
@media (prefers-reduced-motion:reduce){ .abas__aba, .abas__aba::after{ transition:none; } }

/* ---- Dentro das abas: área livre para qualquer elemento; arquivo para baixar; pasta de documentos ---- */
.abas__livres{ display:flex; flex-direction:column; gap:clamp(20px,3vw,32px); margin-top:clamp(18px,2.5vw,28px); }
.abas__livres:empty{ display:none; }
.abas__livres .elemento-livre{ margin:0; padding:0; }
.arquivo{ display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 0; border-bottom:1px solid var(--linha, rgba(0,0,0,.12)); }
.arquivo__txt h3{ margin:0 0 .25rem; font-size:1.05rem; font-weight:600; }
.arquivo__txt p{ margin:0; opacity:.7; line-height:1.5; }
.arquivo__b{ flex:0 0 auto; }
.arquivo__b--vazio{ opacity:.55; border-style:dashed; cursor:pointer; }
.pasta{ border:1px solid var(--linha, rgba(0,0,0,.14)); border-radius:12px; overflow:hidden; }
.pasta__nome{ display:flex; align-items:center; gap:10px; padding:14px 18px; background:rgba(0,0,0,.03); }
.pasta__nome h3{ margin:0; font-size:1rem; font-weight:600; flex:1; }
.pasta__nome small{ opacity:.55; }
.pasta__doc{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 18px; border-top:1px solid var(--linha, rgba(0,0,0,.1)); }
.pasta__txt{ display:grid; gap:2px; min-width:0; }
.pasta__txt span{ opacity:.65; font-size:.9rem; }
.pasta__b{ flex:0 0 auto; font-size:.85rem; padding:6px 12px; border:1px solid currentColor; border-radius:999px; text-decoration:none; color:inherit; white-space:nowrap; transition:opacity .2s; }
.pasta__b:hover{ opacity:.7; }
.pasta__b--vazio{ opacity:.5; border-style:dashed; cursor:pointer; }
@media (max-width:560px){ .arquivo{ flex-direction:column; align-items:flex-start; } }

/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* ---- Aviso de cookies e política de privacidade ---- */
.cookies{ position:fixed; z-index:9000; left:16px; bottom:16px; max-width:420px; display:grid; gap:12px; padding:16px 18px; background:#fff; color:#1d2a33; border-radius:12px; box-shadow:0 12px 36px rgba(10,20,30,.22); font-size:.92rem; line-height:1.45; }
.cookies p{ margin:0; }
.cookies a{ color:inherit; text-decoration:underline; }
.cookies__acoes{ display:flex; gap:8px; justify-content:flex-end; }
.cookies .btn, .privacidade .btn{ padding:9px 16px; font-size:.85rem; }
@media (max-width:560px){ .cookies{ left:10px; right:10px; bottom:10px; max-width:none; } }
.privacidade{ position:fixed; inset:0; z-index:9100; display:grid; place-items:center; padding:16px; background:rgba(10,20,30,.45); }
.privacidade__caixa{ position:relative; width:min(640px,100%); max-height:86vh; overflow:auto; padding:clamp(20px,4vw,32px); background:#fff; color:#1d2a33; border-radius:14px; }
.privacidade__caixa h2{ margin:0 0 12px; font-size:1.3rem; }
.privacidade__texto p{ margin:0 0 .9em; line-height:1.6; font-size:.95rem; }
.privacidade__acoes{ display:flex; gap:8px; justify-content:flex-end; flex-wrap:wrap; margin-top:16px; }
.privacidade__fechar{ position:absolute; top:10px; right:12px; width:34px; height:34px; border:0; background:none; font-size:1.5rem; line-height:1; cursor:pointer; color:inherit; }
.rodape__cookies{ margin-left:auto; color:inherit; opacity:.7; font-size:.85em; text-decoration:underline; }

/* Disposição do nome em relação à logo (Cabeçalho › Posição do nome) e distância entre os dois */
.header .header__logo.logo-com-nome[data-logo-pos="abaixo"]{flex-direction:column;align-items:center}
.header .header__logo.logo-com-nome[data-logo-pos="acima"]{flex-direction:column-reverse;align-items:center}
.header .header__logo.logo-com-nome[data-logo-pos="esquerda"]{flex-direction:row-reverse}
.header .header__logo.logo-com-nome[data-logo-pos="abaixo"] img.header__logo-img,
.header .header__logo.logo-com-nome[data-logo-pos="acima"] img.header__logo-img{max-width:min(220px,54vw)}
.header .header__logo.logo-com-nome[data-logo-pos="abaixo"] [data-logo-nome],
.header .header__logo.logo-com-nome[data-logo-pos="acima"] [data-logo-nome]{text-align:center}
.header .header__logo[data-logo-espaco]{gap:var(--logo-espaco)!important}

/* Colunas dentro da aba: cada elemento escolhe a largura (inteira, 2/3, metade, 1/3); no celular, todos inteiros */
.abas__livres{ --abas-g:clamp(20px,3vw,32px); flex-direction:row !important; flex-wrap:wrap; align-items:flex-start; gap:var(--abas-g) !important; }
.abas__livres > *{ flex:0 0 100%; min-width:0; max-width:100%; }
.abas__livres > .cp-add{ flex:0 0 auto; order:99; }
.abas__livres::after{ content:""; flex:0 0 100%; order:98; height:0; margin-top:calc(-1 * var(--abas-g)); }   /* o + Adicionar vai sempre para a linha de baixo */
.abas__livres > .elemento-livre[data-cp-dim-aplicada]{ flex-basis:auto; }   /* largura dada pelas alças vale mais que a coluna */
.abas__livres > .elemento-livre[data-largura="1/2"]{ flex-basis:calc((100% - var(--abas-g)) / 2); }
.abas__livres > .elemento-livre[data-largura="1/3"]{ flex-basis:calc((100% - 2 * var(--abas-g)) / 3); }
.abas__livres > .elemento-livre[data-largura="2/3"]{ flex-basis:calc((100% - var(--abas-g)) * 2 / 3); }
@media (max-width:540px){ .abas__livres > .elemento-livre[data-largura]{ flex-basis:100%; } }

/* Elemento solto "por cima": fica sobre a seção, no centro, sem empurrar nada; a posição se ajusta arrastando */
body > section:has(> .elemento-livre[data-fluxo="sobre"]){ position:relative; }
.elemento-livre[data-fluxo="sobre"]{ position:absolute; left:50%; top:50%; transform:translate(calc(-50% + var(--d,0px)), calc(-50% + var(--d,0px))); width:min(1100px,92%); max-width:92%; margin:0; z-index:5; }

/* ---- Carrosséis novos: Destaque de página, Polaroides, Galeria giratória, Vertical e Mosaico ---- */
.cvi[data-autoplay="lento"]{ --dur:8s; } .cvi[data-autoplay="medio"]{ --dur:5s; } .cvi[data-autoplay="rapido"]{ --dur:3s; }
/* Destaque de página: foto cheia escurecida, número, categoria, título, resumo, meta, botão e abas de progresso embaixo */
.cvi--destaque{ max-width:none; color:#fff; }
.cvi--destaque .cvi__palco{ aspect-ratio:auto; min-height:clamp(440px,64vh,680px); background:#12262c; }
.cvi--destaque .cvi__slide{ opacity:0; transition:opacity .8s ease; z-index:1; }
.cvi--destaque .cvi__slide.is-ativo{ opacity:1; z-index:2; }
.cvi--destaque .cvi__slide > cp-enfeite[data-pos="depois"]{ content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg, rgba(8,24,30,.86) 0%, rgba(8,24,30,.45) 58%, rgba(8,24,30,.5) 100%), linear-gradient(transparent 55%, rgba(0,0,0,.5)); }
.cvi--destaque .cvi__texto{ position:absolute; z-index:3; left:clamp(22px,7%,120px); right:clamp(22px,22%,320px); top:46%; transform:translateY(-50%); display:grid; gap:.85rem; justify-items:start; }
.cvi--destaque .cvi__num{ font-size:clamp(1.8rem,4vw,3rem); font-weight:700; line-height:1; letter-spacing:-.02em; opacity:.92; }
.cvi--destaque .cvi__num b{ font-weight:700; }
.cvi--destaque .cvi__cat{ font-size:.74rem; letter-spacing:.2em; text-transform:uppercase; opacity:.85; }
.cvi--destaque .cvi__tit{ margin:0; font-size:clamp(1.9rem,5vw,4rem); line-height:1.02; letter-spacing:-.03em; color:#fff; max-width:18ch; }
.cvi--destaque .cvi__res{ margin:0; max-width:56ch; font-size:clamp(.98rem,1.4vw,1.2rem); line-height:1.5; opacity:.92; }
.cvi--destaque .cvi__meta{ font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; opacity:.75; }
.cvi--destaque .cvi__bt{ color:#fff; border-color:rgba(255,255,255,.7); background:transparent; margin-top:.4rem; }
.cvi--destaque .cvi__abas{ position:absolute; z-index:5; left:clamp(22px,7%,120px); right:clamp(22px,7%,120px); bottom:20px; display:grid; grid-auto-flow:column; grid-auto-columns:minmax(0,1fr); gap:clamp(12px,3vw,40px); }
.cvi--destaque .cvi__aba{ position:relative; display:flex; gap:.9rem; align-items:baseline; padding:12px 0 0; border:0; border-top:2px solid rgba(255,255,255,.28); background:none; color:rgba(255,255,255,.66); font:inherit; font-size:.86rem; text-align:left; cursor:pointer; transition:color .2s; }
.cvi--destaque .cvi__aba i{ font-style:normal; font-size:.7rem; letter-spacing:.08em; opacity:.7; }
.cvi--destaque .cvi__aba span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cvi--destaque .cvi__aba.is-ativo{ color:#fff; }
.cvi--destaque .cvi__aba.is-ativo::before{ content:""; position:absolute; left:0; top:-2px; height:2px; width:100%; background:#fff; transform-origin:left; }
.cvi--destaque[data-autoplay="lento"] .cvi__aba.is-ativo::before, .cvi--destaque[data-autoplay="medio"] .cvi__aba.is-ativo::before, .cvi--destaque[data-autoplay="rapido"] .cvi__aba.is-ativo::before{ animation:cvi-progresso var(--dur,5s) linear; }
html.cp-editando .cvi--destaque .cvi__aba.is-ativo::before{ animation:none; }
.cvi--destaque .cvi__pontos{ display:none; }
.cvi--destaque .cvi__seta{ top:44%; background:rgba(255,255,255,.14); color:#fff; backdrop-filter:blur(4px); }
@keyframes cvi-progresso{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }
@media (max-width:700px){ .cvi--destaque .cvi__texto{ right:22px; } .cvi--destaque .cvi__aba span{ display:none; } .cvi--destaque .cvi__seta{ display:none; } }
/* Polaroides: fotos de papel levemente giradas, jogadas uma sobre a outra */
.cvi--polaroide .cvi__palco{ overflow:visible; background:none; }
.cvi--polaroide .cvi__slide{ inset:3% 19% 3% 19%; background:#fff; padding:12px 12px 52px; border-radius:4px; box-shadow:0 14px 34px rgba(0,0,0,.28); opacity:0; transform:translateX(calc(var(--pos,0) * 14%)) rotate(calc(var(--pos,0) * 5deg)); }
.cvi--polaroide .cvi__slide img, .cvi--polaroide .cvi__slide .preencher{ border-radius:2px; height:100%; }
.cvi--polaroide .cvi__slide[data-pos="0"]{ opacity:1; z-index:5; transform:rotate(-1.5deg); }
.cvi--polaroide .cvi__slide[data-pos="-1"], .cvi--polaroide .cvi__slide[data-pos="1"]{ opacity:1; z-index:4; }
.cvi--polaroide .cvi__slide[data-pos="-2"], .cvi--polaroide .cvi__slide[data-pos="2"]{ opacity:1; z-index:3; }
.cvi--polaroide .cvi__slide figcaption{ background:none; color:#2b2b2b; padding:0 12px; bottom:14px; text-align:center; font-size:.9rem; }
.cvi--polaroide{ padding-block:2%; }
/* Galeria giratória: a imagem do meio de frente e as outras viradas em perspectiva */
.cvi--giratorio .cvi__palco{ overflow:hidden; background:none; perspective:1100px; }
.cvi--giratorio .cvi__slide{ inset:4% 22%; opacity:0; border-radius:10px; transform:translateX(calc(var(--pos,0) * 58%)) rotateY(calc(var(--pos,0) * -48deg)) scale(.82); box-shadow:0 16px 36px rgba(0,0,0,.3); }
.cvi--giratorio .cvi__slide[data-pos="0"]{ opacity:1; z-index:5; transform:none; }
.cvi--giratorio .cvi__slide[data-pos="-1"], .cvi--giratorio .cvi__slide[data-pos="1"]{ opacity:.9; z-index:4; }
.cvi--giratorio .cvi__slide[data-pos="-2"], .cvi--giratorio .cvi__slide[data-pos="2"]{ opacity:.5; z-index:3; }
/* Vertical: as imagens sobem e descem, com os pontos na lateral */
.cvi--vertical .cvi__slide{ transform:translateY(calc(var(--pos,0) * 100%)); }
.cvi--vertical .cvi__pontos{ position:absolute; right:14px; top:50%; transform:translateY(-50%); flex-direction:column; margin:0; color:#fff; z-index:6; }
.cvi--vertical .cvi__seta{ left:50%; transform:translateX(-50%) rotate(90deg); }
.cvi--vertical .cvi__seta--ant{ top:12px; } .cvi--vertical .cvi__seta--prox{ top:auto; bottom:12px; }
/* Mosaico: uma imagem grande e duas prévias empilhadas; clicar numa prévia a traz para o destaque */
.cvi--mosaico .cvi__palco{ background:none; overflow:hidden; }
.cvi--mosaico .cvi__slide{ inset:auto; left:101%; top:0; width:32%; height:49%; border-radius:10px; opacity:0; transition:left .6s cubic-bezier(.2,.7,.2,1), top .6s cubic-bezier(.2,.7,.2,1), width .6s cubic-bezier(.2,.7,.2,1), height .6s cubic-bezier(.2,.7,.2,1), opacity .5s; }
.cvi--mosaico .cvi__slide[data-pos="0"]{ left:0; top:0; width:67%; height:100%; opacity:1; z-index:3; }
.cvi--mosaico .cvi__slide[data-pos="1"]{ left:68%; top:0; width:32%; height:49%; opacity:1; cursor:pointer; filter:brightness(.92); }
.cvi--mosaico .cvi__slide[data-pos="2"]{ left:68%; top:51%; width:32%; height:49%; opacity:1; cursor:pointer; filter:brightness(.92); }
.cvi--mosaico .cvi__slide[data-pos="1"]:hover, .cvi--mosaico .cvi__slide[data-pos="2"]:hover{ filter:none; }
.cvi--mosaico .cvi__seta{ display:none; }
@media (prefers-reduced-motion:reduce){ .cvi--destaque .cvi__aba.is-ativo::before{ animation:none !important; } }

/* pontos de navegação como elemento do editor: lado, altura, tamanho, formato, direção, cores e nome sempre à vista */
.trilho[hidden]{ display:none; }
.trilho{ --tr-d:8px; }
.trilho button{ width:var(--tr-d); height:var(--tr-d); }
.trilho[data-tamanho="p"]{ --tr-d:6px; gap:10px; }
.trilho[data-tamanho="g"]{ --tr-d:13px; gap:17px; }
.trilho[data-lado="esquerda"]{ right:auto; left:clamp(14px,1.6vw,26px); }
.trilho[data-lado="esquerda"] button span{ right:auto; left:18px; transform:translateY(-50%) translateX(-6px); }
.trilho[data-lado="esquerda"] button:hover span{ transform:translateY(-50%) translateX(0); }
.trilho[data-altura="topo"]{ top:24%; }
.trilho[data-altura="base"]{ top:76%; }
.trilho[data-formato="tracos"] button{ width:calc(var(--tr-d) * 2.6); height:3px; border-radius:2px; }
.trilho[data-direcao="horizontal"]{ flex-direction:row; right:auto; left:50%; top:auto; bottom:22px; transform:translateX(-50%); }
.trilho[data-direcao="horizontal"][data-altura="topo"]{ top:70px; bottom:auto; }
.trilho[data-direcao="horizontal"] button span{ right:auto; left:50%; top:auto; bottom:18px; transform:translateX(-50%) translateY(6px); }
.trilho[data-direcao="horizontal"] button:hover span{ transform:translateX(-50%) translateY(0); }
.trilho[data-rotulos="sempre"] button span{ opacity:1; }
.trilho[data-rotulos="sempre"][data-lado="direita"][data-direcao="vertical"] button span, .trilho[data-rotulos="sempre"][data-lado="esquerda"][data-direcao="vertical"] button span{ transform:translateY(-50%) translateX(0); }
.trilho[data-rotulos="sempre"][data-direcao="horizontal"] button span{ transform:translateX(-50%) translateY(0); }
body .trilho[data-tr-cor] button{ background:var(--tr-cor); }
body .trilho[data-tr-ativa] button.on{ background:var(--tr-ativa); }
body.secao-escura .trilho[data-tr-cor] button{ background:var(--tr-cor); }
body.secao-escura .trilho[data-tr-ativa] button.on{ background:var(--tr-ativa); }

/* modelos de card, escolhidos no editor para cada lista (atributo data-cartao na grade) */
[data-cartao="imagem-total"] .card{ position:relative; display:block !important; min-height:clamp(320px,32vw,440px); border:0 !important; overflow:hidden; isolation:isolate; }
[data-cartao="imagem-total"] .card__media{ position:absolute !important; inset:0; height:100%; aspect-ratio:auto !important; }
[data-cartao="imagem-total"] .card__media > cp-enfeite[data-pos="depois"]{ background:none !important; }
[data-cartao="imagem-total"] .card__corpo{ position:absolute; left:0; right:0; bottom:0; z-index:2; padding:clamp(72px,9vw,112px) clamp(20px,2.2vw,28px) clamp(18px,2vw,24px); background:linear-gradient(to top, rgba(5,12,24,.93) 0%, rgba(5,12,24,.76) 40%, rgba(5,12,24,0) 100%); }
[data-cartao="imagem-total"] .card__corpo h3{ color:#fff !important; margin-bottom:8px; }
[data-cartao="imagem-total"] .card__corpo p{ color:rgba(255,255,255,.84) !important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
[data-cartao="imagem-total"] .card__pe{ color:#fff !important; border-top-color:rgba(255,255,255,.26) !important; margin-top:14px; padding-top:12px; }
[data-cartao="horizontal"]{ grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr)) !important; }
[data-cartao="horizontal"] .card{ display:flex !important; flex-direction:row; }
[data-cartao="horizontal"] .card__media{ flex:0 0 42%; aspect-ratio:auto !important; min-height:220px; }
[data-cartao="horizontal"] .card__corpo{ flex:1; justify-content:center; }
[data-cartao="limpo"] .card{ background:transparent !important; border:0 !important; box-shadow:none !important; border-radius:0 !important; }
[data-cartao="limpo"] .card:hover{ transform:none !important; box-shadow:none !important; }
[data-cartao="limpo"] .card__media{ border-radius:16px; }
[data-cartao="limpo"] .card__corpo{ padding:16px 2px 0 !important; }
[data-cartao="limpo"] .card__pe{ border-top:0 !important; padding-top:10px; }
[data-cartao="compacto"]{ grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr)) !important; gap:14px !important; }
[data-cartao="compacto"] .card{ display:flex !important; flex-direction:row; align-items:center; }
[data-cartao="compacto"] .card__media{ flex:0 0 112px; width:112px; height:112px; aspect-ratio:auto !important; border-radius:14px; margin:12px 0 12px 12px; }
[data-cartao="compacto"] .card__tag, [data-cartao="compacto"] .prov{ display:none; }
[data-cartao="compacto"] .card__corpo{ padding:14px 18px !important; }
[data-cartao="compacto"] .card__corpo p{ display:none; }
[data-cartao="compacto"] .card__pe{ border-top:0 !important; padding-top:6px; }
@media (max-width:640px){
  [data-cartao="horizontal"] .card{ flex-direction:column; }
  [data-cartao="horizontal"] .card__media{ flex:none; aspect-ratio:16/10 !important; min-height:0; }
}

/* carrossel: novos formatos (minimalista, contador, histórias, cartão), transição à escolha, e pontos com lugar e forma à escolha */
.cvi--minimalista .cvi__slide, .cvi--contador .cvi__slide, .cvi--historias .cvi__slide, .cvi--cartao .cvi__slide{ transform:translateX(calc(var(--pos, 0) * 100%)); }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="esmaecer"] .cvi__slide{ transform:none; opacity:0; transition:opacity .75s ease; z-index:1; }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="esmaecer"] .cvi__slide.is-ativo{ opacity:1; z-index:2; }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="zoom"] .cvi__slide{ transform:scale(1.1); opacity:0; transition:opacity .85s ease, transform 1.3s cubic-bezier(.2,.7,.2,1); z-index:1; }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="zoom"] .cvi__slide.is-ativo{ transform:scale(1); opacity:1; z-index:2; }
.cvi--minimalista .cvi__palco, .cvi--contador .cvi__palco, .cvi--historias .cvi__palco{ border-radius:20px; }
.cvi--minimalista:not([data-controles="setas"]) .cvi__seta, .cvi--historias:not([data-controles="setas"]) .cvi__seta{ display:none; }
.cvi--minimalista[data-pontos-pos="auto"] .cvi__pontos{ position:absolute; left:0; right:0; bottom:16px; margin:0; z-index:7; color:#fff; filter:drop-shadow(0 1px 3px rgba(0,0,0,.45)); }
.cvi--contador[data-pontos-pos="auto"] .cvi__pontos{ display:none; }
.cvi__contador{ position:absolute; right:14px; top:14px; z-index:7; padding:6px 12px; border-radius:999px; background:rgba(10,20,40,.55); color:#fff; font:600 12px/1 system-ui, sans-serif; letter-spacing:.08em; backdrop-filter:blur(6px); pointer-events:none; }
.cvi--historias .cvi__pontos{ position:absolute; left:16px; right:16px; top:14px; margin:0; gap:5px; z-index:7; color:#fff; }
.cvi--historias .cvi__pontos button{ flex:1; width:auto; height:3px; border-radius:2px; background:rgba(255,255,255,.4); opacity:1; transform:none; }
.cvi--historias .cvi__pontos button.is-ativo{ background:#fff; transform:none; }
.cvi--cartao{ padding:12px 12px 6px; background:#fff; border-radius:28px; box-shadow:0 24px 60px rgba(15,30,70,.16); }
.cvi--cartao .cvi__palco{ border-radius:18px; }
.cvi--cartao .cvi__seta{ width:36px; height:36px; }
.cvi[data-pontos-pos="dentro"] .cvi__pontos, .cvi[data-pontos-pos="dentro-esq"] .cvi__pontos, .cvi[data-pontos-pos="dentro-dir"] .cvi__pontos,
.cvi[data-pontos-pos="topo"] .cvi__pontos, .cvi[data-pontos-pos="lateral-dir"] .cvi__pontos, .cvi[data-pontos-pos="lateral-esq"] .cvi__pontos{ position:absolute; margin:0; z-index:7; color:#fff; filter:drop-shadow(0 1px 3px rgba(0,0,0,.45)); }
.cvi[data-pontos-pos="dentro"] .cvi__pontos{ left:0; right:0; bottom:16px; }
.cvi[data-pontos-pos="dentro-esq"] .cvi__pontos{ left:18px; bottom:16px; justify-content:flex-start; }
.cvi[data-pontos-pos="dentro-dir"] .cvi__pontos{ right:18px; bottom:16px; justify-content:flex-end; }
.cvi[data-pontos-pos="topo"] .cvi__pontos{ left:0; right:0; top:16px; }
.cvi[data-pontos-pos="lateral-dir"] .cvi__pontos{ right:16px; top:50%; transform:translateY(-50%); flex-direction:column; }
.cvi[data-pontos-pos="lateral-esq"] .cvi__pontos{ left:16px; top:50%; transform:translateY(-50%); flex-direction:column; }
.cvi[data-pontos-forma="quadrado"] .cvi__pontos button{ border-radius:2px; }
.cvi[data-pontos-forma="barra"] .cvi__pontos button{ width:22px; height:4px; border-radius:2px; }
.cvi[data-pontos-forma="triangulo"] .cvi__pontos button{ width:12px; height:11px; border-radius:0; clip-path:polygon(50% 0, 100% 100%, 0 100%); }
.cvi[data-pontos-forma="losango"] .cvi__pontos button{ width:11px; height:11px; border-radius:0; clip-path:polygon(50% 0, 100% 50%, 50% 100%, 0 50%); }

/* carrossel: para onde as imagens andam (esquerda, direita, cima, baixo) e a barrinha de progresso do destaque com qualquer tempo */
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="deslizar"][data-direcao="direita"] .cvi__slide{ transform:translateX(calc(var(--pos, 0) * -100%)); }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="deslizar"][data-direcao="cima"] .cvi__slide{ transform:translateY(calc(var(--pos, 0) * 100%)); }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="deslizar"][data-direcao="baixo"] .cvi__slide{ transform:translateY(calc(var(--pos, 0) * -100%)); }
.cvi--destaque:not([data-autoplay="parado"]) .cvi__aba.is-ativo::before{ animation:cvi-progresso var(--dur,5s) linear; }

/* carrossel: os cantos valem para o carrossel inteiro (moldura e todas as imagens), não para uma imagem só */
.cvi[data-cantos="reto"]{ --cantos:0px; } .cvi[data-cantos="suave"]{ --cantos:14px; } .cvi[data-cantos="redondo"]{ --cantos:28px; } .cvi[data-cantos="grande"]{ --cantos:48px; }
.cvi[data-cantos="reto"], .cvi[data-cantos="suave"], .cvi[data-cantos="redondo"], .cvi[data-cantos="grande"]{ border-radius:var(--cantos); }
.cvi[data-cantos="reto"] .cvi__palco, .cvi[data-cantos="suave"] .cvi__palco, .cvi[data-cantos="redondo"] .cvi__palco, .cvi[data-cantos="grande"] .cvi__palco,
.cvi[data-cantos="reto"] .cvi__slide, .cvi[data-cantos="suave"] .cvi__slide, .cvi[data-cantos="redondo"] .cvi__slide, .cvi[data-cantos="grande"] .cvi__slide,
.cvi[data-cantos="reto"] .cvi__slide img, .cvi[data-cantos="suave"] .cvi__slide img, .cvi[data-cantos="redondo"] .cvi__slide img, .cvi[data-cantos="grande"] .cvi__slide img,
.cvi[data-cantos="reto"] .cvi__slide .preencher, .cvi[data-cantos="suave"] .cvi__slide .preencher, .cvi[data-cantos="redondo"] .cvi__slide .preencher, .cvi[data-cantos="grande"] .cvi__slide .preencher{ border-radius:var(--cantos); }

/* escolhas por tipo de elemento: formato e tamanho do botão, colunas dos números, lado da foto no texto com foto */
.bloco[data-forma-botao="reto"] .btn{ border-radius:0; }
.bloco[data-forma-botao="suave"] .btn{ border-radius:10px; }
.bloco[data-forma-botao="pilula"] .btn{ border-radius:999px; }
.bloco[data-tamanho-botao="pequeno"] .btn{ padding:9px 16px; font-size:.72rem; min-height:36px; }
.bloco[data-tamanho-botao="grande"] .btn{ padding:17px 34px; font-size:.95rem; min-height:58px; }
.bloco--numeros[data-colunas="2"] .bloco__numeros{ grid-template-columns:repeat(2, 1fr); }
.bloco--numeros[data-colunas="3"] .bloco__numeros{ grid-template-columns:repeat(3, 1fr); }
.bloco--numeros[data-colunas="4"] .bloco__numeros{ grid-template-columns:repeat(4, 1fr); }
@media (max-width:640px){ .bloco--numeros[data-colunas="3"] .bloco__numeros, .bloco--numeros[data-colunas="4"] .bloco__numeros{ grid-template-columns:repeat(2, 1fr); } }
.bloco--textoFoto[data-lado-foto="esquerda"] .bloco__lado{ direction:rtl; }
.bloco--textoFoto[data-lado-foto="esquerda"] .bloco__lado > *{ direction:ltr; }
.bloco--textoFoto[data-lado-foto="direita"] .bloco__lado{ direction:ltr; }
@media (max-width:780px){ .bloco--textoFoto[data-lado-foto] .bloco__lado{ direction:ltr; } }

/* lista em cartões: modelos de card (os mesmos das listas do modelo) e colunas da grade */
[data-cartao="imagem-total"] > .itl--cartao{ position:relative; display:block; min-height:clamp(300px,30vw,420px); overflow:hidden; isolation:isolate; }
[data-cartao="imagem-total"] > .itl--cartao .itl__foto{ position:absolute; inset:0; aspect-ratio:auto; }
[data-cartao="imagem-total"] > .itl--cartao .itl__corpo{ position:absolute; left:0; right:0; bottom:0; z-index:2; padding:clamp(72px,9vw,112px) clamp(18px,2vw,24px) clamp(16px,2vw,22px); background:linear-gradient(to top, rgba(5,12,24,.93) 0%, rgba(5,12,24,.76) 40%, rgba(5,12,24,0) 100%); }
[data-cartao="imagem-total"] > .itl--cartao h3{ color:#fff !important; }
[data-cartao="imagem-total"] > .itl--cartao .itl__corpo p{ color:rgba(255,255,255,.84) !important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
[data-cartao="horizontal"] > .itl--cartao{ flex-direction:row; align-items:stretch; }
[data-cartao="horizontal"] > .itl--cartao .itl__foto{ flex:0 0 42%; aspect-ratio:auto; min-height:180px; }
[data-cartao="horizontal"] > .itl--cartao .itl__corpo{ flex:1; align-self:center; }
[data-cartao="limpo"] > .itl--cartao{ background:transparent; border:0; box-shadow:none; border-radius:0; }
[data-cartao="limpo"] > .itl--cartao .itl__foto{ border-radius:16px; }
[data-cartao="compacto"] > .itl--cartao{ flex-direction:row; align-items:center; gap:14px; }
[data-cartao="compacto"] > .itl--cartao .itl__foto{ flex:0 0 96px; width:96px; height:96px; aspect-ratio:auto; border-radius:14px; }
[data-cartao="compacto"] > .itl--cartao .itl__corpo p{ display:none; }
.bloco--lista[data-colunas="2"] .bloco__lista--cartoes{ grid-template-columns:repeat(2, 1fr); }
.bloco--lista[data-colunas="3"] .bloco__lista--cartoes{ grid-template-columns:repeat(3, 1fr); }
.bloco--lista[data-colunas="4"] .bloco__lista--cartoes{ grid-template-columns:repeat(4, 1fr); }
@media (max-width:780px){ .bloco--lista[data-colunas="3"] .bloco__lista--cartoes, .bloco--lista[data-colunas="4"] .bloco__lista--cartoes{ grid-template-columns:repeat(2, 1fr); } [data-cartao="horizontal"] > .itl--cartao{ flex-direction:column; } [data-cartao="horizontal"] > .itl--cartao .itl__foto{ flex:none; aspect-ratio:16/10; } }
@media (max-width:480px){ .bloco--lista[data-colunas] .bloco__lista--cartoes{ grid-template-columns:1fr; } }

/* estilo da citação: linha ao lado (padrão), aspas grandes, centralizada ou em caixa */
.bloco--citacao[data-estilo-citacao="aspas"] blockquote{ border-left:0; padding-left:0; padding-top:clamp(56px,7vw,76px); position:relative; }
.bloco--citacao[data-estilo-citacao="aspas"] blockquote::before{ content:"\201C"; position:absolute; top:0; left:-4px; font-family:var(--serif); font-size:clamp(4.5rem,8vw,6.5rem); line-height:1; color:var(--ouro); }
.bloco--citacao[data-estilo-citacao="centro"] blockquote{ border-left:0; padding-left:0; padding-right:0; text-align:center; position:relative; padding-top:clamp(56px,7vw,76px); }
.bloco--citacao[data-estilo-citacao="centro"] blockquote::before{ content:"\201C"; position:absolute; top:0; left:0; right:0; font-family:var(--serif); font-size:clamp(4.5rem,8vw,6.5rem); line-height:1; color:var(--ouro); }
.bloco--citacao[data-estilo-citacao="caixa"] blockquote{ border-left:0; background:var(--creme-2); border-radius:18px; padding:clamp(22px,3.2vw,40px); }

/* cor do gráfico: a cor do site (padrão) ou uma das cores à escolha */
.bloco[data-cor-grafico="azul"] .bloco__grafico{ --g-cor:#2F5FA8; }
.bloco[data-cor-grafico="verde"] .bloco__grafico{ --g-cor:#2E8B57; }
.bloco[data-cor-grafico="vermelho"] .bloco__grafico{ --g-cor:#C0392B; }
.bloco[data-cor-grafico="laranja"] .bloco__grafico{ --g-cor:#E07B1F; }
.bloco[data-cor-grafico="roxo"] .bloco__grafico{ --g-cor:#7B4FB5; }
.bloco[data-cor-grafico="cinza"] .bloco__grafico{ --g-cor:#6B7280; }

/* abas: estilo */
.bloco--abas[data-estilo-abas="pilulas"] .abas__lista{ border-bottom:0; gap:8px; }
.bloco--abas[data-estilo-abas="pilulas"] .abas__aba{ padding:9px 18px; border-radius:999px; background:rgba(127,127,127,.14); }
.bloco--abas[data-estilo-abas="pilulas"] .abas__aba::after{ display:none; }
.bloco--abas[data-estilo-abas="pilulas"] .abas__aba.is-ativa{ background:var(--tinta); color:var(--fundo, #fff); }
.bloco--abas[data-estilo-abas="caixa"] .abas__lista{ border:1px solid var(--linha, rgba(0,0,0,.14)); border-radius:12px; padding:4px; gap:4px; }
.bloco--abas[data-estilo-abas="caixa"] .abas__aba{ padding:9px 18px; border-radius:9px; }
.bloco--abas[data-estilo-abas="caixa"] .abas__aba::after{ display:none; }
.bloco--abas[data-estilo-abas="caixa"] .abas__aba.is-ativa{ background:rgba(127,127,127,.18); }

/* destaque central com mais prévias: duas imagens de cada lado (precisa de 5 ou mais; sempre simétrico), cada par menor e mais escuro que o anterior; camadas opacas, para uma não aparecer através da outra */
.cvi--central[data-nprev="2"] .cvi__slide{ inset:0 auto 0 25%; width:50%; }
.cvi--central[data-nprev="2"] .cvi__slide[data-pos="-1"]{ opacity:1; transform:translateX(-34%) scale(.76); filter:saturate(.85) brightness(.86); }
.cvi--central[data-nprev="2"] .cvi__slide[data-pos="1"]{ opacity:1; transform:translateX(34%) scale(.76); filter:saturate(.85) brightness(.86); }
.cvi--central[data-nprev="2"] .cvi__slide[data-pos="-2"]{ opacity:1; z-index:1; transform:translateX(-70.5%) scale(.55); filter:saturate(.7) brightness(.72); pointer-events:auto; }
.cvi--central[data-nprev="2"] .cvi__slide[data-pos="2"]{ opacity:1; z-index:1; transform:translateX(70.5%) scale(.55); filter:saturate(.7) brightness(.72); pointer-events:auto; }

/* formulário solto: campos que seguem a cor do texto do site, com borda neutra */
.bloco--formulario .formlivre{ display:grid; gap:14px; max-width:560px; margin-top:12px; }
.formlivre__campo{ display:grid; gap:6px; }
.formlivre__campo label{ font-size:.82rem; letter-spacing:.02em; opacity:.85; }
.formlivre__campo label small{ opacity:.6; }
.formlivre input, .formlivre textarea{ font:inherit; color:inherit; background:transparent; border:1px solid rgba(127,127,127,.4); border-radius:10px; padding:.7rem .85rem; width:100%; box-sizing:border-box; }
.formlivre input:focus-visible, .formlivre textarea:focus-visible{ outline:2px solid currentColor; outline-offset:2px; }
.formlivre textarea{ resize:vertical; min-height:7rem; }
.formlivre__isca{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.formlivre .btn{ justify-self:start; }
.formlivre__st, .formlivre__ok{ margin:0; font-size:.9rem; }
.formlivre__st.is-erro{ color:#b3261e; }
.formlivre__ok{ padding:.9rem 1rem; border:1px solid rgba(127,127,127,.4); border-radius:10px; }

/* celular e tablet: elemento "por cima" sem posição própria nessa tela segue o fluxo da seção; duas prévias de cada lado só em tela larga; formulário em seção clara */
.elemento-livre[data-fluxo="sobre"][data-cp-fluxo-tela]{ position:relative; left:auto; top:auto; transform:none; width:100%; max-width:100%; margin-block:clamp(20px,4vw,32px); z-index:auto; }
@media (max-width:540px){
  .cvi--central[data-nprev="2"] .cvi__slide{ inset:0 auto 0 17%; width:66%; }
  .cvi--central[data-nprev="2"] .cvi__slide[data-pos="-1"]{ opacity:.7; transform:translateX(-76%) scale(.74); filter:saturate(.8); }
  .cvi--central[data-nprev="2"] .cvi__slide[data-pos="1"]{ opacity:.7; transform:translateX(76%) scale(.74); filter:saturate(.8); }
  .cvi--central[data-nprev="2"] .cvi__slide[data-pos="-2"], .cvi--central[data-nprev="2"] .cvi__slide[data-pos="2"]{ opacity:0; pointer-events:none; }
  .abas__lista{ flex-wrap:wrap; row-gap:12px; overflow-x:visible; }
}
.secao--creme2 .form{ background:#fff; border-color:var(--linha); box-shadow:0 22px 44px -26px rgba(var(--azul-rgb),.3); }
.secao--creme2 .campo label{ color:var(--tinta); opacity:.8; }
.secao--creme2 .campo input, .secao--creme2 .campo textarea{ color:var(--tinta); border-bottom-color:rgba(var(--azul-rgb),.3); }
.secao--creme2 .form__aviso, .secao--creme2 .form .aviso{ color:var(--tinta); opacity:.65; }
#participar h2{ margin-bottom:clamp(18px,3vw,28px); }
/* item escondido do menu do celular continua escondido (o display do link vencia o atributo hidden) */
.menu-mobile a[hidden]{ display:none !important; }
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
