/*
 * RSAF refresh — linguagem visual aprovada pelo usuário a partir da referência
 * proprietária. Mantém o conteúdo, a semântica e os CTAs do WordPress.
 */
:root {
  --rsaf-ink: #133e47;
  --rsaf-deep: #0b3038;
  --rsaf-wine: #925164;
  --rsaf-cream: #f7f2e9;
  --rsaf-mist: #d5e8e4;
  --font-display: "Playfair Display", Georgia, serif;
  --font-body: "DM Sans", Arial, sans-serif;
}

.rsaf-reference-refresh { background: #fffdfa; color: var(--rsaf-ink); }
.rsaf-reference-refresh h1,
.rsaf-reference-refresh h2,
.rsaf-reference-refresh h3,
.rsaf-reference-refresh .btn,
.rsaf-reference-refresh .site-header { font-family: var(--font-body); }
.rsaf-reference-refresh h1,
.rsaf-reference-refresh h2,
.rsaf-reference-refresh h3 { color: var(--rsaf-ink); font-family: var(--font-display); font-weight: 600; }
.rsaf-reference-refresh h1 { letter-spacing: clamp(-.075rem, -.12vw, -.025rem); line-height: .94; }
.rsaf-reference-refresh h2 { line-height: 1; letter-spacing: -.04em; }
.rsaf-reference-refresh .mono,
.rsaf-reference-refresh .eyebrow,
.rsaf-reference-refresh .section-kicker { color: var(--rsaf-wine); font-family: "DM Sans", Arial, sans-serif; font-size: .72rem; font-weight: 700; letter-spacing: .16em; }

/* Primeira dobra: serif de alto contraste e painel orgânico, leve em mobile. */
.rsaf-reference-refresh .hero { background: #fffdfa; padding-top: calc(var(--header-h) + clamp(3.5rem, 7vw, 7rem)); padding-bottom: clamp(3.5rem, 6vw, 6rem); }
.rsaf-reference-refresh .hero__folio { display: none; }
.rsaf-reference-refresh .hero h1 { font-size: clamp(3.25rem, 6.3vw, 6.25rem); max-width: 10.5ch; }
.rsaf-reference-refresh .hero h1 .hl { color: var(--rsaf-wine); font-family: "Playfair Display", Georgia, serif; font-style: italic; font-weight: 600; }
.rsaf-reference-refresh .hero__lead { color: #5a6c70; font-family: var(--font-body); font-size: clamp(1rem, 1.2vw, 1.18rem); line-height: 1.65; max-width: 35rem; }
.rsaf-reference-refresh .hero__note { color: #607174; font-family: var(--font-body); font-size: .8rem; }
.rsaf-reference-refresh .hero__note::first-letter { color: var(--rsaf-wine); }
.rsaf-reference-refresh .btn--primary,
.rsaf-reference-refresh .site-header .btn { background: var(--rsaf-ink); border-color: var(--rsaf-ink); color: #fffdfa; box-shadow: none; }
.rsaf-reference-refresh .btn--primary:hover,
.rsaf-reference-refresh .site-header .btn:hover { background: var(--rsaf-wine); border-color: var(--rsaf-wine); }
.rsaf-reference-refresh .btn--secondary { border-color: transparent; color: var(--rsaf-ink); }

.rsaf-reference-refresh .fig--hero { border: var(--rule); border-radius: var(--radius-s); box-shadow: var(--shadow-1); overflow: hidden; }
.rsaf-reference-refresh .fig--hero .fig__canvas {
  aspect-ratio: 4 / 3;
  background: var(--paper-2);
}
.rsaf-reference-refresh .fig--hero .fig__svg { display: block; opacity: 1; mix-blend-mode: normal; }
.rsaf-reference-refresh .fig--hero .fig__caption { display: block; }
.rsaf-reference-refresh .about__identity {
  aspect-ratio: 4 / 5;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 1.25rem;
  padding: 2rem;
  background: linear-gradient(145deg, #123e47, #1c7073);
  color: #fffdfa;
  text-align: center;
}
.rsaf-reference-refresh .about__identity img { width: min(10rem, 58%); height: auto; object-fit: contain; }
.rsaf-reference-refresh .about__identity p { max-width: 22ch; margin: 0; color: #e6f3f0; font-size: var(--step--1); }
.rsaf-reference-refresh .safety__image-canvas img { display: block; width: 100%; height: 100%; object-fit: cover; }
.rsaf-reference-refresh .rsaf-home-form { min-width: 0; }
.rsaf-reference-refresh .rsaf-home-form .forminator-ui.forminator-custom-form[data-design=default] { margin: 0; }
.rsaf-reference-refresh .rsaf-home-form .forminator-button-submit { background: var(--rsaf-ink) !important; border-color: var(--rsaf-ink) !important; }
.rsaf-reference-refresh .hero__base { background: var(--rsaf-deep); border: 0; color: #fffdfa; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); padding: 1.2rem max(1.25rem, calc((100vw - var(--container)) / 2)); }
.rsaf-reference-refresh .hero__base .mono { color: #d7e6e3; font-family: var(--font-body); font-size: .72rem; letter-spacing: .1em; }
.rsaf-reference-refresh .hero__base { height: 10px; margin-top: var(--space-2xl); padding: 0; }
.rsaf-reference-refresh .hero__base > * { display: none; }

/* Tipografia e superfícies das seções seguintes. */
.rsaf-reference-refresh .section:nth-of-type(even),
.rsaf-reference-refresh .process { background: var(--rsaf-cream); }
.rsaf-reference-refresh .cred { background: #f4f9f8; border-color: #d9e9e6; }
.rsaf-reference-refresh .cred__item { border-color: #d9e9e6; }
.rsaf-reference-refresh .cred__item .mono,
.rsaf-reference-refresh .cred__item p { color: var(--rsaf-ink); }
.rsaf-reference-refresh .cred__item .icon { color: var(--rsaf-wine); }

/* A parceria ganha contraste: fundo claro, texto e cartões em petróleo. */
.rsaf-reference-refresh #para-clinicas { background: #e8f1ef; color: var(--rsaf-ink); }
.rsaf-reference-refresh #para-clinicas h2,
.rsaf-reference-refresh #para-clinicas h3,
.rsaf-reference-refresh #para-clinicas .sec-lead,
.rsaf-reference-refresh #para-clinicas .lead { color: var(--rsaf-ink); }
.rsaf-reference-refresh #para-clinicas .partners__item { background: #fffdfa; border-color: #c7dcd8; }
.rsaf-reference-refresh #para-clinicas .partners__item h3,
.rsaf-reference-refresh #para-clinicas .partners__item p { color: var(--rsaf-ink); }
.rsaf-reference-refresh #para-clinicas .partners__item .icon { color: var(--rsaf-wine); }
.rsaf-reference-refresh .site-footer { background: var(--rsaf-deep); border-color: var(--rsaf-deep); }
.rsaf-reference-refresh .site-footer h2,
.rsaf-reference-refresh .site-footer h3 { color: #fffdfa; }
.rsaf-reference-refresh .site-footer .mono,
.rsaf-reference-refresh .site-footer .mono--on-teal { color: #cce7e1; }

/* Remove numeração editorial decorativa, preservando a estrutura semântica. */
.rsaf-reference-refresh .sec-num,
.rsaf-reference-refresh .proto__idx,
.rsaf-reference-refresh .bula__head > .mono[aria-hidden="true"] { display: none; }
.rsaf-reference-refresh .card,
.rsaf-reference-refresh .bula { border-radius: .85rem; border-color: rgba(19,62,71,.13); box-shadow: none; }
.rsaf-reference-refresh .card h3,
.rsaf-reference-refresh .bula h3 { font-family: var(--font-display); font-weight: 600; }
.rsaf-reference-refresh .service-card--primary { background: var(--rsaf-ink); border-color: var(--rsaf-ink); }
.rsaf-reference-refresh .service-card--primary h3,
.rsaf-reference-refresh .service-card--primary p { color: #fffdfa; }
.rsaf-reference-refresh .service-card--soon { background: #e9dfd0; }
.rsaf-reference-refresh a:not(.btn) { text-underline-offset: .24em; }

@media (max-width: 720px) {
  .rsaf-reference-refresh .hero { padding-top: calc(var(--header-h) + 2.5rem); }
  .rsaf-reference-refresh .hero h1 { font-size: clamp(3rem, 14vw, 4.4rem); }
  .rsaf-reference-refresh .fig--hero { max-width: 100%; }
  .rsaf-reference-refresh .fig--hero .fig__caption { max-width: 68%; min-height: 6.5rem; }
  .rsaf-reference-refresh .hero__base { padding-inline: 1.25rem; }
}
