/* Layout e efeitos finais consolidados. Requer 03-interacoes-e-rodape.js. */
#vc-footer .elementor-element-vcfgrd1{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:42px 64px!important}#vc-footer .elementor-element-vcfcol1{grid-column:1/-1!important;width:100%!important;display:grid!important;grid-template-columns:330px minmax(0,460px)!important;grid-template-rows:auto auto auto!important;justify-content:center!important;align-items:center!important;column-gap:64px!important;row-gap:16px!important;padding-bottom:36px!important;border-bottom:1px solid rgba(201,169,104,.25)!important}#vc-footer .elementor-element-vcflogo{display:contents!important}#vc-footer [data-vc-local-crest-preview]>div:first-child{grid-column:1!important;grid-row:1/4!important}#vc-footer [data-vc-local-crest-preview]>div:last-child{grid-column:2!important;grid-row:1!important;align-self:end!important;margin:0!important}#vc-footer .elementor-element-vcftxt1{grid-column:2!important;grid-row:2!important;width:100%!important;max-width:430px!important;margin:0!important;text-align:left!important}#vc-footer .elementor-element-vcftxt1 p{margin:0!important;font-size:16px!important;line-height:1.85!important;text-wrap:pretty}#vc-footer .elementor-element-vcflema{grid-column:2!important;grid-row:3!important;align-self:start!important;width:100%!important;text-align:left!important;margin:0!important}#vc-footer .elementor-element-vcflema .elementor-heading-title{line-height:1.5!important;letter-spacing:1px!important}#vc-footer .elementor-element-fc81b30{position:absolute!important;width:0!important;height:0!important;margin:0!important}#vc-footer .elementor-element-vcfcol2,#vc-footer .elementor-element-vcfcol3,#vc-footer .elementor-element-vcfcol4{width:100%!important;margin:0!important} @media(max-width:767px){#vc-footer .elementor-element-vcfgrd1{grid-template-columns:1fr!important;gap:28px!important}#vc-footer .elementor-element-vcfcol1{display:flex!important;flex-direction:column!important;gap:18px!important}#vc-footer .elementor-element-vcftxt1,#vc-footer .elementor-element-vcflema{text-align:center!important}}

#vc-footer .elementor-element-vcfgrd1{grid-template-columns:1fr 1.1fr 1.35fr .8fr!important;gap:48px!important}#vc-footer .elementor-element-vcfcol1{grid-row:2!important;border-bottom:0!important;border-top:1px solid rgba(201,169,104,.25)!important;padding-top:44px!important;padding-bottom:0!important}#vc-footer .vc-local-parents{display:flex;flex-direction:column;gap:16px;min-width:0}#vc-footer .vc-local-parents h4{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#c9a968;margin:0}#vc-footer .elementor-element-vcfh302{margin:0!important}#vc-footer .elementor-element-vcftxt3 a{display:inline-flex;align-items:center;gap:10px;line-height:2!important;white-space:nowrap}#vc-footer .elementor-element-vcftxt3 svg{width:18px;height:18px;flex-shrink:0;color:#c9a968}#vc-footer .elementor-element-vcfcol4 p{margin-bottom:0!important}@media(max-width:1024px){#vc-footer .elementor-element-vcfgrd1{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px!important}#vc-footer .elementor-element-vcfcol1{grid-row:3!important}}@media(max-width:767px){#vc-footer .elementor-element-vcfgrd1{grid-template-columns:1fr!important}#vc-footer .elementor-element-vcfcol1{grid-row:5!important}}

@keyframes vcBorderGlint{0%{stroke-dashoffset:0;opacity:0}8%{opacity:.85}58%{opacity:.85}68%,100%{stroke-dashoffset:-100;opacity:0}}.vc-border-glint{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;border-radius:inherit}.vc-border-glint rect{fill:none;animation:vcBorderGlint 8s cubic-bezier(.4,0,.2,1) infinite;stroke-linecap:round}@media(prefers-reduced-motion:reduce){.vc-border-glint{display:none}}

@keyframes vcGlintTwinkle{0%,100%{filter:drop-shadow(0 0 1px #fff2c8);stroke-width:1.5}45%{filter:drop-shadow(0 0 3px #fff2c8);stroke-width:2.8}65%{filter:drop-shadow(0 0 1.5px #ffe3a0);stroke-width:1.8}}@media(prefers-reduced-motion:reduce){.vc-border-glint{display:none!important}}

.vc-glint-button .vc-border-glint{opacity:.72;transition:opacity .35s ease,filter .35s ease}.vc-glint-button .vc-border-glint rect{animation-duration:9.5s!important;transition:stroke .35s ease,stroke-width .35s ease}.vc-glint-button:hover .vc-border-glint,.vc-glint-button:focus-visible .vc-border-glint{opacity:1;filter:drop-shadow(0 0 3px rgba(255,224,142,.7))}.vc-glint-button:hover .vc-border-glint rect:nth-child(2),.vc-glint-button:focus-visible .vc-border-glint rect:nth-child(2){stroke:#fff8df;stroke-width:2}.vc-glint-button:hover .vc-border-glint rect:last-child{stroke:#ffffff;stroke-width:2.4}

.vc-golden-reflection .vc-reflection-clip{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none}.vc-golden-reflection .vc-reflection-sweep{position:absolute;top:-40%;left:0;width:65%;height:180%;background:linear-gradient(105deg,transparent 0%,rgba(255,224,136,.12) 24%,rgba(255,239,177,.65) 48%,rgba(255,250,219,.78) 52%,rgba(255,221,126,.22) 72%,transparent 100%);transform:translateX(-180%) skewX(-18deg);opacity:0;pointer-events:none}.vc-golden-reflection:hover .vc-reflection-sweep,.vc-golden-reflection:focus-visible .vc-reflection-sweep{animation:vcGoldSweep 1.4s cubic-bezier(.22,.61,.36,1) both}.vc-golden-reflection:hover .vc-border-glint,.vc-golden-reflection:focus-visible .vc-border-glint{opacity:0!important;visibility:hidden!important}.vc-golden-reflection .elementor-button-content-wrapper{position:relative;z-index:1}@keyframes vcGoldSweep{0%{transform:translateX(-180%) skewX(-18deg);opacity:0}12%{opacity:1}85%{opacity:1}100%{transform:translateX(260%) skewX(-18deg);opacity:0}}@media(prefers-reduced-motion:reduce){.vc-golden-reflection:hover .vc-reflection-sweep,.vc-golden-reflection:focus-visible .vc-reflection-sweep{animation:none}}
/* Remover definitivamente este widget no Elementor após aprovação. */
.elementor-element-vchbtn2{display:none!important}
@media(min-width:768px) and (max-width:1024px){#vc-footer .elementor-element-vcfcol1{grid-template-columns:330px minmax(0,1fr)!important;column-gap:32px!important}}

/* Carrossel Fé Católica: recorte permanente em todos os slides e transições. */
#fe .elementor-element-vcfeimg {
  --vc-carousel-radius: 20px;
  border-radius: var(--vc-carousel-radius) !important;
  overflow: hidden !important;
  isolation: isolate;
}
#fe .elementor-element-vcfeimg > .elementor-background-slideshow {
  border-radius: var(--vc-carousel-radius) !important;
  overflow: hidden !important;
  clip-path: inset(0 round var(--vc-carousel-radius));
}
/* Contraste após integração com o cabeçalho fixo e links globais. */
.elementor-71 #vc-header.elementor-sticky--effects .elementor-nav-menu--main .elementor-item{color:#45494D!important}
.elementor-71 #vc-header.elementor-sticky--effects .elementor-nav-menu--main .elementor-item:hover,
.elementor-71 #vc-header.elementor-sticky--effects .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#B0863A!important}
.elementor-71 #vc-header .elementor-nav-menu--dropdown a{color:#F5F4F0!important}
.elementor-72 #vc-footer .elementor-element-vcftxt3 a{color:#C9A968!important}
/* Prata metálico — Conhecer conteúdos, em qualquer página. */
body.elementor-kit-7 a.elementor-button.vc-silver-button,
body.elementor-kit-7 button.elementor-button.vc-silver-button {
  background-color:#C8CDD2!important;
  background-image:linear-gradient(115deg,#979EA6 0%,#D8DDE2 22%,#FAFBFC 43%,#BAC1C8 62%,#EDF0F3 80%,#9BA3AB 100%)!important;
  color:#30343A!important;
  border:1px solid #8F979F!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(72,80,88,.2),0 4px 12px rgba(48,52,58,.14)!important;
}
body.elementor-kit-7 .vc-silver-button:hover,
body.elementor-kit-7 .vc-silver-button:focus-visible {color:#30343A!important;background-color:#D8DDE2!important;}
body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-silver-button,
body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-silver-button .elementor-button-text,
body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-silver-button:hover,
body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-silver-button:focus-visible{color:#30343A!important}
/* Rodapé compacto: somente espaçamentos verticais; fontes e imagens preservadas. */
.elementor-72 #vc-footer > .e-con-inner{padding-top:48px!important}
.elementor-72 #vc-footer .elementor-element-vcfgrd1{row-gap:24px!important}
.elementor-72 #vc-footer .elementor-element-vcfcol1{padding-top:24px!important}
.elementor-72 #vc-footer .elementor-element-vcfbot1{margin-top:20px!important;padding-top:16px!important;padding-bottom:18px!important}
/* Smartphone: preservar o brasão inteiro, com escala proporcional quando necessário. */
@media(max-width:767px){
  .elementor-72 #vc-footer .elementor-element-vcfcol1{align-items:center!important}
  .elementor-72 #vc-footer [data-vc-local-crest-preview]>div:first-child{
    height:auto!important;aspect-ratio:330/345;
    background-size:314.5454545% auto!important;
    background-position:left 65%!important;
    flex-shrink:0;
  }
}

/* Aura dourada aprovada, 20% mais suave, todos os botões de visita. */
body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-visit-gold-aura{position:relative!important;animation:vcPreviewGoldAura 3.4s ease-in-out infinite!important;}body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-visit-gold-aura::before{content:"";position:absolute;inset:-2px;border-radius:inherit;padding:2px;background:linear-gradient(105deg,#B8893F 0%,#E4BB65 25%,#FFF2BD 48%,#D3A345 72%,#F5D98C 100%);background-size:200% 100%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;animation:vcPreviewGoldEdge 4.5s ease-in-out infinite;}.vc-visit-gold-aura .vc-border-glint{display:none!important;}@keyframes vcPreviewGoldAura{0%,100%{box-shadow:0 0 7px rgba(255,229,156,0.440),0 0 16px rgba(218,169,68,0.360),0 0 27px rgba(176,126,33,0.200)}35%{box-shadow:0 0 10px rgba(255,239,186,0.680),0 0 23px rgba(230,184,80,0.520),0 0 36px rgba(194,142,40,0.304)}55%{box-shadow:0 0 8px rgba(255,231,164,0.520),0 0 19px rgba(218,169,68,0.400),0 0 30px rgba(176,126,33,0.240)}70%{box-shadow:0 0 12px rgba(255,242,189,0.720),0 0 26px rgba(236,190,82,0.560),0 0 40px rgba(194,142,40,0.320)}}@keyframes vcPreviewGoldEdge{0%,100%{background-position:0% 50%;opacity:.8}50%{background-position:100% 50%;opacity:1}}@media(prefers-reduced-motion:reduce){body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-visit-gold-aura{animation:none!important;box-shadow:0 0 10px rgba(255,229,156,0.520),0 0 22px rgba(218,169,68,0.400)!important;}body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-visit-gold-aura::before{animation:none!important;}}body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-visit-gold-aura::before{inset:0!important;border-radius:inherit!important;padding:2px!important;}body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-visit-gold-aura{background-clip:border-box!important;}body.elementor-kit-7 .elementor .elementor-element .elementor-button.vc-visit-gold-aura::before{filter:opacity(.8);}
/* Quadro do brasão abaixo de Berçário ao 7º ano; toda a superfície é um link. */
#escola .elementor-element-vcapsta{align-items:flex-start!important}
#escola .elementor-element-vcapst1,
#escola .elementor-element-vcapst2{flex:1 1 0!important;min-width:0!important;width:auto!important}
#escola .elementor-element-vcapbdg{
  display:flex!important;position:relative!important;inset:auto!important;
  transform:none!important;translate:none!important;rotate:none!important;scale:none!important;
  margin:16px 0 0!important;max-width:100%!important;flex-shrink:0!important;
}
#escola .elementor-element-vcaplnk{margin-top:28px!important;width:auto!important;max-width:100%!important}
#escola .vc-intro-badge-link{position:absolute!important;inset:0!important;z-index:5;border-radius:inherit;display:block!important;cursor:pointer}
#escola .vc-intro-badge-link:focus-visible{outline:3px solid #B0863A;outline-offset:4px}
@media(max-width:767px){
  #escola .elementor-element-vcapst1,
  #escola .elementor-element-vcapst2{flex:0 0 auto!important;width:100%!important}
}
/* Alinhamento revisado: história e quadro à esquerda; segmento e lema à direita. */
#escola .elementor-element-vcaplnk{margin-top:0!important;align-self:flex-start!important}
#escola .elementor-element-vcapst2{padding-top:40px!important}
#escola .elementor-element-vcapstt{margin-top:24px!important}
#escola .elementor-element-vcapst3 .elementor-heading-title{
  font-variant-numeric:lining-nums!important;font-feature-settings:"lnum" 1!important;
}
#escola > .e-con-inner{padding-bottom:56px!important}
@media(max-width:767px){
  #escola .elementor-element-vcapst2{padding-top:0!important}
  #escola > .e-con-inner{padding-bottom:40px!important}
}
/* Centralizar o quadro sob a largura efetiva do link da história. */
#escola .elementor-element-vcapst1{align-items:center!important}
#escola .elementor-element-vcapst1 .elementor-element-vcaplnk{align-self:center!important}
#escola .elementor-element-vcapst1 .elementor-element-vcapbdg{align-self:center!important;margin-left:auto!important;margin-right:auto!important}
/* Etapas de ensino: alinhamento harmonioso com o quadro da história. */
#escola .elementor-element-vcapsta{
  display:grid!important;grid-template-columns:minmax(190px,.85fr) minmax(0,1.15fr);
  column-gap:24px!important;align-items:center!important;
}
#escola .elementor-element-vcapst1,
#escola .elementor-element-vcapst2{width:100%!important}
#escola .elementor-element-vcapst2{padding-top:0!important}
#escola .vc-growth-intro{font-family:inherit;font-size:14px;line-height:1.65;color:#45494D;letter-spacing:0}
#escola .vc-growth-stages{margin:8px 0 0;padding:0 0 0 18px;font-size:14px;line-height:1.65;color:#45494D;letter-spacing:0;font-variant-numeric:lining-nums}
#escola .vc-growth-stages li{margin:0 0 5px;padding:0}
#escola .vc-growth-stages li:last-child{margin-bottom:0}
#escola .vc-growth-stages strong{font-weight:600}
#escola .elementor-element-vcapstt{margin-top:16px!important}
@media(max-width:767px){
  #escola .elementor-element-vcapsta{grid-template-columns:minmax(0,1fr);row-gap:24px!important}
}
/* Título das etapas na linguagem tipográfica dos títulos institucionais. */
#escola h3.vc-growth-intro{
  font-family:var(--e-global-typography-primary-font-family,"Cormorant Garamond"),serif!important;
  font-size:24px!important;font-weight:500!important;line-height:1.15!important;
  letter-spacing:0!important;color:#30343A!important;margin:0 0 8px!important;
  text-wrap:pretty;
}
#escola .elementor-element-vcapstt,
#escola .elementor-element-vcapstd{padding-left:18px!important}
@media(max-width:767px){#escola h3.vc-growth-intro{font-size:24px!important}}

/* Marcadores vetoriais: flor-de-lis em contorno fino, sem fundo. */
#escola .vc-growth-stages{list-style:none!important;padding-left:22px!important}
#escola .vc-growth-stages li{position:relative}
#escola .vc-growth-stages li::before{content:"";position:absolute;left:-22px;top:.22em;width:15px;height:16px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23202020%22%20stroke-width%3D%221.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202c-3%203.5-4%206-2%208.5l1%204h2l1-4C16%208%2015%205.5%2012%202Z%22%2F%3E%3Cpath%20d%3D%22M10.8%2013.5C10%2010.5%208.6%207.6%205.6%208%202.4%208.4%202.3%2012.6%204.8%2013.7c-.6-1.9.2-2.8%201.5-2.4%201.6.5%202%202.2%202.4%203.2m4.5-1C14%2010.5%2015.4%207.6%2018.4%208c3.2.4%203.3%204.6.8%205.7.6-1.9-.2-2.8-1.5-2.4-1.6.5-2%202.2-2.4%203.2%22%2F%3E%3Crect%20x%3D%227%22%20y%3D%2214.5%22%20width%3D%2210%22%20height%3D%222%22%20rx%3D%22.5%22%2F%3E%3Cpath%20d%3D%22M10%2016.5c0%202.2-1.3%203.5-1.8%204%202%20.3%203-.5%203.8-1.7.8%201.2%201.8%202%203.8%201.7-.5-.5-1.8-1.8-1.8-4%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;pointer-events:none}

/* Composição conforme referência: topos alinhados e quadro/brasão 40% maiores. */
#escola .elementor-element-vcapsta{grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr)!important;align-items:start!important}
#escola .elementor-element-vcapbdg{width:210px!important;height:210px!important;margin-top:12px!important}
#escola .elementor-element-vcapcrs{width:134.4px!important;max-width:100%!important}
#escola .elementor-element-vcapcrs img{width:100%!important;height:auto!important}
#escola .vc-growth-motto{display:flex;flex-direction:column;gap:4px;width:max-content;max-width:100%;align-self:center;margin-top:16px}
#escola .vc-growth-motto .elementor-element-vcapstt,
#escola .vc-growth-motto .elementor-element-vcapstd{padding-left:0!important;margin:0!important;width:auto!important}
@media(max-width:767px){#escola .elementor-element-vcapsta{grid-template-columns:minmax(0,1fr)!important}}
/* Quadro preservado em 210px; brasão interno 15% maior (134,4 → 154,56px). */
#escola .elementor-element-vcapcrs{width:154.56px!important}
/* Compensar a diferença de linha entre o link e o título serifado. */
#escola .elementor-element-vcapst1{padding-top:6px!important}
/* Batida de coração: somente o brasão, sem deslocar o quadro ou o conteúdo. */
#escola .elementor-element-vcapcrs img{transform-origin:center center;}
@keyframes vcCrestHeartbeat{
  0%,38%,100%{transform:scale(1)}
  12%,28%{transform:scale(1.02)}
  20%,34%{transform:scale(1)}
}
@media(hover:hover){
  #escola .elementor-element-vcapbdg:hover .elementor-element-vcapcrs img{
    animation:vcCrestHeartbeat 1.35s ease-in-out infinite;
  }
}
@media(prefers-reduced-motion:reduce){
  #escola .elementor-element-vcapbdg:hover .elementor-element-vcapcrs img{animation:none!important}
}

/* Localização: mesma linguagem visual dos contatos; ícone alinhado ao endereço. */
#vc-footer .vc-location-link{display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px;align-items:start;color:#C9A968!important;text-decoration:none;line-height:inherit;max-width:100%}
#vc-footer .vc-location-link svg{width:18px;height:18px;margin-top:3px;flex-shrink:0}
#vc-footer .vc-location-link span{min-width:0;overflow-wrap:break-word}
#vc-footer .vc-location-link:hover span{text-decoration:underline;text-underline-offset:3px}
#vc-footer .vc-location-link:focus-visible{outline:2px solid #C9A968;outline-offset:5px;border-radius:3px}

/* Acesso completo: identificação editorial, sem aparência de botão. */
.elementor .elementor-element.elementor-element-vcfrct1{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;width:auto!important;max-width:100%!important;align-self:flex-start;cursor:default}
.elementor .elementor-element.elementor-element-vcfrct1::before,.elementor .elementor-element.elementor-element-vcfrct1::after{display:none!important}
.elementor .elementor-element.elementor-element-vcfrct1 .elementor-heading-title{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;color:#C9A968!important;font-size:12px!important;font-weight:600!important;line-height:1.4!important;letter-spacing:1.6px!important;text-transform:uppercase;white-space:nowrap;cursor:default}

.elementor .elementor-element.elementor-element-vcfrch1{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;width:auto!important;max-width:100%!important;cursor:default}
.elementor .elementor-element.elementor-element-vcfrch1::before,.elementor .elementor-element.elementor-element-vcfrch1::after{display:none!important}
