/* =========================================================
   Nex-Obras JR — Ajustes de organização e profissionalismo
   Este arquivo NÃO altera o layout/estilo original do site,
   apenas refina espaçamentos, corrige o botão "Início" e
   adiciona efeitos decorativos de pintura (identidade visual).
   ========================================================= */

:root{
  --jr-red:      var(--primary, #C8102E);
  --jr-red-dark: var(--secondary, #9E031C);
  --jr-red-tint: #E4536B;
  --jr-red-deep: #7A0216;
  --jr-charcoal: #272D30;
}

/* ---------------------------------------------------------
   1) LINK "INÍCIO" — antes ficava sozinho no espaço da logo,
   desalinhado da linha de menu (Pintura externa, Elétrica,
   Hidráulica...). Agora é o primeiro item do próprio menu de
   serviços (desktop e mobile), usando exatamente a mesma
   classe/estilo dos demais links (fnt_nv-pry), então segue o
   padrão nativo do menu sem precisar de CSS extra.
   --------------------------------------------------------- */

/* ---------------------------------------------------------
   2) ORGANIZAÇÃO DO CONTEÚDO — espaçamento mais consistente,
   tipografia hierarquizada, listas mais claras. Mantém as
   fontes e cores originais do tema.
   --------------------------------------------------------- */
#MainContent{
  max-width:900px;
}
#MainContent h1{
  margin-bottom:.4em;
  line-height:1.15;
}
#MainContent h2{
  color:var(--jr-red-dark);
  font-weight:500;
  margin-bottom:1.4rem;
  line-height:1.35;
}
#MainContent > p,
#MainContent p{
  line-height:1.75;
  margin-bottom:1.1rem;
}
#MainContent h3{
  margin-top:2.4rem;
  margin-bottom:1rem;
  padding-top:1.75rem;
  border-top:1px solid rgba(0,0,0,.08);
}
#MainContent ul:not(.wp-block-buttons):not(.mbl-mnu):not(.fnt_nv-pry){
  list-style:none;
  padding-left:0;
  margin:1.25rem 0 1.5rem;
}
#MainContent ul:not(.wp-block-buttons):not(.mbl-mnu):not(.fnt_nv-pry) > li{
  position:relative;
  padding-left:1.85rem;
  margin-bottom:.9rem;
  line-height:1.65;
}
#MainContent ul:not(.wp-block-buttons):not(.mbl-mnu):not(.fnt_nv-pry) > li::before{
  content:"";
  position:absolute;
  left:0;
  top:.5em;
  width:10px;
  height:10px;
  border-radius:50% 50% 50% 0;
  transform:rotate(45deg);
  background:var(--jr-red);
}
#MainContent .raw-html-embed .txt-hlt{
  border-radius:10px;
  margin-top:1.75rem;
}
.sd-nv.v1 a.fnt_sd-nv{
  border-bottom:1px solid rgba(0,0,0,.06);
}

/* ---------------------------------------------------------
   3) EFEITOS DE PINTURA — cada página recebe uma variação
   decorativa diferente (onda de tinta, respingos, pincelada
   diagonal, textura de rolo, mancha e borda irregular),
   sempre dentro da paleta oficial da marca.
   --------------------------------------------------------- */
#MainZone{ position:relative; }

#MainZone::before{
  content:"";
  display:block;
  width:100%;
  height:16px;
  background-color:var(--jr-red);
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
}

/* fx-1: onda gotejante (drip) — vermelho principal */
.pf-1 #MainZone::before{
  background-color:var(--jr-red);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2040'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,0H1200V10C1150,32,1120,4,1080,20C1040,36,1010,8,970,18C930,30,900,4,860,16C820,30,790,6,750,18C710,32,680,6,640,16C600,28,570,4,530,16C490,30,460,6,420,18C380,32,350,6,310,16C270,28,240,4,200,16C160,30,130,6,90,18C60,30,30,10,0,16Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2040'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,0H1200V10C1150,32,1120,4,1080,20C1040,36,1010,8,970,18C930,30,900,4,860,16C820,30,790,6,750,18C710,32,680,6,640,16C600,28,570,4,530,16C490,30,460,6,420,18C380,32,350,6,310,16C270,28,240,4,200,16C160,30,130,6,90,18C60,30,30,10,0,16Z'/%3E%3C/svg%3E");
}

/* fx-2: pincelada diagonal — vermelho escuro */
.pf-2 #MainZone::before{
  height:18px;
  background-color:var(--jr-red-dark);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2044'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,6%20L60,0%20120,10%20180,2%20240,12%20300,4%20360,14%20420,2%20480,10%20540,4%20600,14%20660,2%20720,12%20780,4%20840,10%20900,2%20960,14%201020,4%201080,10%201140,2%201200,8%20L1200,44%20L0,44%20Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2044'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,6%20L60,0%20120,10%20180,2%20240,12%20300,4%20360,14%20420,2%20480,10%20540,4%20600,14%20660,2%20720,12%20780,4%20840,10%20900,2%20960,14%201020,4%201080,10%201140,2%201200,8%20L1200,44%20L0,44%20Z'/%3E%3C/svg%3E");
}

/* fx-3: respingos (splatter) — tom claro da marca */
.pf-3 #MainZone::before{
  height:14px;
  background-color:var(--jr-red-tint);
  -webkit-mask-image:radial-gradient(circle at 4% 50%,#000 3px,transparent 3.5px),radial-gradient(circle at 10% 30%,#000 2px,transparent 2.5px),radial-gradient(circle at 18% 60%,#000 4px,transparent 4.5px),radial-gradient(circle at 27% 20%,#000 2px,transparent 2.5px),radial-gradient(circle at 36% 55%,#000 3px,transparent 3.5px),radial-gradient(circle at 45% 15%,#000 2px,transparent 2.5px),radial-gradient(circle at 54% 60%,#000 4px,transparent 4.5px),radial-gradient(circle at 63% 25%,#000 2px,transparent 2.5px),radial-gradient(circle at 72% 55%,#000 3px,transparent 3.5px),radial-gradient(circle at 81% 20%,#000 2px,transparent 2.5px),radial-gradient(circle at 90% 55%,#000 4px,transparent 4.5px),radial-gradient(circle at 97% 30%,#000 2px,transparent 2.5px), linear-gradient(#000,#000);
  mask-image:radial-gradient(circle at 4% 50%,#000 3px,transparent 3.5px),radial-gradient(circle at 10% 30%,#000 2px,transparent 2.5px),radial-gradient(circle at 18% 60%,#000 4px,transparent 4.5px),radial-gradient(circle at 27% 20%,#000 2px,transparent 2.5px),radial-gradient(circle at 36% 55%,#000 3px,transparent 3.5px),radial-gradient(circle at 45% 15%,#000 2px,transparent 2.5px),radial-gradient(circle at 54% 60%,#000 4px,transparent 4.5px),radial-gradient(circle at 63% 25%,#000 2px,transparent 2.5px),radial-gradient(circle at 72% 55%,#000 3px,transparent 3.5px),radial-gradient(circle at 81% 20%,#000 2px,transparent 2.5px),radial-gradient(circle at 90% 55%,#000 4px,transparent 4.5px),radial-gradient(circle at 97% 30%,#000 2px,transparent 2.5px), linear-gradient(transparent,transparent);
  -webkit-mask-size:auto,auto,auto,auto,auto,auto,auto,auto,auto,auto,auto,auto,100% 40%;
  mask-size:auto,auto,auto,auto,auto,auto,auto,auto,auto,auto,auto,auto,100% 40%;
  -webkit-mask-position:bottom;
  mask-position:bottom;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
}

/* fx-4: textura de rolo (listras finas) — charcoal + vermelho */
.pf-4 #MainZone::before{
  height:10px;
  background:repeating-linear-gradient(90deg,var(--jr-red) 0 26px,var(--jr-charcoal) 26px 30px);
  -webkit-mask-image:none;
  mask-image:none;
}

/* fx-5: mancha/splash decorativa no canto do banner — vermelho profundo */
.pf-5 #MainZone::before{
  background-color:var(--jr-red-deep);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2040'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,4%20C100,20%20180,-4%20260,10%20C340,24%20420,0%20500,12%20C580,24%20660,2%20740,14%20C820,26%20900,0%20980,12%20C1060,24%201140,4%201200,10%20L1200,40%20L0,40%20Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2040'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,4%20C100,20%20180,-4%20260,10%20C340,24%20420,0%20500,12%20C580,24%20660,2%20740,14%20C820,26%20900,0%20980,12%20C1060,24%201140,4%201200,10%20L1200,40%20L0,40%20Z'/%3E%3C/svg%3E");
}
.pf-5 #MainZone{ overflow:visible; }
.pf-5 #MainZone .bnr{ position:relative; }
.pf-5 #MainZone .bnr::after{
  content:"";
  position:absolute;
  top:-18px;
  right:-18px;
  width:120px;
  height:120px;
  border-radius:64% 36% 58% 42%/48% 40% 60% 52%;
  background:radial-gradient(circle at 30% 30%, var(--jr-red-tint), var(--jr-red-deep) 75%);
  opacity:.18;
  pointer-events:none;
  z-index:1;
}

/* fx-6: borda irregular (pincel seco) — vermelho principal + escuro */
.pf-6 #MainZone::before{
  height:16px;
  background-color:var(--jr-red);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2036'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,2%20L40,10%20L80,1%20L120,12%20L160,3%20L200,14%20L240,2%20L280,11%20L320,4%20L360,13%20L400,1%20L440,10%20L480,3%20L520,14%20L560,2%20L600,11%20L640,4%20L680,13%20L720,1%20L760,10%20L800,3%20L840,14%20L880,2%20L920,11%20L960,4%20L1000,13%20L1040,1%20L1080,10%20L1120,3%20L1160,14%20L1200,2%20L1200,36%20L0,36%20Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2036'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,2%20L40,10%20L80,1%20L120,12%20L160,3%20L200,14%20L240,2%20L280,11%20L320,4%20L360,13%20L400,1%20L440,10%20L480,3%20L520,14%20L560,2%20L600,11%20L640,4%20L680,13%20L720,1%20L760,10%20L800,3%20L840,14%20L880,2%20L920,11%20L960,4%20L1000,13%20L1040,1%20L1080,10%20L1120,3%20L1160,14%20L1200,2%20L1200,36%20L0,36%20Z'/%3E%3C/svg%3E");
}

@media (max-width:700px){
  #MainZone::before{ height:10px; }
  .pf-5 #MainZone .bnr::after{ width:70px; height:70px; top:-10px; right:-10px; }
}

/* ---------------------------------------------------------
   4) CORREÇÃO DO "TREMOR" EM IMAGENS NO HOVER
   Bug original: elementos com zoom no hover (.hvr_scl-up e
   variantes) tremiam/piscavam porque o navegador troca de
   camada de renderização no meio da transição. A correção
   força a imagem para a própria camada (GPU) e evita o
   recalculo de sub-pixel que causa o tremor.
   --------------------------------------------------------- */
.hvr_scl-up,
.hvr_scl-dwn,
.hvr_scl-lst,
.hvr_shf img,
.hvr_trn-up,
.hvr_trn-dwn,
[class*="hvr_scl"] picture,
[class*="hvr_scl"] img{
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  -webkit-transform:translateZ(0);
  transform:translateZ(0);
  will-change:transform;
}
/* Garante que o zoom não vaze do card e cause reflow/scroll ao redor */
.crd,
.img-grp.v1 .bg,
picture.bg.hvr_scl-up,
picture.hvr_scl-up{
  overflow:hidden;
}

/* ---------------------------------------------------------
   5) HERO / BANNER PRINCIPAL — desktop compacto e sem corte
   A arte desktop foi preparada em formato panorâmico 1718x480.
   Assim o banner fica mais baixo, ocupa toda a largura e mostra
   a arte inteira, sem object-fit/cover e sem recorte.
   --------------------------------------------------------- */

#SmMainstageV1{
  overflow:hidden;
  padding-top:0;
}

#SmMainstageV1 .hero-bnr-img{
  position:relative;
  left:50%;
  width:100vw;
  max-width:100vw;
  transform:translateX(-50%);
  margin:0;
  line-height:0;
  overflow:hidden;
}

#SmMainstageV1 .hero-bnr-img img{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  object-fit:initial;
  object-position:initial;
}

/* Mantém a versão desktop panorâmica em todos os monitores
   acima do breakpoint de tablet. */
@media (min-width:1280px){
  #SmMainstageV1 .hero-bnr-img{
    height:auto;
    max-height:none;
  }

  #SmMainstageV1 .hero-bnr-img img{
    height:auto;
    max-height:none;
  }
}

@media (max-width:1279px){
  #SmMainstageV1 .hero-bnr-img,
  #SmMainstageV1 .hero-bnr-img img{
    height:auto;
    max-height:none;
  }
}

/* Bloco de conteúdo abaixo do banner — título, CTA e atalhos,
   com respiro centralizado no container padrão do site */
#SmMainstageV1 .hero-bnr-cnt{
  padding-top:clamp(28px, 4vw, 48px);
  padding-bottom:clamp(28px, 4vw, 48px);
  text-align:center;
}
#SmMainstageV1 .hero-bnr-cnt .btn-con{
  display:flex;
  justify-content:center;
}
#SmMainstageV1 .hero-bnr-cnt #SmMainstageV1Kicker{
  text-align:center;
}

#SmMainstageV1Content .fnt_t-big{
  letter-spacing:.01em;
}
#SmMainstageV1Content .fnt_t-2{
  opacity:.92;
}

#SmMainstageV1 .btn-con .btn.v1{
  box-shadow:0 4px 14px rgba(0,0,0,.18);
  transition:transform .2s ease, box-shadow .2s ease;
}
#SmMainstageV1 .btn-con .btn.v1:hover,
#SmMainstageV1 .btn-con .btn.v1:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.24);
}

#SmMainstageV1Kicker .fnt_t-k{
  border-bottom-color:var(--jr-red);
  border-bottom-width:3px;
}

#SmMainstageV1ServicesFeed li a{
  transition:transform .2s ease, box-shadow .2s ease;
}
#SmMainstageV1ServicesFeed li a:hover,
#SmMainstageV1ServicesFeed li a:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 10px 22px rgba(0,0,0,.16);
}

@media (max-width:700px){
  #SmMainstageV1 .btn-con .btn.v1:hover,
  #SmMainstageV1 .btn-con .btn.v1:focus-visible,
  #SmMainstageV1ServicesFeed li a:hover,
  #SmMainstageV1ServicesFeed li a:focus-visible{
    transform:none;
  }
}

/* ---------------------------------------------------------
   6) CARDS DE SERVIÇO — usados na página hub "Pintura"
   (pintura.html) para navegar por categoria/tipo de pintura.
   Componente novo, aditivo, seguindo a paleta e sombras já
   usadas no restante do site (bx-sdw, hvr_scl-lst, --jr-red).
   --------------------------------------------------------- */
.jr-pcard-grid{
  display:grid;
  gap:1.75rem;
}
.jr-pcard-grid--2{
  grid-template-columns:repeat(1, 1fr);
}
.jr-pcard-grid--4{
  grid-template-columns:repeat(2, 1fr);
  gap:1.25rem;
}
@media (min-width:700px){
  .jr-pcard-grid--2{ grid-template-columns:repeat(2, 1fr); }
  .jr-pcard-grid--4{ grid-template-columns:repeat(4, 1fr); }
}
.jr-pcard{
  display:flex;
  flex-direction:column;
  background:var(--main-bg, #fff);
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 4px 14px rgba(0,0,0,.12);
  transition:transform .2s ease, box-shadow .2s ease;
  text-decoration:none;
  color:inherit;
}
.jr-pcard:hover,
.jr-pcard:focus-visible{
  transform:translateY(-4px);
  box-shadow:0 14px 28px rgba(0,0,0,.2);
}
.jr-pcard__img{
  position:relative;
  aspect-ratio:16/10;
  overflow:hidden;
}
.jr-pcard__img img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease;
}
.jr-pcard:hover .jr-pcard__img img{
  transform:scale(1.06);
}
.jr-pcard__body{
  display:flex;
  flex-direction:column;
  gap:.4rem;
  padding:1.25rem 1.4rem 1.5rem;
}
.jr-pcard__tag{
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--jr-red);
  font-weight:700;
}
.jr-pcard__title{
  font-size:1.2rem;
  font-weight:800;
  color:var(--jr-charcoal);
}
.jr-pcard__desc{
  font-style:normal;
  opacity:.75;
  font-size:.92rem;
  line-height:1.5;
}
.jr-pcard__cta{
  margin-top:.5rem;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  font-weight:700;
  color:var(--jr-red);
  font-size:.92rem;
}
.jr-pcard__cta svg{
  width:.85em;
  transition:transform .2s ease;
}
.jr-pcard:hover .jr-pcard__cta svg{
  transform:translateX(4px);
}
.jr-pcard--sml .jr-pcard__body{
  padding:1rem 1.1rem 1.2rem;
}
.jr-pcard--sml .jr-pcard__title{
  font-size:1rem;
}
.jr-pcard--sml .jr-pcard__desc{
  font-size:.85rem;
}
#PinturaHubTipos.dk-bg{
  background-color:var(--jr-charcoal);
}
#PinturaHubTipos.dk-bg .jr-pcard{
  background:#fff;
}
#PinturaHubTipos.dk-bg header strong{
  color:#fff;
}
#PinturaHubTipos.dk-bg header em{
  color:#fff;
  opacity:.75;
}

/* ---------------------------------------------------------
   7) EFEITOS TEMÁTICOS POR SERVIÇO — reforço visual sutil e
   aditivo (não substitui nada do layout original) para dar
   identidade própria às páginas de Pintura, Reformas, Elétrica
   e Hidráulica, sempre dentro da paleta oficial da marca.
   --------------------------------------------------------- */

/* Pintura — leve respingo de tinta decorativo no topo do conteúdo,
   reforçando o fx-strip já existente (#MainZone::before) */
.jr-topic-pintura #MainZone{
  background-image:radial-gradient(circle at 96% 0%, rgba(200,16,46,.05), transparent 40%);
}

/* Reformas — textura sutil de "canteiro de obras" (linhas diagonais
   finas) no fundo do topo da página, discreta e na paleta da marca */
.jr-topic-reformas #MainZone{
  background-image:repeating-linear-gradient(135deg, rgba(39,45,48,.035) 0 10px, transparent 10px 20px);
  background-repeat:no-repeat;
  background-size:100% 220px;
  background-position:top;
}

/* Elétrica — acento decorativo de "faísca/circuito" no topo da página */
.jr-topic-eletrica #MainZone{
  position:relative;
}
.jr-topic-eletrica #MainZone::after{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:220px;
  height:140px;
  pointer-events:none;
  opacity:.06;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%2060'%3E%3Cpath%20d='M10%205%20L10%2025%20L40%2025%20L40%2045%20L70%2045%20L70%2015%20L90%2015'%20fill='none'%20stroke='%23C8102E'%20stroke-width='3'/%3E%3Ccircle%20cx='10'%20cy='5'%20r='3'%20fill='%23C8102E'/%3E%3Ccircle%20cx='40'%20cy='45'%20r='3'%20fill='%23C8102E'/%3E%3Ccircle%20cx='90'%20cy='15'%20r='3'%20fill='%23C8102E'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-size:contain;
}

/* Hidráulica — ondulação decorativa sutil no topo da página,
   remetendo a fluxo de água na cor da marca */
.jr-topic-hidraulica #MainZone{
  position:relative;
}
.jr-topic-hidraulica #MainZone::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:26px;
  pointer-events:none;
  opacity:.08;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20400%2020'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0,10%20C50,20%2050,0%20100,10%20C150,20%20150,0%20200,10%20C250,20%20250,0%20300,10%20C350,20%20350,0%20400,10'%20fill='none'%20stroke='%23C8102E'%20stroke-width='3'/%3E%3C/svg%3E");
  background-repeat:repeat-x;
  background-size:200px 20px;
}

@media (max-width:700px){
  .jr-topic-eletrica #MainZone::after{ width:130px; height:90px; }
}


/* =========================================================
   PATCH 01 — profissionalização, serviços principais e cards
   ========================================================= */
:root{
  --jr-radius:14px;
  --jr-shadow-soft:0 10px 30px rgba(20,24,27,.10);
  --jr-shadow-hover:0 18px 40px rgba(20,24,27,.18);
}

/* cards com altura consistente e CTA alinhado */
.jr-pcard{height:100%; min-height:100%;}
.jr-pcard__body{flex:1;}
.jr-pcard__cta{margin-top:auto; padding-top:.65rem;}
.jr-pcard-grid > *{min-width:0;}

/* atalhos do hero: agora representam as cinco áreas prioritárias */
#SmMainstageV1ServicesFeed{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(10px,1.5vw,20px);
}
#SmMainstageV1ServicesFeed .jr-hero-service{width:auto !important; min-width:0;}
#SmMainstageV1ServicesFeed .jr-hero-service a{
  min-height:132px;
  border-radius:var(--jr-radius);
  box-shadow:var(--jr-shadow-soft);
  border:1px solid rgba(39,45,48,.08);
}
.jr-service-icon{font-size:1rem;color:var(--jr-red);line-height:1;}
#SmMainstageV1ServicesFeed strong{line-height:1.25;}
@media(max-width:1279px){#SmMainstageV1ServicesFeed{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){#SmMainstageV1ServicesFeed{grid-template-columns:1fr;} #SmMainstageV1ServicesFeed .jr-hero-service a{min-height:92px;}}

/* menus suspensos: melhor leitura e largura para nomes longos */
#SmHeaderV1TopNav .fly-nv{min-width:290px; border-radius:0 0 12px 12px; overflow:hidden;}
#SmHeaderV1TopNav .fly-nv a{line-height:1.25;}
#SmHeaderV1TopNav > li > a{white-space:nowrap;}

/* efeitos gerais discretos para seções e cards do template */
#MainZone section header h2,
#MainZone section header strong{letter-spacing:-.01em;}
#MainZone .bx-sdw{transition:transform .22s ease,box-shadow .22s ease;}
#MainZone a.bx-sdw:hover,#MainZone .hvr_scl-lst:hover{box-shadow:var(--jr-shadow-hover);}

/* páginas detalhadas reutilizam o mesmo header/footer/template do site */
.jr-detail-hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(39,45,48,.08);
  background:
    radial-gradient(circle at 92% 20%,rgba(200,16,46,.11),transparent 28%),
    linear-gradient(135deg,rgba(255,255,255,1),rgba(248,248,248,1));
}
.jr-detail-hero .mn_tn{max-width:1000px;}
.jr-detail-hero h1{font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.02;margin:.35rem 0 1rem;max-width:850px;}
.jr-detail-hero p{font-size:clamp(1.05rem,2vw,1.35rem);max-width:760px;line-height:1.6;}
.jr-eyebrow{display:inline-flex;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.75rem;color:var(--jr-red);}
.jr-detail-body .mn_tn{max-width:1180px;}
.jr-detail-intro{max-width:800px;margin-bottom:2rem;}
.jr-detail-intro h2{font-size:clamp(1.6rem,3vw,2.4rem);}
.jr-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;align-items:stretch;}
.jr-detail-card{
  height:100%;
  padding:clamp(1.4rem,3vw,2rem);
  border:1px solid rgba(39,45,48,.09);
  border-radius:var(--jr-radius);
  background:#fff;
  box-shadow:var(--jr-shadow-soft);
  position:relative;
  overflow:hidden;
}
.jr-detail-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--jr-red);}
.jr-detail-card h2{font-size:1.35rem;margin:0 0 .75rem;color:var(--jr-charcoal);}
.jr-detail-card p,.jr-detail-card li{line-height:1.65;}
.jr-detail-card ul{margin:.8rem 0 0;padding-left:1.15rem;}
.jr-detail-card li+li{margin-top:.35rem;}
.jr-detail-cta{margin-top:2rem;padding:clamp(1.5rem,3vw,2.4rem);border-radius:var(--jr-radius);background:var(--jr-charcoal);color:#fff;box-shadow:var(--jr-shadow-soft);}
.jr-detail-cta strong{font-size:1.35rem;display:block;margin-bottom:.5rem;}
.jr-detail-cta p{max-width:760px;line-height:1.6;}
.jr-detail-cta .btn{margin-top:.6rem;}
.jr-topic-revestimentos #MainZone{background-image:linear-gradient(90deg,rgba(200,16,46,.035) 1px,transparent 1px),linear-gradient(rgba(200,16,46,.035) 1px,transparent 1px);background-size:28px 28px;}
@media(max-width:700px){.jr-detail-grid{grid-template-columns:1fr;}.jr-detail-hero h1{font-size:2.35rem;}}

/* foco visível melhora navegação por teclado sem mudar a identidade */
a:focus-visible,button:focus-visible{outline:3px solid rgba(200,16,46,.35);outline-offset:3px;}

/* =========================================================
   PATCH 02 — menu limpo, Instagram flutuante e visual mais vivo
   Remove o menu superior institucional, fortalece o menu principal
   e adiciona cores/efeitos conectados com pintura, elétrica,
   hidráulica, porcelanato e pequenas reformas.
   ========================================================= */

:root{
  --jr-ink:#1f2430;
  --jr-blue:#0d6efd;
  --jr-cyan:#1db9ff;
  --jr-gold:#f4b000;
  --jr-orange:#ff7a18;
  --jr-green:#1fa971;
  --jr-soft:#f7f8fc;
}

/* Header mais profissional e focado no menu principal */
#HeaderZone .ato.str.flx.f_clm.f_b{
  position:relative;
}

#HeaderZone .ato.str.flx.f_clm.f_b::before{
  content:"";
  position:absolute;
  inset:-4px 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,var(--jr-red) 0%,var(--jr-orange) 22%,var(--jr-gold) 45%,var(--jr-cyan) 72%,var(--jr-blue) 100%);
  opacity:.95;
}

#HeaderZone .nv,
#HeaderZone .mbl-nv{
  position:relative;
}

#SmHeaderV1TopNav{
  gap:.25rem;
}

#SmHeaderV1TopNav > li > a{
  position:relative;
  padding-left:18px;
  padding-right:18px;
  border-radius:999px;
  transition:transform .28s ease, color .28s ease, background .28s ease, box-shadow .28s ease;
}

#SmHeaderV1TopNav > li > a::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:10px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--jr-red),var(--jr-orange),var(--jr-cyan));
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .28s ease;
  opacity:.85;
}

#SmHeaderV1TopNav > li:hover > a,
#SmHeaderV1TopNav > li:focus-within > a{
  color:var(--jr-red-dark);
  background:rgba(200,16,46,.06);
  box-shadow:0 14px 24px rgba(31,36,48,.08);
  transform:translateY(-2px);
}

#SmHeaderV1TopNav > li:hover > a::after,
#SmHeaderV1TopNav > li:focus-within > a::after{
  transform:scaleX(1);
}

#HeaderZone .fly-nv,
#HeaderZone .mbl-mnu,
#HeaderZone .mbl-nv .lvl-2{
  border:1px solid rgba(13,110,253,.10);
  border-radius:22px;
  box-shadow:0 26px 60px rgba(31,36,48,.15);
}

#HeaderZone .fly-nv{
  overflow:hidden;
}

#HeaderZone .fly-nv ul li a,
#HeaderZone .mbl-nv ul li a{
  transition:background .22s ease, color .22s ease, padding-left .22s ease;
}

#HeaderZone .fly-nv ul li a:hover,
#HeaderZone .mbl-nv ul li a:hover,
#HeaderZone .mbl-nv ul li a:focus{
  background:linear-gradient(90deg, rgba(200,16,46,.08), rgba(29,185,255,.07));
  color:var(--jr-red-dark);
  padding-left:calc(1rem + 8px);
}

/* Botão flutuante do Instagram */
.jr-float-instagram{
  position:fixed;
  right:22px;
  bottom:26px;
  z-index:999;
  display:flex;
  align-items:center;
  gap:12px;
  padding:13px 16px 13px 14px;
  border-radius:999px;
  color:#fff;
  text-decoration:none;
  background:linear-gradient(135deg,#833ab4 0%,#c13584 38%,#fd1d1d 68%,#fcb045 100%);
  box-shadow:0 18px 36px rgba(131,58,180,.28), 0 8px 18px rgba(252,176,69,.22);
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.jr-float-instagram:hover,
.jr-float-instagram:focus{
  transform:translateY(-4px) scale(1.02);
  box-shadow:0 22px 42px rgba(131,58,180,.32), 0 10px 20px rgba(252,176,69,.26);
  filter:saturate(1.08);
}

.jr-float-instagram::before{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.28);
  opacity:.55;
  animation:jr-float-pulse 2.6s ease-in-out infinite;
}

.jr-float-instagram__icon{
  width:42px;
  height:42px;
  min-width:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.18);
  backdrop-filter:blur(6px);
}

.jr-float-instagram__icon svg{
  width:22px;
  height:22px;
  display:block;
}

.jr-float-instagram__label{
  font-weight:700;
  letter-spacing:.01em;
  white-space:nowrap;
}

@keyframes jr-float-pulse{
  0%,100%{ transform:scale(1); opacity:.45; }
  50%{ transform:scale(1.06); opacity:.18; }
}

/* Hero de serviços com mais personalidade */
#SmMainstageV1{
  position:relative;
}

#SmMainstageV1::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:110px;
  background:linear-gradient(180deg,rgba(255,255,255,0) 0%, rgba(247,248,252,.92) 100%);
  pointer-events:none;
}

#SmMainstageV1 .hero-bnr-cnt{
  position:relative;
  z-index:1;
}

#SmMainstageV1 .hero-bnr-cnt .fnt_t-big{
  text-shadow:0 10px 26px rgba(31,36,48,.18);
}

#SmMainstageV1 .hero-bnr-cnt .fnt_t-2{
  max-width:980px;
  margin-inline:auto;
}

#SmMainstageV1ServicesFeed .jr-hero-service{
  min-height:100%;
}

#SmMainstageV1ServicesFeed .jr-hero-service a{
  position:relative;
  height:100%;
  border:1px solid rgba(255,255,255,.7);
  border-radius:24px;
  box-shadow:0 18px 30px rgba(31,36,48,.10);
  overflow:hidden;
  isolation:isolate;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

#SmMainstageV1ServicesFeed .jr-hero-service a::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,250,255,.9));
  z-index:-2;
}

#SmMainstageV1ServicesFeed .jr-hero-service a::after{
  content:"";
  position:absolute;
  top:-35%;
  right:-10%;
  width:120px;
  height:120px;
  border-radius:44% 56% 55% 45%/52% 41% 59% 48%;
  opacity:.14;
  z-index:-1;
  transition:transform .28s ease, opacity .28s ease;
}

#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(1) a::after{ background:linear-gradient(135deg,var(--jr-red),var(--jr-orange)); }
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(2) a::after{ background:linear-gradient(135deg,var(--jr-gold),var(--jr-orange)); }
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(3) a::after{ background:linear-gradient(135deg,var(--jr-gold),#ffd867); }
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(4) a::after{ background:linear-gradient(135deg,var(--jr-cyan),var(--jr-blue)); }
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(5) a::after{ background:linear-gradient(135deg,#d3d8e2,#8d99ae); }

#SmMainstageV1ServicesFeed .jr-hero-service a:hover,
#SmMainstageV1ServicesFeed .jr-hero-service a:focus{
  transform:translateY(-8px);
  box-shadow:0 24px 36px rgba(31,36,48,.14);
  border-color:rgba(200,16,46,.20);
}

#SmMainstageV1ServicesFeed .jr-hero-service a:hover::after,
#SmMainstageV1ServicesFeed .jr-hero-service a:focus::after{
  transform:scale(1.1) rotate(8deg);
  opacity:.22;
}

#SmMainstageV1ServicesFeed .jr-service-icon{
  display:inline-grid;
  place-items:center;
  width:54px;
  height:54px;
  margin:0 auto;
  border-radius:18px;
  font-size:1.2rem;
  line-height:1;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.9), 0 10px 20px rgba(31,36,48,.08);
}

#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(1) .jr-service-icon{ background:linear-gradient(135deg,rgba(200,16,46,.12),rgba(255,122,24,.16)); color:var(--jr-red-dark); }
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(2) .jr-service-icon{ background:linear-gradient(135deg,rgba(244,176,0,.14),rgba(255,122,24,.18)); color:#7a5700; }
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(3) .jr-service-icon{ background:linear-gradient(135deg,rgba(255,215,103,.35),rgba(244,176,0,.18)); color:#8f6700; }
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(4) .jr-service-icon{ background:linear-gradient(135deg,rgba(29,185,255,.14),rgba(13,110,253,.14)); color:#0a5cc2; }
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(5) .jr-service-icon{ background:linear-gradient(135deg,rgba(141,153,174,.18),rgba(211,216,226,.32)); color:#4a5463; }

#SmMainstageV1ServicesFeed .jr-hero-service strong{
  font-size:1.02rem;
}

/* Cards e blocos com mais cor/vida, sem trocar o layout-base */
.crd,
[id*="Card"] .bg-bx,
.sd-nv.v1 a.fnt_sd-nv,
.main_cnt aside .bg-bx,
#MainZone .cnt.v1 .bg-bx,
#MainZone .cnt.v2 .bg-bx,
#MainZone .cnt.v3 .bg-bx{
  border-radius:24px;
  border:1px solid rgba(31,36,48,.06);
  box-shadow:0 12px 30px rgba(31,36,48,.07);
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  overflow:hidden;
}

.crd:hover,
[id*="Card"] .bg-bx:hover,
.sd-nv.v1 a.fnt_sd-nv:hover,
.main_cnt aside .bg-bx:hover,
#MainZone .cnt.v1 .bg-bx:hover,
#MainZone .cnt.v2 .bg-bx:hover,
#MainZone .cnt.v3 .bg-bx:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 36px rgba(31,36,48,.12);
  border-color:rgba(13,110,253,.15);
}

/* Títulos de seção com traço colorido */
section header > .fnt_t-k,
#MainZone .fnt_t-k.bdr_bt{
  position:relative;
  border-bottom-color:rgba(31,36,48,.08);
}

section header > .fnt_t-k::after,
#MainZone .fnt_t-k.bdr_bt::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:78px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--jr-red),var(--jr-orange),var(--jr-cyan));
}

/* Blocos de destaque do conteúdo */
.txt-hlt,
.cnt-stl .txt-hlt{
  background:linear-gradient(135deg, rgba(200,16,46,.06), rgba(29,185,255,.07));
  border:1px solid rgba(13,110,253,.08);
  box-shadow:0 10px 26px rgba(31,36,48,.05);
}

/* Botões mais vivos */
.btn.v1,
.btn.v2{
  box-shadow:0 10px 26px rgba(31,36,48,.10);
  transition:transform .24s ease, box-shadow .24s ease, filter .24s ease;
}

.btn.v1:hover,
.btn.v2:hover,
.btn.v1:focus,
.btn.v2:focus{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(31,36,48,.15);
  filter:saturate(1.04);
}

/* Rodapé/links rápidos com hover mais claro */
footer a,
#FooterZone a{
  transition:color .2s ease, opacity .2s ease;
}

footer a:hover,
#FooterZone a:hover{
  color:var(--jr-red);
}

@media (max-width:1279px){
  #HeaderZone .ato.str.flx.f_clm.f_b::before{ inset:0 0 auto 0; }
  #SmHeaderV1TopNav > li > a{ padding-left:14px; padding-right:14px; }
}

@media (max-width:700px){
  .jr-float-instagram{
    right:14px;
    bottom:18px;
    padding:12px;
  }

  .jr-float-instagram__label{
    display:none;
  }

  .jr-float-instagram__icon{
    width:44px;
    height:44px;
    min-width:44px;
  }

  #SmMainstageV1::after{
    height:70px;
  }

  #SmMainstageV1ServicesFeed .jr-hero-service a{
    border-radius:18px;
  }
}

/* =========================================================
   PATCH 03 — revisão completa de conteúdo, UX e consistência
   ========================================================= */

/* Melhor ritmo vertical e largura de leitura nas páginas internas */
#MainZone .main_cnt .cnt-stl{
  max-width:920px;
}

#MainZone .cnt-stl > h2,
#MainZone .cnt-stl > h3{
  text-wrap:balance;
}

#MainZone .cnt-stl p{
  max-width:78ch;
}

/* Cards com altura consistente e CTA alinhado */
.ui-repeater > li,
[class*="crd"] > li,
#SmMainstageV1ServicesFeed > li{
  align-items:stretch;
}

.ui-repeater > li > a,
.ui-repeater > li > article,
.ui-repeater > li > div[class*="bg-bx"],
.crd,
.jr-hero-service > a{
  min-height:100%;
}

.crd .btn,
.crd [class*="btn-con"],
.ui-repeater article .btn,
.ui-repeater article [class*="btn-con"]{
  margin-top:auto;
}

/* Acentos visuais por tipo de serviço */
.jr-topic-pintura #MainZone{
  --jr-topic-accent:var(--jr-red);
  --jr-topic-soft:rgba(200,16,46,.08);
}
.jr-topic-eletrica #MainZone{
  --jr-topic-accent:var(--jr-gold);
  --jr-topic-soft:rgba(244,176,0,.12);
}
.jr-topic-hidraulica #MainZone{
  --jr-topic-accent:var(--jr-cyan);
  --jr-topic-soft:rgba(29,185,255,.10);
}
.jr-topic-reformas #MainZone{
  --jr-topic-accent:var(--jr-orange);
  --jr-topic-soft:rgba(255,122,24,.09);
}
.jr-topic-revestimentos #MainZone{
  --jr-topic-accent:#758195;
  --jr-topic-soft:rgba(117,129,149,.10);
}

body[class*="jr-topic-"] #MainZone .cnt-stl h2 strong,
body[class*="jr-topic-"] #MainZone .cnt-stl h3{
  position:relative;
}

body[class*="jr-topic-"] #MainZone .txt-hlt{
  border-left:4px solid var(--jr-topic-accent,var(--jr-red));
  background:linear-gradient(135deg,var(--jr-topic-soft,rgba(200,16,46,.06)),rgba(255,255,255,.88));
}

/* Faixa de diferenciais na home */
.jr-trust-strip{
  position:relative;
  z-index:3;
  margin-top:-28px;
  padding:0 0 34px;
}

.jr-trust-strip ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.jr-trust-strip li{
  min-height:118px;
  padding:22px 20px;
  border-radius:22px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(31,36,48,.07);
  box-shadow:0 18px 36px rgba(31,36,48,.09);
  display:flex;
  flex-direction:column;
  justify-content:center;
  position:relative;
  overflow:hidden;
}

.jr-trust-strip li::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:5px;
  border-radius:22px 0 0 22px;
}

.jr-trust-strip li:nth-child(1)::before{background:var(--jr-red)}
.jr-trust-strip li:nth-child(2)::before{background:var(--jr-orange)}
.jr-trust-strip li:nth-child(3)::before{background:var(--jr-cyan)}
.jr-trust-strip li:nth-child(4)::before{background:var(--jr-gold)}

.jr-trust-strip strong{
  font-size:1rem;
  margin-bottom:5px;
  color:var(--jr-ink);
}

.jr-trust-strip span{
  font-size:.9rem;
  line-height:1.45;
  color:rgba(31,36,48,.72);
}

/* CTA honesto para páginas sem backend de formulário */
.jr-contact-cta{
  position:relative;
  overflow:hidden;
}

.jr-contact-cta::before,
.jr-contact-cta::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}

.jr-contact-cta::before{
  width:420px;
  height:420px;
  right:-150px;
  top:-190px;
  background:radial-gradient(circle,rgba(29,185,255,.22),rgba(29,185,255,0) 70%);
}

.jr-contact-cta::after{
  width:360px;
  height:360px;
  left:-160px;
  bottom:-200px;
  background:radial-gradient(circle,rgba(200,16,46,.20),rgba(200,16,46,0) 70%);
}

.jr-contact-cta__box{
  position:relative;
  z-index:1;
  max-width:920px;
  margin:auto;
  padding:48px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.07);
  box-shadow:0 24px 60px rgba(0,0,0,.18);
  backdrop-filter:blur(6px);
}

.jr-contact-cta__eyebrow{
  display:inline-block;
  margin-bottom:12px;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.jr-contact-cta__box h2{
  margin-bottom:14px;
}

.jr-contact-cta__box p{
  max-width:70ch;
  margin-bottom:24px;
}

.jr-contact-cta__actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:18px;
}

.jr-contact-cta__secondary{
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:5px;
}

/* Mapa do site mais escaneável */
.jr-sitemap-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin-top:30px;
}

.jr-sitemap-grid section{
  padding:26px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(31,36,48,.07);
  box-shadow:0 14px 30px rgba(31,36,48,.06);
}

.jr-sitemap-grid h2{
  margin-top:0 !important;
}

.jr-sitemap-grid ul{
  margin-bottom:0 !important;
}

/* Reduz movimentos quando o sistema solicitar */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}

@media (max-width:1000px){
  .jr-trust-strip ul,
  .jr-sitemap-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:700px){
  .jr-trust-strip{
    margin-top:-12px;
    padding-bottom:24px;
  }
  .jr-trust-strip ul,
  .jr-sitemap-grid{
    grid-template-columns:1fr;
  }
  .jr-trust-strip li{
    min-height:auto;
  }
  .jr-contact-cta__box{
    padding:30px 24px;
    border-radius:22px;
  }
}

/* FAQ limpa e responsiva */
.jr-faq-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:30px;
}
.jr-faq-grid article{
  padding:26px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(31,36,48,.07);
  box-shadow:0 12px 28px rgba(31,36,48,.06);
}
.jr-faq-grid article h3{
  margin:0 0 10px !important;
  padding:0 !important;
  border:0 !important;
  font-size:1.08rem;
}
.jr-faq-grid article p{
  margin:0 !important;
}
@media(max-width:700px){.jr-faq-grid{grid-template-columns:1fr;}}

/* =========================================================
   PATCH 04 — menu unificado + contatos flutuantes corrigidos
   ========================================================= */

/* O menu de todas as páginas ativas agora usa o mesmo HeaderZone
   do index.html. Estes ajustes garantem consistência visual. */
#HeaderZone{
  position:relative;
  z-index:200;
}

#HeaderZone .hdr.v1{
  background:#fff;
}

#HeaderZone .nv{
  width:100%;
}

#HeaderZone #SmHeaderV1TopNav{
  align-items:center;
  justify-content:flex-end;
  flex-wrap:nowrap;
}

#HeaderZone #SmHeaderV1TopNav > li > a{
  white-space:nowrap;
}

/* Contatos flutuantes: um único bloco, alinhado e sem sobreposição. */
.jr-floating-contact{
  position:fixed;
  right:22px;
  bottom:24px;
  z-index:1000;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
  pointer-events:none;
}

.jr-floating-contact .jr-float-contact{
  position:relative !important;
  right:auto !important;
  bottom:auto !important;
  z-index:auto !important;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  min-width:156px;
  height:58px;
  padding:8px 15px 8px 9px;
  border-radius:999px;
  color:#fff;
  text-decoration:none;
  box-shadow:0 12px 28px rgba(31,36,48,.20);
  border:1px solid rgba(255,255,255,.28);
  pointer-events:auto;
  isolation:isolate;
  overflow:hidden;
  transform:translateZ(0);
  transition:transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.jr-floating-contact .jr-float-contact::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.14);
  opacity:1;
  animation:none;
}

.jr-floating-contact .jr-float-contact::after{
  content:"";
  position:absolute;
  width:90px;
  height:90px;
  right:-42px;
  top:-48px;
  border-radius:50%;
  background:rgba(255,255,255,.13);
  pointer-events:none;
  z-index:-1;
}

.jr-floating-contact .jr-float-contact:hover,
.jr-floating-contact .jr-float-contact:focus-visible{
  transform:translateY(-3px) scale(1.025);
  box-shadow:0 18px 34px rgba(31,36,48,.26);
  filter:saturate(1.08);
  outline:none;
}

.jr-floating-contact .jr-float-contact:focus-visible{
  box-shadow:0 0 0 4px rgba(255,255,255,.9), 0 0 0 7px rgba(31,36,48,.22), 0 18px 34px rgba(31,36,48,.24);
}

.jr-floating-contact .jr-float-contact__icon{
  width:42px;
  height:42px;
  min-width:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.18);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
  backdrop-filter:blur(5px);
}

.jr-floating-contact .jr-float-contact__icon svg{
  display:block;
  width:23px;
  height:23px;
}

.jr-floating-contact .jr-float-contact__label{
  display:block;
  font-weight:800;
  font-size:.92rem;
  letter-spacing:.01em;
  line-height:1;
  white-space:nowrap;
}

.jr-floating-contact .jr-float-whatsapp{
  background:linear-gradient(135deg,#20bd5a 0%,#25d366 52%,#119447 100%);
}

.jr-floating-contact .jr-float-instagram{
  background:linear-gradient(135deg,#833ab4 0%,#c13584 36%,#fd1d1d 68%,#fcb045 100%);
}

/* Em telas menores os balões viram botões circulares para não cobrir conteúdo. */
@media (max-width:700px){
  .jr-floating-contact{
    right:14px;
    bottom:16px;
    gap:9px;
  }

  .jr-floating-contact .jr-float-contact{
    min-width:0;
    width:54px;
    height:54px;
    padding:6px;
    justify-content:center;
  }

  .jr-floating-contact .jr-float-contact__icon{
    width:42px;
    height:42px;
    min-width:42px;
  }

  .jr-floating-contact .jr-float-contact__label{
    display:none;
  }
}

@media (prefers-reduced-motion:reduce){
  .jr-floating-contact .jr-float-contact{
    transition:none;
  }
}

/* =========================================================
   PATCH 05 — contato flutuante compacto + header global
   Novo desenho: botões circulares com ícones, aro branco,
   microanimação e legenda lateral no hover/foco.
   ========================================================= */

.jr-floating-contact{
  right:24px;
  bottom:24px;
  gap:14px;
  align-items:center;
}

.jr-floating-contact .jr-float-contact{
  width:62px;
  min-width:62px;
  height:62px;
  padding:0;
  gap:0;
  justify-content:center;
  border-radius:50%;
  border:4px solid rgba(255,255,255,.96);
  overflow:visible;
  box-shadow:0 10px 26px rgba(18,24,33,.22), 0 2px 8px rgba(18,24,33,.14);
  transform:translateZ(0);
}

.jr-floating-contact .jr-float-contact::before{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.52);
  background:transparent;
  opacity:.68;
  transition:transform .25s ease, opacity .25s ease;
}

.jr-floating-contact .jr-float-contact::after{
  content:attr(title);
  position:absolute;
  right:calc(100% + 12px);
  top:50%;
  width:auto;
  height:auto;
  transform:translate(8px,-50%);
  padding:8px 11px;
  border-radius:10px;
  background:#fff;
  color:#20262f;
  font-family:var(--fnt-m);
  font-size:.78rem;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 8px 22px rgba(18,24,33,.16);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:4;
  transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.jr-floating-contact .jr-float-contact:hover,
.jr-floating-contact .jr-float-contact:focus-visible{
  transform:translateY(-3px) scale(1.06);
  box-shadow:0 15px 30px rgba(18,24,33,.26), 0 3px 10px rgba(18,24,33,.18);
  filter:saturate(1.06);
}

.jr-floating-contact .jr-float-contact:hover::before,
.jr-floating-contact .jr-float-contact:focus-visible::before{
  transform:scale(1.08);
  opacity:.25;
}

.jr-floating-contact .jr-float-contact:hover::after,
.jr-floating-contact .jr-float-contact:focus-visible::after{
  opacity:1;
  visibility:visible;
  transform:translate(0,-50%);
}

.jr-floating-contact .jr-float-contact__icon{
  width:100%;
  height:100%;
  min-width:0;
  border-radius:50%;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}

.jr-floating-contact .jr-float-contact__icon svg{
  width:29px;
  height:29px;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.12));
}

.jr-floating-contact .jr-float-contact__label{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.jr-floating-contact .jr-float-whatsapp{
  background:#25d366;
}

.jr-floating-contact .jr-float-whatsapp::before{
  border-color:rgba(37,211,102,.32);
}

.jr-floating-contact .jr-float-instagram{
  background:radial-gradient(circle at 30% 110%,#ffd600 0 18%,#ff7a00 28%,#ff0169 52%,#d300c5 72%,#7638fa 100%);
}

.jr-floating-contact .jr-float-instagram::before{
  border-color:rgba(211,0,197,.28);
}

/* Marca sutil de presença sem efeito chamativo contínuo. */
.jr-floating-contact .jr-float-whatsapp{
  animation:jr-contact-arrive .42s ease-out both;
}
.jr-floating-contact .jr-float-instagram{
  animation:jr-contact-arrive .42s .08s ease-out both;
}

@keyframes jr-contact-arrive{
  from{opacity:0;transform:translateX(14px) scale(.92)}
  to{opacity:1;transform:translateX(0) scale(1)}
}

/* O header global herda exatamente o mesmo acabamento da Home. */
#HeaderZone{
  position:relative;
  z-index:100;
}

@media (max-width:700px){
  .jr-floating-contact{
    right:14px;
    bottom:16px;
    gap:10px;
  }

  .jr-floating-contact .jr-float-contact{
    width:54px;
    min-width:54px;
    height:54px;
    padding:0;
    border-width:3px;
  }

  .jr-floating-contact .jr-float-contact__icon{
    width:100%;
    height:100%;
    min-width:0;
  }

  .jr-floating-contact .jr-float-contact__icon svg{
    width:25px;
    height:25px;
  }

  .jr-floating-contact .jr-float-contact::after{
    display:none;
  }
}

@media (prefers-reduced-motion:reduce){
  .jr-floating-contact .jr-float-whatsapp,
  .jr-floating-contact .jr-float-instagram{
    animation:none;
  }
}

/* =========================================================
   PATCH 06 — balões com nome + cards com imagem na home
   ========================================================= */

/* Balões de contato: novo estilo em formato de etiqueta, com nome visível */
.jr-floating-contact{
  position:fixed !important;
  right:18px !important;
  bottom:22px !important;
  z-index:999 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:12px !important;
}

.jr-floating-contact .jr-float-contact{
  position:relative !important;
  min-width:176px !important;
  height:60px !important;
  padding:10px 18px 10px 12px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  text-decoration:none !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.45) !important;
  background:#1f2430 !important;
  box-shadow:0 16px 36px rgba(16,22,34,.18) !important;
  overflow:hidden !important;
  isolation:isolate !important;
  transform:translateX(0) !important;
  transition:transform .24s ease, box-shadow .24s ease, filter .24s ease !important;
}

.jr-floating-contact .jr-float-contact::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.03)) !important;
  z-index:-2 !important;
}

.jr-floating-contact .jr-float-contact::after{
  content:"" !important;
  position:absolute !important;
  width:84px !important;
  height:84px !important;
  border-radius:50% !important;
  right:-18px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  opacity:.22 !important;
  z-index:-1 !important;
  transition:transform .28s ease, opacity .28s ease !important;
}

.jr-floating-contact .jr-float-contact:hover,
.jr-floating-contact .jr-float-contact:focus-visible{
  transform:translateX(-6px) !important;
  box-shadow:0 22px 44px rgba(16,22,34,.25) !important;
  filter:saturate(1.04) !important;
}

.jr-floating-contact .jr-float-contact:hover::after,
.jr-floating-contact .jr-float-contact:focus-visible::after{
  transform:translateY(-50%) scale(1.12) !important;
  opacity:.32 !important;
}

.jr-floating-contact .jr-float-contact__icon{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  background:rgba(255,255,255,.20) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.32) !important;
  backdrop-filter:blur(8px) !important;
}

.jr-floating-contact .jr-float-contact__icon svg{
  width:20px !important;
  height:20px !important;
  display:block !important;
}

.jr-floating-contact .jr-float-contact__label{
  display:block !important;
  font-size:1rem !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
}

.jr-floating-contact .jr-float-whatsapp{
  background:linear-gradient(135deg, #12b35b 0%, #27d067 100%) !important;
}

.jr-floating-contact .jr-float-whatsapp::after{
  background:radial-gradient(circle, rgba(255,255,255,.65), rgba(255,255,255,0) 70%) !important;
}

.jr-floating-contact .jr-float-instagram{
  background:linear-gradient(135deg, #833ab4 0%, #c13584 40%, #fd1d1d 72%, #fcb045 100%) !important;
}

.jr-floating-contact .jr-float-instagram::after{
  background:radial-gradient(circle, rgba(255,255,255,.62), rgba(255,255,255,0) 72%) !important;
}

/* Cards principais da home com imagem real e hover estável */
#SmMainstageV1ServicesFeed{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:stretch !important;
}

#SmMainstageV1ServicesFeed > li{
  min-width:0 !important;
  align-self:stretch !important;
  transform:none !important;
}

#SmMainstageV1ServicesFeed .jr-service-card{
  position:relative !important;
  display:block !important;
  min-height:170px !important;
  height:100% !important;
  padding:0 !important;
  border-radius:26px !important;
  overflow:hidden !important;
  isolation:isolate !important;
  border:1px solid rgba(31,36,48,.10) !important;
  box-shadow:0 16px 34px rgba(18,22,34,.10) !important;
  background:#dfe3ea !important;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease !important;
}

#SmMainstageV1ServicesFeed .jr-service-card:hover,
#SmMainstageV1ServicesFeed .jr-service-card:focus-visible{
  transform:translateY(-6px) !important;
  box-shadow:0 22px 44px rgba(18,22,34,.16) !important;
  border-color:rgba(200,16,46,.18) !important;
}

#SmMainstageV1ServicesFeed .jr-service-card *{
  pointer-events:none;
}

#SmMainstageV1ServicesFeed .jr-service-media{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
}

#SmMainstageV1ServicesFeed .jr-service-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  transition:transform .35s ease !important;
}

#SmMainstageV1ServicesFeed .jr-service-card:hover .jr-service-media img,
#SmMainstageV1ServicesFeed .jr-service-card:focus-visible .jr-service-media img{
  transform:scale(1.06) !important;
}

#SmMainstageV1ServicesFeed .jr-service-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg, rgba(22,27,39,.10) 0%, rgba(22,27,39,.22) 42%, rgba(22,27,39,.72) 100%) !important;
  z-index:1 !important;
}

#SmMainstageV1ServicesFeed .jr-service-card::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  background:linear-gradient(135deg, rgba(255,255,255,.20), transparent 42%) !important;
  z-index:2 !important;
}

#SmMainstageV1ServicesFeed .jr-service-overlay{
  position:relative !important;
  z-index:3 !important;
  min-height:170px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  align-items:flex-start !important;
  gap:12px !important;
  padding:18px !important;
}

#SmMainstageV1ServicesFeed .jr-service-copy{
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
}

#SmMainstageV1ServicesFeed .jr-service-kicker{
  color:rgba(255,255,255,.84) !important;
  font-size:.78rem !important;
  font-weight:700 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
}

#SmMainstageV1ServicesFeed .jr-service-overlay strong{
  display:block !important;
  color:#fff !important;
  font-size:1.05rem !important;
  line-height:1.2 !important;
  text-shadow:0 4px 14px rgba(0,0,0,.28) !important;
}

#SmMainstageV1ServicesFeed .jr-service-icon{
  width:44px !important;
  height:44px !important;
  margin:0 !important;
  display:grid !important;
  place-items:center !important;
  border-radius:16px !important;
  font-size:1rem !important;
  color:#fff !important;
  background:rgba(255,255,255,.18) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.38), 0 10px 24px rgba(0,0,0,.14) !important;
  backdrop-filter:blur(6px) !important;
}

#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(1) .jr-service-icon{background:rgba(200,16,46,.78) !important;}
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(2) .jr-service-icon{background:rgba(255,122,24,.82) !important;}
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(3) .jr-service-icon{background:rgba(244,176,0,.84) !important;}
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(4) .jr-service-icon{background:rgba(29,185,255,.82) !important;}
#SmMainstageV1ServicesFeed .jr-hero-service:nth-child(5) .jr-service-icon{background:rgba(117,129,149,.86) !important;}

/* Neutraliza efeitos herdados que faziam todos os cards parecerem mexer */
#SmMainstageV1ServicesFeed .jr-hero-service,
#SmMainstageV1ServicesFeed .jr-hero-service:hover,
#SmMainstageV1ServicesFeed .jr-hero-service:focus-within{
  box-shadow:none !important;
}

#SmMainstageV1ServicesFeed .hvr_scl-lst,
#SmMainstageV1ServicesFeed .hvr_scl-up,
#SmMainstageV1ServicesFeed .hvr_scl-dwn{
  transform:none !important;
}

@media (max-width:1279px){
  #SmMainstageV1ServicesFeed{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media (max-width:760px){
  .jr-floating-contact{
    right:12px !important;
    bottom:16px !important;
    gap:10px !important;
  }

  .jr-floating-contact .jr-float-contact{
    min-width:148px !important;
    height:52px !important;
    padding:8px 14px 8px 10px !important;
    gap:10px !important;
  }

  .jr-floating-contact .jr-float-contact__label{
    font-size:.92rem !important;
  }

  .jr-floating-contact .jr-float-contact__icon{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
  }

  .jr-floating-contact .jr-float-contact__icon svg{
    width:18px !important;
    height:18px !important;
  }

  #SmMainstageV1ServicesFeed{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  #SmMainstageV1ServicesFeed .jr-service-card,
  #SmMainstageV1ServicesFeed .jr-service-overlay{
    min-height:132px !important;
  }

  #SmMainstageV1ServicesFeed .jr-service-overlay{
    padding:16px !important;
    gap:10px !important;
  }
}

/* =========================================================
   PATCH 07 — rótulo visível nos balões + mais cor por sessão
   ========================================================= */

/* ---------- Tema por tipo de página ---------- */
body.jr-topic-institucional{
  --jr-topic-accent:#c8102e;
  --jr-topic-accent-2:#ff7a18;
  --jr-topic-soft:rgba(200,16,46,.08);
  --jr-topic-glow:rgba(255,122,24,.14);
}
body.jr-topic-pintura{
  --jr-topic-accent:#c8102e;
  --jr-topic-accent-2:#ff7a18;
  --jr-topic-soft:rgba(200,16,46,.08);
  --jr-topic-glow:rgba(255,122,24,.16);
}
body.jr-topic-reformas{
  --jr-topic-accent:#ff7a18;
  --jr-topic-accent-2:#f4b000;
  --jr-topic-soft:rgba(255,122,24,.08);
  --jr-topic-glow:rgba(244,176,0,.14);
}
body.jr-topic-eletrica{
  --jr-topic-accent:#f4b000;
  --jr-topic-accent-2:#ffcf2f;
  --jr-topic-soft:rgba(244,176,0,.12);
  --jr-topic-glow:rgba(255,207,47,.18);
}
body.jr-topic-hidraulica{
  --jr-topic-accent:#12aeea;
  --jr-topic-accent-2:#0d6efd;
  --jr-topic-soft:rgba(18,174,234,.10);
  --jr-topic-glow:rgba(13,110,253,.14);
}
body.jr-topic-revestimentos{
  --jr-topic-accent:#7f8798;
  --jr-topic-accent-2:#b0b7c4;
  --jr-topic-soft:rgba(127,135,152,.10);
  --jr-topic-glow:rgba(176,183,196,.16);
}

body[class*="jr-topic-"] #MainZone{
  position:relative;
  background:
    radial-gradient(circle at 100% 0%, var(--jr-topic-glow, rgba(255,122,24,.12)), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(247,248,252,.98) 100%);
}

body[class*="jr-topic-"] #MainZone::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:5px;
  background:linear-gradient(90deg, var(--jr-topic-accent,var(--jr-red)), var(--jr-topic-accent-2,var(--jr-orange)));
  opacity:.92;
  z-index:1;
}

body[class*="jr-topic-"] .jr-detail-hero,
body[class*="jr-topic-"] #MainZone .bg-bx,
body[class*="jr-topic-"] #MainZone .txt-hlt,
body[class*="jr-topic-"] #MainZone .crd,
body[class*="jr-topic-"] #MainZone aside .bg-bx{
  border-color:color-mix(in srgb, var(--jr-topic-accent,var(--jr-red)) 15%, rgba(31,36,48,.08)) !important;
}

body[class*="jr-topic-"] .jr-detail-hero{
  background:
    radial-gradient(circle at 92% 18%, color-mix(in srgb, var(--jr-topic-accent-2,var(--jr-orange)) 26%, transparent) 0%, transparent 28%),
    radial-gradient(circle at 8% 4%, color-mix(in srgb, var(--jr-topic-accent,var(--jr-red)) 10%, transparent) 0%, transparent 24%),
    linear-gradient(135deg,#ffffff 0%, #f7f8fc 100%) !important;
}

body[class*="jr-topic-"] .jr-detail-hero .jr-eyebrow,
body[class*="jr-topic-"] #MainZone h2 strong,
body[class*="jr-topic-"] #MainZone h3,
body[class*="jr-topic-"] #MainZone .fnt_t-k,
body[class*="jr-topic-"] #MainZone .fnt_t-6{
  color:var(--jr-topic-accent,var(--jr-red));
}

body[class*="jr-topic-"] #MainZone section header > .fnt_t-k::after,
body[class*="jr-topic-"] #MainZone .fnt_t-k.bdr_bt::after,
body[class*="jr-topic-"] #MainZone .jr-detail-card::before{
  background:linear-gradient(90deg, var(--jr-topic-accent,var(--jr-red)), var(--jr-topic-accent-2,var(--jr-orange))) !important;
}

body[class*="jr-topic-"] #MainZone .txt-hlt{
  border-left:4px solid var(--jr-topic-accent,var(--jr-red)) !important;
  background:linear-gradient(135deg, var(--jr-topic-soft,rgba(200,16,46,.08)), rgba(255,255,255,.95)) !important;
  box-shadow:0 12px 26px rgba(31,36,48,.05);
}

body[class*="jr-topic-"] #MainZone .bg-bx:hover,
body[class*="jr-topic-"] #MainZone .crd:hover,
body[class*="jr-topic-"] #MainZone aside .bg-bx:hover{
  box-shadow:0 22px 40px color-mix(in srgb, var(--jr-topic-accent,var(--jr-red)) 12%, rgba(31,36,48,.14)) !important;
}

body[class*="jr-topic-"] .btn.v1,
body[class*="jr-topic-"] .btn.v2{
  border-color:transparent !important;
}

body.jr-topic-pintura .btn.v1,
body.jr-topic-institucional .btn.v1{
  background:linear-gradient(135deg,#c8102e 0%,#ff7a18 100%) !important;
}
body.jr-topic-reformas .btn.v1{
  background:linear-gradient(135deg,#ff7a18 0%,#f4b000 100%) !important;
}
body.jr-topic-eletrica .btn.v1{
  background:linear-gradient(135deg,#d99800 0%,#ffc72c 100%) !important;
  color:#1f2430 !important;
}
body.jr-topic-hidraulica .btn.v1{
  background:linear-gradient(135deg,#12aeea 0%,#0d6efd 100%) !important;
}
body.jr-topic-revestimentos .btn.v1{
  background:linear-gradient(135deg,#6f7788 0%,#a5adbb 100%) !important;
}

body[class*="jr-topic-"] .btn.v1:hover,
body[class*="jr-topic-"] .btn.v2:hover{
  filter:saturate(1.05) brightness(1.02);
}

/* detalhes decorativos adicionais por sessão */
body.jr-topic-pintura #MainZone .main_cnt::before,
body.jr-topic-reformas #MainZone .main_cnt::before,
body.jr-topic-eletrica #MainZone .main_cnt::before,
body.jr-topic-hidraulica #MainZone .main_cnt::before,
body.jr-topic-revestimentos #MainZone .main_cnt::before,
body.jr-topic-institucional #MainZone .main_cnt::before{
  content:"";
  position:absolute;
  top:-10px;
  right:18px;
  width:118px;
  height:118px;
  border-radius:38px;
  opacity:.08;
  pointer-events:none;
  z-index:0;
}
body.jr-topic-pintura #MainZone .main_cnt::before,
body.jr-topic-institucional #MainZone .main_cnt::before{
  background:radial-gradient(circle at 35% 35%, #ff7a18, #c8102e 70%);
}
body.jr-topic-reformas #MainZone .main_cnt::before{
  background:radial-gradient(circle at 35% 35%, #f4b000, #ff7a18 70%);
}
body.jr-topic-eletrica #MainZone .main_cnt::before{
  background:radial-gradient(circle at 35% 35%, #ffcf2f, #d99800 70%);
}
body.jr-topic-hidraulica #MainZone .main_cnt::before{
  background:radial-gradient(circle at 35% 35%, #0d6efd, #12aeea 70%);
}
body.jr-topic-revestimentos #MainZone .main_cnt::before{
  background:radial-gradient(circle at 35% 35%, #b0b7c4, #7f8798 70%);
}

body.jr-topic-eletrica #MainZone .cnt-stl ul li::marker,
body.jr-topic-hidraulica #MainZone .cnt-stl ul li::marker,
body.jr-topic-reformas #MainZone .cnt-stl ul li::marker,
body.jr-topic-pintura #MainZone .cnt-stl ul li::marker,
body.jr-topic-revestimentos #MainZone .cnt-stl ul li::marker,
body.jr-topic-institucional #MainZone .cnt-stl ul li::marker{
  color:var(--jr-topic-accent,var(--jr-red));
}

/* ---------- Balões flutuantes corrigidos com nome sempre visível ---------- */
.jr-floating-contact{
  right:18px !important;
  bottom:18px !important;
  align-items:flex-end !important;
  gap:12px !important;
}

.jr-floating-contact .jr-float-contact{
  min-width:196px !important;
  width:auto !important;
  height:58px !important;
  padding:7px 16px 7px 8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  border-radius:999px !important;
  border:2px solid rgba(255,255,255,.78) !important;
  overflow:hidden !important;
  box-shadow:0 18px 34px rgba(18,24,33,.20), 0 4px 10px rgba(18,24,33,.08) !important;
}

.jr-floating-contact .jr-float-contact::before{
  inset:0 !important;
  border-radius:inherit !important;
  background:linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.04)) !important;
  border:none !important;
  opacity:1 !important;
}

.jr-floating-contact .jr-float-contact::after{
  content:"" !important;
  position:absolute !important;
  right:-26px !important;
  top:50% !important;
  width:96px !important;
  height:96px !important;
  transform:translateY(-50%) !important;
  border-radius:50% !important;
  opacity:.26 !important;
}

.jr-floating-contact .jr-float-contact__icon{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  background:rgba(255,255,255,.22) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.34) !important;
}

.jr-floating-contact .jr-float-contact__icon svg{
  width:21px !important;
  height:21px !important;
}

.jr-floating-contact .jr-float-contact__label{
  position:static !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  clip:auto !important;
  overflow:visible !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  min-height:38px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.18) !important;
  color:#fff !important;
  font-size:.98rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
  text-shadow:none !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18) !important;
}

.jr-floating-contact .jr-float-contact:hover,
.jr-floating-contact .jr-float-contact:focus-visible{
  transform:translateX(-5px) !important;
  box-shadow:0 24px 42px rgba(18,24,33,.24), 0 4px 12px rgba(18,24,33,.10) !important;
}

.jr-floating-contact .jr-float-whatsapp{
  background:linear-gradient(135deg,#18b95c 0%,#25d366 100%) !important;
}
.jr-floating-contact .jr-float-whatsapp::after{
  background:radial-gradient(circle, rgba(255,255,255,.56), rgba(255,255,255,0) 72%) !important;
}
.jr-floating-contact .jr-float-instagram{
  background:linear-gradient(135deg,#833ab4 0%,#c13584 40%,#fd1d1d 76%,#fcb045 100%) !important;
}
.jr-floating-contact .jr-float-instagram::after{
  background:radial-gradient(circle, rgba(255,255,255,.54), rgba(255,255,255,0) 72%) !important;
}

@media (max-width:760px){
  .jr-floating-contact{
    right:10px !important;
    bottom:14px !important;
    gap:10px !important;
  }
  .jr-floating-contact .jr-float-contact{
    min-width:164px !important;
    height:50px !important;
    padding:6px 12px 6px 7px !important;
  }
  .jr-floating-contact .jr-float-contact__icon{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
  }
  .jr-floating-contact .jr-float-contact__label{
    min-height:32px !important;
    padding:0 10px !important;
    font-size:.88rem !important;
  }
}

/* ---------- Mais cor em cards, menus laterais e blocos ---------- */
body[class*="jr-topic-"] .sd-nv.v1 a.fnt_sd-nv,
body[class*="jr-topic-"] #MainZone aside .bg-bx,
body[class*="jr-topic-"] #MainZone .cnt.v1 .bg-bx,
body[class*="jr-topic-"] #MainZone .cnt.v2 .bg-bx,
body[class*="jr-topic-"] #MainZone .cnt.v3 .bg-bx{
  background:linear-gradient(180deg, rgba(255,255,255,.98), color-mix(in srgb, var(--jr-topic-soft, rgba(200,16,46,.06)) 44%, #ffffff)) !important;
}

body[class*="jr-topic-"] .sd-nv.v1 a.fnt_sd-nv:hover,
body[class*="jr-topic-"] .sd-nv.v1 a.fnt_sd-nv:focus-visible{
  color:var(--jr-topic-accent,var(--jr-red)) !important;
  border-color:color-mix(in srgb, var(--jr-topic-accent,var(--jr-red)) 25%, rgba(31,36,48,.08)) !important;
}

body[class*="jr-topic-"] .jr-trust-strip li,
body[class*="jr-topic-"] #MainZone .jr-detail-card,
body[class*="jr-topic-"] #MainZone .bg-bx,
body[class*="jr-topic-"] #MainZone .crd{
  position:relative;
}

body[class*="jr-topic-"] .jr-trust-strip li::after,
body[class*="jr-topic-"] #MainZone .jr-detail-card::after,
body[class*="jr-topic-"] #MainZone .bg-bx::after,
body[class*="jr-topic-"] #MainZone .crd::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:3px;
  background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--jr-topic-accent,var(--jr-red)) 70%, white), transparent);
  opacity:.55;
}

@media (max-width:700px){
  body[class*="jr-topic-"] #MainZone::before{ height:4px; }
  body[class*="jr-topic-"] #MainZone .main_cnt::before{ width:84px; height:84px; right:8px; }
}

body[class*="jr-topic-"] #MainZone .main_cnt{position:relative;}

/* =========================================================
   PATCH 08 — revisão profissional de cores e contraste
   Paleta mais forte, consistente e legível em todas as páginas.
   ========================================================= */

:root{
  --jr-neutral-950:#171b24;
  --jr-neutral-900:#1f2430;
  --jr-neutral-800:#2a3140;
  --jr-neutral-700:#414b5d;
  --jr-neutral-200:#d7dce4;
  --jr-neutral-100:#eef1f5;
  --jr-neutral-050:#f6f7fa;
  --jr-white:#ffffff;
}

/* Cada área usa um tom principal escuro o suficiente para manter
   contraste profissional sobre fundos claros e também em botões. */
body.jr-topic-institucional{
  --jr-topic-primary:#8e1538;
  --jr-topic-secondary:#243b53;
  --jr-topic-rgb:142,21,56;
  --jr-topic-secondary-rgb:36,59,83;
  --jr-topic-surface:#f8f2f4;
  --jr-topic-surface-strong:#f1e3e8;
  --jr-topic-link:#76112f;
}
body.jr-topic-pintura{
  --jr-topic-primary:#a1122f;
  --jr-topic-secondary:#c64e12;
  --jr-topic-rgb:161,18,47;
  --jr-topic-secondary-rgb:198,78,18;
  --jr-topic-surface:#fbf1f3;
  --jr-topic-surface-strong:#f5dfe4;
  --jr-topic-link:#831027;
}
body.jr-topic-reformas{
  --jr-topic-primary:#b84c0d;
  --jr-topic-secondary:#8b5b05;
  --jr-topic-rgb:184,76,13;
  --jr-topic-secondary-rgb:139,91,5;
  --jr-topic-surface:#fbf4ed;
  --jr-topic-surface-strong:#f5e3cf;
  --jr-topic-link:#8f3908;
}
body.jr-topic-eletrica{
  --jr-topic-primary:#8a5a00;
  --jr-topic-secondary:#9a6400;
  --jr-topic-rgb:138,90,0;
  --jr-topic-secondary-rgb:154,100,0;
  --jr-topic-surface:#fbf6e9;
  --jr-topic-surface-strong:#f2e6bd;
  --jr-topic-link:#714900;
}
body.jr-topic-hidraulica{
  --jr-topic-primary:#0b5ea8;
  --jr-topic-secondary:#08738e;
  --jr-topic-rgb:11,94,168;
  --jr-topic-secondary-rgb:8,115,142;
  --jr-topic-surface:#edf6fb;
  --jr-topic-surface-strong:#d9ebf5;
  --jr-topic-link:#084d89;
}
body.jr-topic-revestimentos{
  --jr-topic-primary:#4e5969;
  --jr-topic-secondary:#6e5b45;
  --jr-topic-rgb:78,89,105;
  --jr-topic-secondary-rgb:110,91,69;
  --jr-topic-surface:#f1f3f5;
  --jr-topic-surface-strong:#e2e6ea;
  --jr-topic-link:#3f4855;
}

/* Base de leitura: evita cinzas muito claros e títulos com baixo contraste. */
body[class*="jr-topic-"] #MainZone{
  color:var(--jr-neutral-900) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(var(--jr-topic-rgb),.11), transparent 22%),
    linear-gradient(180deg,#ffffff 0%,#f6f7fa 100%) !important;
}

body[class*="jr-topic-"] #MainZone :where(p,li,dd,dt){
  color:var(--jr-neutral-800);
}

body[class*="jr-topic-"] #MainZone :where(h1,h2,h3,h4,h5,h6),
body[class*="jr-topic-"] #MainZone :where(.fnt_t-big,.fnt_t-1,.fnt_t-2,.fnt_t-3,.fnt_t-4,.fnt_t-5,.fnt_t-6){
  color:var(--jr-neutral-950);
}

body[class*="jr-topic-"] #MainZone .fnt_t-k,
body[class*="jr-topic-"] #MainZone .jr-eyebrow,
body[class*="jr-topic-"] #MainZone section header > strong:first-child{
  color:var(--jr-topic-primary) !important;
}

/* Links em áreas claras: mais escuros e sublinhados para leitura imediata. */
body[class*="jr-topic-"] #MainZone .lt-bg .cnt-stl a:not(.btn),
body[class*="jr-topic-"] #MainZone .jr-detail-body .cnt-stl a:not(.btn),
body[class*="jr-topic-"] #MainZone .main_cnt .cnt-stl a:not(.btn){
  color:var(--jr-topic-link) !important;
  text-decoration-thickness:1.5px;
  text-underline-offset:3px;
  font-weight:650;
}

/* Em blocos escuros, força contraste claro para não herdar tema escuro demais. */
body[class*="jr-topic-"] #MainZone .dk-bg,
body[class*="jr-topic-"] #MainZone .ulk-bg,
body[class*="jr-topic-"] #MainZone .lk-bg{
  color:#fff;
}
body[class*="jr-topic-"] #MainZone .dk-bg :where(h1,h2,h3,h4,h5,h6,p,li,strong,em),
body[class*="jr-topic-"] #MainZone .ulk-bg :where(h1,h2,h3,h4,h5,h6,p,li,strong,em),
body[class*="jr-topic-"] #MainZone .lk-bg :where(h1,h2,h3,h4,h5,h6,p,li,strong,em){
  color:#fff !important;
}
body[class*="jr-topic-"] #MainZone .dk-bg a:not(.btn),
body[class*="jr-topic-"] #MainZone .ulk-bg a:not(.btn),
body[class*="jr-topic-"] #MainZone .lk-bg a:not(.btn){
  color:#fff !important;
}

/* Faixa temática forte no topo de todas as páginas. */
body[class*="jr-topic-"] #MainZone::before{
  height:7px !important;
  background:linear-gradient(90deg,var(--jr-topic-primary) 0%,var(--jr-topic-secondary) 72%,var(--jr-neutral-900) 100%) !important;
  box-shadow:0 3px 12px rgba(var(--jr-topic-rgb),.18);
}

/* Seções alternadas ganham fundo sutil, sem sacrificar contraste. */
body[class*="jr-topic-"] #MainZone > section:not(.mstg):not(.bg-image):not(.jr-detail-hero):nth-of-type(even){
  background-color:var(--jr-topic-surface) !important;
}
body[class*="jr-topic-"] #MainZone > section:not(.mstg):not(.bg-image):not(.jr-detail-hero):nth-of-type(odd){
  background-color:#fff !important;
}

/* Hero interno com presença visual mais forte. */
body[class*="jr-topic-"] .jr-detail-hero{
  border-bottom:1px solid rgba(var(--jr-topic-rgb),.24) !important;
  background:
    linear-gradient(115deg,rgba(var(--jr-topic-rgb),.13),rgba(var(--jr-topic-secondary-rgb),.07) 44%,rgba(255,255,255,.98) 76%),
    #fff !important;
  box-shadow:inset 0 -1px 0 rgba(var(--jr-topic-rgb),.10);
}
body[class*="jr-topic-"] .jr-detail-hero h1{
  color:var(--jr-neutral-950) !important;
}
body[class*="jr-topic-"] .jr-detail-hero p{
  color:var(--jr-neutral-700) !important;
}

/* Cards: superfícies brancas, borda temática escura e texto sempre legível. */
body[class*="jr-topic-"] #MainZone :where(.jr-detail-card,.crd,.jr-trust-strip li),
body[class*="jr-topic-"] #MainZone .lt-bg .bg-bx:not(.no-bg):not(.ulk-bg):not(.lk-bg):not(.dk-bg):not(.alt-bg){
  background:#fff !important;
  color:var(--jr-neutral-900) !important;
  border:1px solid rgba(var(--jr-topic-rgb),.20) !important;
  box-shadow:0 12px 28px rgba(23,27,36,.08) !important;
}
body[class*="jr-topic-"] #MainZone :where(.jr-detail-card,.crd,.jr-trust-strip li) :where(h2,h3,h4,strong){
  color:var(--jr-neutral-950) !important;
}
body[class*="jr-topic-"] #MainZone :where(.jr-detail-card,.crd,.jr-trust-strip li) :where(p,li){
  color:var(--jr-neutral-800) !important;
}
body[class*="jr-topic-"] #MainZone :where(.jr-detail-card,.crd,.jr-trust-strip li)::before{
  background:linear-gradient(180deg,var(--jr-topic-primary),var(--jr-topic-secondary)) !important;
}
body[class*="jr-topic-"] #MainZone :where(.jr-detail-card,.crd,.jr-trust-strip li):hover{
  border-color:rgba(var(--jr-topic-rgb),.42) !important;
  box-shadow:0 20px 38px rgba(23,27,36,.13),0 0 0 1px rgba(var(--jr-topic-rgb),.08) !important;
}

/* Box de destaque: antes ficava claro demais em algumas páginas. */
body[class*="jr-topic-"] #MainZone .txt-hlt{
  background:linear-gradient(135deg,var(--jr-topic-surface-strong),#fff 72%) !important;
  color:var(--jr-neutral-900) !important;
  border:1px solid rgba(var(--jr-topic-rgb),.26) !important;
  border-left:5px solid var(--jr-topic-primary) !important;
  box-shadow:0 10px 24px rgba(23,27,36,.07) !important;
}
body[class*="jr-topic-"] #MainZone .txt-hlt :where(p,strong,span){
  color:var(--jr-neutral-900) !important;
}
body[class*="jr-topic-"] #MainZone .txt-hlt a:not(.btn){
  color:var(--jr-topic-link) !important;
}

/* Botões: todos usam cores escuras com texto branco e contraste forte. */
body[class*="jr-topic-"] .btn.v1{
  background:linear-gradient(135deg,var(--jr-topic-primary),var(--jr-topic-secondary)) !important;
  color:#fff !important;
  border:2px solid transparent !important;
  border-radius:10px !important;
  box-shadow:0 10px 22px rgba(var(--jr-topic-rgb),.22) !important;
}
body[class*="jr-topic-"] .btn.v1 svg{
  color:#fff !important;
}
body[class*="jr-topic-"] .btn.v1:hover,
body[class*="jr-topic-"] .btn.v1:focus-visible{
  color:#fff !important;
  filter:brightness(.93) saturate(1.04) !important;
  box-shadow:0 15px 28px rgba(var(--jr-topic-rgb),.29) !important;
}
body[class*="jr-topic-"] .btn.v2{
  color:var(--jr-topic-primary) !important;
  border-bottom-color:var(--jr-topic-primary) !important;
}

/* Navegação lateral e blocos auxiliares. */
body[class*="jr-topic-"] .sd-nv.v1 a.fnt_sd-nv{
  background:#fff !important;
  color:var(--jr-neutral-900) !important;
  border:1px solid var(--jr-neutral-200) !important;
  border-left:4px solid var(--jr-topic-primary) !important;
}
body[class*="jr-topic-"] .sd-nv.v1 a.fnt_sd-nv:hover,
body[class*="jr-topic-"] .sd-nv.v1 a.fnt_sd-nv:focus-visible{
  background:var(--jr-topic-surface) !important;
  color:var(--jr-topic-link) !important;
  border-color:rgba(var(--jr-topic-rgb),.34) !important;
}

/* Títulos de seção com sublinhado mais marcado. */
body[class*="jr-topic-"] #MainZone section header > .fnt_t-k::after,
body[class*="jr-topic-"] #MainZone .fnt_t-k.bdr_bt::after{
  width:92px !important;
  height:4px !important;
  background:linear-gradient(90deg,var(--jr-topic-primary),var(--jr-topic-secondary)) !important;
  opacity:1 !important;
}

/* Listas ganham marcadores temáticos sem clarear o texto. */
body[class*="jr-topic-"] #MainZone .cnt-stl ul:not(.wp-block-buttons) > li::before{
  background:var(--jr-topic-primary) !important;
}

/* Rodapé visualmente separado do conteúdo, mantendo a identidade. */
body[class*="jr-topic-"] #FooterZone{
  border-top:5px solid var(--jr-topic-primary);
}

/* Header principal: permanece igual entre páginas, mas ganha um acento
   discreto e consistente com a área aberta. */
body[class*="jr-topic-"] #HeaderZone .ato.str.flx.f_clm.f_b::before{
  background:linear-gradient(90deg,var(--jr-topic-primary),var(--jr-topic-secondary),var(--jr-neutral-900)) !important;
}

/* Home cards de serviço: texto branco reforçado e sombra de leitura. */
#SmMainstageV1ServicesFeed .jr-service-overlay strong,
#SmMainstageV1ServicesFeed .jr-service-kicker{
  color:#fff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.55) !important;
}
#SmMainstageV1ServicesFeed .jr-service-card::before{
  background:linear-gradient(180deg,rgba(13,17,24,.08) 0%,rgba(13,17,24,.30) 48%,rgba(13,17,24,.82) 100%) !important;
}

/* Contraste dos balões flutuantes mantido forte. */
.jr-floating-contact .jr-float-contact__label{
  background:rgba(0,0,0,.14) !important;
  color:#fff !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.24) !important;
}

@media (max-width:760px){
  body[class*="jr-topic-"] #MainZone::before{height:5px !important;}
  body[class*="jr-topic-"] .jr-detail-hero{
    background:linear-gradient(145deg,rgba(var(--jr-topic-rgb),.12),#fff 68%) !important;
  }
}

/* =========================================================
   PATCH 09 — correções visuais, porcelanato e elétrica
   ========================================================= */

/* Paleta revista: elétrica com azul profissional + dourado controlado */
body.jr-topic-eletrica{
  --jr-topic-primary:#153754;
  --jr-topic-secondary:#b57b17;
  --jr-topic-rgb:21,55,84;
  --jr-topic-secondary-rgb:181,123,23;
  --jr-topic-surface:#f2f6fb;
  --jr-topic-surface-strong:#dde8f2;
  --jr-topic-link:#18496f;
}

/* Paleta revista: porcelanato com tons pedra/terracota mais vivos */
body.jr-topic-revestimentos{
  --jr-topic-primary:#5d4634;
  --jr-topic-secondary:#b56a2d;
  --jr-topic-rgb:93,70,52;
  --jr-topic-secondary-rgb:181,106,45;
  --jr-topic-surface:#f7f1ea;
  --jr-topic-surface-strong:#eadccf;
  --jr-topic-link:#694731;
}

/* Fundo e hero mais vivos na página de porcelanato */
body.jr-topic-revestimentos #MainZone{
  background:
    radial-gradient(circle at 100% 0%, rgba(181,106,45,.14), transparent 24%),
    linear-gradient(180deg, #fdfaf7 0%, #f4ece4 100%) !important;
}
body.jr-topic-revestimentos #MainZone::after{
  content:"";
  position:absolute;
  inset:0 0 auto auto;
  width:190px;
  height:190px;
  background:
    linear-gradient(45deg, rgba(181,106,45,.10) 25%, transparent 25%) -14px 0/28px 28px,
    linear-gradient(-45deg, rgba(93,70,52,.08) 25%, transparent 25%) -14px 0/28px 28px;
  opacity:.55;
  pointer-events:none;
}
body.jr-topic-revestimentos .jr-detail-hero{
  background:
    linear-gradient(120deg, rgba(181,106,45,.18), rgba(93,70,52,.08) 48%, rgba(255,250,245,.98) 82%),
    #fffaf5 !important;
}
body.jr-topic-revestimentos #MainZone > section:not(.mstg):not(.bg-image):not(.jr-detail-hero):nth-of-type(even){
  background-color:#f7efe7 !important;
}
body.jr-topic-revestimentos #MainZone > section:not(.mstg):not(.bg-image):not(.jr-detail-hero):nth-of-type(odd){
  background-color:#fffaf5 !important;
}

/* Elétrica: reduz o tom mostarda e deixa o visual mais sóbrio */
body.jr-topic-eletrica #MainZone{
  background:
    radial-gradient(circle at 100% 0%, rgba(181,123,23,.12), transparent 22%),
    linear-gradient(180deg, #fbfcfe 0%, #eef4fa 100%) !important;
}
body.jr-topic-eletrica .jr-detail-hero,
body.jr-topic-eletrica #MainZone .lt-bg.shf-r,
body.jr-topic-eletrica #MainZone .img-grp.v1{
  background:
    linear-gradient(120deg, rgba(21,55,84,.10), rgba(181,123,23,.06) 44%, rgba(255,255,255,.98) 76%),
    #ffffff !important;
}
body.jr-topic-eletrica #MainZone > section:not(.mstg):not(.bg-image):not(.jr-detail-hero):nth-of-type(even){
  background-color:#f4f7fb !important;
}

/* Corrige cards claros com texto branco herdado: sempre força leitura escura. */
body[class*="jr-topic-"] #MainZone .bg-bx.alt-bg:not(.dk-bg):not(.lk-bg):not(.ulk-bg),
body[class*="jr-topic-"] #MainZone .crd.alt-bg:not(.dk-bg):not(.lk-bg):not(.ulk-bg),
body[class*="jr-topic-"] #MainZone .bg-bx.lt-bg:not(.dk-bg):not(.lk-bg):not(.ulk-bg){
  background:#fff !important;
  color:var(--jr-neutral-900) !important;
  border:1px solid rgba(var(--jr-topic-rgb),.18) !important;
}
body[class*="jr-topic-"] #MainZone .bg-bx.alt-bg:not(.dk-bg):not(.lk-bg):not(.ulk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
body[class*="jr-topic-"] #MainZone .crd.alt-bg:not(.dk-bg):not(.lk-bg):not(.ulk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
body[class*="jr-topic-"] #MainZone .bg-bx.lt-bg:not(.dk-bg):not(.lk-bg):not(.ulk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a){
  color:inherit !important;
}

/* CTA box que estava ilegível: agora fica escuro e com contraste correto. */
body[class*="jr-topic-"] #MainZone .jr-contact-cta{
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--jr-topic-surface) 90%, white), color-mix(in srgb, var(--jr-topic-surface-strong) 58%, white)) !important;
}
body[class*="jr-topic-"] #MainZone .jr-contact-cta__box{
  background:
    linear-gradient(135deg, rgba(var(--jr-topic-rgb),.95), rgba(var(--jr-topic-secondary-rgb),.88)) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 28px 54px rgba(20,24,35,.18) !important;
}
body[class*="jr-topic-"] #MainZone .jr-contact-cta__box :where(h1,h2,h3,h4,h5,h6,p,strong,span),
body[class*="jr-topic-"] #MainZone .jr-contact-cta__box a:not(.btn){
  color:#fff !important;
}
body[class*="jr-topic-"] #MainZone .jr-contact-cta__box p{
  color:rgba(255,255,255,.92) !important;
}
body[class*="jr-topic-"] #MainZone .jr-contact-cta__secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:0 18px;
  border-radius:12px;
  text-decoration:none;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.18);
}
body[class*="jr-topic-"] #MainZone .jr-contact-cta__box .btn.v1{
  background:#fff !important;
  color:var(--jr-topic-primary) !important;
  box-shadow:0 14px 28px rgba(0,0,0,.14) !important;
}
body[class*="jr-topic-"] #MainZone .jr-contact-cta__box .btn.v1 svg{
  color:var(--jr-topic-primary) !important;
}

/* Pequenos refinamentos em cards/boxes de porcelanato para não parecer sem vida */
body.jr-topic-revestimentos #MainZone :where(.jr-detail-card,.crd,.jr-trust-strip li),
body.jr-topic-revestimentos #MainZone .lt-bg .bg-bx:not(.no-bg):not(.ulk-bg):not(.lk-bg):not(.dk-bg){
  background:linear-gradient(180deg,#fffdfb 0%,#fff 100%) !important;
}

/* Footer com mesma leitura forte após mudança de tema. */
body[class*="jr-topic-"] #FooterZone .dk-bg,
body[class*="jr-topic-"] #FooterZone .ulk-bg,
body[class*="jr-topic-"] #FooterZone .lk-bg{
  color:#fff !important;
}

@media (max-width:760px){
  body[class*="jr-topic-"] #MainZone .jr-contact-cta__box{
    padding:28px 22px !important;
    border-radius:22px !important;
  }
  body[class*="jr-topic-"] #MainZone .jr-contact-cta__secondary{
    width:100%;
  }
}

/* =========================================================
   PATCH 10 — acabamento visual, footer global e CTAs
   ========================================================= */

/* Rodapé global: mesmo visual em todas as páginas ativas */
.jr-footer{
  position:relative;
  border-top:6px solid var(--jr-topic-primary,var(--jr-red));
  background:#111722;
  color:#fff;
}

.jr-footer__main{
  padding:clamp(44px,6vw,78px) 0;
  background:
    radial-gradient(circle at 7% 8%, rgba(var(--jr-topic-rgb,200,16,46),.20), transparent 25%),
    linear-gradient(135deg,#111722 0%,#1a2330 100%);
}

.jr-footer__grid{
  display:grid;
  grid-template-columns:minmax(280px,1.5fr) repeat(2,minmax(170px,.75fr)) minmax(250px,1fr);
  gap:clamp(26px,4vw,56px);
  align-items:start;
}

.jr-footer__brand,
.jr-footer__col,
.jr-footer__cta{
  min-width:0;
}

.jr-footer__title{
  display:block;
  margin-bottom:14px;
  font-size:clamp(1.45rem,2vw,2rem);
  line-height:1.1;
  color:#fff;
}

.jr-footer__brand p,
.jr-footer__cta p{
  margin:0;
  max-width:46ch;
  color:rgba(255,255,255,.78);
  line-height:1.7;
}

.jr-footer__contact-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

.jr-footer__contact{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  color:#fff !important;
  text-decoration:none;
  font-weight:800;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
}

.jr-footer__contact:hover,
.jr-footer__contact:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(0,0,0,.24);
  filter:saturate(1.05);
}

.jr-footer__contact--whatsapp{
  background:linear-gradient(135deg,#168f49,#25d366);
}

.jr-footer__contact--instagram{
  background:linear-gradient(135deg,#833ab4,#c13584 42%,#fd1d1d 74%,#fcb045);
}

.jr-footer__col{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.jr-footer__col strong,
.jr-footer__cta > strong{
  margin-bottom:6px;
  color:#fff;
  font-size:1.06rem;
}

.jr-footer__col a{
  width:max-content;
  max-width:100%;
  color:rgba(255,255,255,.76) !important;
  text-decoration:none;
  line-height:1.45;
  transition:color .18s ease,transform .18s ease;
}

.jr-footer__col a:hover,
.jr-footer__col a:focus-visible{
  color:#fff !important;
  transform:translateX(3px);
}

.jr-footer__cta{
  padding:24px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:22px;
  background:rgba(255,255,255,.055);
  box-shadow:0 18px 36px rgba(0,0,0,.14);
}

.jr-footer__cta .btn.v1{
  margin-top:20px;
  background:linear-gradient(135deg,var(--jr-topic-primary,var(--jr-red)),var(--jr-topic-secondary,var(--jr-orange))) !important;
  color:#fff !important;
}

.jr-footer__bottom{
  padding:18px 0;
  background:#0b1018;
  border-top:1px solid rgba(255,255,255,.08);
}

.jr-footer__bottom-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.jr-footer__bottom small{
  color:rgba(255,255,255,.68);
}

.jr-footer__bottom nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:16px;
}

.jr-footer__bottom a{
  color:rgba(255,255,255,.72) !important;
  text-decoration:none;
}

.jr-footer__bottom a:hover,
.jr-footer__bottom a:focus-visible{
  color:#fff !important;
}

/* Imagens internas mais consistentes, sem alterar a estrutura base */
#MainZone picture:not(.hero-bnr-img) img,
#MainZone .cnt img,
#MainZone .img-grp img:not(.bg),
#MainZone .jr-detail-body img{
  max-width:100%;
  height:auto;
}

#MainZone .cnt picture:not(.bg) img,
#MainZone .jr-detail-body picture img{
  border-radius:20px;
}

/* CTAs em páginas internas: leitura e presença visual mais consistentes */
body[class*="jr-topic-"] #MainZone .btn-con .btn.v1,
body[class*="jr-topic-"] #MainZone .jr-detail-hero .btn.v1{
  min-height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding-left:28px;
  padding-right:28px;
  font-weight:800;
  letter-spacing:.01em;
}

body[class*="jr-topic-"] #MainZone .jr-detail-hero{
  min-height:360px;
  display:flex;
  align-items:center;
}

body[class*="jr-topic-"] #MainZone .jr-detail-hero .mn_tn{
  width:100%;
}

/* Melhor separação visual entre blocos longos */
body[class*="jr-topic-"] #MainZone > section + section{
  border-top:1px solid rgba(var(--jr-topic-rgb),.08);
}

/* Evita excesso de branco em blocos de conteúdo muito grandes */
body[class*="jr-topic-"] #MainZone .main_cnt > .mn_tn,
body[class*="jr-topic-"] #MainZone .jr-detail-body > .mn_tn{
  position:relative;
}

/* Correção de textos herdados com links em fundos escuros */
body[class*="jr-topic-"] #MainZone .dk-bg .btn.v1,
body[class*="jr-topic-"] #MainZone .ulk-bg .btn.v1,
body[class*="jr-topic-"] #MainZone .lk-bg .btn.v1{
  color:#fff !important;
}

@media (max-width:1080px){
  .jr-footer__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:700px){
  .jr-footer__main{
    padding:42px 0;
  }
  .jr-footer__grid{
    grid-template-columns:1fr;
    gap:30px;
  }
  .jr-footer__cta{
    padding:20px;
  }
  .jr-footer__bottom-inner{
    flex-direction:column;
    align-items:flex-start;
  }
  .jr-footer__bottom nav{
    justify-content:flex-start;
  }
  body[class*="jr-topic-"] #MainZone .jr-detail-hero{
    min-height:0;
  }
}

/* =========================================================
   PATCH 11 — botões, balões flutuantes, selos e correções visuais
   ========================================================= */

/* 1) Botões principais: remove o roxo e aplica paleta mais profissional */
.btn.v1,
.btn.v1.alt,
#SmMainstageV1 .btn-con .btn.v1,
#FooterZone .btn.v1,
.jr-contact-cta .btn.v1,
.jr-footer__cta .btn.v1{
  background:linear-gradient(135deg,#c62828 0%, #ab1e3a 40%, #1f4f78 100%) !important;
  color:#ffffff !important;
  border-color:transparent !important;
  box-shadow:0 14px 30px rgba(24,34,52,.18) !important;
}

.btn.v1 svg,
.btn.v1.alt svg,
#SmMainstageV1 .btn-con .btn.v1 svg,
#FooterZone .btn.v1 svg,
.jr-contact-cta .btn.v1 svg,
.jr-footer__cta .btn.v1 svg{
  color:#ffffff !important;
  fill:currentColor !important;
}

.btn.v1:hover,
.btn.v1:focus-visible,
.btn.v1.alt:hover,
.btn.v1.alt:focus-visible,
#SmMainstageV1 .btn-con .btn.v1:hover,
#SmMainstageV1 .btn-con .btn.v1:focus-visible,
#FooterZone .btn.v1:hover,
#FooterZone .btn.v1:focus-visible,
.jr-contact-cta .btn.v1:hover,
.jr-contact-cta .btn.v1:focus-visible,
.jr-footer__cta .btn.v1:hover,
.jr-footer__cta .btn.v1:focus-visible{
  background:linear-gradient(135deg,#d6362f 0%, #b91f42 42%, #275d8d 100%) !important;
  color:#ffffff !important;
  border-color:transparent !important;
  box-shadow:0 18px 36px rgba(24,34,52,.22) !important;
}

/* 2) Balões flutuantes: novo design em formato pill com nome sempre visível */
.jr-floating-contact{
  position:fixed !important;
  right:20px !important;
  bottom:22px !important;
  z-index:1200 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:12px !important;
  pointer-events:none !important;
}

.jr-floating-contact .jr-float-contact{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  min-width:172px !important;
  width:auto !important;
  height:56px !important;
  padding:8px 16px 8px 10px !important;
  border-radius:18px !important;
  border:1px solid rgba(255,255,255,.72) !important;
  color:#fff !important;
  text-decoration:none !important;
  box-shadow:0 16px 32px rgba(16,22,34,.22) !important;
  overflow:hidden !important;
  isolation:isolate !important;
  pointer-events:auto !important;
  transform:none !important;
}

.jr-floating-contact .jr-float-contact::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.03)) !important;
  pointer-events:none !important;
  z-index:-1 !important;
  border-radius:inherit !important;
}

.jr-floating-contact .jr-float-contact::after{
  content:"" !important;
  position:absolute !important;
  width:76px !important;
  height:76px !important;
  right:-24px !important;
  top:-18px !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.16) !important;
  pointer-events:none !important;
  z-index:-1 !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}

.jr-floating-contact .jr-float-contact:hover,
.jr-floating-contact .jr-float-contact:focus-visible{
  transform:translateX(-4px) !important;
  box-shadow:0 20px 40px rgba(16,22,34,.26) !important;
  filter:saturate(1.05) !important;
  outline:none !important;
}

.jr-floating-contact .jr-float-contact__icon{
  width:36px !important;
  height:36px !important;
  min-width:36px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  background:rgba(255,255,255,.20) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.28) !important;
  backdrop-filter:blur(6px) !important;
}

.jr-floating-contact .jr-float-contact__icon svg{
  width:19px !important;
  height:19px !important;
  display:block !important;
}

.jr-floating-contact .jr-float-contact__label{
  display:block !important;
  font-size:.98rem !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
}

.jr-floating-contact .jr-float-whatsapp{
  background:linear-gradient(135deg,#17b55b 0%, #25d366 56%, #0d8e42 100%) !important;
}

.jr-floating-contact .jr-float-instagram{
  background:linear-gradient(135deg,#7a37c1 0%, #d62976 42%, #fa7e1e 100%) !important;
}

@media (max-width:700px){
  .jr-floating-contact{
    right:12px !important;
    bottom:14px !important;
    gap:10px !important;
  }
  .jr-floating-contact .jr-float-contact{
    min-width:152px !important;
    height:50px !important;
    padding:7px 14px 7px 9px !important;
    border-radius:16px !important;
  }
  .jr-floating-contact .jr-float-contact__icon{
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
  }
  .jr-floating-contact .jr-float-contact__icon svg{
    width:17px !important;
    height:17px !important;
  }
  .jr-floating-contact .jr-float-contact__label{
    display:block !important;
    font-size:.90rem !important;
  }
}

/* 3) Selos de cera: destacar ícones no centro dos selos */
#SmValuesV2 .vls-img-con,
.vls.v2 .vls-img-con{
  position:relative !important;
  display:grid !important;
  place-items:center !important;
}

#SmValuesV2 .vls-img-con picture,
.vls.v2 .vls-img-con picture{
  display:block !important;
  width:100% !important;
  height:100% !important;
}

#SmValuesV2 .vls-img-con picture img,
.vls.v2 .vls-img-con picture img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  filter:drop-shadow(0 12px 18px rgba(122,22,32,.20)) !important;
}

#SmValuesV2 .vls-icn,
.vls.v2 .vls-icn{
  position:absolute !important;
  inset:0 !important;
  display:grid !important;
  place-items:center !important;
  z-index:2 !important;
}

#SmValuesV2 .vls-icn::before,
.vls.v2 .vls-icn::before{
  content:"" !important;
  width:62px !important;
  height:62px !important;
  border-radius:50% !important;
  background:radial-gradient(circle, rgba(255,255,255,.26), rgba(255,255,255,.10)) !important;
  box-shadow:0 10px 24px rgba(13,18,28,.16), inset 0 0 0 1px rgba(255,255,255,.25) !important;
  backdrop-filter:blur(6px) !important;
}

#SmValuesV2 .vls-icn svg,
.vls.v2 .vls-icn svg{
  position:absolute !important;
  color:#ffffff !important;
  fill:currentColor !important;
  font-size:2rem !important;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.22)) !important;
}

/* 4) Correções do pincel e da faixa de tinta para não passar por cima do texto */
.img-grp.v1,
.cnt.v1,
.cnt.v3,
#SmContentV1,
#ContentV3{
  position:relative !important;
  overflow:hidden !important;
}

.img-grp.v1 > .bg,
#ImageGroupV1 > .bg,
#SmContentV1 .pnt-brsh,
#ContentV3 .pnt-brsh,
.cnt.v1 .pnt-brsh,
.cnt.v3 .pnt-brsh{
  z-index:0 !important;
  pointer-events:none !important;
}

.img-grp.v1 > .bx,
#ImageGroupV1 > .bx,
#SmContentV1 .mn_tn,
#ContentV3 .mn_tn,
.cnt.v1 .mn_tn,
.cnt.v3 .mn_tn,
#SmContentV1 .cnt-stl,
#ContentV3 .cnt-stl,
.cnt.v1 .cnt-stl,
.cnt.v3 .cnt-stl,
#SmContentV1 #SmContentV1Button,
#ContentV3 #ContentV3Tabs{
  position:relative !important;
  z-index:2 !important;
}

#SmContentV1 .pnt-brsh,
#ContentV3 .pnt-brsh,
.cnt.v1 .pnt-brsh,
.cnt.v3 .pnt-brsh{
  width:clamp(90px, 14vw, 210px) !important;
  left:clamp(-8px, -1vw, -18px) !important;
  bottom:clamp(-18px, -2.3vw, -8px) !important;
  opacity:.98 !important;
}

#SmContentV1 .pnt-brsh img,
#ContentV3 .pnt-brsh img,
.cnt.v1 .pnt-brsh img,
.cnt.v3 .pnt-brsh img{
  display:block !important;
  width:100% !important;
  height:auto !important;
}

/* Faixas/brushstroke de fundo sempre atrás do conteúdo textual */
.img-grp.v1 .bg img,
#ImageGroupV1 .bg img{
  position:relative !important;
  z-index:0 !important;
  opacity:.96 !important;
}

@media (max-width:700px){
  #SmContentV1 .pnt-brsh,
  #ContentV3 .pnt-brsh,
  .cnt.v1 .pnt-brsh,
  .cnt.v3 .pnt-brsh{
    width:90px !important;
    left:-6px !important;
    bottom:-10px !important;
  }
}

/* =========================================================
   PATCH 13 — correções adicionais: pincel, cards e porcelanato
   ========================================================= */

/* 1) Corrige os cards de tipos de pintura com texto invisível */
#PinturaHubTipos .jr-pcard,
#PinturaHubTipos .jr-pcard__body{
  background:#ffffff !important;
}
#PinturaHubTipos .jr-pcard__title,
#PinturaHubTipos .jr-pcard__desc,
#PinturaHubTipos .jr-pcard__tag,
#PinturaHubTipos .jr-pcard__cta,
#PinturaHubTipos .jr-pcard__body :where(strong,em,span){
  color:#1f2937 !important;
  opacity:1 !important;
}
#PinturaHubTipos .jr-pcard__tag,
#PinturaHubTipos .jr-pcard__cta{
  color:#b3152f !important;
}
#PinturaHubTipos .jr-pcard{
  border:1px solid rgba(18,28,45,.10);
}
#PinturaHubTipos .jr-pcard__body{
  min-height:130px;
}

/* 2) Remove o bug do pincel/faixa vermelha nas páginas internas mostradas */
body.jr-topic-eletrica #ImageGroupV1,
body.jr-topic-hidraulica #ImageGroupV1,
body.jr-topic-reformas #SmFdContentV1{
  position:relative !important;
  overflow:hidden !important;
}
body.jr-topic-eletrica #ImageGroupV1 > .bg,
body.jr-topic-hidraulica #ImageGroupV1 > .bg,
body.jr-topic-reformas #SmFdContentV1 > .bg{
  display:none !important;
}
body.jr-topic-eletrica #ImageGroupV1 > .bx,
body.jr-topic-hidraulica #ImageGroupV1 > .bx,
body.jr-topic-reformas #SmFdContentV1 > .mn_tn{
  position:relative !important;
  z-index:2 !important;
}
/* Mantém o pincel decorativo pequeno atrás do conteúdo quando existir */
body.jr-topic-reformas #SmContentV1 .pnt-brsh{
  left:-6px !important;
  bottom:-8px !important;
  width:clamp(88px, 10vw, 150px) !important;
  opacity:.9 !important;
  z-index:0 !important;
}
body.jr-topic-reformas #SmContentV1 .cnt-stl,
body.jr-topic-reformas #SmContentV1 .mn_tn,
body.jr-topic-reformas #SmContentV1 #SmContentV1Button{
  position:relative !important;
  z-index:2 !important;
}

/* 3) Nova paleta da página de porcelanato: pedra / mármore / cinza-claro */
body.jr-topic-revestimentos{
  --jr-topic-primary:#445763;
  --jr-topic-secondary:#91a8b8;
  --jr-topic-rgb:68,87,99;
  --jr-topic-secondary-rgb:145,168,184;
  --jr-topic-surface:#f2f5f7;
  --jr-topic-surface-strong:#dfe7ec;
  --jr-topic-link:#4e6471;
}
body.jr-topic-revestimentos #MainZone{
  position:relative;
  background:
    radial-gradient(circle at 100% 0%, rgba(145,168,184,.16), transparent 22%),
    linear-gradient(180deg, #f9fbfc 0%, #edf2f5 100%) !important;
}
body.jr-topic-revestimentos #MainZone::after{
  background:
    linear-gradient(45deg, rgba(145,168,184,.12) 25%, transparent 25%) -14px 0/28px 28px,
    linear-gradient(-45deg, rgba(68,87,99,.08) 25%, transparent 25%) -14px 0/28px 28px;
  opacity:.4;
}
body.jr-topic-revestimentos .jr-detail-hero{
  background:
    linear-gradient(125deg, rgba(145,168,184,.16), rgba(68,87,99,.06) 44%, rgba(255,255,255,.96) 82%),
    #ffffff !important;
}
body.jr-topic-revestimentos .jr-detail-hero h1,
body.jr-topic-revestimentos .jr-detail-body h2,
body.jr-topic-revestimentos .jr-detail-body h3,
body.jr-topic-revestimentos .jr-detail-body strong{
  color:var(--jr-topic-primary) !important;
}
body.jr-topic-revestimentos #MainZone > section:not(.mstg):not(.bg-image):not(.jr-detail-hero):nth-of-type(even){
  background-color:#f3f6f8 !important;
}
body.jr-topic-revestimentos #MainZone > section:not(.mstg):not(.bg-image):not(.jr-detail-hero):nth-of-type(odd){
  background-color:#fbfcfd !important;
}
body.jr-topic-revestimentos #MainZone :where(.jr-detail-card,.crd,.jr-trust-strip li),
body.jr-topic-revestimentos #MainZone .lt-bg .bg-bx:not(.no-bg):not(.ulk-bg):not(.lk-bg):not(.dk-bg){
  background:linear-gradient(180deg,#ffffff 0%, #f8fbfc 100%) !important;
  border:1px solid rgba(68,87,99,.10) !important;
  box-shadow:0 16px 32px rgba(35,47,56,.08) !important;
}
body.jr-topic-revestimentos .btn.v1,
body.jr-topic-revestimentos #MainZone .jr-detail-hero .btn.v1,
body.jr-topic-revestimentos #MainZone .jr-detail-cta .btn.v1{
  background:linear-gradient(135deg, #445763, #91a8b8) !important;
  border-color:#445763 !important;
  color:#fff !important;
  box-shadow:0 14px 30px rgba(68,87,99,.20) !important;
}
body.jr-topic-revestimentos .btn.v1 svg,
body.jr-topic-revestimentos #MainZone .jr-detail-hero .btn.v1 svg,
body.jr-topic-revestimentos #MainZone .jr-detail-cta .btn.v1 svg{
  color:#fff !important;
}
body.jr-topic-revestimentos .jr-detail-cta{
  background:linear-gradient(135deg, rgba(68,87,99,.96), rgba(145,168,184,.84)) !important;
  color:#fff !important;
}
body.jr-topic-revestimentos .jr-detail-cta strong,
body.jr-topic-revestimentos .jr-detail-cta p{
  color:#fff !important;
}

/* 4) Novas seções com imagens de porcelanato */
.jr-porcelanato-benefits{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);
  gap:32px;
  align-items:center;
  margin:44px 0 34px;
}
.jr-porcelanato-benefits__copy{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.jr-porcelanato-benefits__copy p{
  line-height:1.7;
}
.jr-porcelanato-benefits__list{
  margin:0;
  padding-left:1.2rem;
}
.jr-porcelanato-benefits__list li{
  margin-top:.4rem;
}
.jr-porcelanato-benefits__media img{
  width:100%;
  display:block;
  border-radius:26px;
  min-height:360px;
  object-fit:cover;
  box-shadow:0 18px 40px rgba(35,47,56,.12);
}
.jr-porcelanato-showcase{
  margin:18px 0 44px;
}
.jr-porcelanato-showcase__header{
  max-width:760px;
  margin-bottom:26px;
}
.jr-porcelanato-showcase__header p{
  line-height:1.7;
}
.jr-porcelanato-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.jr-porcelanato-gallery__item{
  background:#fff;
  border:1px solid rgba(68,87,99,.12);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 18px 36px rgba(35,47,56,.08);
}
.jr-porcelanato-gallery__item img{
  width:100%;
  height:260px;
  object-fit:cover;
  display:block;
}
.jr-porcelanato-gallery__body{
  padding:18px 18px 20px;
}
.jr-porcelanato-gallery__body h3{
  margin:0 0 10px;
  font-size:1.15rem;
  color:var(--jr-topic-primary);
}
.jr-porcelanato-gallery__body p{
  margin:0;
  line-height:1.6;
  color:#51616b;
}

@media (max-width:980px){
  .jr-porcelanato-benefits,
  .jr-porcelanato-gallery{
    grid-template-columns:1fr;
  }
  .jr-porcelanato-benefits__media img{
    min-height:280px;
  }
}

/* =========================================================
   PATCH 14 — conteúdo visual da página Elétrica
   ========================================================= */
.jr-eletrica-showcase{
  position:relative;
  background:
    radial-gradient(circle at 100% 0%, rgba(35,94,143,.10), transparent 24%),
    linear-gradient(180deg,#f7fafc 0%,#eef4f8 100%);
  border-top:1px solid rgba(21,55,84,.08);
  border-bottom:1px solid rgba(21,55,84,.08);
}
.jr-eletrica-showcase__header{
  max-width:820px;
  margin-bottom:28px;
}
.jr-eletrica-showcase__header h2{
  margin:.45rem 0 1rem;
  color:#153754 !important;
  font-size:clamp(1.8rem,3.2vw,3rem);
  line-height:1.12;
}
.jr-eletrica-showcase__header p{
  max-width:72ch;
  line-height:1.7;
  color:#44515e;
}
.jr-eletrica-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.jr-eletrica-gallery__item{
  background:#fff;
  border:1px solid rgba(21,55,84,.12);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(21,55,84,.09);
  transition:transform .24s ease, box-shadow .24s ease;
}
.jr-eletrica-gallery__item:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 46px rgba(21,55,84,.14);
}
.jr-eletrica-gallery__item img{
  width:100%;
  height:280px;
  display:block;
  object-fit:cover;
}
.jr-eletrica-gallery__body{
  padding:20px 20px 22px;
}
.jr-eletrica-gallery__body h3{
  margin:0 0 10px;
  color:#153754 !important;
  font-size:1.18rem;
}
.jr-eletrica-gallery__body p{
  margin:0;
  line-height:1.6;
  color:#53606d;
}
@media (max-width:980px){
  .jr-eletrica-gallery{grid-template-columns:1fr;}
  .jr-eletrica-gallery__item img{height:320px;}
}
@media (max-width:620px){
  .jr-eletrica-gallery__item img{height:240px;}
}

/* ============================================================
   PATCH 15 — hidráulica + cards + redes sociais
   ============================================================ */

/* Cards de serviços da home: reforço de legibilidade */
#SmMainstageV1ServicesFeed .jr-service-card::before{
  background:linear-gradient(180deg, rgba(10,14,24,.16) 0%, rgba(10,14,24,.34) 44%, rgba(10,14,24,.82) 100%) !important;
}
#SmMainstageV1ServicesFeed .jr-service-overlay{
  align-items:flex-start !important;
  justify-content:flex-end !important;
}
#SmMainstageV1ServicesFeed .jr-service-copy,
#SmMainstageV1ServicesFeed .jr-service-copy *{
  color:#ffffff !important;
}
#SmMainstageV1ServicesFeed .jr-service-kicker,
#SmMainstageV1ServicesFeed .jr-service-overlay strong{
  color:#ffffff !important;
  text-shadow:0 4px 18px rgba(0,0,0,.52) !important;
}
#SmMainstageV1ServicesFeed .jr-service-copy{
  padding:10px 12px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg, rgba(9,12,20,.20), rgba(9,12,20,.44)) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.18) !important;
}

/* Balões flutuantes estilo novo com expansão no hover */
.jr-floating-contact{
  position:fixed !important;
  right:18px !important;
  bottom:18px !important;
  z-index:9998 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:12px !important;
}
.jr-floating-contact .jr-float-contact{
  position:relative !important;
  width:64px !important;
  height:64px !important;
  min-width:64px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  color:#fff !important;
  text-decoration:none !important;
  overflow:hidden !important;
  box-shadow:0 18px 34px rgba(10,14,24,.26) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  transition:width .28s ease, transform .22s ease, box-shadow .22s ease, filter .22s ease !important;
  backdrop-filter:blur(10px) !important;
}
.jr-floating-contact .jr-float-contact::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  background:linear-gradient(135deg, rgba(255,255,255,.24), rgba(255,255,255,.06)) !important;
  opacity:.85 !important;
}
.jr-floating-contact .jr-float-contact::after{
  content:"" !important;
  position:absolute !important;
  inset:1px !important;
  border-radius:inherit !important;
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.04)) !important;
}
.jr-floating-contact .jr-float-contact:hover,
.jr-floating-contact .jr-float-contact:focus-visible{
  width:192px !important;
  transform:translateY(-2px) !important;
  box-shadow:0 22px 38px rgba(10,14,24,.32) !important;
}
.jr-floating-contact .jr-float-contact__icon,
.jr-floating-contact .jr-float-contact__label{
  position:relative !important;
  z-index:2 !important;
}
.jr-floating-contact .jr-float-contact__icon{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  display:grid !important;
  place-items:center !important;
  color:#fff !important;
}
.jr-floating-contact .jr-float-contact__icon svg{
  width:100% !important;
  height:100% !important;
  display:block !important;
}
.jr-floating-contact .jr-float-contact__label{
  max-width:0 !important;
  opacity:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  font-size:.93rem !important;
  font-weight:800 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
  transition:max-width .24s ease, opacity .24s ease, margin-left .24s ease !important;
}
.jr-floating-contact .jr-float-contact:hover .jr-float-contact__label,
.jr-floating-contact .jr-float-contact:focus-visible .jr-float-contact__label{
  max-width:120px !important;
  opacity:1 !important;
  margin-left:2px !important;
}
.jr-floating-contact .jr-float-instagram{
  background:linear-gradient(135deg, #ff3ea6 0%, #b24cff 48%, #4c7dff 100%) !important;
}
.jr-floating-contact .jr-float-whatsapp{
  background:linear-gradient(135deg, #14d66e 0%, #10c884 38%, #16b8ff 100%) !important;
}
.jr-floating-contact .jr-float-facebook{
  background:linear-gradient(135deg, #2563eb 0%, #2b7cff 45%, #4f46e5 100%) !important;
}
@media (max-width: 767px){
  .jr-floating-contact{
    right:12px !important;
    bottom:12px !important;
    gap:10px !important;
  }
  .jr-floating-contact .jr-float-contact{width:58px !important; height:58px !important; min-width:58px !important;}
  .jr-floating-contact .jr-float-contact:hover,
  .jr-floating-contact .jr-float-contact:focus-visible{width:172px !important;}
}

/* Galeria nova de hidráulica */
.jr-hidraulica-showcase{
  background:linear-gradient(180deg, #eff8ff 0%, #ffffff 100%) !important;
  padding:88px 0 !important;
}
.jr-hidraulica-showcase .mn_tn{max-width:1180px !important;}
.jr-hidraulica-showcase__header{
  max-width:760px !important;
  margin:0 auto 36px !important;
  text-align:center !important;
}
.jr-hidraulica-showcase__eyebrow{
  display:inline-block !important;
  margin-bottom:12px !important;
  padding:7px 14px !important;
  border-radius:999px !important;
  background:rgba(0,157,255,.10) !important;
  color:#0078c8 !important;
  font-size:.82rem !important;
  font-weight:800 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
}
.jr-hidraulica-showcase__header h2{
  margin:0 0 14px !important;
  color:#10203a !important;
  font-size:clamp(2rem,3.6vw,3.05rem) !important;
  line-height:1.08 !important;
}
.jr-hidraulica-showcase__header p{
  margin:0 auto !important;
  color:#4d6179 !important;
  font-size:1.04rem !important;
  line-height:1.8 !important;
}
.jr-hidraulica-gallery{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
}
.jr-hidraulica-gallery__item{
  border-radius:28px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid rgba(22,55,99,.10) !important;
  box-shadow:0 22px 40px rgba(16,32,58,.10) !important;
  transition:transform .24s ease, box-shadow .24s ease !important;
}
.jr-hidraulica-gallery__item:hover{
  transform:translateY(-6px) !important;
  box-shadow:0 28px 48px rgba(16,32,58,.16) !important;
}
.jr-hidraulica-gallery__item img{
  display:block !important;
  width:100% !important;
  height:260px !important;
  object-fit:cover !important;
}
.jr-hidraulica-gallery__body{
  padding:24px 22px 26px !important;
}
.jr-hidraulica-gallery__body h3{
  margin:0 0 10px !important;
  color:#13233d !important;
  font-size:1.22rem !important;
}
.jr-hidraulica-gallery__body p{
  margin:0 !important;
  color:#52667f !important;
  line-height:1.72 !important;
}
@media (max-width: 980px){
  .jr-hidraulica-gallery{grid-template-columns:1fr !important;}
}

/* Segurança extra: texto dos cards sempre legível */
#SmMainstageV1ServicesFeed .jr-service-card .jr-service-kicker,
#SmMainstageV1ServicesFeed .jr-service-card .jr-service-copy strong,
#SmMainstageV1ServicesFeed .jr-service-card .jr-service-copy,
#SmMainstageV1ServicesFeed .jr-service-card span,
#SmMainstageV1ServicesFeed .jr-service-card strong{
  color:#ffffff !important;
}

/* ============================================================
   PATCH 16 — contraste, pincel, linha do menu e redes sociais
   Balões importados do projeto AC_ARTE_AGENCIA_ELITE.zip
   ============================================================ */

/* 1) Balões sociais — copiados/adaptados do ZIP de referência enviado */
.ac-floating-social {
  position: fixed;
  right: 22px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  width: 160px;
  gap: 12px;
  pointer-events: none;
}

.ac-floating-social__item {
  pointer-events: auto;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 999px;
  color: #fff !important;
  text-decoration: none !important;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(8, 10, 18, .72);
  box-shadow: 0 18px 46px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.10);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: width .28s ease, transform .28s ease, box-shadow .28s ease, border-color .28s ease, background .28s ease;
  overflow: hidden;
  flex-shrink: 0;
}

.ac-floating-social__item::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  opacity: .95;
  transition: opacity .28s ease, filter .28s ease;
  z-index: 0;
}

.ac-floating-social__item--instagram::before {
  background: linear-gradient(135deg, #ff315f 0%, #d946ef 48%, #2d7dff 100%);
}

.ac-floating-social__item--whatsapp::before {
  background: linear-gradient(135deg, #22c55e 0%, #13b89a 50%, #2d7dff 100%);
}

.ac-floating-social__item--facebook::before {
  background: linear-gradient(135deg, #1877f2 0%, #2563eb 55%, #7b61ff 100%);
}

.ac-floating-social__item svg {
  position: relative;
  z-index: 1;
  width: 24px;
  height: 24px;
  fill: currentColor;
  flex: 0 0 24px;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.25));
}

.ac-floating-social__item span {
  position: relative;
  z-index: 1;
  display: inline-block;
  max-width: 0;
  opacity: 0;
  white-space: nowrap;
  overflow: hidden;
  margin-left: 0;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  transition: max-width .28s ease, opacity .20s ease, margin-left .28s ease;
}

.ac-floating-social__item:hover,
.ac-floating-social__item:focus-visible {
  width: 148px;
  transform: translateX(-4px) translateY(-1px);
  border-color: rgba(255,255,255,.38);
  box-shadow: 0 22px 60px rgba(0,0,0,.42), 0 0 28px rgba(255,49,95,.13), 0 0 26px rgba(45,125,255,.10);
}

.ac-floating-social__item:hover::before,
.ac-floating-social__item:focus-visible::before {
  filter: saturate(1.12) brightness(1.06);
}

.ac-floating-social__item:hover span,
.ac-floating-social__item:focus-visible span {
  max-width: 90px;
  opacity: 1;
  margin-left: 9px;
}

@media (max-width: 999px) {
  .ac-floating-social {
    right: 14px;
    top: auto;
    bottom: 18px;
    transform: none;
    flex-direction: row;
    align-items: center;
    width: auto;
    gap: 10px;
  }
  .ac-floating-social__item {
    width: 48px;
    height: 48px;
  }
  .ac-floating-social__item:hover,
  .ac-floating-social__item:focus-visible {
    width: 48px;
    transform: translateY(-4px);
  }
  .ac-floating-social__item span {
    display: none;
  }
}

@media (max-width: 420px) {
  .ac-floating-social {
    right: 10px;
    bottom: 12px;
    gap: 8px;
  }
  .ac-floating-social__item {
    width: 44px;
    height: 44px;
  }
  .ac-floating-social__item svg {
    width: 21px;
    height: 21px;
  }
}

/* 2) Linha colorida do menu — mesma espessura em TODAS as páginas */
#HeaderZone {
  border-bottom: 4px solid var(--jr-topic-primary, #9f1239) !important;
  box-sizing: border-box !important;
}
#HeaderZone .ato.str.flx.f_clm.f_b::before {
  display: none !important;
}

/* 3) Pincel/faixa vermelha: remove o elemento decorativo que cruzava conteúdo */
#ImageGroupV1 > picture.bg,
#ImageGroupV1 > .bg[role="presentation"],
body.jr-topic-pintura #ImageGroupV1 > picture.bg,
body.jr-topic-eletrica #ImageGroupV1 > picture.bg,
body.jr-topic-hidraulica #ImageGroupV1 > picture.bg,
body.jr-topic-reformas #ImageGroupV1 > picture.bg,
body.jr-topic-revestimentos #ImageGroupV1 > picture.bg {
  display: none !important;
}

/* Garante que conteúdo textual fique sempre acima de qualquer decoração restante */
#ImageGroupV1 > .bx,
#ImageGroupV1 .main_cnt,
#ImageGroupV1 .cnt-stl,
#TwoColumnLayout .cnt-zn,
#TwoColumnLayout .sd-zn {
  position: relative !important;
  z-index: 3 !important;
}

/* 4) Contraste: cards e painéis claros nunca podem herdar texto branco */
.lt-bg .bg-bx:not(.dk-bg),
.lt-bg .crd:not(.dk-bg),
#SideZone .bg-bx,
#SideZone .crd,
#SmSideNavV1SideNav,
#SmSideCTAsV1 .crd,
#SmSideCTAsV1 .bg-bx {
  color: #172033 !important;
}

.lt-bg .bg-bx:not(.dk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
.lt-bg .crd:not(.dk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
#SideZone .bg-bx :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
#SideZone .crd :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
#SmSideNavV1SideNav :where(a,strong,span),
#SmSideCTAsV1 .crd :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a) {
  color: #172033 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* CTA/sidebar específico da página de texturas */
#SmSideCTAsV1 .crd {
  background: #ffffff !important;
  border: 1px solid rgba(159,18,57,.14) !important;
  box-shadow: 0 16px 34px rgba(23,32,51,.08) !important;
}
#SmSideCTAsV1 .crd .btn.v2,
#SmSideCTAsV1 .crd .btn.v2 * {
  color: #9f1239 !important;
}
#SmSideNavV1SideNav {
  background: linear-gradient(180deg,#ffffff 0%,#f8fafc 100%) !important;
}
#SmSideNavV1SideNav a {
  color: #172033 !important;
}
#SmSideNavV1SideNav a:hover,
#SmSideNavV1SideNav a.selected {
  color: #9f1239 !important;
  background: rgba(159,18,57,.06) !important;
}

/* Home: textos dos 5 cards ficam realmente legíveis sobre as imagens */
#SmMainstageV1ServicesFeed .jr-service-card::before {
  background: linear-gradient(180deg, rgba(9,12,20,.14) 0%, rgba(9,12,20,.34) 42%, rgba(9,12,20,.88) 100%) !important;
}
#SmMainstageV1ServicesFeed .jr-service-copy,
#SmMainstageV1ServicesFeed .jr-service-copy *,
#SmMainstageV1ServicesFeed .jr-service-kicker,
#SmMainstageV1ServicesFeed .jr-service-overlay strong {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: 0 3px 12px rgba(0,0,0,.70) !important;
}

/* Campos/links da lateral nunca ficam invisíveis sobre fundo branco */
#SideZone .fnt_sd-nv,
#SideZone .rd-mr,
#SideZone .btn.v2 {
  color:#172033 !important;
}

/* Em fundos realmente escuros, preserva texto branco */
.dk-bg,
.dk-bg :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
.jr-footer,
.jr-footer :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a) {
  color:#ffffff !important;
}

/* ============================================================
   PATCH 17 — camada final de estabilização visual
   ============================================================ */

/* 1) Linha temática do header: MESMA espessura em todas as páginas */
body.jr-ui-stable #HeaderZone{
  position:relative !important;
  border:0 !important;
  box-shadow:none !important;
  padding-bottom:4px !important;
  background:#fff !important;
}
body.jr-ui-stable #HeaderZone::after{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  height:4px !important;
  min-height:4px !important;
  max-height:4px !important;
  background:linear-gradient(90deg,
    var(--jr-topic-primary,#9f1239) 0%,
    var(--jr-topic-secondary,var(--jr-topic-primary,#9f1239)) 72%,
    var(--jr-topic-primary,#9f1239) 100%) !important;
  opacity:1 !important;
  z-index:20 !important;
  pointer-events:none !important;
}
body.jr-ui-stable #HeaderZone .ato.str.flx.f_clm.f_b::before,
body.jr-ui-stable #HeaderZone .ato.str.flx.f_clm.f_b::after,
body.jr-ui-stable #HeaderZone > *::before,
body.jr-ui-stable #HeaderZone > *::after{
  border-bottom-width:0 !important;
}
body.jr-ui-stable #HeaderZone .bdr_bt{
  border-bottom-width:0 !important;
}
body.jr-ui-stable #HeaderZone .fly-nv .bdr_bt,
body.jr-ui-stable #HeaderZone .mbl-mnu .bdr_bt{
  border-bottom-width:1px !important;
}

/* 2) Botões: um sistema consistente, sem blocos brancos/vazios */
body.jr-ui-stable .btn.v1,
body.jr-ui-stable .btn.v1.alt,
body.jr-ui-stable #MainZone .btn.v1,
body.jr-ui-stable #FooterZone .btn.v1,
body.jr-ui-stable .jr-contact-cta__box .btn.v1,
body.jr-ui-stable .jr-detail-cta .btn.v1{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  min-height:54px !important;
  padding:0 26px !important;
  border-radius:12px !important;
  border:1px solid rgba(17,24,39,.12) !important;
  background:linear-gradient(135deg,
    var(--jr-topic-primary,#a31332) 0%,
    var(--jr-topic-secondary,#263b59) 100%) !important;
  color:#fff !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  text-align:center !important;
  text-decoration:none !important;
  opacity:1 !important;
  box-shadow:0 12px 26px rgba(15,23,42,.16) !important;
  overflow:visible !important;
}
body.jr-ui-stable .btn.v1 *,
body.jr-ui-stable #MainZone .btn.v1 *,
body.jr-ui-stable #FooterZone .btn.v1 *{
  color:#fff !important;
  fill:currentColor !important;
  opacity:1 !important;
}
body.jr-ui-stable .btn.v1:hover,
body.jr-ui-stable .btn.v1:focus-visible{
  transform:translateY(-2px) !important;
  filter:saturate(1.05) brightness(1.03) !important;
  box-shadow:0 17px 32px rgba(15,23,42,.22) !important;
}
body.jr-ui-stable .btn.v2,
body.jr-ui-stable #MainZone .btn.v2{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:50px !important;
  padding:0 22px !important;
  border-radius:12px !important;
  background:#fff !important;
  color:var(--jr-topic-primary,#8f1731) !important;
  border:1px solid rgba(var(--jr-topic-rgb,159,18,57),.25) !important;
  font-weight:800 !important;
  opacity:1 !important;
}
body.jr-ui-stable .btn.v2 *{
  color:inherit !important;
  fill:currentColor !important;
  opacity:1 !important;
}

/* CTA de orçamento: nenhum botão pode ficar branco sobre branco */
body.jr-ui-stable .jr-contact-cta__box{
  overflow:hidden !important;
}
body.jr-ui-stable .jr-contact-cta__actions{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
}
body.jr-ui-stable .jr-contact-cta__box .btn.v1{
  background:linear-gradient(135deg,#ffffff 0%,#f3f6fa 100%) !important;
  color:#172033 !important;
  border:1px solid rgba(255,255,255,.75) !important;
  box-shadow:0 12px 26px rgba(0,0,0,.12) !important;
}
body.jr-ui-stable .jr-contact-cta__box .btn.v1 *{
  color:#172033 !important;
}
body.jr-ui-stable .jr-contact-cta__secondary{
  min-height:54px !important;
  padding:0 22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:12px !important;
  color:#fff !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  font-weight:800 !important;
  text-decoration:none !important;
  opacity:1 !important;
}

/* 3) Cards de pintura: fundo e tipografia sempre legíveis */
body.jr-ui-stable .jr-pcard,
body.jr-ui-stable #PinturaHubTipos .jr-pcard,
body.jr-ui-stable #PinturaHubCategorias .jr-pcard{
  background:#fff !important;
  color:#172033 !important;
  border:1px solid rgba(23,32,51,.10) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  box-shadow:0 12px 28px rgba(23,32,51,.09) !important;
}
body.jr-ui-stable .jr-pcard__img{
  display:block !important;
  background:#eef2f6 !important;
}
body.jr-ui-stable .jr-pcard__img img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  opacity:1 !important;
}
body.jr-ui-stable .jr-pcard__body,
body.jr-ui-stable #PinturaHubTipos .jr-pcard__body{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  min-height:126px !important;
  padding:18px !important;
  background:#fff !important;
  color:#172033 !important;
}
body.jr-ui-stable .jr-pcard__title,
body.jr-ui-stable .jr-pcard__desc,
body.jr-ui-stable .jr-pcard__tag,
body.jr-ui-stable .jr-pcard__cta,
body.jr-ui-stable .jr-pcard__body :where(strong,em,span,p){
  color:#172033 !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body.jr-ui-stable .jr-pcard__title{
  font-size:1.08rem !important;
  font-weight:800 !important;
  line-height:1.28 !important;
}
body.jr-ui-stable .jr-pcard__desc{
  font-style:normal !important;
  color:#526176 !important;
  line-height:1.5 !important;
}
body.jr-ui-stable .jr-pcard__tag,
body.jr-ui-stable .jr-pcard__cta{
  color:var(--jr-topic-primary,#9f1239) !important;
  font-weight:800 !important;
}

/* Cards claros genéricos: texto escuro; cards escuros: texto branco */
body.jr-ui-stable #MainZone .lt-bg .bg-bx:not(.dk-bg):not(.lk-bg):not(.ulk-bg),
body.jr-ui-stable #MainZone .lt-bg .crd:not(.dk-bg):not(.lk-bg):not(.ulk-bg),
body.jr-ui-stable #MainZone .jr-detail-card,
body.jr-ui-stable #MainZone .jr-trust-strip li{
  color:#172033 !important;
}
body.jr-ui-stable #MainZone .lt-bg .bg-bx:not(.dk-bg):not(.lk-bg):not(.ulk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
body.jr-ui-stable #MainZone .lt-bg .crd:not(.dk-bg):not(.lk-bg):not(.ulk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
body.jr-ui-stable #MainZone .jr-detail-card :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a){
  color:inherit !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body.jr-ui-stable #MainZone .dk-bg,
body.jr-ui-stable #MainZone .lk-bg,
body.jr-ui-stable #MainZone .ulk-bg{
  color:#fff !important;
}
body.jr-ui-stable #MainZone .dk-bg :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
body.jr-ui-stable #MainZone .lk-bg :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a),
body.jr-ui-stable #MainZone .ulk-bg :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a){
  color:inherit !important;
  opacity:1 !important;
}

/* Sidebars da página de texturas e páginas herdadas */
body.jr-ui-stable #SideZone,
body.jr-ui-stable #SmSideNavV1SideNav,
body.jr-ui-stable #SmSideCTAsV1{
  color:#172033 !important;
}
body.jr-ui-stable #SmSideNavV1SideNav,
body.jr-ui-stable #SmSideCTAsV1 .crd,
body.jr-ui-stable #SmSideCTAsV1 .bg-bx{
  background:#fff !important;
  border:1px solid rgba(23,32,51,.10) !important;
  box-shadow:0 12px 28px rgba(23,32,51,.08) !important;
}
body.jr-ui-stable #SmSideNavV1SideNav :where(a,strong,span),
body.jr-ui-stable #SmSideCTAsV1 :where(h1,h2,h3,h4,h5,h6,p,strong,span,a){
  color:#172033 !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body.jr-ui-stable #SmSideNavV1SideNav a:hover,
body.jr-ui-stable #SmSideNavV1SideNav a.selected{
  color:var(--jr-topic-primary,#9f1239) !important;
  background:rgba(var(--jr-topic-rgb,159,18,57),.06) !important;
}

/* 4) Home — 5 cards de serviços: textos brancos com contraste real */
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-card::before{
  background:linear-gradient(180deg,rgba(7,10,18,.16) 0%,rgba(7,10,18,.44) 45%,rgba(7,10,18,.92) 100%) !important;
}
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy{
  background:rgba(8,12,20,.58) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  backdrop-filter:blur(4px) !important;
}
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy *,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-kicker,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-overlay strong{
  color:#fff !important;
  opacity:1 !important;
  text-shadow:0 3px 12px rgba(0,0,0,.78) !important;
}

/* 5) Redes sociais: ícones sempre visíveis e hover consistente */
body.jr-ui-stable .ac-floating-social{
  z-index:9999 !important;
}
body.jr-ui-stable .ac-floating-social__item{
  color:#fff !important;
}
body.jr-ui-stable .ac-floating-social__item svg{
  display:block !important;
  position:relative !important;
  z-index:3 !important;
  width:24px !important;
  height:24px !important;
  color:#fff !important;
  fill:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.jr-ui-stable .ac-floating-social__item svg path{
  fill:#fff !important;
  opacity:1 !important;
}
body.jr-ui-stable .ac-floating-social__item span{
  color:#fff !important;
}

/* 6) Remanescentes decorativos do pincel nunca aparecem sobre conteúdo */
body.jr-ui-stable picture.pnt-brsh,
body.jr-ui-stable picture:has(img[src*="painbrushstroke"]),
body.jr-ui-stable picture:has(img[src*="sidecta-paintbrush"]){
  display:none !important;
}

/* 7) Tipografia e elementos invisíveis por herança */
body.jr-ui-stable #MainZone .cnt-stl,
body.jr-ui-stable #MainZone .cnt-stl p,
body.jr-ui-stable #MainZone .cnt-stl li{
  opacity:1 !important;
}
body.jr-ui-stable a{
  text-decoration-thickness:auto;
}

@media (max-width:700px){
  body.jr-ui-stable #HeaderZone{padding-bottom:4px !important;}
  body.jr-ui-stable #HeaderZone::after{height:4px !important;min-height:4px !important;max-height:4px !important;}
  body.jr-ui-stable .btn.v1,
  body.jr-ui-stable .btn.v2{
    width:auto !important;
    max-width:100% !important;
    white-space:normal !important;
  }
  body.jr-ui-stable .jr-contact-cta__actions{
    flex-direction:column !important;
    align-items:stretch !important;
  }
  body.jr-ui-stable .jr-contact-cta__actions > *{
    width:100% !important;
  }
}

/* =========================================================
   PATCH 18 — navegação sem submenus + páginas hub com cards
   ========================================================= */

/* Menu principal sem dropdowns */
#HeaderZone #SmHeaderV1TopNav > li,
#HeaderZone #SmHeaderV1TopNav > li > a{
  overflow:visible !important;
}
#HeaderZone .fly-nv,
#HeaderZone .mbl-nv .lvl-2{
  display:none !important;
}

/* Introdução dos hubs */
.jr-hub-intro,
.jr-reformas-hub__header{
  max-width:820px;
  margin:0 auto 34px;
  text-align:center;
}
.jr-hub-intro__eyebrow,
.jr-reformas-hub__eyebrow{
  display:inline-block;
  margin-bottom:10px;
  color:#b3152f;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.jr-hub-intro h2,
.jr-reformas-hub__header h2{
  margin:0 0 12px;
  color:#152033;
  font-size:clamp(1.8rem,3vw,2.65rem);
  line-height:1.1;
}
.jr-hub-intro p,
.jr-reformas-hub__header p{
  margin:0 auto;
  color:#5d6878;
  line-height:1.7;
}

/* Hub de pequenas reformas */
.jr-reformas-hub{
  padding:78px 0;
  background:linear-gradient(180deg,#fffaf6 0%,#f8f3ed 100%);
}
.jr-reformas-hub .mn_tn{
  max-width:1180px;
}
.jr-reformas-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.jr-reformas-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  overflow:hidden;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(161,87,24,.12);
  box-shadow:0 16px 34px rgba(31,36,48,.08);
  text-decoration:none;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.jr-reformas-card:hover,
.jr-reformas-card:focus-visible{
  transform:translateY(-6px);
  box-shadow:0 24px 44px rgba(31,36,48,.14);
  border-color:rgba(196,89,22,.24);
  outline:none;
}
.jr-reformas-card img{
  width:100%;
  height:220px;
  object-fit:cover;
  display:block;
}
.jr-reformas-card__body{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:10px;
  padding:20px 20px 22px;
  color:#202939;
}
.jr-reformas-card__body strong{
  color:#172033;
  font-size:1.18rem;
}
.jr-reformas-card__body em{
  color:#657184;
  font-style:normal;
  line-height:1.6;
}
.jr-reformas-card__body > span{
  margin-top:auto;
  color:#c65a16;
  font-weight:800;
}

/* Painting hub cards: consistent readable body */
#PinturaHubCategorias .jr-pcard,
#PinturaHubTipos .jr-pcard{
  background:#fff !important;
  color:#202939 !important;
}
#PinturaHubCategorias .jr-pcard__body,
#PinturaHubTipos .jr-pcard__body{
  background:#fff !important;
  color:#202939 !important;
}
#PinturaHubCategorias .jr-pcard__title,
#PinturaHubTipos .jr-pcard__title{
  color:#172033 !important;
}
#PinturaHubCategorias .jr-pcard__desc,
#PinturaHubTipos .jr-pcard__desc{
  color:#657184 !important;
}
#PinturaHubCategorias .jr-pcard__tag,
#PinturaHubTipos .jr-pcard__tag,
#PinturaHubCategorias .jr-pcard__cta,
#PinturaHubTipos .jr-pcard__cta{
  color:#b3152f !important;
}

@media (max-width:980px){
  .jr-reformas-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:640px){
  .jr-reformas-hub{padding:54px 0;}
  .jr-reformas-grid{grid-template-columns:1fr;}
  .jr-reformas-card img{height:200px;}
}

/* =========================================================
   PATCH 19 — CONTRASTE FORÇADO E CARDS LEGÍVEIS
   ========================================================= */

/* Cards do hub de pintura: força absoluta de fundo e texto */
body.jr-ui-stable #MainZone #PinturaHubTipos,
body.jr-ui-stable #MainZone #PinturaHubCategorias{
  background:#ffffff !important;
  color:#172033 !important;
}
body.jr-ui-stable #MainZone #PinturaHubTipos .jr-pcard,
body.jr-ui-stable #MainZone #PinturaHubCategorias .jr-pcard{
  background:#ffffff !important;
  color:#172033 !important;
  border:1px solid #dfe5ec !important;
  box-shadow:0 12px 28px rgba(23,32,51,.10) !important;
}
body.jr-ui-stable #MainZone #PinturaHubTipos .jr-pcard__body,
body.jr-ui-stable #MainZone #PinturaHubCategorias .jr-pcard__body{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  min-height:142px !important;
  padding:18px !important;
  background:#ffffff !important;
  color:#172033 !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.jr-ui-stable #MainZone #PinturaHubTipos .jr-pcard__body *,
body.jr-ui-stable #MainZone #PinturaHubCategorias .jr-pcard__body *{
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
}
body.jr-ui-stable #MainZone #PinturaHubTipos .jr-pcard__title,
body.jr-ui-stable #MainZone #PinturaHubCategorias .jr-pcard__title{
  color:#172033 !important;
  font-size:1.08rem !important;
  line-height:1.25 !important;
  font-weight:800 !important;
}
body.jr-ui-stable #MainZone #PinturaHubTipos .jr-pcard__desc,
body.jr-ui-stable #MainZone #PinturaHubCategorias .jr-pcard__desc{
  color:#55657a !important;
  font-size:.92rem !important;
  line-height:1.55 !important;
  font-style:normal !important;
}
body.jr-ui-stable #MainZone #PinturaHubTipos .jr-pcard__tag,
body.jr-ui-stable #MainZone #PinturaHubCategorias .jr-pcard__tag,
body.jr-ui-stable #MainZone #PinturaHubTipos .jr-pcard__cta,
body.jr-ui-stable #MainZone #PinturaHubCategorias .jr-pcard__cta{
  color:#b3152f !important;
  font-weight:800 !important;
}
body.jr-ui-stable #MainZone #PinturaHubTipos > header *,
body.jr-ui-stable #MainZone #PinturaHubCategorias > header *{
  color:#172033 !important;
}

/* Boxes claros e destaques: nunca usar texto branco */
body.jr-ui-stable #MainZone .txt-hlt,
body.jr-ui-stable #MainZone .txt-hlt.bg-bx,
body.jr-ui-stable #MainZone .txt-hlt.alt-bg,
body.jr-ui-stable #MainZone .txt-hlt.lt-bg{
  background:linear-gradient(135deg,#fff7f8 0%,#ffffff 100%) !important;
  color:#172033 !important;
  border:1px solid rgba(179,21,47,.18) !important;
  border-left:5px solid #b3152f !important;
}
body.jr-ui-stable #MainZone .txt-hlt :where(h1,h2,h3,h4,h5,h6,p,strong,span,em,li){
  color:#172033 !important;
  opacity:1 !important;
}
body.jr-ui-stable #MainZone .txt-hlt a:not(.btn){
  color:#8f1630 !important;
  font-weight:800 !important;
}

/* Cards de serviço da Home: fundo de texto escuro + texto branco */
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-card::before{
  background:linear-gradient(180deg,rgba(7,11,18,.20) 0%,rgba(7,11,18,.42) 48%,rgba(7,11,18,.88) 100%) !important;
}
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy{
  background:rgba(8,13,22,.72) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:#fff !important;
}
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy *,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-kicker,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-overlay strong{
  color:#fff !important;
  opacity:1 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.55) !important;
}

/* Qualquer card claro genérico dentro do conteúdo deve herdar texto escuro */
body.jr-ui-stable #MainZone .bg-bx:not(.dk-bg):not(.lk-bg):not(.ulk-bg),
body.jr-ui-stable #MainZone .crd:not(.dk-bg):not(.lk-bg):not(.ulk-bg),
body.jr-ui-stable #MainZone .jr-detail-card,
body.jr-ui-stable #MainZone .jr-reformas-card{
  color:#172033 !important;
}
body.jr-ui-stable #MainZone .bg-bx:not(.dk-bg):not(.lk-bg):not(.ulk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span),
body.jr-ui-stable #MainZone .crd:not(.dk-bg):not(.lk-bg):not(.ulk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span),
body.jr-ui-stable #MainZone .jr-detail-card :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span),
body.jr-ui-stable #MainZone .jr-reformas-card :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span){
  color:inherit !important;
  opacity:1 !important;
}

/* Links/CTAs de cards seguem cor temática e não branco invisível */
body.jr-ui-stable #MainZone .jr-pcard__cta,
body.jr-ui-stable #MainZone .jr-reformas-card__body > span{
  color:#b3152f !important;
}

/* =========================================================
   PATCH 20 — Uniformização da barra colorida abaixo do menu
   Objetivo: manter as cores por página, mas deixar TODAS as
   barras com a mesma espessura, proporção e acabamento.
   Remove máscaras/efeitos irregulares herdados dos perfis pf-*.
   ========================================================= */
body[class*="jr-topic-"] #MainZone::before{
  height:6px !important;
  min-height:6px !important;
  max-height:6px !important;
  width:100% !important;
  display:block !important;
  background:linear-gradient(90deg,var(--jr-topic-primary) 0%,var(--jr-topic-secondary) 72%,var(--jr-neutral-900) 100%) !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
  -webkit-mask-size:auto !important;
  mask-size:auto !important;
  -webkit-mask-repeat:repeat !important;
  mask-repeat:repeat !important;
  border-top:1px solid rgba(255,255,255,.38);
  border-bottom:1px solid rgba(0,0,0,.22);
  box-shadow:none !important;
}

@media (max-width:700px){
  body[class*="jr-topic-"] #MainZone::before{
    height:6px !important;
    min-height:6px !important;
    max-height:6px !important;
  }
}

/* =========================================================
   PATCH 21 — Remover balão de texto dos cards da home
   Objetivo: manter somente o texto branco dentro dos cards,
   sem caixa/bolha escura atrás.
   ========================================================= */
#SmMainstageV1ServicesFeed .jr-service-copy{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
  padding:0 !important;
  border-radius:0 !important;
  backdrop-filter:none !important;
}

#SmMainstageV1ServicesFeed .jr-service-kicker,
#SmMainstageV1ServicesFeed .jr-service-overlay strong,
#SmMainstageV1ServicesFeed .jr-service-copy,
#SmMainstageV1ServicesFeed .jr-service-copy *{
  color:#ffffff !important;
  text-shadow:0 3px 14px rgba(0,0,0,.72) !important;
}

#SmMainstageV1ServicesFeed .jr-service-overlay{
  gap:8px !important;
}

/* =========================================================
   PATCH 22 — Remoção definitiva do balão escuro nos cards da home
   Mantém somente os textos em branco diretamente sobre a imagem.
   ========================================================= */
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy:hover,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy:focus,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy:focus-visible{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
  padding:0 !important;
  border-radius:0 !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy::before,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy::after,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-overlay::before,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-overlay::after{
  content:none !important;
  display:none !important;
}

body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-icon{
  display:none !important;
}

body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-overlay{
  gap:6px !important;
  justify-content:flex-end !important;
  align-items:flex-start !important;
}

body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-kicker,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-overlay strong,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy,
body.jr-ui-stable #SmMainstageV1ServicesFeed .jr-service-copy *{
  color:#ffffff !important;
  opacity:1 !important;
  text-shadow:0 3px 14px rgba(0,0,0,.82) !important;
}


/* =========================================================
   PATCH 23 — Cards principais da home simplificados
   Remove o balão escuro de vez e usa texto branco direto na imagem.
   ========================================================= */
#SmMainstageV1ServicesFeed .jr-home-overlay{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  padding:18px 18px 16px !important;
  gap:0 !important;
}
#SmMainstageV1ServicesFeed .jr-home-card-label{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  background:none !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
#SmMainstageV1ServicesFeed .jr-home-card-kicker,
#SmMainstageV1ServicesFeed .jr-home-card-title{
  display:block !important;
  color:#ffffff !important;
  opacity:1 !important;
  background:none !important;
  text-shadow:0 2px 10px rgba(0,0,0,.92) !important;
}
#SmMainstageV1ServicesFeed .jr-home-card-kicker{
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  margin:0 0 6px 0 !important;
}
#SmMainstageV1ServicesFeed .jr-home-card-title{
  font-size:20px !important;
  line-height:1.15 !important;
  font-weight:800 !important;
  margin:0 !important;
}
#SmMainstageV1ServicesFeed .jr-service-card::before{
  background:linear-gradient(180deg, rgba(0,0,0,.02) 8%, rgba(0,0,0,.10) 42%, rgba(0,0,0,.62) 100%) !important;
}
#SmMainstageV1ServicesFeed .jr-service-card:hover::before,
#SmMainstageV1ServicesFeed .jr-service-card:focus-visible::before{
  background:linear-gradient(180deg, rgba(0,0,0,.02) 8%, rgba(0,0,0,.08) 42%, rgba(0,0,0,.54) 100%) !important;
}
@media (max-width: 900px){
  #SmMainstageV1ServicesFeed .jr-home-card-kicker{font-size:12px !important;}
  #SmMainstageV1ServicesFeed .jr-home-card-title{font-size:18px !important;}
}


/* =========================================================
   PATCH 24 — Força máxima para texto branco nos cards da home
   ========================================================= */
#SmMainstageV1ServicesFeed .jr-service-card .jr-service-overlay,
#SmMainstageV1ServicesFeed .jr-service-card .jr-service-overlay *,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-label,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-label *,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-kicker,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-title,
#SmMainstageV1ServicesFeed .jr-service-card strong,
#SmMainstageV1ServicesFeed .jr-service-card span{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background-color:transparent !important;
  background-image:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
  filter:none !important;
}
#SmMainstageV1ServicesFeed .jr-service-card .jr-service-overlay::before,
#SmMainstageV1ServicesFeed .jr-service-card .jr-service-overlay::after,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-label::before,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-label::after,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-kicker::before,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-kicker::after,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-title::before,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-title::after{
  content:none !important;
  display:none !important;
}
#SmMainstageV1ServicesFeed .jr-service-card .jr-service-overlay,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-label{
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-kicker,
#SmMainstageV1ServicesFeed .jr-service-card .jr-home-card-title{
  text-shadow:0 2px 12px rgba(0,0,0,.96) !important;
}

/* =========================================================
   PATCH 25 — Paletas contextuais + cards no início das páginas
   Base: Patch 24 enviado pelo usuário
   ========================================================= */

/* HOME — remove roxo/vinho e usa azul-petróleo + turquesa, combinando com o hero */
body.jr-topic-institucional{
  --jr-topic-primary:#0b7285 !important;
  --jr-topic-secondary:#0f4c6e !important;
  --jr-topic-rgb:11,114,133 !important;
  --jr-topic-secondary-rgb:15,76,110 !important;
  --jr-topic-surface:#eef8f9 !important;
  --jr-topic-surface-strong:#d9eff1 !important;
  --jr-topic-link:#075d6c !important;
}
body.jr-topic-institucional #MainZone{
  background:radial-gradient(circle at 100% 0%,rgba(25,181,184,.12),transparent 24%),linear-gradient(180deg,#ffffff 0%,#f3fafb 100%) !important;
}
body.jr-topic-institucional .btn.v1,
body.jr-topic-institucional #MainZone .btn.v1,
body.jr-topic-institucional #FooterZone .btn.v1{
  background:linear-gradient(135deg,#0b7285 0%,#0f4c6e 100%) !important;
  border-color:#0b7285 !important;
  color:#fff !important;
}
body.jr-topic-institucional .jr-trust-strip{
  background:linear-gradient(180deg,#effafa 0%,#e7f5f6 100%) !important;
}
body.jr-topic-institucional .jr-trust-strip li{
  border-color:rgba(11,114,133,.18) !important;
}

/* PINTURA — vermelho de tinta + laranja quente */
body.jr-topic-pintura{
  --jr-topic-primary:#b4232f !important;
  --jr-topic-secondary:#e15a24 !important;
  --jr-topic-rgb:180,35,47 !important;
  --jr-topic-secondary-rgb:225,90,36 !important;
  --jr-topic-surface:#fff3f1 !important;
  --jr-topic-surface-strong:#fbded8 !important;
  --jr-topic-link:#941c28 !important;
}
body.jr-topic-pintura #MainZone{
  background:radial-gradient(circle at 100% 0%,rgba(225,90,36,.12),transparent 23%),linear-gradient(180deg,#fffdfc 0%,#fff5f3 100%) !important;
}
body.jr-topic-pintura .jr-pcard-section:nth-of-type(even){
  background:#fff4f2 !important;
}
body.jr-topic-pintura .jr-pcard{
  border-color:rgba(180,35,47,.18) !important;
}
body.jr-topic-pintura .jr-pcard__tag,
body.jr-topic-pintura .jr-pcard__cta{
  color:#b4232f !important;
}

/* PEQUENAS REFORMAS — laranja obra + grafite técnico */
body.jr-topic-reformas{
  --jr-topic-primary:#d05a16 !important;
  --jr-topic-secondary:#4b5563 !important;
  --jr-topic-rgb:208,90,22 !important;
  --jr-topic-secondary-rgb:75,85,99 !important;
  --jr-topic-surface:#fff6ed !important;
  --jr-topic-surface-strong:#f8e0c9 !important;
  --jr-topic-link:#a9430e !important;
}
body.jr-topic-reformas #MainZone{
  background:radial-gradient(circle at 100% 0%,rgba(208,90,22,.12),transparent 23%),linear-gradient(180deg,#fffdf9 0%,#fff6ec 100%) !important;
}
body.jr-topic-reformas .jr-contact-cta{
  background:linear-gradient(135deg,#fff3e6 0%,#f4f6f8 100%) !important;
}
body.jr-topic-reformas .jr-contact-cta__box{
  background:linear-gradient(135deg,#c95112 0%,#8e5b2b 55%,#4b5563 100%) !important;
}

/* ELÉTRICA — azul elétrico + amarelo energia, sem mostarda */
body.jr-topic-eletrica{
  --jr-topic-primary:#1261a0 !important;
  --jr-topic-secondary:#f2a900 !important;
  --jr-topic-rgb:18,97,160 !important;
  --jr-topic-secondary-rgb:242,169,0 !important;
  --jr-topic-surface:#eef6fd !important;
  --jr-topic-surface-strong:#d9eaf8 !important;
  --jr-topic-link:#0d4f84 !important;
}
body.jr-topic-eletrica #MainZone{
  background:radial-gradient(circle at 100% 0%,rgba(242,169,0,.12),transparent 22%),linear-gradient(180deg,#fbfdff 0%,#edf6fd 100%) !important;
}
body.jr-topic-eletrica .jr-eletrica-showcase{
  background:linear-gradient(180deg,#eaf5ff 0%,#f8fbff 100%) !important;
  border-color:rgba(18,97,160,.16) !important;
}
body.jr-topic-eletrica .jr-eletrica-showcase__header h2,
body.jr-topic-eletrica .jr-eletrica-gallery__body h3{
  color:#0d4f84 !important;
}
body.jr-topic-eletrica .jr-eletrica-gallery__item{
  border-color:rgba(18,97,160,.18) !important;
  box-shadow:0 18px 38px rgba(18,97,160,.10) !important;
}
body.jr-topic-eletrica .btn.v1,
body.jr-topic-eletrica #MainZone .btn.v1{
  background:linear-gradient(135deg,#1261a0 0%,#0b75bb 68%,#e9a400 100%) !important;
  color:#fff !important;
}

/* Cards primeiro: cria uma abertura forte antes do restante do conteúdo */
body.jr-topic-eletrica #MainZone > .jr-showcase-first,
body.jr-topic-hidraulica #MainZone > .jr-showcase-first,
body.jr-topic-revestimentos #MainZone > .jr-showcase-first{
  order:-10;
  margin:0 !important;
  padding-top:72px !important;
  padding-bottom:72px !important;
  border-bottom:1px solid rgba(var(--jr-topic-rgb),.14) !important;
}
body.jr-topic-revestimentos #MainZone > .jr-showcase-first{
  background:linear-gradient(180deg,#edf3f6 0%,#f8fafb 100%) !important;
}
body.jr-topic-revestimentos #MainZone > .jr-showcase-first .jr-porcelanato-showcase__header{
  margin-bottom:28px !important;
}

/* Mantém cards no topo com leitura e hover mais refinados */
body.jr-topic-eletrica .jr-eletrica-gallery__item,
body.jr-topic-hidraulica .jr-hidraulica-gallery__item,
body.jr-topic-revestimentos .jr-porcelanato-gallery__item{
  background:#fff !important;
  color:#172033 !important;
}
body.jr-topic-eletrica .jr-eletrica-gallery__body p,
body.jr-topic-hidraulica .jr-hidraulica-gallery__body p,
body.jr-topic-revestimentos .jr-porcelanato-gallery__body p{
  color:#4b5563 !important;
}

/* Home: remove qualquer resto de roxo nos botões/linhas temáticas */
body.jr-topic-institucional #HeaderZone::after,
body.jr-topic-institucional #MainZone::before{
  background:linear-gradient(90deg,#0b7285 0%,#18a6a8 52%,#0f4c6e 100%) !important;
}
body.jr-topic-institucional .jr-footer__cta .btn.v1,
body.jr-topic-institucional #SmCalloutV3 .btn.v1,
body.jr-topic-institucional #SmValuesV2 .btn.v1,
body.jr-topic-institucional #ImageGroupS1 .btn.v1,
body.jr-topic-institucional #ImageGroupV1 .btn.v1{
  background:linear-gradient(135deg,#0b7285,#0f4c6e) !important;
}

@media(max-width:760px){
  body.jr-topic-eletrica #MainZone > .jr-showcase-first,
  body.jr-topic-hidraulica #MainZone > .jr-showcase-first,
  body.jr-topic-revestimentos #MainZone > .jr-showcase-first{
    padding-top:48px !important;
    padding-bottom:48px !important;
  }
}

/* =========================================================
   PATCH 26 — Hero primeiro, cards logo abaixo + nova elétrica
   ========================================================= */

/* Remove a regra do patch anterior que forçava as galerias ao topo */
body.jr-topic-eletrica #MainZone > .jr-showcase-first,
body.jr-topic-hidraulica #MainZone > .jr-showcase-first,
body.jr-topic-revestimentos #MainZone > .jr-showcase-first{
  order:initial !important;
}

/* ELÉTRICA — azul-marinho + ciano técnico, sem amarelo */
body.jr-topic-eletrica{
  --jr-topic-primary:#0a4d8c !important;
  --jr-topic-secondary:#00a6d6 !important;
  --jr-topic-rgb:10,77,140 !important;
  --jr-topic-secondary-rgb:0,166,214 !important;
  --jr-topic-surface:#eef7fb !important;
  --jr-topic-surface-strong:#d8edf5 !important;
  --jr-topic-link:#083f72 !important;
}
body.jr-topic-eletrica #HeaderZone::after,
body.jr-topic-eletrica #MainZone::before{
  background:linear-gradient(90deg,#0a4d8c 0%,#00a6d6 58%,#083f72 100%) !important;
}
body.jr-topic-eletrica #MainZone{
  background:
    radial-gradient(circle at 100% 0%,rgba(0,166,214,.12),transparent 23%),
    linear-gradient(180deg,#fbfdff 0%,#edf7fb 100%) !important;
}
body.jr-topic-eletrica .jr-eletrica-showcase{
  background:linear-gradient(180deg,#eaf7fb 0%,#f8fcfe 100%) !important;
  border-color:rgba(10,77,140,.14) !important;
}
body.jr-topic-eletrica .jr-eletrica-showcase__header h2,
body.jr-topic-eletrica .jr-eletrica-gallery__body h3,
body.jr-topic-eletrica #MainContent h1,
body.jr-topic-eletrica #MainContent h2,
body.jr-topic-eletrica #MainContent h3{
  color:#0a4d8c !important;
}
body.jr-topic-eletrica .jr-eletrica-gallery__item{
  border-color:rgba(10,77,140,.16) !important;
  box-shadow:0 18px 38px rgba(10,77,140,.10) !important;
}
body.jr-topic-eletrica .btn.v1,
body.jr-topic-eletrica #MainZone .btn.v1{
  background:linear-gradient(135deg,#0a4d8c 0%,#0873ae 52%,#00a6d6 100%) !important;
  border-color:#0a4d8c !important;
  color:#fff !important;
}

/* O texto explicativo fica realmente abaixo do título do orçamento */
body.jr-topic-eletrica #SmContentV7 .cnt-gd,
body.jr-topic-hidraulica #SmContentV7 .cnt-gd{
  display:block !important;
  grid-template-columns:1fr !important;
}
body.jr-topic-eletrica #SmContentV7 #SmContentV7Content,
body.jr-topic-hidraulica #SmContentV7 #SmContentV7Content{
  margin-top:16px !important;
  max-width:760px !important;
}
body.jr-topic-eletrica #SmContentV7 #SmContentV7Content p,
body.jr-topic-hidraulica #SmContentV7 #SmContentV7Content p{
  color:#2f4153 !important;
  opacity:1 !important;
}
body.jr-topic-eletrica #SmContentV7 .mrg_tp-30,
body.jr-topic-hidraulica #SmContentV7 .mrg_tp-30{
  margin-top:22px !important;
}

/* Cards imediatamente depois do bloco de orçamento */
body.jr-topic-eletrica #SmContentV7 + .jr-eletrica-showcase,
body.jr-topic-hidraulica #SmContentV7 + .jr-hidraulica-showcase,
body.jr-topic-revestimentos .jr-detail-hero + .jr-porcelanato-showcase{
  margin:0 !important;
  padding-top:64px !important;
  padding-bottom:64px !important;
  border-top:1px solid rgba(var(--jr-topic-rgb),.10) !important;
  border-bottom:1px solid rgba(var(--jr-topic-rgb),.12) !important;
}

@media (max-width:700px){
  body.jr-topic-eletrica #SmContentV7 + .jr-eletrica-showcase,
  body.jr-topic-hidraulica #SmContentV7 + .jr-hidraulica-showcase,
  body.jr-topic-revestimentos .jr-detail-hero + .jr-porcelanato-showcase{
    padding-top:42px !important;
    padding-bottom:42px !important;
  }
}


/* =========================================================
   PATCH 27 — RESPONSIVIDADE, ACESSIBILIDADE E ACABAMENTO
   Base: site(3).zip
   ========================================================= */
:root{--nx-navy:#073b5c;--nx-navy-deep:#05283f;--nx-teal:#0aa6b7;--nx-cyan:#19c0ca;--nx-orange:#f59e0b;--nx-text:#172033;--nx-muted:#5f6b7a;--nx-surface:#fff;--nx-radius:18px;--nx-shadow:0 16px 40px rgba(5,40,63,.12);--nx-shadow-hover:0 20px 48px rgba(5,40,63,.18);}
html{scroll-behavior:smooth;overflow-x:hidden}body{overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg,video,canvas{max-width:100%;height:auto}*{box-sizing:border-box}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--nx-orange)!important;outline-offset:3px!important}button,.btn,[class*="btn"]{transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}button:hover,.btn:hover,[class*="btn"]:hover{transform:translateY(-2px)}
#SmHeaderV1TopNav a{min-height:48px;display:flex;align-items:center}#SmHeaderV1TopNav{align-items:center}header button{min-width:44px;min-height:44px}
.hero-bnr-img{display:block;width:100%;overflow:hidden;background:#f6fafc}.hero-bnr-img img{display:block;width:100%;height:auto;object-fit:cover;object-position:center}.hero-bnr-cnt{position:relative;z-index:2}
main section{max-width:100%}.mn_,.mn{width:min(100% - 32px,1440px);margin-inline:auto}
#SmMainstageV1ServicesFeed{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px!important;align-items:stretch}#SmMainstageV1ServicesFeed>li{min-width:0!important;width:auto!important}#SmMainstageV1ServicesFeed .jr-service-card{height:100%;min-height:160px;border-radius:var(--nx-radius);overflow:hidden;box-shadow:var(--nx-shadow);transition:transform .25s ease,box-shadow .25s ease}#SmMainstageV1ServicesFeed .jr-service-card:hover{transform:translateY(-5px);box-shadow:var(--nx-shadow-hover)}#SmMainstageV1ServicesFeed .jr-service-media,#SmMainstageV1ServicesFeed .jr-service-media img{width:100%;height:100%;display:block}#SmMainstageV1ServicesFeed .jr-service-media img{object-fit:cover}#SmMainstageV1ServicesFeed .jr-home-card-kicker,#SmMainstageV1ServicesFeed .jr-home-card-title{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.85)!important}
.jr-footer,.jr-footer *{box-sizing:border-box}.jr-footer__inner{width:min(100% - 32px,1440px);margin-inline:auto}.ac-floating-social{right:18px!important;bottom:18px!important;z-index:90!important}.ac-floating-social__item{width:50px!important;height:50px!important;display:grid!important;place-items:center!important;box-shadow:0 10px 28px rgba(0,0,0,.18)!important}table{max-width:100%}pre,code{white-space:pre-wrap;overflow-wrap:anywhere}
@media (max-width:1279px){.mn_,.mn{width:min(100% - 40px,1100px)}#SmMainstageV1ServicesFeed{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px!important}#SmMainstageV1ServicesFeed>li:last-child{grid-column:span 2}.hero-bnr-img img{max-height:620px;object-position:center}.jr-footer__inner{width:min(100% - 40px,1100px)}}
@media (max-width:699px){:root{--nx-radius:14px}body{font-size:15px}.mn_,.mn{width:calc(100% - 24px)}h1,.fnt_t-1{font-size:clamp(1.8rem,8vw,2.5rem)!important;line-height:1.08!important}h2,.fnt_t-2{font-size:clamp(1.45rem,6vw,2rem)!important;line-height:1.15!important}h3,.fnt_t-3{font-size:clamp(1.2rem,5vw,1.6rem)!important}p,li{overflow-wrap:anywhere}.hero-bnr-img img{width:100%;max-height:none;object-fit:cover;object-position:center top}#SmMainstageV1ServicesFeed{grid-template-columns:1fr!important;gap:14px!important}#SmMainstageV1ServicesFeed>li:last-child{grid-column:auto}#SmMainstageV1ServicesFeed .jr-service-card{min-height:150px}#SmMainstageV1ServicesFeed .jr-home-card-kicker{font-size:11px!important}#SmMainstageV1ServicesFeed .jr-home-card-title{font-size:18px!important}.ac-floating-social{right:10px!important;bottom:12px!important;gap:8px!important}.ac-floating-social__item{width:44px!important;height:44px!important}.jr-footer__inner{width:calc(100% - 24px)}.jr-footer__grid{grid-template-columns:1fr!important;gap:24px!important}input,select,textarea{font-size:16px!important;max-width:100%}.btn,button,a[role="button"]{min-height:44px}}
@media (max-width:380px){.mn_,.mn{width:calc(100% - 18px)}#SmMainstageV1ServicesFeed .jr-service-card{min-height:138px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* =========================================================
   PATCH 28 — Redes sociais estáveis + menu mobile/tablet
   + diferenciação visual da abertura da página Elétrica
   Base: site_patch_27_profissional_responsivo_seguranca(1).zip
   ========================================================= */

/* 1) REDES SOCIAIS — círculos estáveis, sem rótulo invadindo o ícone */
body.jr-ui-stable .ac-floating-social{
  position:fixed !important;
  right:20px !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  z-index:9998 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  width:56px !important;
  gap:12px !important;
  pointer-events:none !important;
}
body.jr-ui-stable .ac-floating-social__item,
body.jr-ui-stable .ac-floating-social__item:hover,
body.jr-ui-stable .ac-floating-social__item:focus,
body.jr-ui-stable .ac-floating-social__item:focus-visible{
  pointer-events:auto !important;
  width:50px !important;
  height:50px !important;
  min-width:50px !important;
  min-height:50px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  transform:none !important;
  border:1px solid rgba(255,255,255,.35) !important;
  box-shadow:0 9px 24px rgba(4,24,42,.26) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
body.jr-ui-stable .ac-floating-social__item::before{
  inset:0 !important;
  border-radius:50% !important;
}
body.jr-ui-stable .ac-floating-social__item span{
  display:none !important;
  width:0 !important;
  max-width:0 !important;
  opacity:0 !important;
  margin:0 !important;
}
body.jr-ui-stable .ac-floating-social__item svg{
  position:relative !important;
  z-index:2 !important;
  display:block !important;
  width:23px !important;
  height:23px !important;
  min-width:23px !important;
  min-height:23px !important;
  color:#fff !important;
  fill:#fff !important;
  transform:none !important;
}
body.jr-ui-stable .ac-floating-social__item:hover,
body.jr-ui-stable .ac-floating-social__item:focus-visible{
  filter:brightness(1.08) saturate(1.05) !important;
  box-shadow:0 12px 30px rgba(4,24,42,.32) !important;
}

/* 2) ELÉTRICA — somente a abertura ganha identidade própria.
      Galerias/cards/conteúdo abaixo continuam com a paleta existente. */
body.jr-topic-eletrica #SmContentV7{
  position:relative !important;
  background:
    radial-gradient(circle at 87% 18%,rgba(0,166,214,.22),transparent 19%),
    linear-gradient(135deg,#062f52 0%,#0a4d74 48%,#0b6d86 100%) !important;
  border-bottom:1px solid rgba(0,166,214,.24) !important;
}
body.jr-topic-eletrica #SmContentV7::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(115deg,rgba(255,255,255,.05),transparent 36%,rgba(0,188,212,.08)) !important;
  z-index:0 !important;
}
body.jr-topic-eletrica #SmContentV7 > *{
  position:relative !important;
  z-index:1 !important;
}
/* painel branco existente é mantido para preservar contraste/textos */
body.jr-topic-eletrica #SmContentV7 .cnt-gd{
  box-shadow:0 18px 42px rgba(2,31,53,.16) !important;
}

/* 3) MENU MOBILE/TABLET — navegação visível até 1279px */
@media (max-width:1279px){
  #SmHeaderV1 .mn_ > .flx.f_m.f_sb{
    min-height:68px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
  }
  #SmHeaderV1 .lg-bx{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 !important;
    padding:8px 0 !important;
  }
  #SmHeaderV1 .lg-bx::after{
    content:"Nex-Obras JR" !important;
    display:block !important;
    color:#073b5c !important;
    font-weight:900 !important;
    font-size:clamp(17px,2.6vw,22px) !important;
    letter-spacing:-.02em !important;
    white-space:nowrap !important;
  }
  #SmHeaderV1 .mnu-btn{
    display:inline-grid !important;
    place-items:center !important;
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    min-height:48px !important;
    padding:0 !important;
    border:1px solid rgba(7,59,92,.16) !important;
    border-radius:13px !important;
    background:#073b5c !important;
    color:#fff !important;
    box-shadow:0 8px 22px rgba(7,59,92,.18) !important;
  }
  #SmHeaderV1 .mnu-btn svg{
    width:25px !important;
    height:25px !important;
    color:#fff !important;
    fill:#fff !important;
  }
  #SmHeaderV1TopNav{
    display:none !important;
  }
  #SmHeaderV1 .ato.str.flx.f_clm.f_b{
    flex:0 0 auto !important;
  }
  #SmHeaderV1MobileNav{
    position:fixed !important;
    inset:0 0 0 auto !important;
    width:min(92vw,420px) !important;
    height:100dvh !important;
    max-height:100dvh !important;
    margin:0 !important;
    padding:0 0 28px !important;
    border:0 !important;
    border-left:1px solid rgba(7,59,92,.14) !important;
    background:#fff !important;
    color:#172033 !important;
    box-shadow:-22px 0 54px rgba(5,40,63,.24) !important;
    overflow:auto !important;
    z-index:10020 !important;
  }
  #SmHeaderV1MobileNav:not(:popover-open){
    display:none !important;
  }
  #SmHeaderV1MobileNav:popover-open{
    display:block !important;
  }
  #SmHeaderV1MobileNav::backdrop{
    background:rgba(4,22,38,.56) !important;
    backdrop-filter:blur(2px) !important;
  }
  #SmHeaderV1MobileNav > ul:first-child{
    position:sticky !important;
    top:0 !important;
    z-index:3 !important;
    background:#f7fafc !important;
    min-height:66px !important;
  }
  #SmHeaderV1MobileNav .mbl-nv ul{
    display:block !important;
    margin:0 !important;
    padding:10px 18px !important;
  }
  #SmHeaderV1MobileNav .mbl-nv li{
    display:block !important;
    border-bottom:1px solid #e7edf2 !important;
    padding:0 !important;
  }
  #SmHeaderV1MobileNav .mbl-nv a{
    display:flex !important;
    align-items:center !important;
    min-height:56px !important;
    padding:10px 8px !important;
    color:#102a3b !important;
    font-size:17px !important;
    font-weight:750 !important;
    text-decoration:none !important;
  }
  #SmHeaderV1MobileNav .mbl-nv a:hover,
  #SmHeaderV1MobileNav .mbl-nv a:focus-visible{
    color:#087b93 !important;
    background:#eef8fa !important;
    border-radius:10px !important;
  }
  #SmHeaderV1MultiButton{
    padding:0 18px !important;
  }
  #SmHeaderV1MultiButton ul{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  #SmHeaderV1MultiButton li,
  #SmHeaderV1MultiButton .btn{
    width:100% !important;
  }
  #SmHeaderV1Social{
    padding:10px 18px 0 !important;
  }
  body.jr-ui-stable .ac-floating-social{
    right:12px !important;
    top:auto !important;
    bottom:14px !important;
    transform:none !important;
    flex-direction:row !important;
    width:auto !important;
    gap:8px !important;
  }
  body.jr-ui-stable .ac-floating-social__item,
  body.jr-ui-stable .ac-floating-social__item:hover,
  body.jr-ui-stable .ac-floating-social__item:focus-visible{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
  }
}

@media (max-width:699px){
  #SmHeaderV1 .mn_ > .flx.f_m.f_sb{min-height:62px !important;}
  #SmHeaderV1 .mnu-btn{width:44px !important;height:44px !important;min-width:44px !important;min-height:44px !important;}
  #SmHeaderV1MobileNav{width:min(94vw,380px) !important;}
  body.jr-ui-stable .ac-floating-social__item,
  body.jr-ui-stable .ac-floating-social__item:hover,
  body.jr-ui-stable .ac-floating-social__item:focus-visible{
    width:43px !important;height:43px !important;min-width:43px !important;min-height:43px !important;
  }
  body.jr-ui-stable .ac-floating-social__item svg{width:21px !important;height:21px !important;min-width:21px !important;min-height:21px !important;}
}


/* =========================================================
   PATCH 29 — Elétrica volta ao padrão + hero de Porcelanato
   Base: Patch 28
   ========================================================= */

/* ELÉTRICA — volta ao MESMO padrão estrutural da Hidráulica.
   A diferença fica somente nos acentos cromáticos da abertura. */
body.jr-topic-eletrica #SmContentV7{
  position:relative !important;
  background:transparent !important;
  border-bottom:0 !important;
}
body.jr-topic-eletrica #SmContentV7::after{
  content:none !important;
  display:none !important;
}
body.jr-topic-eletrica #SmContentV7 > *{
  position:initial !important;
  z-index:auto !important;
}
body.jr-topic-eletrica #SmContentV7 .mn_ch.bg-bx.lk-bg{
  box-shadow:0 18px 42px rgba(8,48,77,.10) !important;
  border-bottom:2px solid #ef9f17 !important;
}
body.jr-topic-eletrica #SmContentV7 #SmContentV7Kicker .fnt_t-k{
  color:#8c5a00 !important;
  border-color:#ef9f17 !important;
}
body.jr-topic-eletrica #SmContentV7 #SmContentV7Header .fnt_t-1{
  color:#123f63 !important;
}
body.jr-topic-eletrica #SmContentV7 #SmContentV7Content p{
  color:#334155 !important;
}
body.jr-topic-eletrica #SmContentV7 .btn.v1{
  background:linear-gradient(135deg,#123f63 0%,#176a91 72%,#ef9f17 100%) !important;
  border-color:#123f63 !important;
  color:#fff !important;
}

/* PORCELANATO — passa a usar o mesmo padrão visual de hero das páginas
   Elétrica/Hidráulica, sem alterar os textos e seções existentes. */
body.jr-topic-revestimentos #SmContentV7{
  position:relative !important;
  background:transparent !important;
}
body.jr-topic-revestimentos #SmContentV7 .mn_ch.bg-bx.lk-bg{
  box-shadow:0 18px 42px rgba(42,59,69,.10) !important;
  border-bottom:2px solid #91a8b8 !important;
}
body.jr-topic-revestimentos #SmContentV7 #SmContentV7Kicker .fnt_t-k{
  color:#526975 !important;
  border-color:#91a8b8 !important;
}
body.jr-topic-revestimentos #SmContentV7 #SmContentV7Header .fnt_t-1{
  color:#445763 !important;
}
body.jr-topic-revestimentos #SmContentV7 #SmContentV7Content p{
  color:#43525c !important;
}
body.jr-topic-revestimentos #SmContentV7 .btn.v1{
  background:linear-gradient(135deg,#445763 0%,#617987 58%,#91a8b8 100%) !important;
  border-color:#445763 !important;
  color:#fff !important;
}
body.jr-topic-revestimentos #SmContentV7 > picture.bg.half img{
  object-fit:cover !important;
  object-position:center !important;
}

@media (max-width:1279px){
  body.jr-topic-revestimentos #SmContentV7 > picture.bg.half img{
    object-position:center 58% !important;
  }
}

/* =========================================================
   PATCH 30 — HERO PADRONIZADA: HIDRÁULICA / ELÉTRICA / PORCELANATO
   Mantém todo o conteúdo existente; apenas padroniza a composição visual.
   ========================================================= */

/* As três páginas usam exatamente a mesma geometria da hero da Hidráulica. */
body.jr-topic-hidraulica #SmContentV7,
body.jr-topic-eletrica #SmContentV7,
body.jr-topic-revestimentos #SmContentV7{
  position:relative !important;
  min-height:480px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  overflow:hidden !important;
  background:#fff !important;
}

body.jr-topic-hidraulica #SmContentV7 > picture.bg.half,
body.jr-topic-eletrica #SmContentV7 > picture.bg.half,
body.jr-topic-revestimentos #SmContentV7 > picture.bg.half{
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:50% !important;
  height:100% !important;
  margin:0 !important;
  overflow:hidden !important;
}

body.jr-topic-hidraulica #SmContentV7 > picture.bg.half img,
body.jr-topic-eletrica #SmContentV7 > picture.bg.half img,
body.jr-topic-revestimentos #SmContentV7 > picture.bg.half img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

body.jr-topic-hidraulica #SmContentV7 > .mn_ch.bg-bx.lk-bg,
body.jr-topic-eletrica #SmContentV7 > .mn_ch.bg-bx.lk-bg,
body.jr-topic-revestimentos #SmContentV7 > .mn_ch.bg-bx.lk-bg{
  position:relative !important;
  z-index:2 !important;
  width:70% !important;
  max-width:none !important;
  min-height:360px !important;
  margin:88px 0 0 30% !important;
  border-radius:0 !important;
  background:#fff !important;
  overflow:hidden !important;
  box-shadow:0 18px 42px rgba(8,48,77,.10) !important;
}

body.jr-topic-hidraulica #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg,
body.jr-topic-eletrica #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg,
body.jr-topic-revestimentos #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  opacity:.94 !important;
}

body.jr-topic-hidraulica #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg img,
body.jr-topic-eletrica #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg img,
body.jr-topic-revestimentos #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

body.jr-topic-hidraulica #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
body.jr-topic-eletrica #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
body.jr-topic-revestimentos #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
  position:relative !important;
  z-index:2 !important;
  padding:42px 52px 38px !important;
}

body.jr-topic-hidraulica #SmContentV7 .cnt-gd,
body.jr-topic-eletrica #SmContentV7 .cnt-gd,
body.jr-topic-revestimentos #SmContentV7 .cnt-gd{
  display:block !important;
  padding-top:26px !important;
}

body.jr-topic-hidraulica #SmContentV7 #SmContentV7Header .fnt_t-1,
body.jr-topic-eletrica #SmContentV7 #SmContentV7Header .fnt_t-1,
body.jr-topic-revestimentos #SmContentV7 #SmContentV7Header .fnt_t-1{
  display:block !important;
  max-width:760px !important;
  font-size:clamp(34px,3vw,52px) !important;
  line-height:1.08 !important;
  letter-spacing:-.025em !important;
}

body.jr-topic-hidraulica #SmContentV7 #SmContentV7Content,
body.jr-topic-eletrica #SmContentV7 #SmContentV7Content,
body.jr-topic-revestimentos #SmContentV7 #SmContentV7Content{
  max-width:760px !important;
  margin-top:14px !important;
}

/* Identidades cromáticas diferentes, mantendo a mesma estrutura. */
body.jr-topic-hidraulica #SmContentV7 > .mn_ch.bg-bx.lk-bg{border-bottom:2px solid #16a6c8 !important;}
body.jr-topic-hidraulica #SmContentV7 #SmContentV7Kicker .fnt_t-k{color:#0b789d !important;border-color:#0b789d !important;}
body.jr-topic-hidraulica #SmContentV7 #SmContentV7Header .fnt_t-1{color:#0d67ad !important;}

body.jr-topic-eletrica #SmContentV7 > .mn_ch.bg-bx.lk-bg{border-bottom:2px solid #f2a900 !important;}
body.jr-topic-eletrica #SmContentV7 #SmContentV7Kicker .fnt_t-k{color:#b36a00 !important;border-color:#f2a900 !important;}
body.jr-topic-eletrica #SmContentV7 #SmContentV7Header .fnt_t-1{color:#123f63 !important;}
body.jr-topic-eletrica #SmContentV7 .btn.v1{background:linear-gradient(135deg,#123f63 0%,#176a91 72%,#f2a900 100%) !important;border-color:#123f63 !important;color:#fff !important;}

body.jr-topic-revestimentos #SmContentV7 > .mn_ch.bg-bx.lk-bg{border-bottom:2px solid #91a8b8 !important;}
body.jr-topic-revestimentos #SmContentV7 #SmContentV7Kicker .fnt_t-k{color:#526975 !important;border-color:#91a8b8 !important;}
body.jr-topic-revestimentos #SmContentV7 #SmContentV7Header .fnt_t-1{color:#445763 !important;}
body.jr-topic-revestimentos #SmContentV7 .btn.v1{background:linear-gradient(135deg,#445763 0%,#617987 58%,#91a8b8 100%) !important;border-color:#445763 !important;color:#fff !important;}

@media (max-width:1279px){
  body.jr-topic-hidraulica #SmContentV7,
  body.jr-topic-eletrica #SmContentV7,
  body.jr-topic-revestimentos #SmContentV7{
    min-height:430px !important;
  }
  body.jr-topic-hidraulica #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-eletrica #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-revestimentos #SmContentV7 > .mn_ch.bg-bx.lk-bg{
    width:72% !important;
    margin-left:28% !important;
    margin-top:62px !important;
  }
  body.jr-topic-hidraulica #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-eletrica #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-revestimentos #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
    padding:34px 38px 32px !important;
  }
}

@media (max-width:700px){
  body.jr-topic-hidraulica #SmContentV7,
  body.jr-topic-eletrica #SmContentV7,
  body.jr-topic-revestimentos #SmContentV7{
    display:flex !important;
    flex-direction:column !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  body.jr-topic-hidraulica #SmContentV7 > picture.bg.half,
  body.jr-topic-eletrica #SmContentV7 > picture.bg.half,
  body.jr-topic-revestimentos #SmContentV7 > picture.bg.half{
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    height:280px !important;
    order:1 !important;
  }
  body.jr-topic-hidraulica #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-eletrica #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-revestimentos #SmContentV7 > .mn_ch.bg-bx.lk-bg{
    width:100% !important;
    min-height:0 !important;
    margin:0 !important;
    order:2 !important;
    box-shadow:none !important;
  }
  body.jr-topic-hidraulica #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-eletrica #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-revestimentos #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
    padding:30px 22px 34px !important;
  }
  body.jr-topic-hidraulica #SmContentV7 #SmContentV7Header .fnt_t-1,
  body.jr-topic-eletrica #SmContentV7 #SmContentV7Header .fnt_t-1,
  body.jr-topic-revestimentos #SmContentV7 #SmContentV7Header .fnt_t-1{
    font-size:clamp(30px,9vw,40px) !important;
  }
}


/* =========================================================
   PATCH 32 — Nossos serviços + galeria profissional
   ========================================================= */
.jr-section-kicker{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:rgba(13,129,188,.10);color:#0f598b;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.jr-section-heading{max-width:760px;margin-bottom:28px}.jr-section-heading--center{text-align:center;margin-inline:auto}.jr-section-heading h2{margin:16px 0 12px;font-size:clamp(2rem,3vw,3rem);line-height:1.08;color:#153856}.jr-section-heading p{font-size:1.05rem;line-height:1.7;color:#516579}
.jr-services-hero{padding:64px 0 56px;background:linear-gradient(135deg,#f8fbff 0%,#eef6fb 55%,#fdfdfd 100%)}
.jr-services-hero__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:30px;align-items:stretch}.jr-services-hero__content,.jr-services-hero__panel{background:#fff;border:1px solid rgba(13,67,103,.08);border-radius:28px;box-shadow:0 22px 60px rgba(10,41,67,.08)}.jr-services-hero__content{padding:36px 36px 30px}.jr-services-hero__content h1{margin:18px 0 16px;font-size:clamp(2.2rem,4vw,4rem);line-height:1.02;color:#143754}.jr-services-hero__content p{font-size:1.07rem;line-height:1.8;color:#4d6378;max-width:62ch}.jr-services-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}.jr-services-hero__actions .btn.v2{background:#fff;border:2px solid #1974a8;color:#1974a8}.jr-services-hero__actions .btn.v2:hover,.jr-services-hero__actions .btn.v2:focus-visible{background:#1974a8;color:#fff}.jr-services-hero__highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:28px 0 0}.jr-services-hero__highlights li{padding:14px 16px;border-radius:18px;background:#f4f9fd;border:1px solid rgba(25,116,168,.10);color:#264760;font-weight:700}.jr-services-hero__panel{padding:28px;display:flex;align-items:center;justify-content:center}.jr-services-mini-card{width:100%;padding:28px;border-radius:22px;background:linear-gradient(180deg,#103d63 0%,#0f7cb2 100%);color:#fff}.jr-services-mini-card strong{display:block;font-size:1.25rem;margin-bottom:16px}.jr-services-mini-card ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}.jr-services-mini-card li{position:relative;padding-left:22px;line-height:1.5}.jr-services-mini-card li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:50%;background:#ffb11b}
.jr-services-hub{background:#fff}.jr-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.jr-service-card-pro{padding:28px 24px;border-radius:24px;background:#fff;border:1px solid rgba(17,66,103,.09);box-shadow:0 18px 45px rgba(14,48,74,.07);transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease}.jr-service-card-pro:hover,.jr-service-card-pro:focus-within{transform:translateY(-4px);box-shadow:0 22px 52px rgba(14,48,74,.12);border-color:rgba(25,116,168,.22)}.jr-service-card-pro__icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#0fb7d4,#2b66ff);font-size:1.6rem;margin-bottom:16px}.jr-service-card-pro h3{margin:0 0 10px;color:#143754;font-size:1.35rem}.jr-service-card-pro p{margin:0 0 18px;color:#54687a;line-height:1.7}.jr-service-card-pro a{font-weight:800;color:#1776ab;text-decoration:none}.jr-service-card-pro a:hover,.jr-service-card-pro a:focus-visible{color:#0f598b;text-decoration:underline}
.jr-services-process{background:#f3f8fc}.jr-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.jr-process-grid article{padding:28px 22px;border-radius:24px;background:#fff;border:1px solid rgba(17,66,103,.08);box-shadow:0 18px 42px rgba(14,48,74,.06)}.jr-process-grid span{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#ffb11b,#ff8a00);color:#173754;font-weight:900;margin-bottom:16px}.jr-process-grid h3{margin:0 0 10px;color:#143754;font-size:1.15rem}.jr-process-grid p{margin:0;color:#576b7d;line-height:1.7}
.jr-services-gallery-cta{background:#fff}.jr-gallery-cta-box{display:grid;grid-template-columns:minmax(0,1.2fr) auto;gap:24px;align-items:center;padding:34px;border-radius:30px;background:linear-gradient(135deg,#143754 0%,#156fa4 100%);color:#fff;box-shadow:0 24px 58px rgba(12,47,73,.18)}.jr-gallery-cta-box h2{margin:16px 0 12px;color:#fff;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.1}.jr-gallery-cta-box p{margin:0;color:rgba(255,255,255,.9);line-height:1.8;max-width:62ch}.jr-gallery-cta-box__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.jr-gallery-cta-box .btn.v2{background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.35);color:#fff}
.jr-gallery-hero{background:linear-gradient(135deg,#f7fbfe 0%,#edf6fb 58%,#ffffff 100%)}.jr-gallery-hero__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:24px;align-items:start}.jr-gallery-hero h1{margin:16px 0 14px;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.02;color:#143754}.jr-gallery-hero p{max-width:64ch;color:#53697d;line-height:1.8;font-size:1.06rem}.jr-gallery-hero__note{padding:24px;border-radius:22px;background:#fff;border:1px solid rgba(17,66,103,.08);box-shadow:0 18px 42px rgba(14,48,74,.06);color:#516579}.jr-gallery-hero__note strong{display:block;color:#143754;margin-bottom:10px;font-size:1.1rem}
.jr-gallery-section{background:#fff}.jr-gallery-filterbar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px}.jr-gallery-filter{border:none;cursor:pointer;padding:12px 18px;border-radius:999px;background:#edf4f9;color:#33546f;font-weight:800;transition:.2s ease}.jr-gallery-filter:hover,.jr-gallery-filter:focus-visible{background:#dceaf4;color:#143754}.jr-gallery-filter.is-active{background:linear-gradient(135deg,#0f7eb4,#14547f);color:#fff;box-shadow:0 14px 32px rgba(15,108,155,.18)}.jr-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.jr-gallery-card{padding:24px;border-radius:28px;background:#fff;border:1px solid rgba(17,66,103,.08);box-shadow:0 20px 50px rgba(12,47,73,.08)}.jr-gallery-card__top{margin-bottom:18px}.jr-gallery-badge{display:inline-block;padding:8px 12px;border-radius:999px;background:rgba(21,111,164,.10);color:#0f5d90;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.jr-gallery-card h2{margin:14px 0 10px;font-size:1.55rem;line-height:1.15;color:#143754}.jr-gallery-card p{margin:0;color:#566a7c;line-height:1.7}.jr-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.jr-compare{position:relative;margin:0;border-radius:22px;overflow:hidden;min-height:240px;background:#e7eef4;border:1px solid rgba(17,66,103,.06)}.jr-compare img{width:100%;height:100%;object-fit:cover;display:block}.jr-compare--before img{filter:grayscale(1) brightness(.58) saturate(.6)}.jr-compare figcaption{position:absolute;top:14px;left:14px;padding:8px 12px;border-radius:999px;background:rgba(20,55,84,.88);color:#fff;font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.jr-compare--after figcaption{background:linear-gradient(135deg,#1293c5,#ff9800)}
.pd_v-60{padding-top:60px;padding-bottom:60px}
@media (max-width:1279px){.jr-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jr-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jr-gallery-grid{grid-template-columns:1fr}}
@media (max-width:900px){.jr-services-hero__grid,.jr-gallery-hero__grid,.jr-gallery-cta-box{grid-template-columns:1fr}.jr-gallery-cta-box__actions{justify-content:flex-start}}
@media (max-width:699px){.jr-services-hero{padding:42px 0 36px}.jr-services-hero__content,.jr-services-hero__panel,.jr-service-card-pro,.jr-gallery-card,.jr-process-grid article,.jr-gallery-cta-box{padding:22px}.jr-services-hero__highlights,.jr-services-grid,.jr-process-grid{grid-template-columns:1fr}.jr-compare-grid{grid-template-columns:1fr}.jr-compare{min-height:220px}.jr-gallery-filterbar{gap:10px}.jr-gallery-filter{width:100%;text-align:center}.pd_v-60{padding-top:42px;padding-bottom:42px}}

/* PATCH 33 - refinamentos página Nossos serviços e selos */
.jr-services-hero__content--wide{grid-column:1 / -1;max-width:1120px;margin:0 auto}
.jr-services-hero__content--wide p + p{margin-top:14px}
.jr-services-hero__highlights li{background:#f7fbff;color:#1d4563}
.jr-services-hero__highlights li:last-child{grid-column:span 2}
@media (max-width:699px){.jr-services-hero__highlights li:last-child{grid-column:auto}}
\n\n/* =========================================================\n   PATCH 35 — menu unificado, paletas por serviço e limpeza da home\n   ========================================================= */\n\n/* Cabeçalho com a mesma altura, largura e alinhamento em todas as páginas. */\n#SmHeaderV1 .mn_ > .flx.f_m.f_sb{\n  min-height:80px !important;\n  align-items:center !important;\n}\n#SmHeaderV1TopNav{\n  width:100% !important;\n  align-items:stretch !important;\n}\n#SmHeaderV1TopNav > li > a{\n  min-height:80px !important;\n  display:flex !important;\n  align-items:center !important;\n  padding-top:0 !important;\n  padding-bottom:0 !important;\n}\n#SmHeaderV1 .sw-1280.pd_tp.pd_bt{\n  padding-top:0 !important;\n  padding-bottom:0 !important;\n  display:flex !important;\n  align-items:center !important;\n}\n#SmHeaderV1 .sw-1280.pd_tp.pd_bt .btn.v1.sml{\n  min-height:48px !important;\n  padding:0 30px !important;\n  display:inline-flex !important;\n  align-items:center !important;\n  justify-content:center !important;\n}\n\n/* Home: após retirar subtítulo/CTA, mantém respiro profissional e não encolhe o menu. */\nbody.jr-topic-institucional #SmMainstageV1 .hero-bnr-cnt{padding-top:34px !important;}\nbody.jr-topic-institucional #SmMainstageV1Content{margin-bottom:18px !important;}\nbody.jr-topic-institucional #SmMainstageV1Content .fnt_t-big{margin-bottom:0 !important;}\n\n/* HIDRÁULICA é a única página com identidade azul/água. */\nbody.jr-topic-hidraulica{\n  --jr-accent:#0d7fa8;\n  --jr-accent-2:#20b8c9;\n  --jr-ink:#0d5f87;\n}\n\n/* ELÉTRICA: grafite + âmbar, removendo o azul como cor dominante. */\nbody.jr-topic-eletrica{\n  --jr-accent:#f3a500;\n  --jr-accent-2:#ffc23d;\n  --jr-ink:#40372a;\n}\nbody.jr-topic-eletrica #SmHeaderV1{border-bottom-color:#f3a500 !important;}\nbody.jr-topic-eletrica #SmContentV7 > .mn_ch.bg-bx.lk-bg{border-bottom-color:#f3a500 !important;}\nbody.jr-topic-eletrica #SmContentV7 #SmContentV7Kicker .fnt_t-k{color:#9a6400 !important;border-color:#f3a500 !important;}\nbody.jr-topic-eletrica #SmContentV7 #SmContentV7Header .fnt_t-1{color:#3f372b !important;}\nbody.jr-topic-eletrica #SmContentV7 #SmContentV7Content p{color:#544b3d !important;}\nbody.jr-topic-eletrica #SmContentV7 .btn.v1,\nbody.jr-topic-eletrica #SmHeaderV1 .btn.v1{\n  background:linear-gradient(135deg,#4a4031 0%,#78602d 58%,#f3a500 100%) !important;\n  border-color:#6f5829 !important;\n  color:#fff !important;\n}\nbody.jr-topic-eletrica .jr-topic-gallery,\nbody.jr-topic-eletrica .jr-service-gallery,\nbody.jr-topic-eletrica .lt-bg{--jr-page-accent:#f3a500;}\n\n/* NOSSOS SERVIÇOS: verde petróleo + dourado, sem azul dominante. */\nbody.jr-topic-servicos{\n  --jr-services-accent:#2e7d64;\n  --jr-services-accent-2:#d99a2b;\n  --jr-services-ink:#24473c;\n}\nbody.jr-topic-servicos #SmHeaderV1{border-bottom-color:#2e7d64 !important;}\nbody.jr-topic-servicos #SmHeaderV1 .btn.v1{\n  background:linear-gradient(135deg,#285a49 0%,#2e7d64 72%,#d99a2b 100%) !important;\n  border-color:#285a49 !important;\n  color:#fff !important;\n}\nbody.jr-topic-servicos .jr-services-hero{\n  background:linear-gradient(135deg,#f7fbf8 0%,#edf6f1 58%,#fffaf1 100%) !important;\n}\nbody.jr-topic-servicos .jr-section-kicker{background:rgba(46,125,100,.11) !important;color:#2e6d59 !important;}\nbody.jr-topic-servicos .jr-services-hero__content h1,\nbody.jr-topic-servicos .jr-section-heading h2{color:#24473c !important;}\nbody.jr-topic-servicos .jr-services-hero__content p,\nbody.jr-topic-servicos .jr-section-heading p{color:#50635c !important;}\nbody.jr-topic-servicos .jr-services-mini-card{\n  background:linear-gradient(145deg,#285a49 0%,#2e7d64 70%,#b9852b 100%) !important;\n  color:#fff !important;\n}\nbody.jr-topic-servicos .jr-services-mini-card li{color:#fff !important;}\nbody.jr-topic-servicos .jr-services-mini-card li::before{background:#f0ad32 !important;}\nbody.jr-topic-servicos .jr-services-hero__actions .btn.v1{background:#2e7d64 !important;border-color:#2e7d64 !important;color:#fff !important;}\nbody.jr-topic-servicos .jr-services-hero__actions .btn.v2{background:#fff !important;border-color:#2e7d64 !important;color:#2e7d64 !important;}\nbody.jr-topic-servicos .jr-services-hero__highlights li{background:#f2f8f4 !important;border-color:rgba(46,125,100,.16) !important;color:#24473c !important;}\nbody.jr-topic-servicos .jr-service-card-pro__icon{background:linear-gradient(135deg,#2e7d64,#d99a2b) !important;}\nbody.jr-topic-servicos .jr-service-card-pro h3{color:#24473c !important;}\nbody.jr-topic-servicos .jr-service-card-pro a{color:#2e7d64 !important;}\nbody.jr-topic-servicos .jr-services-process{background:#eff7f2 !important;}\nbody.jr-topic-servicos .jr-gallery-cta-box{background:linear-gradient(135deg,#24473c 0%,#2e7d64 100%) !important;}\n\n@media (max-width:1279px){\n  #SmHeaderV1 .mn_ > .flx.f_m.f_sb{min-height:64px !important;}\n}\n

/* =========================================================
   PATCH 36 — links Nossos Serviços, identidade elétrica e contraste
   ========================================================= */

/* ELÉTRICA: a faixa sob o menu passa a remeter a energia/eletricidade.
   Mantém a estrutura e o conteúdo existentes; altera somente o destaque visual. */
body.jr-topic-eletrica #HeaderZone::after,
body.jr-topic-eletrica #MainZone::before{
  background:linear-gradient(90deg,
    #4b3a12 0%,
    #f3a500 20%,
    #ffe06a 42%,
    #ffb300 62%,
    #7b5a12 82%,
    #f3a500 100%) !important;
  box-shadow:0 2px 8px rgba(243,165,0,.32) !important;
}
body.jr-topic-eletrica #SmHeaderV1{
  border-bottom-color:#f3a500 !important;
  box-shadow:0 3px 0 rgba(255,209,61,.28) !important;
}

/* NOSSOS SERVIÇOS: remove os dois blocos azul-escuros e garante leitura forte. */
body.jr-topic-servicos .jr-services-mini-card{
  background:linear-gradient(145deg,#fff9e9 0%,#f2f8f3 62%,#e4f2ea 100%) !important;
  color:#243f36 !important;
  border:1px solid rgba(46,125,100,.22) !important;
  box-shadow:0 18px 40px rgba(36,71,60,.10) !important;
}
body.jr-topic-servicos .jr-services-mini-card strong{
  color:#24473c !important;
}
body.jr-topic-servicos .jr-services-mini-card li{
  color:#35584c !important;
  -webkit-text-fill-color:#35584c !important;
}
body.jr-topic-servicos .jr-services-mini-card li::before{
  background:#e7a321 !important;
  box-shadow:0 0 0 3px rgba(231,163,33,.12) !important;
}

body.jr-topic-servicos .jr-gallery-cta-box{
  background:linear-gradient(135deg,#f3f8f4 0%,#fff8e8 100%) !important;
  color:#24473c !important;
  border:1px solid rgba(46,125,100,.18) !important;
  box-shadow:0 22px 50px rgba(36,71,60,.10) !important;
}
body.jr-topic-servicos .jr-gallery-cta-box h2{
  color:#24473c !important;
}
body.jr-topic-servicos .jr-gallery-cta-box p{
  color:#50635c !important;
}
body.jr-topic-servicos .jr-gallery-cta-box .jr-section-kicker{
  background:rgba(46,125,100,.12) !important;
  color:#2e6d59 !important;
}
body.jr-topic-servicos .jr-gallery-cta-box .btn.v1{
  background:linear-gradient(135deg,#2e7d64 0%,#3d9377 72%,#d99a2b 100%) !important;
  border-color:#2e7d64 !important;
  color:#fff !important;
}
body.jr-topic-servicos .jr-gallery-cta-box .btn.v2{
  background:#fff !important;
  border:2px solid #d99a2b !important;
  color:#785613 !important;
}
body.jr-topic-servicos .jr-gallery-cta-box .btn.v2:hover,
body.jr-topic-servicos .jr-gallery-cta-box .btn.v2:focus-visible{
  background:#fff3d7 !important;
  color:#5f430e !important;
}

/* =========================================================
   PATCH 37 — pequenas reformas + imagem institucional home
   ========================================================= */

/* Pequenas reformas: deixa a numeração visível no fundo claro. */
body.jr-topic-reformas #SmStepsSystemV2 .stp-icn strong{
  color:#d47a1e !important;
  opacity:.22 !important;
  text-shadow:none !important;
}
body.jr-topic-reformas #SmStepsSystemV2 .stp-icn svg{
  fill:rgba(212,122,30,.16) !important;
}


/* PATCH 39 - PINTURA UNIFICADA */
.paint-unified-page{background:#fff;color:#132235}
.paint-hero{display:grid;grid-template-columns:minmax(0,46%) minmax(0,54%);min-height:520px;background:linear-gradient(135deg,#fff 0%,#fff 65%,#f2fbfc 100%);border-bottom:1px solid #d9e7eb;overflow:hidden}
.paint-hero__media{min-height:520px;background:#eef5f7}
.paint-hero__media img{width:100%;height:100%;object-fit:cover;display:block}
.paint-hero__panel{align-self:center;margin-left:-70px;position:relative;z-index:2;background:rgba(255,255,255,.97);padding:54px 64px;box-shadow:0 18px 45px rgba(8,42,62,.12);border-left:5px solid #0aa6b4;max-width:900px}
.paint-eyebrow{display:inline-block;color:#08768b;font-size:13px;font-weight:800;letter-spacing:.14em;margin-bottom:14px;text-transform:uppercase}
.paint-hero h1,.paint-section-heading h2,.paint-final-cta h2{margin:0;color:#101b2d;font-weight:800;line-height:1.06}
.paint-hero h1{font-size:clamp(38px,4vw,62px);max-width:820px}
.paint-hero p{font-size:18px;line-height:1.65;max-width:800px;margin:22px 0 28px;color:#405066}
.paint-services{padding:90px 0;background:linear-gradient(180deg,#f8fcfd 0,#fff 38%)}
.paint-section-heading{max-width:850px;margin:0 auto 42px;text-align:center}
.paint-section-heading h2{font-size:clamp(32px,3vw,48px)}
.paint-section-heading p{font-size:17px;line-height:1.65;color:#556477;margin:18px 0 0}
.paint-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.paint-service{background:#fff;border:1px solid #dce9ed;border-radius:22px;overflow:hidden;box-shadow:0 14px 34px rgba(15,66,84,.08);display:grid;grid-template-columns:42% 58%;min-height:250px}
.paint-service img{width:100%;height:100%;min-height:250px;object-fit:cover;display:block}
.paint-service>div{padding:30px 32px;align-self:center}
.paint-service span{font-size:12px;font-weight:800;letter-spacing:.12em;color:#0b8495}
.paint-service h3{font-size:25px;line-height:1.15;margin:9px 0 12px;color:#132235}
.paint-service p{font-size:15.5px;line-height:1.6;color:#5c6878;margin:0}
.paint-process{padding:82px 0;background:linear-gradient(120deg,#072f49,#0b536b 55%,#087f8f);color:#fff}
.paint-section-heading--light h2,.paint-section-heading--light .paint-eyebrow{color:#fff}
.paint-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.paint-process-grid article{padding:28px;border:1px solid rgba(255,255,255,.23);border-radius:18px;background:rgba(255,255,255,.08);backdrop-filter:blur(2px)}
.paint-process-grid b{display:block;font-size:34px;color:#ffad24;margin-bottom:12px}
.paint-process-grid h3{font-size:21px;margin:0 0 8px;color:#fff}
.paint-process-grid p{margin:0;color:rgba(255,255,255,.9);line-height:1.55}
.paint-final-cta{padding:64px 0;background:#f5f9fa}
.paint-final-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff;border:1px solid #dce9ed;border-radius:22px;padding:36px 42px;box-shadow:0 12px 30px rgba(15,66,84,.07)}
.paint-final-cta h2{font-size:34px}.paint-final-cta p{margin:10px 0 0;color:#596779}
@media(max-width:1023px){.paint-hero{grid-template-columns:1fr}.paint-hero__media{min-height:360px}.paint-hero__panel{margin:-70px 28px 40px;padding:38px 36px}.paint-service-grid{grid-template-columns:1fr}.paint-process-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.paint-hero__media{min-height:280px}.paint-hero__panel{margin:-34px 14px 26px;padding:28px 24px;border-left-width:4px}.paint-hero h1{font-size:34px}.paint-hero p{font-size:16px}.paint-services{padding:60px 0}.paint-service{grid-template-columns:1fr}.paint-service img{height:220px;min-height:220px}.paint-service>div{padding:24px}.paint-process-grid{grid-template-columns:1fr}.paint-final-cta__inner{flex-direction:column;align-items:flex-start;padding:28px}.paint-final-cta h2{font-size:30px}}


/* =========================================================
   PATCH 41 — padronização final do hero + menu principal
   ========================================================= */

/*
   Pintura e Pequenas reformas seguem exatamente a mesma
   geometria visual do hero da página Hidráulica:
   imagem ocupando a metade esquerda e card amplo sobreposto,
   alinhado à direita, sem alterar o conteúdo de cada página.
*/
@media (min-width:1280px){
  body.jr-topic-pintura #SmContentV7,
  body.jr-topic-reformas #SmContentV7{
    display:block !important;
    position:relative !important;
    min-height:530px !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#fff !important;
  }

  body.jr-topic-pintura #SmContentV7 > picture.bg.half,
  body.jr-topic-reformas #SmContentV7 > picture.bg.half{
    position:absolute !important;
    inset:0 auto 0 0 !important;
    width:50% !important;
    height:100% !important;
    min-height:530px !important;
    margin:0 !important;
    overflow:hidden !important;
  }

  body.jr-topic-pintura #SmContentV7 > picture.bg.half img,
  body.jr-topic-reformas #SmContentV7 > picture.bg.half img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:530px !important;
    object-fit:cover !important;
    object-position:center !important;
    transform:none !important;
    display:block !important;
  }

  body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg{
    position:relative !important;
    z-index:3 !important;
    width:70% !important;
    max-width:none !important;
    min-height:0 !important;
    margin:70px 0 48px 30% !important;
    box-shadow:0 18px 42px rgba(18,32,47,.10) !important;
  }

  body.jr-topic-pintura #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-reformas #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
    padding:42px 52px 38px !important;
  }

  body.jr-topic-pintura #SmContentV7 .cnt-gd,
  body.jr-topic-reformas #SmContentV7 .cnt-gd{
    max-width:820px !important;
    padding-top:34px !important;
  }

  body.jr-topic-pintura #SmContentV7 #SmContentV7Header .fnt_t-1,
  body.jr-topic-reformas #SmContentV7 #SmContentV7Header .fnt_t-1{
    display:block !important;
    font-size:clamp(42px,3.25vw,58px) !important;
    line-height:1.08 !important;
    letter-spacing:-.02em !important;
  }

  body.jr-topic-pintura #SmContentV7 #SmContentV7Content,
  body.jr-topic-reformas #SmContentV7 #SmContentV7Content{
    max-width:760px !important;
  }

  body.jr-topic-pintura #SmContentV7 #SmContentV7Content p,
  body.jr-topic-reformas #SmContentV7 #SmContentV7Content p{
    font-size:17px !important;
    line-height:1.55 !important;
    margin:0 !important;
  }
}

/* Mantém as cores próprias de cada serviço. */
body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg{
  border-bottom:2px solid #e15a24 !important;
}
body.jr-topic-pintura #SmContentV7 #SmContentV7Kicker .fnt_t-k{
  color:#b4232f !important;
  border-color:#e15a24 !important;
}
body.jr-topic-pintura #SmContentV7 #SmContentV7Header .fnt_t-1{
  color:#171d2c !important;
}
body.jr-topic-pintura #SmContentV7 .btn.v1{
  background:linear-gradient(135deg,#b4232f 0%,#e15a24 100%) !important;
  border-color:#b4232f !important;
  color:#fff !important;
}
body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg{
  border-bottom:2px solid #d05a16 !important;
}
body.jr-topic-reformas #SmContentV7 #SmContentV7Kicker .fnt_t-k{
  color:#b45309 !important;
  border-color:#d05a16 !important;
}
body.jr-topic-reformas #SmContentV7 #SmContentV7Header .fnt_t-1{
  color:#172133 !important;
}
body.jr-topic-reformas #SmContentV7 #SmContentV7Content p{
  color:#4f5b6b !important;
}
body.jr-topic-reformas #SmContentV7 .btn.v1{
  background:linear-gradient(135deg,#d05a16 0%,#f09a1b 100%) !important;
  border-color:#b64e13 !important;
  color:#fff !important;
}

/* Tablet/mobile: mesmo comportamento responsivo para as duas páginas. */
@media (max-width:1279px){
  body.jr-topic-pintura #SmContentV7,
  body.jr-topic-reformas #SmContentV7{
    display:block !important;
    min-height:auto !important;
    overflow:hidden !important;
  }
  body.jr-topic-pintura #SmContentV7 > picture.bg.half,
  body.jr-topic-reformas #SmContentV7 > picture.bg.half{
    position:relative !important;
    inset:auto !important;
    display:block !important;
    width:100% !important;
    height:360px !important;
    min-height:360px !important;
    margin:0 !important;
  }
  body.jr-topic-pintura #SmContentV7 > picture.bg.half img,
  body.jr-topic-reformas #SmContentV7 > picture.bg.half img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    object-fit:cover !important;
    transform:none !important;
  }
  body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg{
    position:relative !important;
    z-index:3 !important;
    width:auto !important;
    max-width:none !important;
    margin:-62px 24px 34px !important;
  }
  body.jr-topic-pintura #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-reformas #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
    padding:34px 30px !important;
  }
  body.jr-topic-pintura #SmContentV7 #SmContentV7Header .fnt_t-1,
  body.jr-topic-reformas #SmContentV7 #SmContentV7Header .fnt_t-1{
    font-size:clamp(34px,7vw,48px) !important;
  }
}
@media (max-width:640px){
  body.jr-topic-pintura #SmContentV7 > picture.bg.half,
  body.jr-topic-reformas #SmContentV7 > picture.bg.half{
    height:270px !important;
    min-height:270px !important;
  }
  body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg{
    margin:-30px 14px 24px !important;
  }
  body.jr-topic-pintura #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-reformas #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
    padding:28px 22px !important;
  }
  body.jr-topic-pintura #SmContentV7 #SmContentV7Header .fnt_t-1,
  body.jr-topic-reformas #SmContentV7 #SmContentV7Header .fnt_t-1{
    font-size:34px !important;
  }
  body.jr-topic-pintura #SmContentV7 #SmContentV7Content p,
  body.jr-topic-reformas #SmContentV7 #SmContentV7Content p{
    font-size:16px !important;
  }
}

/*
   Cabeçalho desktop: trava a mesma largura, alinhamento e espaço da
   Galeria em todas as páginas para evitar o salto visual ao navegar.
*/
@media (min-width:1280px){
  body.jr-ui-stable #HeaderZone .hdr.v1 > .mn_{
    width:calc(100% - 80px) !important;
    max-width:1460px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body.jr-ui-stable #HeaderZone .hdr.v1 > .mn_ > .flx.f_m.f_sb{
    width:100% !important;
    min-width:0 !important;
  }
  body.jr-ui-stable #HeaderZone .ato.str.flx.f_clm.f_b{
    flex:1 1 auto !important;
    min-width:0 !important;
  }
  body.jr-ui-stable #HeaderZone .ato.str.flx.f_clm.f_b > .flx.f_r.f_m.ato{
    width:100% !important;
    min-width:0 !important;
    align-items:center !important;
  }
  body.jr-ui-stable #HeaderZone nav.nv.flx-at-1280{
    flex:1 1 auto !important;
    min-width:0 !important;
  }
  body.jr-ui-stable #HeaderZone #SmHeaderV1TopNav{
    width:100% !important;
    max-width:none !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
  }
  body.jr-ui-stable #HeaderZone #SmHeaderV1TopNav > li{
    flex:0 0 auto !important;
  }
  body.jr-ui-stable #HeaderZone #SmHeaderV1TopNav > li > a{
    padding-left:10px !important;
    padding-right:10px !important;
    white-space:nowrap !important;
  }
  body.jr-ui-stable #HeaderZone .sw-1280.pd_tp.pd_bt{
    flex:0 0 auto !important;
    margin-left:28px !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  body.jr-ui-stable #HeaderZone .sw-1280.pd_tp.pd_bt > .btn.v1.sml{
    min-width:128px !important;
  }
}

/* =========================================================
   PATCH 42 — hero de pintura e pequenas reformas 100% no padrão da hidráulica
   ========================================================= */

/* Desktop/tablet grande: mesmas medidas, proporções e tipografia da Hidráulica. */
body.jr-topic-pintura #SmContentV7,
body.jr-topic-reformas #SmContentV7{
  position:relative !important;
  min-height:480px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  overflow:hidden !important;
  background:#fff !important;
}

body.jr-topic-pintura #SmContentV7 > picture.bg.half,
body.jr-topic-reformas #SmContentV7 > picture.bg.half{
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:50% !important;
  height:100% !important;
  min-height:480px !important;
  margin:0 !important;
  overflow:hidden !important;
}

body.jr-topic-pintura #SmContentV7 > picture.bg.half img,
body.jr-topic-reformas #SmContentV7 > picture.bg.half img{
  width:100% !important;
  height:100% !important;
  min-height:480px !important;
  object-fit:cover !important;
  object-position:center !important;
  transform:none !important;
  display:block !important;
}

body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg,
body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg{
  position:relative !important;
  z-index:2 !important;
  width:70% !important;
  max-width:none !important;
  min-height:360px !important;
  margin:88px 0 0 30% !important;
  border-radius:0 !important;
  background:#fff !important;
  overflow:hidden !important;
  box-shadow:0 18px 42px rgba(8,48,77,.10) !important;
}

body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg,
body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  opacity:.94 !important;
}

body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg img,
body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg > picture.bg img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

body.jr-topic-pintura #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
body.jr-topic-reformas #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
  position:relative !important;
  z-index:2 !important;
  padding:42px 52px 38px !important;
}

body.jr-topic-pintura #SmContentV7 .cnt-gd,
body.jr-topic-reformas #SmContentV7 .cnt-gd{
  display:block !important;
  max-width:none !important;
  padding-top:26px !important;
}

body.jr-topic-pintura #SmContentV7 #SmContentV7Header .fnt_t-1,
body.jr-topic-reformas #SmContentV7 #SmContentV7Header .fnt_t-1{
  display:block !important;
  max-width:760px !important;
  font-size:clamp(34px,3vw,52px) !important;
  line-height:1.08 !important;
  letter-spacing:-.025em !important;
}

body.jr-topic-pintura #SmContentV7 #SmContentV7Content,
body.jr-topic-reformas #SmContentV7 #SmContentV7Content{
  max-width:760px !important;
  margin-top:14px !important;
}

body.jr-topic-pintura #SmContentV7 #SmContentV7Content p,
body.jr-topic-reformas #SmContentV7 #SmContentV7Content p{
  font-size:inherit !important;
  line-height:inherit !important;
  margin:0 !important;
}

/* Mantém apenas as cores próprias de cada página. */
body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg{border-bottom:2px solid #e15a24 !important;}
body.jr-topic-pintura #SmContentV7 #SmContentV7Kicker .fnt_t-k{color:#b4232f !important;border-color:#e15a24 !important;}
body.jr-topic-pintura #SmContentV7 #SmContentV7Header .fnt_t-1{color:#171d2c !important;}
body.jr-topic-pintura #SmContentV7 .btn.v1{background:linear-gradient(135deg,#b4232f 0%,#e15a24 100%) !important;border-color:#b4232f !important;color:#fff !important;}

body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg{border-bottom:2px solid #d05a16 !important;}
body.jr-topic-reformas #SmContentV7 #SmContentV7Kicker .fnt_t-k{color:#b45309 !important;border-color:#d05a16 !important;}
body.jr-topic-reformas #SmContentV7 #SmContentV7Header .fnt_t-1{color:#172133 !important;}
body.jr-topic-reformas #SmContentV7 #SmContentV7Content p{color:#4f5b6b !important;}
body.jr-topic-reformas #SmContentV7 .btn.v1{background:linear-gradient(135deg,#d05a16 0%,#f09a1b 100%) !important;border-color:#b64e13 !important;color:#fff !important;}

/* Tablet: mesmos ajustes da Hidráulica. */
@media (max-width:1279px){
  body.jr-topic-pintura #SmContentV7,
  body.jr-topic-reformas #SmContentV7{
    min-height:430px !important;
  }
  body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg{
    width:72% !important;
    margin-left:28% !important;
    margin-top:62px !important;
  }
  body.jr-topic-pintura #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-reformas #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
    padding:34px 38px 32px !important;
  }
}

/* Mobile: mesma pilha, sem card maior que o padrão. */
@media (max-width:700px){
  body.jr-topic-pintura #SmContentV7,
  body.jr-topic-reformas #SmContentV7{
    display:flex !important;
    flex-direction:column !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  body.jr-topic-pintura #SmContentV7 > picture.bg.half,
  body.jr-topic-reformas #SmContentV7 > picture.bg.half{
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    height:280px !important;
    min-height:280px !important;
    order:1 !important;
  }
  body.jr-topic-pintura #SmContentV7 > picture.bg.half img,
  body.jr-topic-reformas #SmContentV7 > picture.bg.half img{
    min-height:0 !important;
  }
  body.jr-topic-pintura #SmContentV7 > .mn_ch.bg-bx.lk-bg,
  body.jr-topic-reformas #SmContentV7 > .mn_ch.bg-bx.lk-bg{
    width:100% !important;
    min-height:0 !important;
    margin:0 !important;
    order:2 !important;
    box-shadow:none !important;
  }
  body.jr-topic-pintura #SmContentV7 .pd_v-30.pd_h-30.psu-bfr,
  body.jr-topic-reformas #SmContentV7 .pd_v-30.pd_h-30.psu-bfr{
    padding:30px 22px 34px !important;
  }
  body.jr-topic-pintura #SmContentV7 #SmContentV7Header .fnt_t-1,
  body.jr-topic-reformas #SmContentV7 #SmContentV7Header .fnt_t-1{
    font-size:clamp(30px,9vw,40px) !important;
  }
}

/* =========================================================
   PATCH 43 — legibilidade, Sobre Nós, CTA geral e voltar ao topo
   Base: site_patch_42_hero_pintura_reformas_igual_hidraulica
   ========================================================= */

/* PINTURA — corrige o parágrafo da hero que herdava branco do .lk-bg */
body.jr-topic-pintura #SmContentV7 #SmContentV7Content,
body.jr-topic-pintura #SmContentV7 #SmContentV7Content p,
body.jr-topic-pintura #SmContentV7 #SmContentV7Content *{
  color:#4b5563 !important;
  opacity:1 !important;
  text-shadow:none !important;
}

/* SOBRE NÓS — paleta quente/neutra no card lateral, sem azul pesado */
body.jr-topic-institucional #SmSideNavV1SideNav{
  background:linear-gradient(145deg,#fff8f0 0%,#fff1df 100%) !important;
  border:1px solid rgba(215,111,28,.28) !important;
  box-shadow:0 14px 34px rgba(116,72,30,.10) !important;
}
body.jr-topic-institucional #SmSideNavV1SideNav header a{
  color:#9a4b12 !important;
  font-weight:800 !important;
}
body.jr-topic-institucional #SmSideNavV1SideNav :where(a,strong,span){
  color:#2f241c !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body.jr-topic-institucional #SmSideNavV1SideNav a:hover,
body.jr-topic-institucional #SmSideNavV1SideNav a.selected{
  color:#a84f10 !important;
  background:rgba(230,126,34,.10) !important;
}
body.jr-topic-institucional #SmSideCTAsV1 .crd,
body.jr-topic-institucional #SmSideCTAsV1 .bg-bx{
  background:linear-gradient(145deg,#fffaf4 0%,#f8eadb 100%) !important;
  border-color:rgba(215,111,28,.25) !important;
}
body.jr-topic-institucional #SmSideCTAsV1 :where(h1,h2,h3,h4,h5,h6,p,strong,span,a){
  color:#2f241c !important;
  opacity:1 !important;
  text-shadow:none !important;
}

/* SOBRE NÓS — impede textos brancos/transparentes em fundos claros */
body.jr-topic-institucional #MainZone .lt-bg:not(.dk-bg):not(.lk-bg):not(.ulk-bg),
body.jr-topic-institucional #MainZone .lt-bg:not(.dk-bg):not(.lk-bg):not(.ulk-bg) :where(h1,h2,h3,h4,h5,h6,p,li,strong,em,span,a){
  color:#232936 !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body.jr-topic-institucional #MainZone #MainContent h2,
body.jr-topic-institucional #MainZone #MainContent h3{
  color:#b4232f !important;
}
body.jr-topic-institucional #MainZone #MainContent a{
  color:#0b7285 !important;
}
body.jr-topic-institucional #MainZone #MainContent .txt-hlt{
  background:#fff6ed !important;
  border-left:4px solid #e87522 !important;
  color:#2f241c !important;
}
body.jr-topic-institucional #MainZone #MainContent .txt-hlt *{
  color:inherit !important;
}

/* CTA grande da home: deixa o novo texto equilibrado e legível */
body.jr-ui-stable #SmCalloutV2Callout .fnt_t-1{
  line-height:1.14 !important;
  text-wrap:balance !important;
}

/* Botão global — Voltar ao topo */
.jr-back-to-top{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:9998;
  width:50px;
  height:50px;
  border:0;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#0b7285 0%,#155e75 100%);
  color:#fff;
  box-shadow:0 10px 25px rgba(15,54,68,.28);
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(12px);
  transition:opacity .22s ease,transform .22s ease,visibility .22s ease,box-shadow .22s ease;
}
.jr-back-to-top.is-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.jr-back-to-top:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 30px rgba(15,54,68,.34);
}
.jr-back-to-top:focus-visible{
  outline:3px solid rgba(245,158,11,.75);
  outline-offset:3px;
}
.jr-back-to-top svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media (max-width:700px){
  .jr-back-to-top{
    right:16px;
    bottom:18px;
    width:46px;
    height:46px;
  }
}


/* =========================================================
   PATCH 44 — IMAGENS RESPONSIVAS REAIS (MOBILE / TABLET / PC)
   Mantém as mesmas imagens do site e adapta enquadramento,
   proporção e tamanho por viewport, sem criar artes paralelas.
   ========================================================= */

/* Base segura para qualquer imagem do projeto */
img,
picture,
picture img {
  max-width: 100%;
}
img {
  height: auto;
}
picture {
  display: block;
}

/* Evita estouro horizontal por imagens grandes / artes panorâmicas */
#MainZone,
#SmMainstageV1,
main,
section,
article,
.crd,
[class*="gallery"],
[class*="grid"] {
  min-width: 0;
}

/* Hero principal da Home: usa a MESMA hero-desktop.jpg em todas as telas.
   Desktop exibe inteira; tablet/mobile fazem recorte inteligente para não
   esmagar textos/arte em uma faixa minúscula. */
#SmMainstageV1 .hero-bnr-img img {
  width: 100%;
  display: block;
}
@media (min-width: 1280px) {
  #SmMainstageV1 .hero-bnr-img img {
    height: auto;
    object-fit: contain;
    object-position: center;
  }
}
@media (min-width: 701px) and (max-width: 1279px) {
  #SmMainstageV1 .hero-bnr-img {
    height: clamp(300px, 42vw, 470px);
  }
  #SmMainstageV1 .hero-bnr-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
  }
}
@media (max-width: 700px) {
  #SmMainstageV1 .hero-bnr-img {
    height: clamp(245px, 68vw, 390px);
  }
  #SmMainstageV1 .hero-bnr-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
  }
}

/* Heros internos (Pintura, Reformas, Elétrica, Hidráulica, Porcelanato):
   preserva a composição desktop e cria uma pilha limpa no mobile/tablet. */
@media (max-width: 1024px) {
  #SmContentV7.cnt.v7,
  #SmContentV7 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    overflow: hidden;
  }
  #SmContentV7 > picture.bg.half {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: clamp(260px, 54vw, 460px) !important;
    transform: none !important;
    overflow: hidden;
    order: 1;
  }
  #SmContentV7 > picture.bg.half img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
  }
  #SmContentV7 > .mn_ch {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    transform: none !important;
    order: 2;
  }
  #SmContentV7 > .mn_ch > picture.bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  #SmContentV7 > .mn_ch > picture.bg img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
}

@media (max-width: 600px) {
  #SmContentV7 > picture.bg.half {
    height: clamp(225px, 68vw, 330px) !important;
  }
  #SmContentV7 .pd_v-30.pd_h-30 {
    padding: 24px 20px !important;
  }
  #SmContentV7 .fnt_t-1 {
    font-size: clamp(1.9rem, 9vw, 2.65rem) !important;
    line-height: 1.05 !important;
    overflow-wrap: anywhere;
  }
  #SmContentV7 .cnt-stl p {
    font-size: 1rem !important;
    line-height: 1.55 !important;
  }
}

/* Cards e galerias: mesma foto, sempre preenchendo sem deformar */
.jr-pcard__img img,
.jr-reformas-card > img,
.jr-eletrica-gallery__item img,
.jr-hidraulica-gallery__item img,
.jr-porcelanato-gallery__item img,
.before-after-card img,
.gallery-card img,
[class*="gallery__item"] > img,
[class*="card"] > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Proporções consistentes por dispositivo */
@media (min-width: 1025px) {
  .jr-reformas-card > img,
  .jr-eletrica-gallery__item > img,
  .jr-hidraulica-gallery__item > img,
  .jr-porcelanato-gallery__item > img {
    aspect-ratio: 4 / 3;
  }
}
@media (min-width: 601px) and (max-width: 1024px) {
  .jr-pcard__img,
  .jr-reformas-card,
  .jr-eletrica-gallery__item,
  .jr-hidraulica-gallery__item,
  .jr-porcelanato-gallery__item {
    min-width: 0;
  }
  .jr-pcard__img,
  .jr-reformas-card > img,
  .jr-eletrica-gallery__item > img,
  .jr-hidraulica-gallery__item > img,
  .jr-porcelanato-gallery__item > img {
    aspect-ratio: 16 / 10 !important;
  }
}
@media (max-width: 600px) {
  .jr-pcard__img,
  .jr-reformas-card > img,
  .jr-eletrica-gallery__item > img,
  .jr-hidraulica-gallery__item > img,
  .jr-porcelanato-gallery__item > img {
    aspect-ratio: 16 / 11 !important;
  }
}

/* Imagens editoriais / conteúdo: nunca maiores que o viewport e sem distorção */
#MainZone .img-grp img,
#MainZone .cnt img:not(.hero-bnr-img img),
#MainZone article img,
#MainZone figure img {
  max-width: 100%;
}

/* Banners panorâmicos de conteúdo e CTA: mantém a mesma imagem com recorte
   responsivo em vez de comprimir horizontalmente. */
@media (max-width: 1024px) {
  picture.bg:not(.half) img[src*="valuesbg"],
  picture.bg:not(.half) img[src*="closingcta-bg"],
  picture.bg:not(.half) img[src*="About-Us"],
  picture.bg:not(.half) img[src*="ctabg"] {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
}

/* Logos/parceiros/selos precisam ser vistos inteiros, nunca cortados */
img[src*="partner-"],
img[src*="selo-cera"],
img[src*="logo" i] {
  object-fit: contain !important;
  height: auto !important;
}

/* Tabelas/linhas de cards e feeds não podem forçar scroll lateral */
@media (max-width: 1024px) {
  #SmMainstageV1ServicesFeed,
  .jr-pcard-grid,
  .jr-reformas-grid,
  .jr-eletrica-gallery,
  .jr-hidraulica-gallery,
  .jr-porcelanato-gallery {
    max-width: 100%;
  }
}

/* Mobile: cards passam a uma coluna quando o espaço real não comporta 2 */
@media (max-width: 640px) {
  .jr-pcard-grid--4,
  .jr-reformas-grid,
  .jr-eletrica-gallery,
  .jr-hidraulica-gallery,
  .jr-porcelanato-gallery {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   PATCH 45 — HERO PRINCIPAL RESPONSIVO + CORREÇÕES DE EXECUÇÃO LOCAL
   - nova hero real enviada pelo usuário em versões desktop/tablet/mobile
   - home sem crop agressivo da hero
   ========================================================= */
#SmMainstageV1 .hero-bnr-img{
  display:block;
  width:100%;
  background:#ffffff;
  line-height:0;
  overflow:hidden;
}
#SmMainstageV1 .hero-bnr-img img{
  display:block;
  width:100%;
  height:auto !important;
  max-width:100%;
  object-fit:contain !important;
  object-position:center top !important;
}
@media (min-width: 701px) and (max-width: 1279px){
  #SmMainstageV1 .hero-bnr-img{
    height:auto !important;
  }
  #SmMainstageV1 .hero-bnr-img img{
    height:auto !important;
  }
}
@media (max-width: 700px){
  #SmMainstageV1{
    padding-top:0 !important;
  }
  #SmMainstageV1 .hero-bnr-img{
    height:auto !important;
  }
  #SmMainstageV1 .hero-bnr-img img{
    height:auto !important;
  }
}

/* =========================================================
   PATCH 47 — CORREÇÃO SEGURA APÓS PATCH 46
   Restaura a base visual do Patch 45 e aplica apenas ajustes
   pontuais, sem alterar a estrutura principal do site.
   ========================================================= */

/* Menu mobile/tablet: mantém o layout original e adiciona apenas a indicação. */
@media (max-width:1279px){
  #SmHeaderV1 .lg-bx > .flx.gp_sp.f_m{
    position:relative !important;
  }
  #SmHeaderV1 .lg-bx > .flx.gp_sp.f_m::before{
    content:"Menu  →";
    display:inline-block;
    margin-right:8px;
    color:#073b5c;
    font-size:13px;
    line-height:1;
    font-weight:800;
    white-space:nowrap;
  }
}
@media (max-width:420px){
  #SmHeaderV1 .lg-bx > .flx.gp_sp.f_m::before{
    font-size:12px;
    margin-right:6px;
  }
}

/* Botão voltar ao topo: usa a seta SVG já existente e evita sobreposição. */
.jr-back-to-top svg{
  display:block !important;
  width:24px !important;
  height:24px !important;
  stroke:currentColor !important;
  fill:none !important;
}
@media (max-width:1279px){
  .jr-back-to-top{
    right:14px !important;
    bottom:82px !important;
  }
}
@media (max-width:699px){
  .jr-back-to-top{
    right:12px !important;
    bottom:78px !important;
    width:44px !important;
    height:44px !important;
  }
}

/* Botão SOBRE NÓS da Home: contraste branco sem atingir outros links. */
#SmValuesV2Button .btn[href="about-us.html"]{
  color:#fff !important;
}
#SmValuesV2Button .btn[href="about-us.html"] *{
  color:#fff !important;
}

/* Pintura / COMO TRABALHAMOS: contraste forte e legível. */
.paint-process .paint-section-heading,
.paint-process .paint-section-heading *{
  color:#fff !important;
}
.paint-process .paint-section-heading h2{
  color:#f8fcff !important;
  text-shadow:0 1px 1px rgba(0,0,0,.18) !important;
}
.paint-process-grid h3{
  color:#fff !important;
}
.paint-process-grid p{
  color:#edf9fc !important;
}
.paint-process-grid b{
  color:#ffb11b !important;
}

/* Pequenas reformas: remove apenas o símbolo + e mantém a estrutura original. */
#SmStepsSystemV2StackList .stp-icn svg.icn{
  display:none !important;
}
#SmStepsSystemV2StackList .stp-icn strong{
  position:relative !important;
  z-index:2 !important;
  color:#c45a16 !important;
  opacity:1 !important;
  text-shadow:none !important;
}
@media (max-width:699px){
  #SmStepsSystemV2StackList .stp-icn{
    margin-right:24px !important;
  }
  #SmStepsSystemV2StackList .stp-icn strong{
    font-size:clamp(44px,14vw,68px) !important;
    line-height:1 !important;
  }
}

/* =========================================================
   PATCH 48 — BOTÃO VOLTAR AO TOPO COM SETA + TEXTO
   Alteração localizada: mantém o comportamento existente e
   transforma o botão em um controle claro "↑ Topo".
   ========================================================= */
.jr-back-to-top{
  width:auto !important;
  min-width:82px !important;
  height:48px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  gap:7px !important;
  flex-direction:row !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}
.jr-back-to-top svg{
  width:20px !important;
  height:20px !important;
  flex:0 0 20px !important;
  display:block !important;
}
.jr-back-to-top__label{
  display:inline-block !important;
  color:#fff !important;
  line-height:1 !important;
}
@media (max-width:1279px){
  .jr-back-to-top{
    right:14px !important;
    bottom:82px !important;
  }
}
@media (max-width:699px){
  .jr-back-to-top{
    right:12px !important;
    bottom:78px !important;
    min-width:76px !important;
    height:44px !important;
    padding:0 12px !important;
    gap:6px !important;
    font-size:12px !important;
  }
  .jr-back-to-top svg{
    width:18px !important;
    height:18px !important;
    flex-basis:18px !important;
  }
}


/* =========================================================
   PATCH 49 — CORREÇÃO DO BOTÃO TOPO
   Remove dependência de SVG e usa seta tipográfica real.
   Mantém o botão flutuante compacto e previsível em PC,
   tablet e mobile, sem virar uma cápsula larga.
   ========================================================= */
.jr-back-to-top{
  position:fixed !important;
  top:auto !important;
  left:auto !important;
  right:22px !important;
  bottom:22px !important;
  z-index:2147483000 !important;
  width:58px !important;
  min-width:58px !important;
  max-width:58px !important;
  height:58px !important;
  min-height:58px !important;
  padding:5px 4px !important;
  border:0 !important;
  border-radius:50% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  background:linear-gradient(135deg,#0b7f92 0%,#0c647a 100%) !important;
  color:#fff !important;
  box-shadow:0 8px 22px rgba(5,46,62,.28) !important;
  font-family:inherit !important;
  text-align:center !important;
  white-space:normal !important;
  overflow:visible !important;
}
.jr-back-to-top__arrow{
  display:block !important;
  color:#fff !important;
  font-size:24px !important;
  font-weight:800 !important;
  line-height:.82 !important;
  margin:0 0 3px 0 !important;
  transform:none !important;
}
.jr-back-to-top__label{
  display:block !important;
  color:#fff !important;
  font-size:9px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
  margin:0 !important;
}
.jr-back-to-top svg{
  display:none !important;
}
.jr-back-to-top:hover{
  transform:translateY(-3px) !important;
}
@media (max-width:1279px){
  .jr-back-to-top{
    right:14px !important;
    bottom:86px !important;
    width:54px !important;
    min-width:54px !important;
    max-width:54px !important;
    height:54px !important;
    min-height:54px !important;
  }
  .jr-back-to-top__arrow{font-size:22px !important;}
  .jr-back-to-top__label{font-size:8px !important;}
}
@media (max-width:699px){
  .jr-back-to-top{
    right:12px !important;
    bottom:88px !important;
    width:52px !important;
    min-width:52px !important;
    max-width:52px !important;
    height:52px !important;
    min-height:52px !important;
  }
}


/* =========================================================
   PATCH 50 FINAL — BOTÃO TOPO + REVISÃO DE ESTABILIDADE
   - seta real acima de "TOPO", sem imagem/SVG externo
   - posicionamento seguro em desktop/tablet/mobile
   - preserva o layout e as redes sociais existentes
   ========================================================= */
.jr-back-to-top{
  width:62px !important;
  min-width:62px !important;
  max-width:62px !important;
  height:62px !important;
  min-height:62px !important;
  padding:6px 4px 7px !important;
  border-radius:50% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:1px !important;
  line-height:1 !important;
  overflow:hidden !important;
}
/* A seta é gerada em CSS para não depender de arquivo, SVG ou fonte de ícone. */
.jr-back-to-top::before{
  content:"\2191" !important;
  display:block !important;
  position:static !important;
  width:auto !important;
  height:auto !important;
  margin:0 0 2px !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:23px !important;
  font-weight:800 !important;
  line-height:.72 !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}
/* Oculta a seta textual antiga para evitar duplicação; o ::before acima é o padrão final. */
.jr-back-to-top__arrow{
  display:none !important;
}
.jr-back-to-top__label{
  display:block !important;
  position:static !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:9px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:.035em !important;
  text-transform:uppercase !important;
  opacity:1 !important;
  visibility:visible !important;
}
/* Desktop: canto inferior direito, sem interferir na coluna social central. */
@media (min-width:1280px){
  .jr-back-to-top{
    right:22px !important;
    bottom:22px !important;
  }
}
/* Tablet: mantém distância do conjunto de redes sociais. */
@media (min-width:700px) and (max-width:1279px){
  .jr-back-to-top{
    right:14px !important;
    bottom:88px !important;
    width:58px !important;
    min-width:58px !important;
    max-width:58px !important;
    height:58px !important;
    min-height:58px !important;
  }
  .jr-back-to-top::before{font-size:21px !important;}
  .jr-back-to-top__label{font-size:8px !important;}
}
/* Mobile: fica acima das redes sociais horizontais e respeita a área segura do aparelho. */
@media (max-width:699px){
  .jr-back-to-top{
    right:12px !important;
    bottom:calc(82px + env(safe-area-inset-bottom, 0px)) !important;
    width:56px !important;
    min-width:56px !important;
    max-width:56px !important;
    height:56px !important;
    min-height:56px !important;
  }
  .jr-back-to-top::before{font-size:20px !important; margin-bottom:2px !important;}
  .jr-back-to-top__label{font-size:8px !important;}
}
