/* Otocenter — páginas internas e estilos de bloco (site e editor) */

/* --- cabeçalho da página --- */
.oc-pag-hero{position:relative;padding:clamp(30px,4.4vw,60px) 0 clamp(18px,2.6vw,30px)}
.oc-pag-hero-grid{position:relative;display:grid;gap:clamp(24px,4vw,56px);align-items:center}
.oc-pag-hero.tem-foto .oc-pag-hero-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.oc-pag-hero .oc-h1{font-size:clamp(34px,4.6vw,56px);max-width:22ch}
.oc-pag-sub{font-size:18px;color:var(--corpo);max-width:58ch;margin:18px 0 0}
.oc-pag-foto{border-radius:calc(30px*var(--r));overflow:hidden;aspect-ratio:4/3;background:color-mix(in srgb,var(--azul) 10%,#fff);box-shadow:0 26px 54px color-mix(in srgb,var(--azul-esc) 14%,transparent)}
.oc-pag-foto img{width:100%;height:100%;object-fit:cover;display:block}
.oc-migalhas{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:14px;color:var(--suave);margin-bottom:18px}
.oc-migalhas a{color:var(--suave)}
.oc-migalhas a:hover{color:var(--azul-med)}
.oc-migalhas [aria-hidden]{opacity:.45}

/* --- corpo e formatos --- */
.oc-pag-corpo{padding-top:clamp(18px,2.6vw,32px);padding-bottom:clamp(36px,4.6vw,64px)}
.oc-pag-corpo.sem-hero{padding-top:clamp(30px,4vw,56px)}
.oc-pag-leitura .oc-prosa{max-width:780px}
.oc-pag-lateral{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:clamp(26px,3.6vw,60px);align-items:start}
.oc-pag-lateral .oc-prosa{min-width:0}
@media(max-width:940px){.oc-pag-lateral{grid-template-columns:minmax(0,1fr)}.oc-pag-lateral .oc-aside{position:static}}
.oc-pag-leitura .oc-prosa>.alignwide,.oc-pag-leitura .oc-prosa>.alignfull{width:calc(var(--wrap) - 2*var(--pad));max-width:calc(100vw - 2*var(--pad))}
.oc-pag-livre .oc-prosa>.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:auto;border-radius:0}

/* --- tipografia do conteúdo (:where mantém os componentes do tema intactos) --- */
.oc-prosa>*+*{margin-top:1.1em}
.oc-prosa>:first-child,.oc-prosa :where(.wp-block-group,.wp-block-column,.wp-block-cover__inner-container)>:first-child{margin-top:0}
.oc-prosa :where(.wp-block-group,.wp-block-column)>*+*{margin-top:1em}
.oc-prosa :where(h2){font-size:clamp(26px,3vw,36px);line-height:1.15;color:var(--azul-esc);margin-top:1.7em}
.oc-prosa :where(h3){font-size:clamp(20px,2vw,23px);line-height:1.25;color:var(--azul-esc);margin-top:1.5em}
.oc-prosa :where(h4){font-size:18px;color:var(--azul-esc);margin-top:1.4em}
.oc-prosa :where(.is-style-otoc-kicker+h2,.is-style-otoc-kicker+h3){margin-top:10px}
.oc-prosa :where(p,li,td,dd,figcaption){color:var(--corpo)}
.oc-prosa :where(strong,b){color:var(--tinta);font-weight:600}
.oc-prosa :where(p,li,td,figcaption) a{color:var(--azul-med);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.oc-prosa :where(p,li,td,figcaption) a:hover{color:var(--ciano)}
.oc-prosa :where(ul,ol){padding-left:1.3em;margin-bottom:0}
.oc-prosa :where(li+li){margin-top:.45em}
.oc-prosa :where(figure){margin-left:0;margin-right:0}
.oc-prosa :where(.wp-block-image img){border-radius:calc(20px*var(--r));height:auto}
.oc-prosa :where(figcaption){font-size:14px;margin-top:10px;text-align:left}
.oc-prosa :where(blockquote){margin:1.4em 0 0;padding:4px 0 4px 22px;border-left:3px solid var(--ciano);font-family:var(--f-tit);font-size:21px;line-height:1.45;color:var(--azul-esc)}
.oc-prosa :where(blockquote p){color:inherit}
.oc-prosa :where(blockquote cite){display:block;margin-top:10px;font-family:var(--f-corpo);font-size:14px;font-style:normal;color:var(--suave)}
.oc-prosa :where(hr){border:0;height:1px;background:color-mix(in srgb,var(--tinta) 10%,transparent);margin:2em 0}
.oc-prosa :where(iframe,video){border-radius:calc(20px*var(--r));max-width:100%}
.oc-prosa :where(.wp-block-columns){gap:clamp(18px,2.6vw,32px)}
.oc-prosa .oc-bloco{margin-top:clamp(22px,2.6vw,34px)}
.oc-bloco>:first-child{margin-top:0}
.oc-bloco.oc-grid-serv>.oc-subpag{text-decoration:none}

/* --- botões (todo botão do editor já sai no padrão do site) --- */
.wp-block-button .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:var(--r-pill);background:linear-gradient(120deg,var(--azul),var(--azul-med));color:#fff;font-family:var(--f-corpo);font-size:16px;font-weight:600;text-decoration:none;border:0;box-shadow:0 12px 26px color-mix(in srgb,var(--azul) 24%,transparent);transition:transform .18s ease,box-shadow .18s ease}
.wp-block-button .wp-block-button__link:hover{color:#fff;transform:translateY(-2px);box-shadow:0 16px 32px color-mix(in srgb,var(--azul) 30%,transparent)}
.wp-block-button.is-style-otoc-contorno .wp-block-button__link,.wp-block-button.is-style-outline .wp-block-button__link{background:#fff;color:var(--tinta);border:1px solid color-mix(in srgb,var(--tinta) 14%,transparent);box-shadow:none}
.wp-block-button.is-style-otoc-contorno .wp-block-button__link:hover,.wp-block-button.is-style-outline .wp-block-button__link:hover{color:var(--tinta);border-color:var(--ciano)}
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}

/* --- grupos --- */
.is-style-otoc-cartao{background:#fff;border:1px solid var(--linha);border-radius:calc(26px*var(--r));padding:clamp(22px,2.6vw,30px);box-shadow:0 10px 30px color-mix(in srgb,var(--azul-esc) 5%,transparent)}
.wp-block-column>.is-style-otoc-cartao:only-child{height:100%}
.is-style-otoc-cartao h3{color:var(--azul-esc)}
.is-style-otoc-gelo{background:var(--gelo);border-radius:calc(28px*var(--r));padding:clamp(22px,3.2vw,44px)}
.is-style-otoc-faixa{background:linear-gradient(160deg,var(--azul-esc),var(--azul));color:#fff;border-radius:calc(32px*var(--r));padding:clamp(26px,4vw,54px)}
.is-style-otoc-faixa :is(h1,h2,h3,h4,strong){color:#fff}
.is-style-otoc-faixa :is(p,li){color:var(--rod-txt)}
.is-style-otoc-faixa .wp-block-button .wp-block-button__link{background:#fff;color:var(--azul-esc);box-shadow:none}
.is-style-otoc-faixa .wp-block-button.is-style-otoc-contorno .wp-block-button__link,.is-style-otoc-faixa .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}
.is-style-otoc-faixa .wp-block-button.is-style-otoc-contorno .wp-block-button__link:hover{border-color:var(--ciano-claro)}

/* --- textos --- */
p.is-style-otoc-lead{font-size:clamp(18px,1.6vw,20px);line-height:1.55;color:var(--corpo)}
p.is-style-otoc-kicker{font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ciano)}

/* --- imagem --- */
.wp-block-image.is-style-otoc-foto img{border-radius:calc(30px*var(--r));box-shadow:0 26px 54px color-mix(in srgb,var(--azul-esc) 14%,transparent);width:100%;height:auto}

/* --- lista com check --- */
ul.is-style-otoc-check{list-style:none;padding-left:0}
ul.is-style-otoc-check>li{position:relative;padding-left:32px}
ul.is-style-otoc-check>li::before{content:"";position:absolute;left:0;top:.2em;width:21px;height:21px;border-radius:var(--r-pill);background:var(--gelo)}
ul.is-style-otoc-check>li::after{content:"";position:absolute;left:8px;top:calc(.2em + 5px);width:5px;height:9px;border:solid var(--azul-med);border-width:0 2px 2px 0;transform:rotate(45deg)}
.is-style-otoc-gelo ul.is-style-otoc-check>li::before{background:#fff}

/* --- pergunta (bloco Detalhes) --- */
details.is-style-otoc-pergunta{background:#fff;border:1px solid color-mix(in srgb,var(--tinta) 7%,transparent);border-radius:calc(22px*var(--r));box-shadow:0 8px 24px color-mix(in srgb,var(--azul-esc) 5%,transparent);overflow:hidden}
details.is-style-otoc-pergunta>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;font-family:var(--f-tit);font-size:19px;font-weight:600;line-height:1.3;color:var(--azul-esc)}
details.is-style-otoc-pergunta>summary::-webkit-details-marker{display:none}
details.is-style-otoc-pergunta>summary::after{content:"+";flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r-pill);background:var(--gelo);color:var(--azul-med);font-size:20px;font-weight:500}
details.is-style-otoc-pergunta[open]>summary::after{content:"–"}
details.is-style-otoc-pergunta>summary:hover{background:color-mix(in srgb,var(--azul) 3%,#fff)}
details.is-style-otoc-pergunta>:not(summary){margin:0 22px 20px}
details.is-style-otoc-pergunta+details.is-style-otoc-pergunta{margin-top:12px}

/* --- tabela --- */
.is-style-otoc-tabela table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--linha);border-radius:calc(18px*var(--r));overflow:hidden}
.is-style-otoc-tabela :is(th,td){padding:14px 18px;border:0;border-bottom:1px solid var(--linha);text-align:left;font-size:16px}
.is-style-otoc-tabela thead th{background:var(--gelo);color:var(--azul-esc);font-family:var(--f-tit);font-weight:600}
.is-style-otoc-tabela tr:last-child td{border-bottom:0}

/* --- faixa final das páginas --- */
.oc-pag-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px 40px;background:linear-gradient(160deg,var(--azul-esc),var(--azul));color:#fff;border-radius:calc(32px*var(--r));padding:clamp(26px,3.6vw,48px)}
.oc-pag-cta h2{font-size:clamp(26px,3vw,36px);line-height:1.15}
.oc-pag-cta p{font-size:16px;color:var(--rod-txt);margin:10px 0 0;max-width:52ch}
.oc-pag-cta-acoes{display:flex;flex-wrap:wrap;gap:10px}

/* --- cartões das páginas-filhas --- */
.oc-subpag{display:flex;flex-direction:column;overflow:hidden;color:inherit}
.oc-subpag:hover{color:inherit}
.oc-subpag-foto{display:block;margin:-28px -28px 4px;aspect-ratio:16/10;overflow:hidden;background:var(--gelo)}
.oc-subpag-foto img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.oc-subpag:hover .oc-subpag-foto img{transform:scale(1.03)}
.oc-subpag-mais{margin-top:auto;padding-top:18px;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:var(--azul-med)}

/* --- contato curto --- */
.oc-contato-curto{padding-bottom:0;align-items:start}

/* --- menu: página atual --- */
.oc-nav a.is-atual,.oc-menu-pop a.is-atual{color:var(--azul-med);font-weight:600}

/* --- paleta do editor (segue as cores de Personalizar) --- */
.has-oc-azul-color{color:var(--azul)!important}.has-oc-azul-background-color{background-color:var(--azul)!important}
.has-oc-azul-escuro-color{color:var(--azul-esc)!important}.has-oc-azul-escuro-background-color{background-color:var(--azul-esc)!important}
.has-oc-azul-medio-color{color:var(--azul-med)!important}.has-oc-azul-medio-background-color{background-color:var(--azul-med)!important}
.has-oc-ciano-color{color:var(--ciano)!important}.has-oc-ciano-background-color{background-color:var(--ciano)!important}
.has-oc-texto-color{color:var(--tinta)!important}.has-oc-texto-background-color{background-color:var(--tinta)!important}
.has-oc-corpo-color{color:var(--corpo)!important}.has-oc-corpo-background-color{background-color:var(--corpo)!important}
.has-oc-gelo-color{color:var(--gelo)!important}.has-oc-gelo-background-color{background-color:var(--gelo)!important}
.has-oc-fundo-color{color:var(--bg)!important}.has-oc-fundo-background-color{background-color:var(--bg)!important}
.has-oc-branco-color{color:#fff!important}.has-oc-branco-background-color{background-color:#fff!important}
.has-background:not(.is-style-otoc-faixa):not(.wp-block-button__link){padding:clamp(20px,3vw,40px);border-radius:calc(26px*var(--r))}
.has-oc-p-font-size{font-size:15px!important}.has-oc-n-font-size{font-size:17px!important}
.has-oc-d-font-size{font-size:20px!important}.has-oc-g-font-size{font-size:28px!important;line-height:1.3}
