/* ARTEC · sistema visual compartilhado por todas as páginas.
   Mantém HTML estático, tipografia editorial e fotografia do acervo. */
.rd-site {
  --fundo:#f6f7f7; --fundo-alt:#eceeef; --linha:#cdd1d4;
  --grafite:#202427; --cinza:#60676c;
  --rd-muted-on-dark:#bfc5c9; --rd-red-on-dark:#ff7379;
  background:var(--rd-paper); color:var(--rd-ink);
  font-family:var(--rd-font); font-size:17px; line-height:1.65;
}
.rd-site .wrap { max-width:var(--rd-container); padding-left:var(--rd-gutter); padding-right:var(--rd-gutter); }
.rd-site .wrap-txt { max-width:940px; padding-left:var(--rd-gutter); padding-right:var(--rd-gutter); }
.rd-site h2,.rd-site h3,.rd-site h4 { font-family:var(--rd-font); font-weight:400; letter-spacing:-.035em; }
.rd-site h2 { font-size:clamp(36px,4.6vw,72px); line-height:1.08; margin:18px 0 28px; }
.rd-site h3 { font-size:26px; line-height:1.2; }
.rd-site h4 { font-size:21px; line-height:1.25; }
.rd-site .lead { max-width:770px; font-size:clamp(18px,1.6vw,24px); line-height:1.55; }
.rd-site a { text-underline-offset:.2em; }
.rd-site .rd-button { text-decoration:none; }
.rd-site a:focus-visible,.rd-site button:focus-visible,.rd-site summary:focus-visible { outline:3px solid var(--rd-red); outline-offset:5px; }
.rd-site :is(.rd-header.is-scrolled,.rd-transition) :focus-visible,
.rd-site:is(.rd-inner,.rd-menu-open) .rd-header :focus-visible { outline-color:var(--rd-red); }
.rd-site .rotulo { font-family:var(--rd-mono); font-weight:400; font-size:12px; letter-spacing:.06em; }
.rd-site .rotulo::before { width:7px; height:7px; margin-right:12px; }
.rd-site main>section:not(.rd-hero):not(.rd-transition):not(.rd-about):not(.rd-locale-hero):not(.rd-locale-facts) { padding-top:112px; padding-bottom:112px; }
.rd-site.rd-inner main { padding-top:96px; }
.rd-site.rd-inner h1 { font-family:var(--rd-font); font-weight:400; }
.rd-site.rd-inner .rd-header { background:var(--rd-silver); color:var(--rd-ink); }
.rd-site .rd-nav a[aria-current=page] { color:var(--rd-red); }
.rd-site .rd-nav-group:has(a[aria-current=page])>summary { text-decoration:underline; text-decoration-color:var(--rd-red); text-underline-offset:7px; }
.rd-site .rd-nav-contact:hover { color:var(--rd-red); }
.rd-site .rd-menu-meta { font-size:14px; }
/* Idiomas disponíveis em uma única linha, com bandeiras locais. */
.rd-site .rd-language-flags { display:flex; align-items:center; flex-wrap:nowrap; gap:4px; flex:none; }
.rd-language-flags a { position:relative; display:flex; align-items:center; justify-content:center; width:38px; height:44px; flex:none; color:inherit; border-radius:2px; text-decoration:none; transition:background var(--rd-fast); }
.rd-language-flags img { display:block; width:32px; height:24px; object-fit:contain; border-radius:1px; box-shadow:0 0 0 1px #ffffff30; }
.rd-language-flags a:hover { background:#88888820; }
.rd-language-flags a[aria-current]::after { content:''; position:absolute; left:3px; right:3px; bottom:1px; height:2px; background:var(--rd-red); }
@media(min-width:1101px) and (max-width:1280px) {
  .rd-site .rd-brand>span { display:none; }
  .rd-site .rd-header-inner { gap:16px; }
  .rd-site .rd-nav { gap:10px; }
}
@media(max-width:760px) {
  html { scroll-padding-top:144px; }
  .rd-site .rd-header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto 44px; gap:8px; min-height:128px; padding:16px; }
  .rd-site .rd-brand { grid-column:1; grid-row:1; }
  .rd-site .rd-header-actions { display:contents; }
  .rd-site .rd-header-cta { grid-column:2; grid-row:1; }
  .rd-site .rd-menu-toggle { grid-column:3; grid-row:1; }
  .rd-site .rd-language-flags { grid-column:1/-1; grid-row:2; justify-self:center; gap:8px; }
  .rd-language-flags a { width:44px; }
  .rd-site .rd-nav { inset:128px 0 0; height:calc(100dvh - 128px); }
  .rd-site:not(.rd-enhanced) .rd-nav { grid-column:1/-1; grid-row:3; }
  .rd-site .rd-hero-content { padding-top:180px; }
  .rd-site .rd-secondary-content { padding-top:178px; }
  .rd-site .rd-locale-hero { padding-top:180px; }
}
.rd-site .rd-about h2 { font-size:clamp(26px,2.5vw,36px); margin:0 0 24px; }
.rd-site .rd-about h3 { font-size:clamp(22px,1.9vw,28px); }
.rd-site .rd-about .lead { font-size:clamp(18px,1.55vw,23px); }
.rd-site .rd-about-marker,.rd-site .rd-about-kicker { font-size:12px; }

/* Fotografia noturna: enquadramento estável, cores originais e contraste localizado. */
.rd-site #rd-panel-0 .rd-media { animation:none; }
.rd-site #rd-panel-0 .rd-media img { filter:none; object-position:center 48%; animation:none; }
.rd-site #rd-panel-0 .rd-media::after { background:linear-gradient(90deg,rgba(7,12,17,.72),rgba(7,12,17,.42) 42%,rgba(7,12,17,.10) 74%),linear-gradient(0deg,rgba(7,12,17,.78),rgba(7,12,17,.08) 45%,rgba(7,12,17,.10) 75%,rgba(7,12,17,.38)); }
.rd-site .rd-locale-media img { filter:none; object-position:center 48%; }
.rd-site .rd-locale-media::after { background:linear-gradient(90deg,rgba(7,12,17,.84),rgba(7,12,17,.56) 52%,rgba(7,12,17,.18)),linear-gradient(0deg,rgba(7,12,17,.54),transparent 65%); }
@media(min-width:761px) {
  .rd-site #rd-panel-0 h1 { font-size:clamp(64px,6.8vw,112px); line-height:1.02; }
}
@media(max-width:760px) {
  .rd-site #rd-panel-0 .rd-media img,.rd-site .rd-locale-media img { object-position:58% center; }
  .rd-site #rd-panel-0 .rd-media::after { background:linear-gradient(0deg,rgba(7,12,17,.94),rgba(7,12,17,.54) 55%,rgba(7,12,17,.26)),linear-gradient(90deg,rgba(7,12,17,.46),rgba(7,12,17,.14)); }
}
.rd-site:not(.rd-enhanced) :is(.rd-marquee-control,#btn-zap,.nota-envio) { display:none; }

/* Botões consistentes: principal vermelho, alternativas com contorno. */
.rd-site :is(.btn-orc,.btn-wa,.btn-tel,.bt,.btn-cv,.btn-google,.btn-envio-zap,.btn-envio-mail,.sus-btn) {
  font-family:var(--rd-font); font-size:16px; font-weight:500; letter-spacing:0;
  border-radius:2px; min-height:56px; padding:16px 24px;
  box-shadow:none; text-shadow:none; text-decoration:none;
  transition:background var(--rd-fast),color var(--rd-fast),border-color var(--rd-fast);
}
.rd-site :is(.btn-orc,.btn-cv,.btn-envio-mail,.sus-btn) { background:var(--rd-red); border:1px solid var(--rd-red); color:#fff; }
.rd-site :is(.btn-wa,.btn-tel,.btn-google,.btn-envio-zap) { background:transparent; border:1px solid var(--rd-rule); color:var(--rd-ink); }
.rd-site :is(.btn-orc,.btn-wa,.btn-tel,.bt,.btn-cv,.btn-google,.btn-envio-zap,.btn-envio-mail,.sus-btn):hover { transform:none; box-shadow:none; background:var(--rd-ink); border-color:var(--rd-ink); color:#fff; }
.rd-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:40px; min-height:48px; padding:10px 0; border-bottom:1px solid currentColor; font-size:16px; font-weight:500; text-decoration:none; }
.rd-text-link>span { font-size:26px; line-height:1; transition:transform var(--rd-fast); }
.rd-text-link:hover>span { transform:translate(3px,-3px); }
.rd-service-actions { display:flex; align-items:center; flex-wrap:wrap; gap:28px; margin-top:36px; }

/* Capas internas e leitura técnica. */
.rd-site :is(.hero-int,.av-hero,.v-hero) { background:var(--rd-silver); color:var(--rd-ink); border:0; text-align:left; }
.rd-site :is(.hero-int,.av-hero,.v-hero) .rotulo { color:var(--rd-muted); }
.rd-site :is(.hero-int,.av-hero,.v-hero) .crumb a:hover { color:var(--rd-red-dark); }
.rd-site :is(.hero-int,.av-hero,.v-hero) h1 { max-width:1240px; font-family:var(--rd-font); font-size:clamp(44px,6.3vw,96px); font-weight:400; line-height:1.03; letter-spacing:-.05em; margin:26px 0; color:var(--rd-ink); overflow-wrap:break-word; }
.rd-site :is(.hero-int,.av-hero,.v-hero) h1 em { color:var(--rd-red); font-style:normal; }
.rd-site :is(.hero-int,.av-hero,.v-hero) .sub { max-width:840px; color:var(--rd-muted); font-size:clamp(19px,1.85vw,27px); line-height:1.5; }
.rd-site .crumb { display:block; margin:0 0 40px; color:var(--rd-muted); font-size:14px; line-height:1.6; }
.rd-site .crumb a { color:inherit; text-decoration:none; }
.rd-site .crumb a:hover { text-decoration:underline; }
.rd-site .byline { color:var(--rd-muted); font-size:14px; margin-top:28px; }
.rd-site .byline b { font-weight:500; }
.rd-site .byline a { text-decoration:underline; }
.rd-site .rd-reading { display:grid; grid-template-columns:230px minmax(0,850px); justify-content:space-between; gap:clamp(40px,7vw,130px); max-width:var(--rd-container); margin:auto; padding-left:var(--rd-gutter); padding-right:var(--rd-gutter); }
.rd-site .rd-prose { min-width:0; max-width:none; width:100%; padding:0; }
.rd-site .rd-prose>p,.rd-site .conteudo>.wrap-txt>p { margin-bottom:24px; font-size:18px; line-height:1.75; color:#454c51; }
.rd-site .rd-prose>h2,.rd-site .conteudo>.wrap-txt>h2 { margin-top:64px; padding-top:28px; border-top:1px solid var(--rd-rule); font-size:clamp(29px,2.6vw,40px); line-height:1.14; }
.rd-site .rd-prose>h2:first-child { margin-top:0; }
.rd-site .rd-prose>h3 { margin:32px 0 14px; font-size:25px; }
.rd-site .rd-prose>ul,.rd-site .rd-prose>ol { padding-left:22px; margin-bottom:30px; }
.rd-site .rd-prose li { margin:10px 0; color:#454c51; }
.rd-site .rd-prose strong { font-weight:600; color:var(--rd-ink); }
.rd-site .rd-prose a:not(.rd-button):not(.iso-btn) { color:var(--rd-red-dark); }
.rd-site .simb-lista li,.rd-site .simb-txt p { color:var(--rd-muted-on-dark); }
.rd-site .simb strong,.rd-site .simb-txt .simb-tit { color:var(--rd-white); }
.rd-site .rd-toc { display:block; position:sticky; top:128px; align-self:start; max-height:calc(100svh - 160px); overflow:auto; padding:0 12px 24px 0; margin:0; border:0; border-bottom:1px solid var(--rd-rule); box-shadow:none; background:transparent; font-weight:400; }
.rd-site .rd-toc p { margin:0 0 22px; font:12px/1.5 var(--rd-mono); text-transform:uppercase; letter-spacing:.06em; color:var(--rd-muted); }
.rd-site .rd-toc ol { list-style:none; margin:0; padding:0; }
.rd-site .rd-toc li { margin:0; padding:0; }
.rd-site .rd-toc a { display:block; padding:10px 0; min-height:44px; font-size:14px; line-height:1.4; color:var(--rd-muted); text-decoration:none; }
.rd-site .rd-toc a:hover { color:var(--rd-red); }
.rd-answer { max-width:1000px; border-left:3px solid var(--rd-red); margin:32px 0 0; padding:4px 0 4px 26px; }
.rd-answer-label { margin:0 0 10px; font:12px/1.5 var(--rd-mono); letter-spacing:.05em; text-transform:uppercase; color:var(--rd-red-dark); }
.rd-answer>p:last-child { color:var(--rd-ink); font-size:20px; line-height:1.6; margin:0; }
.rd-sources { margin-top:52px; padding-top:24px; border-top:1px solid var(--rd-rule); }
.rd-site .rd-sources h2 { font-size:30px; }
.rd-sources p,.rd-sources li { font-size:16px; color:var(--rd-muted); }
.rd-sources ul { padding-left:20px; }
.rd-sources a { overflow-wrap:anywhere; }
.rd-site .ficha-cmp { overflow-x:auto; border:0; border-top:1px solid var(--rd-rule); border-bottom:1px solid var(--rd-rule); border-radius:0; box-shadow:none; overscroll-behavior-x:contain; }
.rd-site .ficha-cmp table { min-width:580px; }
.rd-site .ficha-cmp thead th { background:var(--rd-ink); font-family:var(--rd-font); font-weight:500; }
.rd-site .ficha-cmp .selo { border-radius:0; }
.rd-site .rd-table-hint { margin:24px 0 -12px; font-size:14px; color:var(--rd-muted); }
.rd-site .diagrama-pen { border:0; border-radius:0; box-shadow:none; background:var(--rd-silver); }
.rd-site .destaque { margin:38px 0; padding:28px; background:var(--rd-silver); border:0; border-left:3px solid var(--rd-red); border-radius:0; box-shadow:none; }
.rd-site .leia-tambem { background:transparent; border:0; border-top:1px solid var(--rd-rule); border-radius:0; padding:28px 0; margin-top:48px; }
.rd-site .leia-tambem h3 { font-size:23px; }
.rd-site .leia-tambem ul { padding-left:20px; }
.rd-site .acabamentos { display:flex; flex-wrap:wrap; gap:10px 24px; margin-top:28px; }
.rd-site .acab { border:0; padding:8px 0; background:none; font-family:var(--rd-font); font-size:16px; }

/* Catálogo organizado por famílias, com fotografias amplas. */
.rd-families { margin-top:64px; }
.rd-family { display:grid; grid-template-columns:64px minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start; padding:56px 0 64px; border-top:1px solid var(--rd-rule); }
.rd-family-number { color:var(--rd-red); font-size:44px; font-weight:400; letter-spacing:-.05em; line-height:1.1; }
.rd-family-title { font-size:clamp(32px,3.2vw,48px); letter-spacing:-.04em; line-height:1.1; margin-bottom:22px; max-width:480px; }
.rd-family-description { color:var(--rd-muted); font-size:18px; line-height:1.55; max-width:460px; }
.rd-family-image { margin:0; overflow:hidden; }
.rd-family-image img { width:100%; height:clamp(340px,40vw,570px); object-fit:cover; transition:transform var(--rd-slow) var(--rd-ease); }
.rd-family-image.rd-family-image-natural img { height:auto; aspect-ratio:auto; }
.rd-family-image figcaption { padding-top:15px; color:var(--rd-muted); font-size:13px; line-height:1.5; }
.rd-capabilities { display:grid; grid-template-columns:1fr 1fr; gap:0 26px; margin-top:32px; }
.rd-capability { display:block; text-decoration:none; padding:18px 0; border-top:1px solid var(--rd-rule); transition:color var(--rd-fast); }
.rd-site .rd-capability h3 { font-size:20px; letter-spacing:-.02em; line-height:1.2; margin:0 0 8px; }
.rd-capability p { color:var(--rd-muted); font-size:14px; line-height:1.45; }
.rd-capability .seta { display:block; color:var(--rd-red-dark); font-size:13px; margin-top:12px; }
.rd-capability .seta::after { content:' ↗'; }
.rd-capability:hover h3 { color:var(--rd-red); }
.rd-family:hover .rd-family-image img { transform:scale(1.015); }
.rd-featured-processes .rd-family-title { font-size:clamp(32px,3.2vw,48px); line-height:1.1; margin:0 0 22px; }
.rd-featured-processes .rd-family-image img { height:auto; aspect-ratio:4/3; }
.rd-featured-processes .rd-text-link { margin-top:28px; color:var(--rd-red-dark); }
.rd-site .outros-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 32px; margin-top:36px; }
.rd-site .outros-grid a { display:flex; gap:12px; padding:19px 0; background:none; border:0; border-bottom:1px solid var(--rd-rule); border-radius:0; text-decoration:none; font-size:17px; }
.rd-site .outros-grid a:hover { color:var(--rd-red); transform:none; }
.rd-site .outros-grid .pt { width:9px; height:9px; border-radius:0; }

/* Estrutura, aplicações e conhecimento na página inicial. */
.rd-site .rd-structure { background:var(--rd-ink); color:#fff; }
.rd-site .rd-structure .rotulo,.rd-site .rd-structure .lead { color:#bfc5c9; }
.rd-structure-widget { margin-top:52px; }
.rd-structure-tabs { display:flex; gap:40px; border-top:1px solid #ffffff35; margin-bottom:36px; }
.rd-structure-tabs button { display:flex; align-items:center; gap:22px; padding:24px 0; min-height:72px; border:0; border-top:2px solid transparent; background:none; color:#bfc5c9; cursor:pointer; font:400 23px/1.2 var(--rd-font); text-align:left; }
.rd-structure-tabs button span { font:12px var(--rd-mono); color:#bfc5c9; }
.rd-structure-tabs button[aria-selected=true] { border-top-color:var(--rd-red); color:#fff; }
.rd-structure-panel { display:grid; grid-template-columns:1.55fr 1fr; align-items:center; gap:64px; }
.rd-structure-panel[hidden] { display:none; }
.rd-structure-panel>img { width:100%; height:480px; object-fit:cover; }
.rd-site .rd-structure-panel h3 { font-size:clamp(32px,3vw,48px); margin-bottom:24px; }
.rd-structure-panel p { color:#bfc5c9; margin-bottom:24px; font-size:19px; }
.rd-site .setores { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 40px; margin-top:52px; }
.rd-site .setores .st { display:block; min-width:0; aspect-ratio:auto; padding:30px 0; background:transparent; border:0; border-top:1px solid var(--rd-rule); border-radius:0; box-shadow:none; color:var(--rd-ink); text-align:left; overflow:visible; transform:none; }
.rd-site .setores .st::before,.rd-site .setores .st::after,.rd-site .setores .barra { display:none; }
.rd-site .setores .st-in { display:block; position:static; inset:auto; z-index:auto; padding:0; }
.rd-site .setores h3 { margin:0 0 15px; font-size:29px; color:var(--rd-ink); text-shadow:none; }
.rd-site .setores p { color:var(--rd-muted); font-size:17px; max-width:30ch; }
.rd-site .setores a:hover h3 { color:var(--rd-red); }
.rd-site .setores .st.mais .seta-m { color:var(--rd-red-dark); display:block; margin-top:18px; font-size:16px; }
.rd-site .rd-process .sim,.rd-site .rd-transition .card-d .selo-iso { color:var(--rd-red-dark); }
.rd-site .selo-sus { background:var(--rd-silver); border:0; border-radius:0; padding:56px; box-shadow:none; overflow:hidden; }
.rd-site .selo-sus::before,.rd-site .selo-sus::after { display:none; }
.rd-site .sus-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.rd-site .selo-sus h2 { color:var(--rd-ink); font-size:clamp(32px,3.5vw,54px); }
.rd-site .selo-sus h2 em { color:var(--rd-red); font-style:normal; }
.rd-site .sus-eyebrow { color:var(--rd-muted); font:12px/1.5 var(--rd-mono); letter-spacing:.06em; }
.rd-site :is(.sus-p,.selo-sus>p,.sus-lista,.sus-iso) { color:var(--rd-muted); text-shadow:none; }
.rd-site .sus-lista { display:grid; gap:16px; margin:28px 0; list-style:none; padding:0; }
.rd-site .sus-lista li { color:var(--rd-muted); }
.rd-site .sus-lista b { color:var(--rd-ink); }
.rd-site .sus-lista .ck { background:none; border:0; color:var(--rd-red); }
.rd-site .sus-lista .ck svg { stroke:currentColor; }
.rd-site .sus-arte { width:100%; height:560px; opacity:1; position:relative; }
.rd-site .sus-arte img { width:100%; height:100%; object-fit:cover; }
.rd-site .sus-rodape { display:flex; flex-wrap:wrap; align-items:center; gap:24px; }
.rd-site .sus-iso { font-size:13px; }
.rd-applications-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:56px; margin:56px 0 32px; }
.rd-applications-grid>a { text-decoration:none; }
.rd-applications-grid>a:nth-child(2) { padding-top:120px; }
.rd-applications-grid img { width:100%; aspect-ratio:4/3; object-fit:cover; margin-bottom:26px; }
.rd-applications-grid span { font:12px/1.5 var(--rd-mono); text-transform:uppercase; color:var(--rd-red-dark); }
.rd-site .rd-applications-grid h3 { font-size:35px; margin:12px 0; }
.rd-applications-grid p { color:var(--rd-muted); max-width:470px; }
.rd-site .rd-knowledge { background:var(--rd-silver); }
.rd-knowledge-list { margin-top:52px; margin-bottom:32px; }
.rd-knowledge-list>a { display:grid; grid-template-columns:220px 1fr 36px; align-items:center; gap:30px; padding:30px 0; border-top:1px solid var(--rd-rule); text-decoration:none; }
.rd-knowledge-list>a>span:first-child { font:12px/1.5 var(--rd-mono); text-transform:uppercase; color:var(--rd-muted); }
.rd-site .rd-knowledge-list h3 { font-size:clamp(24px,2.4vw,36px); }
.rd-knowledge-list>a>span:last-child { color:var(--rd-red); font-size:32px; }
.rd-knowledge-list>a:hover h3 { color:var(--rd-red); }
.rd-site .rd-trust { border-top:1px solid var(--rd-rule); }
.rd-trust .rd-text-link { margin-top:32px; }
.rd-site .rd-home-reviews { background:var(--rd-silver); }
.rd-reviews-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-top:52px; }
.rd-review { display:flex; flex-direction:column; min-width:0; margin:0; padding:28px 0 0; border-top:1px solid var(--rd-rule); }
.rd-review-mark { color:var(--rd-red-dark); font-size:64px; line-height:1; height:54px; }
.rd-review blockquote { margin:0 0 28px; padding:0; border:0; }
.rd-review blockquote p { color:var(--rd-ink); font-size:clamp(20px,1.7vw,26px); line-height:1.5; margin:0; }
.rd-review figcaption { color:var(--rd-muted); font-size:14px; margin-top:auto; }
.rd-reviews-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px 40px; margin-top:40px; }
.rd-reviews-actions .rd-text-link { margin-top:0; color:var(--rd-red-dark); }
@media(max-width:900px) {
  .rd-reviews-grid { grid-template-columns:1fr; gap:32px; margin-top:36px; }
  .rd-review blockquote { max-width:42rem; margin-bottom:20px; }
  .rd-reviews-actions .rd-text-link { gap:20px; }
}

/* Perguntas, fluxo de contratação, diferenciais e listas. */
.rd-site .faq { margin:36px 0 0; max-width:1040px; }
.rd-site .faq details { border:0; border-top:1px solid var(--rd-rule); border-radius:0; background:none; padding:0; margin:0; }
.rd-site .faq details:last-child { border-bottom:1px solid var(--rd-rule); }
.rd-site .faq summary { position:relative; cursor:pointer; list-style:none; padding:24px 42px 24px 0; font-family:var(--rd-font); font-weight:500; font-size:20px; line-height:1.4; }
.rd-site .faq summary::-webkit-details-marker { display:none; }
.rd-site .faq summary::after { content:'+'; position:absolute; right:6px; top:20px; font-size:28px; font-weight:400; color:var(--rd-red); transform:none; }
.rd-site .faq details[open] summary::after { content:'−'; }
.rd-site .faq details p,.rd-site .faq details ul { padding:0 35px 26px 0; margin:0; color:#454c51; font-size:17px; line-height:1.7; }
.rd-site :is(.passos,.etapas,.passos-cv) { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; margin-top:56px; background:none; border:0; border-radius:0; }
.rd-site :is(.passo,.etapa,.p-cv) { background:none; padding:24px 0; border:0; border-top:1px solid var(--rd-rule); border-radius:0; box-shadow:none; }
.rd-site :is(.passo,.etapa,.p-cv) :is(.num,.n) { display:block; width:auto; height:auto; position:static; color:var(--rd-red); font:400 48px/1 var(--rd-font); margin:0 0 40px; background:none; border:0; padding:0; }
.rd-site :is(.passo,.etapa,.p-cv) h3 { font-size:25px; margin-bottom:18px; }
.rd-site :is(.passo,.etapa,.p-cv) p { color:var(--rd-muted); font-size:17px; }
.rd-site :is(.fluxo,.fluxo-lab) :is(.passo,.etapa) p { color:var(--rd-muted-on-dark); }
.rd-site :is(.fluxo,.fluxo-lab) :is(.passo,.etapa) :is(.num,.n) { color:var(--rd-red-on-dark); }
.rd-site .risca,.rd-site .passos::before,.rd-site .passo::before,.rd-site .passo::after { display:none; }
.rd-site :is(.dif,.ctrl,.benef,.pilares,.pilares-sus) { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 40px; margin-top:48px; }
.rd-site :is(.dif,.ctrl,.benef,.pilares,.pilares-sus)>article { padding:30px 0; background:none; border:0; border-top:1px solid var(--rd-rule); border-radius:0; box-shadow:none; }
.rd-site :is(.dif,.ctrl,.benef,.pilares,.pilares-sus)>article h3 { font-size:25px; margin:18px 0; color:var(--rd-ink); }
.rd-site :is(.dif,.ctrl,.benef,.pilares,.pilares-sus)>article p { color:var(--rd-muted); font-size:17px; }
.rd-site .sec-dif .dif>article h3 { color:var(--rd-white); }
.rd-site .sec-dif .dif>article p { color:var(--rd-muted-on-dark); }
.rd-site :is(.dif,.ctrl,.benef,.pilares,.pilares-sus) .ic { background:none; border:0; padding:0; width:32px; height:32px; color:var(--rd-red); }
.rd-site :is(.dif,.ctrl,.benef,.pilares,.pilares-sus) .ic svg { width:30px; height:30px; }
.rd-site .pilares-sus { grid-template-columns:1fr 1fr; }
.rd-site .lema-sus { padding:36px 0; margin:32px 0; border:0; border-block:1px solid var(--rd-rule); border-radius:0; background:none; color:var(--rd-ink); }
.rd-site .lema-sus p,.rd-site .lema-sus p b { color:var(--rd-ink); }
.rd-site :is(.chips,.areas) { display:flex; flex-wrap:wrap; gap:12px; margin-top:36px; }
.rd-site :is(.chip,.area) { border-radius:0; background:transparent; border:1px solid var(--rd-rule); padding:14px 18px; font-family:var(--rd-font); font-size:17px; }
.rd-site .lista-info { display:block; margin-top:36px; background:none; }
.rd-site .lista-info .item-info { position:relative; display:block; padding:32px 60px 32px 0; border:0; border-top:1px solid var(--rd-rule); border-radius:0; background:none; box-shadow:none; text-decoration:none; }
.rd-site .lista-info .item-info::after { content:'↗'; position:absolute; top:30px; right:0; color:var(--rd-red); font-size:32px; }
.rd-site .lista-info .item-info h2,.rd-site .lista-info .item-info h3 { margin:0 0 14px; font-size:clamp(27px,3vw,42px); }
.rd-site .lista-info .item-info p { max-width:860px; font-size:18px; color:var(--rd-muted); }
.rd-site .lista-info .item-info:hover { transform:none; }
.rd-site .lista-info .item-info:hover h2 { color:var(--rd-red); }

/* Galeria, laboratório e certificados. */
.rd-site :is(.gal-grid,.hero-fotos,.fotos-planta,.equip) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px 32px; }
.rd-site .hero-fotos { margin:0 0 48px; }
.rd-site .hero-fotos:not(.duas) { grid-template-columns:1fr; }
.rd-site :is(.gal-item,.hero-fotos figure,.fotos-planta figure,.equip figure) { background:none; border:0; border-radius:0; padding:0; margin:0; box-shadow:none; overflow:hidden; }
.rd-site :is(.gal-grid,.hero-fotos,.fotos-planta,.equip) :is(.ph,img) { border-radius:0; }
.rd-site :is(.gal-grid,.hero-fotos,.fotos-planta,.equip) .ph { height:auto; aspect-ratio:4/3; overflow:hidden; background:var(--rd-silver); }
.rd-site :is(.gal-grid,.hero-fotos,.fotos-planta,.equip) img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; transition:transform var(--rd-slow) var(--rd-ease); }
.rd-site :is(.gal-grid,.hero-fotos,.fotos-planta,.equip) figure:hover img { transform:scale(1.025); }
.rd-site :is(.gal-grid,.hero-fotos,.fotos-planta,.equip) figcaption { padding:22px 0 0; color:var(--rd-muted); font-size:15px; background:none; }
.rd-site :is(.gal-grid,.equip) figcaption h3 { font-size:26px; color:var(--rd-ink); margin-bottom:10px; }
.rd-site .gal-grid .cap .pt { display:none; }
.rd-site .gal-grid .cap { display:block; }
.rd-site .lab-hero { background:var(--rd-ink); color:#fff; }
.rd-site .lab-hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; max-width:var(--rd-container); margin:auto; padding:0 var(--rd-gutter); align-items:center; }
.rd-site .lab-hero-txt { padding-left:0!important; max-width:none!important; }
.rd-site .lab-hero h1 { font:400 clamp(44px,5vw,80px)/1.02 var(--rd-font); letter-spacing:-.04em; margin:24px 0; }
.rd-site .lab-hero h1 em { color:#ff767c; font-style:normal; }
.rd-site .lab-hero .sub { font-size:20px; line-height:1.55; color:#c2c9ce; }
.rd-site .lab-hero .crumb { color:#c2c9ce; }
.rd-site .lab-hero-img { height:540px; }
.rd-site .lab-hero-img img { width:100%; height:100%; object-fit:cover; }
.rd-site .bloco-iso { padding:36px; margin:36px 0; border-radius:0; border:1px solid var(--rd-rule); background:var(--rd-silver); box-shadow:none; }
.rd-site .bloco-iso h3 { font-size:30px; }
.rd-site .bloco-iso .iso-tag { color:var(--rd-red-dark); }
.rd-site .bloco-iso a { font-size:17px; border-radius:2px; }

/* Contato e candidaturas: campos amplos, erros e foco visíveis. */
.rd-site .form-bloco { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.75fr); gap:clamp(50px,7vw,110px); align-items:start; }
.rd-site :is(.form-lado,.info-lado) { min-width:0; padding:0; border:0; border-radius:0; background:none; color:var(--rd-ink); }
.rd-site :is(.form-lado,.info-lado) h2 { font-size:clamp(30px,3vw,44px); margin-top:0; color:var(--rd-ink); }
.rd-site :is(.intro,.aviso-form,.nota-envio) { color:var(--rd-muted); }
.rd-site .campos { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:32px; }
.rd-site .campo { min-width:0; }
.rd-site .campo label { display:block; margin:0 0 9px; font-size:15px; font-weight:500; color:var(--rd-ink); }
.rd-site :is(input,select,textarea) { font-family:var(--rd-font); font-size:17px; }
.rd-site .campo :is(input:not([type=checkbox]),select,textarea) { width:100%; min-height:54px; padding:13px 15px; color:var(--rd-ink); background:#fff; border:1px solid #aeb5ba; border-radius:2px; box-shadow:none; }
.rd-site .campo textarea { min-height:160px; resize:vertical; }
.rd-site .campo :is(input,textarea)::placeholder { color:var(--rd-muted); opacity:1; }
.rd-site .campo :is(input,select,textarea):focus { outline:2px solid var(--rd-red); outline-offset:2px; }
.rd-site .campo [aria-invalid=true] { border-color:var(--rd-red); background:#fff5f5; }
.rd-site .campo.full,.rd-site .aviso-form,.rd-site .nota-envio,.rd-site .envio-btns { grid-column:1/-1; }
.rd-site .envio-btns { display:flex; flex-wrap:wrap; gap:16px; align-items:center; }
.rd-site :is(.btn-envio-zap,.btn-envio-mail) { display:inline-flex; align-items:center; justify-content:center; gap:12px; cursor:pointer; }
.rd-site :is(.btn-envio-zap,.btn-envio-mail) svg { width:22px; height:22px; }
.rd-site .consent input { min-width:20px; min-height:20px; }
.rd-site .consent label { font-size:14px!important; line-height:1.5; }
.rd-site .info-item { padding:24px 0; background:none; border:0; border-bottom:1px solid var(--rd-rule); border-radius:0; display:flex; gap:20px; text-decoration:none; color:var(--rd-ink); }
.rd-site a.info-item:hover { color:var(--rd-red-dark); }
.rd-site .info-item .ic { color:var(--rd-red); background:none; border:0; width:26px; height:26px; flex:none; }
.rd-site .info-item .ic svg { fill:currentColor; }
.rd-site .info-item .tx { min-width:0; overflow-wrap:anywhere; }
.rd-site .info-item .rot-i { display:block; margin-bottom:8px; font-size:12px; font-family:var(--rd-mono); color:var(--rd-muted); opacity:1; }
.rd-site .mapa { margin-top:64px; border:0; border-radius:0; overflow:hidden; }
.rd-site .mapa iframe { width:100%; height:430px; border:0; }
.rd-site .social-i { margin-top:28px; }
.rd-site .social-i a { width:44px; height:44px; border-radius:0; color:var(--rd-ink); border-color:var(--rd-muted); }
.rd-site .social-i svg { fill:currentColor; }
.rd-site .social-i a:hover { color:#fff; background:var(--rd-red); border-color:var(--rd-red); }
.rd-site .check { margin:26px 0; padding-left:22px; }
.rd-site .check li { margin:12px 0; font-size:18px; }
.rd-site .envio { margin-top:60px; border-radius:0; padding:48px; border:1px solid var(--rd-rule); background:var(--rd-silver); color:var(--rd-ink); box-shadow:none; text-align:left; }
.rd-site .envio h2 { color:var(--rd-ink); }
.rd-site .envio p { color:var(--rd-muted); }
.rd-site .envio-mail { color:var(--rd-red-dark); font:400 clamp(22px,3vw,40px)/1.3 var(--rd-font); overflow-wrap:anywhere; }
.rd-site .envio small { display:block; margin-top:20px; color:var(--rd-muted); }
.rd-site .email-chip { color:var(--rd-muted); background:none; border-radius:0; }

/* Depoimentos são registros, sem indicadores artificiais de atualização. */
.rd-site .avs { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:56px; }
.rd-site .av { background:none; border:0; border-top:1px solid var(--rd-rule); border-radius:0; padding:30px 0 30px 18px; box-shadow:none; }
.rd-site .av::before { top:30px; bottom:auto; width:2px; height:32px; pointer-events:none; }
.rd-site .av .top { margin-bottom:22px; flex-wrap:wrap; }
.rd-site .av p { font-size:20px; line-height:1.55; color:var(--rd-ink); }
.rd-site .av h3 { margin-bottom:18px; }
.rd-site .av .quando { color:var(--rd-muted); font-size:13px; }
.rd-site .av .aspas { display:none; }
.rd-site .nota { color:var(--rd-ink); }
.rd-site .nota .num { color:var(--rd-ink); font-family:var(--rd-font); }
.rd-site .nota .lb,.rd-site .nota .gg { color:var(--rd-muted); }
.rd-site .btn-google-wrap>span { color:var(--rd-muted); }
.rd-site .btn-google .ar { color:inherit; }
.rd-site .pedir-in { border-radius:0; background:var(--rd-silver); border:1px solid var(--rd-rule); padding:36px; }
.rd-site .pedir-in h2 { font-size:36px; }

/* Encerramento e rodapé. */
.rd-site .cta-fim { padding:112px 0; text-align:left; background:var(--rd-red); color:#fff; border:0; }
.rd-site .cta-fim h2 { max-width:1000px; margin:26px 0 32px; font-size:clamp(42px,6vw,92px); }
.rd-site .cta-fim p { max-width:750px; margin:0 0 30px; color:#fff; font-size:20px; }
.rd-site .cta-fim .rotulo { font-size:12px; }
.rd-site .cta-fim .rotulo::before { background:#fff; }
.rd-site .cta-btns { justify-content:flex-start; gap:20px; }
.rd-site .cta-fim :is(.btn-wa,.btn-tel) { color:#fff; border-color:#ffffff80; background:none; }
.rd-site .cta-fim .btn-wa { background:#fff; color:var(--rd-ink); border-color:#fff; }
.rd-site .cta-fim :is(.btn-wa,.btn-tel):hover { background:var(--rd-ink); border-color:var(--rd-ink); color:#fff; }
.rd-site .rd-footer { padding:80px 0 0; background:var(--rd-ink); color:#bbc2c7; overflow:hidden; }
.rd-footer-callout { display:flex; justify-content:space-between; align-items:flex-end; gap:40px; padding-bottom:60px; margin-bottom:60px; border-bottom:1px solid #ffffff25; }
.rd-footer-callout>p { max-width:720px; color:#fff; font-size:clamp(36px,4vw,60px); line-height:1.1; letter-spacing:-.035em; }
.rd-footer-callout>a { color:#fff; }
.rd-site .foot { grid-template-columns:1.1fr .8fr 1fr; gap:64px; }
.rd-site .rd-footer h3 { font-size:13px; font-weight:500; letter-spacing:.08em; margin-bottom:22px; }
.rd-site .rd-footer .flogo b { font:500 22px var(--rd-font); }
.rd-site .rd-footer a { color:inherit; }
.rd-site .rd-footer a:hover { color:#fff; }
.rd-site .rd-footer li { margin-bottom:10px; }
.rd-site .rd-footer .social a { width:44px; height:44px; border-radius:0; }
.rd-site .iso-selo { border-radius:0; background:none; font-family:var(--rd-font); font-weight:400; }
.rd-site .foot-bottom { margin-top:64px; padding-top:24px; color:#b1bac0; font-size:13px; }
.rd-footer-wordmark { display:flex; align-items:baseline; justify-content:space-between; gap:40px; color:#fff; font-size:clamp(120px,25vw,430px); font-weight:500; letter-spacing:-.055em; line-height:1.12; margin-top:48px; }
.rd-footer-wordmark span { font:12px/1.4 var(--rd-mono); letter-spacing:.15em; }
/* WhatsApp: estrutura compartilhada; efeito em artec-star-border.css. */
.rd-site .rd-contact-float {
  right:max(24px, calc(env(safe-area-inset-right, 0px) + 12px));
  bottom:max(24px, calc(env(safe-area-inset-bottom, 0px) + 12px));
  gap:0;
}
.rd-contact-float>a {
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:68px;
  padding:17px 24px;
  overflow:hidden;
  border:2px solid #ffffffb3;
  border-radius:999px;
  color:var(--rd-ink);
  background:linear-gradient(155deg, #fff9, #ffffff24 48%, #ffffff52), #e7edf1;
  box-shadow:inset 0 1px 1px #fff, inset 0 -2px 3px #64727f30, 0 2px 4px #17212b20, 0 10px 28px #17212b26;
  font:600 1rem/1.35 var(--rd-font);
  letter-spacing:-.01em;
  white-space:nowrap;
  text-decoration:none;
  transition:background-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}
.rd-contact-float svg {
  position:relative;
  z-index:2;
  width:30px;
  height:30px;
  flex:none;
  color:#075e3b;
}
.rd-contact-float .rd-float-label { position:relative; z-index:2; }
.rd-contact-float>a:focus-visible {
  outline:3px solid var(--rd-red-dark);
  outline-offset:5px;
}
@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine) {
  .rd-contact-float>a:hover { transform:translateY(-2px); }
  .rd-contact-float>a:active { transform:translateY(0) scale(.98); }
}

/* Páginas de apoio e apresentações internacionais. */
.rd-site :is(.e404,.obg) { min-height:70vh; text-align:left; background:var(--rd-silver); }
.rd-site.rd-policy main h1 { font-size:clamp(42px,6vw,78px); line-height:1.08; letter-spacing:-.04em; margin:24px 0; }
.rd-site.rd-policy main .wrap-txt { max-width:1000px; }
.rd-site.rd-policy main h2 { font-size:32px; margin-top:44px; }
.rd-site.rd-policy main p { margin-bottom:24px; color:#454c51; font-size:18px; line-height:1.75; }
.rd-site :is(.e404,.obg) h1 { font:400 clamp(44px,6vw,80px)/1.05 var(--rd-font); letter-spacing:-.04em; margin:20px 0; }
.rd-site :is(.e404,.obg) .cod { font:400 clamp(100px,15vw,210px)/1 var(--rd-font); color:var(--rd-red); }
.rd-site :is(.e404,.obg) p { margin:20px 0; max-width:760px; color:var(--rd-muted); }
.rd-site .atalhos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:48px; background:none; }
.rd-site .atalhos a { border:0; border-top:1px solid var(--rd-rule); border-radius:0; background:none; padding:24px 0; text-decoration:none; }
.rd-site .atalhos b { display:block; color:var(--rd-ink); font-size:23px; }
.rd-site .atalhos span { color:var(--rd-muted); font-size:16px; }
.rd-locale-hero { position:relative; min-height:100svh; padding:160px var(--rd-gutter) 72px; background:var(--rd-ink); color:#fff; overflow:hidden; }
.rd-locale-media { position:absolute; inset:0; }
.rd-locale-media img { width:100%; height:100%; object-fit:cover; filter:grayscale(.9); }
.rd-locale-media::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#0f151bee,#0f151b50); }
.rd-locale-copy { position:relative; z-index:1; max-width:var(--rd-container); margin:auto; }
.rd-locale-intro { margin-bottom:48px; }
.rd-locale-intro h1 { font:400 clamp(52px,7vw,112px)/1 var(--rd-font); letter-spacing:-.045em; max-width:1100px; margin:32px 0; }
.rd-locale-intro .rotulo { color:#d6dade; }
.rd-locale-intro .sub { max-width:730px; font-size:22px; line-height:1.5; color:#d6dade; }
.rd-locale-copy .l1,.rd-locale-copy .l2 { display:inline; font-size:15px; color:#d6dade; margin-right:24px; }
.rd-locale-copy hr { display:none; }
.rd-locale-copy .banner-ctas { display:flex; flex-wrap:wrap; gap:20px; margin:32px 0 20px; }
.rd-locale-copy .banner-ctas a { display:inline-flex; align-items:center; gap:12px; background:var(--rd-red); color:#fff; border:1px solid transparent; }
.rd-locale-copy .banner-ctas .bt-2 { background:none; border-color:#ffffff80; }
.rd-locale-copy .banner-ctas svg { width:20px; height:20px; }
.rd-locale-copy .banner-selos { display:flex; flex-wrap:wrap; gap:24px; color:#d6dade; font-size:13px; }
.rd-locale-facts { background:var(--rd-silver); padding:40px var(--rd-gutter); }
.rd-site .rd-locale-facts .dados { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; max-width:var(--rd-container); margin:auto; }
.rd-site .rd-locale-facts .card-d { padding:0; border:0; background:none; }
.rd-site .rd-locale-facts .card-d b { display:block; color:var(--rd-ink); font:400 38px/1.1 var(--rd-font); margin-bottom:10px; }
.rd-site .rd-locale-facts .card-d span { color:var(--rd-muted); font-size:16px; }
.rd-site.rd-locale .grid-trat { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 40px; margin-top:48px; }
.rd-site.rd-locale .grid-trat>div { background:none; border:0; border-top:1px solid var(--rd-rule); border-radius:0; padding:26px 0; box-shadow:none; }
.rd-site.rd-locale .grid-trat .am { display:none; }
.rd-site.rd-locale .grid-trat .gt-corpo { padding:0; }
.rd-site.rd-locale .grid-trat h3 { font-size:26px; color:var(--rd-ink); }
.rd-site.rd-locale .grid-trat p { color:var(--rd-muted); font-size:17px; }
.rd-site.rd-lang-de :is(h1,h2,h3,.rd-family-title) { hyphens:auto; overflow-wrap:anywhere; }
.rd-site .rd-local-quality { background:var(--rd-silver); }
.rd-local-quality .wrap { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:56px; }
.rd-local-quality img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.rd-local-quality p { color:var(--rd-muted); margin-bottom:24px; font-size:19px; }

/* Movimento discreto, conteúdo disponível sem animação ou JavaScript. */
.rd-site [data-rd-reveal].rd-about-pending { opacity:0; transform:translateY(22px); }
.rd-site [data-rd-reveal].rd-about-visible { animation:rd-about-reveal var(--rd-slow) var(--rd-ease-reveal) both; }
@media(max-width:1100px) {
  .rd-site.rd-inner main { padding-top:84px; }
  .rd-site main>section:not(.rd-hero):not(.rd-transition):not(.rd-about):not(.rd-locale-hero):not(.rd-locale-facts) { padding-top:80px; padding-bottom:80px; }
  .rd-site .rd-reading { grid-template-columns:190px minmax(0,1fr); gap:40px; }
  .rd-family { grid-template-columns:48px minmax(0,1fr) minmax(0,.9fr); gap:24px; }
  .rd-capabilities { grid-template-columns:1fr; }
  .rd-family-image img { height:510px; }
  .rd-structure-panel { gap:36px; }
  .rd-structure-panel>img { height:400px; }
  .rd-site .sus-grid { gap:32px; }
  .rd-site .selo-sus { padding:36px; }
  .rd-site :is(.passos,.etapas,.passos-cv) { grid-template-columns:1fr 1fr; }
  .rd-site :is(.dif,.ctrl,.benef,.pilares) { grid-template-columns:1fr 1fr; }
  .rd-site .lab-hero-grid { gap:36px; }
  .rd-site .lab-hero-img { height:480px; }
  .rd-footer-callout { align-items:start; flex-direction:column; }
  .rd-site .foot { gap:36px; }
  .rd-knowledge-list>a { grid-template-columns:150px 1fr 32px; }
}
@media(max-width:760px) {
  .rd-site { font-size:17px; }
  .rd-site.rd-inner main { padding-top:128px; }
  .rd-site h2 { font-size:38px; }
  .rd-site h3 { font-size:24px; }
  .rd-site main>section:not(.rd-hero):not(.rd-transition):not(.rd-about):not(.rd-locale-hero):not(.rd-locale-facts) { padding-top:64px; padding-bottom:64px; }
  .rd-site .rd-about h2 { font-size:28px; }
  .rd-site .rd-about .lead { font-size:18px; }
  .rd-site .rd-about .rotulo,.rd-site .rd-about-kicker { font-size:10px; }
  .rd-site .rd-about-marker { font-size:11px; }
  .rd-site :is(.hero-int,.av-hero,.v-hero) h1 { font-size:clamp(36px,10vw,64px); letter-spacing:-.04em; }
  .rd-site :is(.hero-int,.av-hero,.v-hero) .sub { font-size:19px; }
  .rd-site .crumb { margin-bottom:28px; font-size:13px; }
  .rd-site .rd-reading { display:block; }
  .rd-site .rd-toc { position:static; max-height:none; overflow:visible; margin:0 0 40px; padding:0 0 22px; }
  .rd-site .rd-toc ol { display:grid; grid-template-columns:1fr 1fr; gap:0 18px; }
  .rd-site .rd-toc a { font-size:13px; }
  .rd-site .rd-toc p { margin-bottom:8px; }
  .rd-site .rd-prose>h2,.rd-site .conteudo>.wrap-txt>h2 { font-size:29px; margin-top:46px; }
  .rd-site .rd-prose>p { font-size:17px; }
  .rd-answer { padding-left:18px; }
  .rd-answer>p:last-child { font-size:18px; }
  .rd-service-actions { align-items:stretch; gap:18px; }
  .rd-site .rd-service-actions .rd-button { width:100%; }
  .rd-families { margin-top:40px; }
  .rd-family { grid-template-columns:44px minmax(0,1fr); gap:16px; padding:32px 0 48px; }
  .rd-family-number { font-size:32px; }
  .rd-family-title { font-size:32px; }
  .rd-family-description { font-size:17px; }
  .rd-capabilities { margin-top:26px; gap:0; }
  .rd-family-image { grid-column:1/-1; grid-row:2; margin-top:12px; }
  .rd-family-image img { height:auto; aspect-ratio:4/3; }
  .rd-site .rd-capability h3 { font-size:21px; }
  .rd-site .outros-grid { grid-template-columns:1fr 1fr; gap:0 22px; }
  .rd-site .outros-grid a { font-size:16px; }
  .rd-structure-tabs { gap:20px; margin-bottom:26px; }
  .rd-structure-tabs button { flex-direction:column; align-items:start; gap:10px; min-height:84px; font-size:18px; padding:18px 0; flex:1; }
  .rd-structure-panel { grid-template-columns:1fr; gap:30px; }
  .rd-structure-panel>img { height:280px; }
  .rd-site .rd-structure-panel h3 { font-size:32px; }
  .rd-site .setores { grid-template-columns:1fr 1fr; gap:0 24px; margin-top:36px; }
  .rd-site .setores h3 { font-size:24px; }
  .rd-site .setores p { font-size:16px; }
  .rd-site .selo-sus { padding:30px 24px; }
  .rd-site .sus-grid { grid-template-columns:1fr; }
  .rd-site .sus-arte { height:300px; }
  .rd-site .selo-sus h2 { font-size:34px; }
  .rd-applications-grid { grid-template-columns:1fr; gap:40px; margin-top:36px; }
  .rd-applications-grid>a:nth-child(2) { padding-top:0; }
  .rd-site .rd-applications-grid h3 { font-size:30px; }
  .rd-knowledge-list>a { grid-template-columns:1fr 28px; gap:12px; }
  .rd-knowledge-list>a>span:first-child { grid-column:1/-1; }
  .rd-site .rd-knowledge-list h3 { font-size:26px; }
  .rd-site .faq summary { font-size:19px; padding-top:22px; padding-bottom:22px; }
  .rd-site .faq details p { padding-right:0; }
  .rd-site :is(.passos,.etapas,.passos-cv,.dif,.ctrl,.benef,.pilares,.pilares-sus) { grid-template-columns:1fr; gap:0; margin-top:36px; }
  .rd-site :is(.passo,.etapa,.p-cv) :is(.num,.n) { margin-bottom:24px; font-size:40px; }
  .rd-site :is(.gal-grid,.hero-fotos,.fotos-planta,.equip) { grid-template-columns:1fr; gap:36px; }
  .rd-site .lab-hero-grid { grid-template-columns:1fr; gap:36px; }
  .rd-site .lab-hero-img { height:330px; }
  .rd-site .lab-hero h1 { font-size:44px; }
  .rd-site .lab-hero .sub { font-size:18px; }
  .rd-site .bloco-iso { padding:24px; }
  .rd-site .form-bloco { grid-template-columns:1fr; gap:60px; }
  .rd-site .campos { grid-template-columns:1fr; gap:22px; }
  .rd-site .campo.full { grid-column:auto; }
  .rd-site .envio-btns { flex-direction:column; align-items:stretch; }
  .rd-site .mapa iframe { height:300px; }
  .rd-site .envio { padding:28px 22px; }
  .rd-site .avs { grid-template-columns:1fr; gap:12px; }
  .rd-site .nota { flex-wrap:wrap; gap:28px; }
  .rd-site .nota .sep { display:none; }
  .rd-site .pedir-in { display:flex; flex-direction:column; align-items:start; gap:26px; padding:28px; }
  .rd-site .cta-fim h2 { font-size:42px; }
  .rd-site .cta-fim p { font-size:18px; }
  .rd-site .cta-btns { flex-direction:column; align-items:stretch; }
  .rd-site .cta-btns>a { justify-content:center; font-size:15px; padding:16px; }
  .rd-site .rd-footer { padding-top:64px; }
  .rd-footer-callout { padding-bottom:40px; margin-bottom:40px; gap:28px; }
  .rd-footer-callout>p { font-size:36px; }
  .rd-site .foot { grid-template-columns:1fr; gap:40px; }
  .rd-footer-wordmark { margin-top:40px; gap:10px; font-size:25vw; }
  .rd-footer-wordmark span { display:none; }
  .rd-site .rd-contact-float {
    right:max(16px, calc(env(safe-area-inset-right, 0px) + 12px));
    bottom:max(16px, calc(env(safe-area-inset-bottom, 0px) + 12px));
  }
  .rd-contact-float>a { width:68px; height:68px; padding:17px; border-radius:50%; }
  .rd-contact-float .rd-float-label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .rd-site .atalhos { grid-template-columns:1fr; gap:0; }
  .rd-locale-hero { padding:132px var(--rd-gutter) 52px; }
  .rd-locale-intro h1 { font-size:clamp(42px,10vw,64px); }
  .rd-locale-intro .sub { font-size:18px; }
  .rd-locale-copy .l1,.rd-locale-copy .l2 { display:block; font-size:14px; }
  .rd-locale-copy .banner-ctas { flex-direction:column; align-items:stretch; }
  .rd-locale-copy .banner-ctas a { justify-content:center; }
  .rd-locale-copy .banner-selos { gap:12px; }
  .rd-site .rd-locale-facts .dados { grid-template-columns:1fr; gap:28px; }
  .rd-site .rd-locale-facts .card-d b { font-size:32px; }
  .rd-site.rd-locale .grid-trat { grid-template-columns:1fr; gap:0; }
  .rd-local-quality .wrap { grid-template-columns:1fr; gap:32px; }
}
@media(max-width:520px) {
  .rd-site .setores { grid-template-columns:1fr; }
}
@media(max-width:380px) {
  .rd-site h2 { font-size:33px; }
  .rd-site .rd-toc ol,.rd-site .outros-grid,.rd-site .setores { grid-template-columns:1fr; }
  .rd-family { grid-template-columns:32px minmax(0,1fr); gap:12px; }
  .rd-family-title { font-size:28px; }
  .rd-site .rd-header-cta { font-size:12px; padding:12px; }
  .rd-structure-tabs { gap:12px; }
  .rd-structure-tabs button { font-size:16px; }
}
@media(prefers-reduced-motion:reduce) {
  html:has(.rd-site) { scroll-behavior:auto; }
  .rd-site *, .rd-site *::before,.rd-site *::after { animation:none!important; transition:none!important; }
  .rd-site [data-rd-reveal].rd-about-pending { opacity:1; transform:none; }
}
@media print {
  .rd-site .rd-header,.rd-site .rd-footer,.rd-site #zap,.rd-site .rd-toc,.rd-site .rd-hero-controls,.rd-site .rd-marquee-control { display:none!important; }
  .rd-site.rd-inner main { padding-top:0; }
  .rd-site [data-rd-reveal],.rd-site [data-rd-about-reveal] { opacity:1!important; transform:none!important; animation:none!important; }
  .rd-site .rd-reading { display:block; }
  .rd-site .rd-structure-panel[hidden],.rd-site .rd-pane[hidden] { display:block!important; }
  .rd-site * { color:#000!important; background:transparent!important; box-shadow:none!important; text-shadow:none!important; }
}
