/* Albuquerque & Brandão Advocacia — site (SanWeb, 03/11/2026)
   SWCore 2.2.1 (rem = 10px). Marca = variáveis do SWCore sobrescritas aqui. Noite é o padrão; dia em html[sw-theme="light"].
   Nada de style nas tags: todo visual mora aqui. */

/* ── Marca ─────────────────────────────────────────────── */
:root {
  --ab-ouro: #c99a4b;
  --ab-ouro-claro: #e8c88a;
  --ab-ouro-escuro: #9a7130;
  --ab-fundo: #0b1322;
  --ab-fundo-2: #111c30;
  --ab-fundo-3: #18253d;
  --ab-texto: #f3ede2;
  --ab-texto-mut: #b7b0a3;
  --ab-linha: rgba(201, 154, 75, .28);
  --ab-vidro: rgba(11, 19, 34, .72);
  --ab-serifa: "Cinzel", "Trajan Pro", Georgia, serif;
  --ab-italica: "Cormorant Garamond", Georgia, serif;
  --ab-corpo: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
  --ab-topo-h: 7.6rem;

  --sw-pri: var(--ab-ouro);
  --sw-pri-txt: #1a1206;
  --sw-bg: var(--ab-fundo);
  --sw-sur: var(--ab-fundo-2);
  --sw-txt: var(--ab-texto);
  --sw-txt-mut: var(--ab-texto-mut);
  --sw-bor: var(--ab-linha);
}
html[sw-theme="light"] {
  --ab-ouro: #a87a2e;
  --ab-ouro-claro: #c99a4b;
  --ab-ouro-escuro: #7d5a1f;
  --ab-fundo: #f7f2e8;
  --ab-fundo-2: #efe7d7;
  --ab-fundo-3: #e6dcc7;
  --ab-texto: #16202f;
  --ab-texto-mut: #5a5f69;
  --ab-linha: rgba(125, 90, 31, .25);
  --ab-vidro: rgba(247, 242, 232, .82);
  --sw-pri-txt: #fff;
}

/* ── Base ──────────────────────────────────────────────── */
html { scroll-behavior: smooth; scroll-padding-top: var(--ab-topo-h); }
body.ab {
  background: var(--ab-fundo);
  color: var(--ab-texto);
  font-family: var(--ab-corpo);
  font-size: 1.7rem;
  line-height: 1.65;
  overflow-x: clip;
  transition: background-color .5s ease, color .5s ease;
}
.ab img { max-width: 100%; height: auto; display: block; }
:where(.ab) a { color: inherit; text-decoration: none; }
.ab-wrap { width: min(124rem, 100% - 3.2rem); margin-inline: auto; }
.ab-pular { position: absolute; left: -999rem; top: 1rem; z-index: 999; padding: 1rem 1.6rem; background: var(--ab-ouro); color: #111; border-radius: .6rem; }
.ab-pular:focus { left: 1rem; }
.ab :focus-visible { outline: 2px solid var(--ab-ouro-claro); outline-offset: 3px; }

/* Tipografia */
.ab-titulo {
  font-family: var(--ab-serifa);
  font-weight: 600;
  font-size: clamp(3rem, 2rem + 2.6vw, 5.4rem);
  line-height: 1.12;
  letter-spacing: .01em;
  margin: 0 0 2rem;
  text-wrap: balance;
}
.ab-titulo em, .ab-hero__titulo em { font-family: var(--ab-italica); font-style: italic; font-weight: 600; color: var(--ab-ouro-claro); letter-spacing: 0; }
.ab-titulo--grande { font-size: clamp(3.4rem, 2rem + 3.6vw, 7rem); }
.ab-sobretitulo {
  display: flex; align-items: center; gap: 1.2rem;
  margin: 0 0 1.6rem;
  font-size: 1.25rem; font-weight: 700; letter-spacing: .32em; text-transform: uppercase;
  color: var(--ab-ouro);
}
.ab-linha { display: inline-block; width: 4.8rem; height: 1px; background: currentColor; }
.ab-num { font-family: var(--ab-serifa); font-size: 1.6rem; letter-spacing: .08em; padding: .2rem .8rem; border: 1px solid var(--ab-linha); border-radius: .4rem; }
.ab p { margin: 0 0 1.6rem; }
.ab-cab { max-width: 72rem; margin-bottom: 5.6rem; }
.ab-cab--centro { margin-inline: auto; text-align: center; display: grid; justify-items: center; }
.ab-cab__sub { color: var(--ab-texto-mut); font-size: 1.8rem; }

/* Botões na cor da marca */
.ab [sw-btn~="pri"] { background: linear-gradient(135deg, var(--ab-ouro-claro), var(--ab-ouro) 55%, var(--ab-ouro-escuro)); color: #1a1206; border: 0; font-weight: 700; box-shadow: 0 1rem 3rem -1rem rgba(201, 154, 75, .55); }
.ab [sw-btn~="pri"]:hover { filter: brightness(1.08); box-shadow: 0 1.4rem 4rem -1rem rgba(201, 154, 75, .75); }
.ab-btn-linha { border: 1px solid var(--ab-linha) !important; color: var(--ab-texto) !important; }
.ab-btn-linha:hover { border-color: var(--ab-ouro) !important; color: var(--ab-ouro-claro) !important; }
.ab-ima { display: inline-block; }

/* ── Topo ──────────────────────────────────────────────── */
.ab-topo {
  position: fixed; inset: 0 0 auto; z-index: 50;
  padding-top: env(safe-area-inset-top, 0px);
  transition: background-color .4s ease, backdrop-filter .4s ease, box-shadow .4s ease;
  background: linear-gradient(to bottom, rgba(5, 9, 17, .75), transparent);
}
.ab-topo.is-rolado { background: var(--ab-vidro); backdrop-filter: blur(14px) saturate(1.2); box-shadow: 0 1px 0 var(--ab-linha); }
.ab-topo__in { width: min(140rem, 100% - 3.2rem); margin-inline: auto; height: var(--ab-topo-h); display: flex; align-items: center; gap: 2.4rem; }
.ab-topo__marca { display: flex; align-items: center; gap: 1.2rem; min-width: 0; }
.ab-topo__mono { width: 5.4rem; height: auto; transition: width .4s ease; filter: drop-shadow(0 .4rem 1rem rgba(0, 0, 0, .4)); }
.ab-topo.is-rolado .ab-topo__mono { width: 4.2rem; }
.ab-topo__nome { font-family: var(--ab-serifa); font-weight: 600; font-size: 1.8rem; line-height: 1.1; color: #f3ede2; text-shadow: 0 .2rem .8rem rgba(0, 0, 0, .5); white-space: nowrap; }
.ab-topo.is-rolado .ab-topo__nome { color: var(--ab-texto); text-shadow: none; }
.ab-topo__nome em { font-family: var(--ab-italica); color: var(--ab-ouro-claro); }
.ab-topo__nome small { display: block; font-family: var(--ab-corpo); font-size: 1rem; letter-spacing: .5em; color: var(--ab-ouro); margin-top: .3rem; }
.ab-topo__menu { display: none; margin-left: auto; gap: 3.2rem; font-size: 1.45rem; font-weight: 600; }
.ab-topo__menu a { position: relative; color: #f3ede2; text-shadow: 0 .2rem .8rem rgba(0, 0, 0, .5); padding-block: .6rem; }
.ab-topo.is-rolado .ab-topo__menu a { color: var(--ab-texto); text-shadow: none; }
.ab-topo__menu a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 0; height: 1px; background: var(--ab-ouro); transition: right .35s ease; }
.ab-topo__menu a:hover::after { right: 0; }
.ab-topo__acoes { display: flex; align-items: center; gap: 1rem; margin-left: auto; }
.ab-topo__zap span { display: none; }
.ab-dia, .ab-topo__abrir {
  display: grid; place-items: center; width: 4.4rem; height: 4.4rem; border-radius: 50%;
  border: 0; cursor: pointer; font-size: 2rem;
}
.ab-dia { background: var(--ab-ouro); color: #1a1206; box-shadow: 0 .6rem 1.6rem -.4rem rgba(201, 154, 75, .6); }
.ab-topo__abrir { background: rgba(255, 255, 255, .1); color: #f3ede2; border: 1px solid rgba(255, 255, 255, .2); }
.ab-topo.is-rolado .ab-topo__abrir { color: var(--ab-texto); border-color: var(--ab-linha); }

/* Menu do celular (sw-panel) */
.ab-menu-cel { --sw-panel-sz: 100%; background: var(--ab-fundo); }
.ab-menu-cel__logo { width: 18rem; }
.ab-menu-cel__links { display: grid; gap: .4rem; margin: 2.4rem 0 3.2rem; }
.ab-menu-cel__links a { display: flex; align-items: baseline; gap: 1.6rem; padding: 1.6rem 0; border-bottom: 1px solid var(--ab-linha); font-family: var(--ab-serifa); font-size: 2.6rem; }
.ab-menu-cel__links span { font-family: var(--ab-corpo); font-size: 1.2rem; color: var(--ab-ouro); letter-spacing: .2em; }
.ab-menu-cel__zap { width: 100%; justify-content: center; }

@media (max-width: 1023px) {
  .ab-topo__zap { display: none; }               /* no celular o WhatsApp é o botão verde fixo */
  .ab-topo__nome { font-size: 1.55rem; white-space: normal; }
  .ab-topo__mono { width: 4.4rem; }
}
@media (min-width: 1024px) {
  .ab-topo__menu { display: flex; }
  .ab-topo__acoes { margin-left: 0; }
  .ab-topo__zap span { display: inline; }
  .ab-topo__abrir { display: none; }
}

/* ── 1. Abertura em tela cheia ─────────────────────────── */
.ab-hero {
  position: relative; isolation: isolate; overflow: hidden;
  min-height: 100svh;
  display: grid; align-items: end;
  padding: calc(var(--ab-topo-h) + 4rem) 1.6rem 9rem;
  background: #070d18;
  color: #f3ede2;
}
.ab-hero__foto { position: absolute; inset: 0; z-index: -2; overflow: hidden; }
.ab-hero__foto img { width: 100%; height: 100%; object-fit: cover; object-position: 30% 60%; }
.ab-hero__veu { position: absolute; inset: 0; background:
  linear-gradient(to top, #070d18 8%, rgba(7, 13, 24, .55) 45%, rgba(7, 13, 24, .25) 70%, rgba(7, 13, 24, .7)),
  radial-gradient(ellipse at 20% 70%, rgba(201, 154, 75, .18), transparent 55%); }
.ab-hero__letra {
  position: absolute; z-index: -1; right: -2vw; bottom: -6vw;
  font-family: var(--ab-serifa); font-weight: 700; font-size: 48vw; line-height: .8;
  color: transparent; -webkit-text-stroke: 1px rgba(201, 154, 75, .22);
  pointer-events: none; user-select: none;
  animation: abLetra 14s ease-in-out infinite alternate;
}
@keyframes abLetra { to { transform: translate(-2vw, -1.5vw); -webkit-text-stroke-color: rgba(232, 200, 138, .34); } }
.ab-hero__texto { max-width: 76rem; }
.ab-hero .ab-sobretitulo { color: var(--ab-ouro-claro); }
.ab-hero__titulo {
  font-family: var(--ab-serifa); font-weight: 600;
  font-size: clamp(3.4rem, 1.8rem + 4.4vw, 7.6rem);
  line-height: 1.06; letter-spacing: .005em; margin: 0 0 2.4rem;
  text-wrap: balance; text-shadow: 0 .4rem 3rem rgba(0, 0, 0, .55);
}
.ab-hero__titulo em { color: var(--ab-ouro-claro); }
.ab-hero__sub { font-size: clamp(1.6rem, 1.4rem + .4vw, 1.95rem); color: #d9d2c4; max-width: 62rem; }
.ab-hero__botoes { display: flex; flex-wrap: wrap; gap: 1.2rem; margin: 3.2rem 0; }
.ab-hero .ab-btn-linha { color: #f3ede2 !important; border-color: rgba(255, 255, 255, .35) !important; }
.ab-hero__selos { display: flex; flex-wrap: wrap; gap: .8rem 2.4rem; list-style: none; margin: 0; padding: 0; font-size: 1.4rem; color: #cfc6b5; }
.ab-hero__selos li { display: flex; align-items: center; gap: .8rem; }
.ab-hero__selos i { color: var(--ab-ouro-claro); font-size: 1.8rem; }
.ab-hero__rolar { position: absolute; left: 50%; bottom: 2.4rem; translate: -50% 0; font-size: 2.8rem; color: var(--ab-ouro-claro); }

@media (min-width: 1024px) {
  .ab-hero { align-items: center; padding-inline: max(4rem, calc((100vw - 132rem) / 2)); }
  .ab-hero__foto { left: auto; width: 54%; clip-path: polygon(16% 0, 100% 0, 100% 100%, 0 100%); }
  .ab-hero__veu { background:
    linear-gradient(to right, #070d18 0%, rgba(7, 13, 24, .55) 30%, transparent 70%),
    linear-gradient(to top, rgba(7, 13, 24, .7), transparent 40%); }
  .ab-hero__foto img { object-position: 20% 55%; }
  .ab-hero__letra { right: auto; left: -3vw; bottom: -8vw; font-size: 34vw; }
  .ab-hero__texto { max-width: 66rem; }
}

/* ── Faixa correndo ────────────────────────────────────── */
.ab-faixa {
  position: relative; z-index: 2;
  background: linear-gradient(90deg, var(--ab-ouro-escuro), var(--ab-ouro), var(--ab-ouro-escuro));
  color: #1a1206; font-family: var(--ab-serifa); font-weight: 600; font-size: 1.7rem; letter-spacing: .14em; text-transform: uppercase;
  padding-block: 1.4rem; rotate: -1.2deg; margin: -1.6rem -2rem 0; box-shadow: 0 1.4rem 4rem -1.6rem rgba(0, 0, 0, .6);
}

/* ── 2. Telas cheias ───────────────────────────────────── */
.ab-telas { position: relative; }
.ab-tela {
  position: relative; overflow: hidden; min-height: 100svh;
  display: grid; align-items: center; gap: 3.2rem;
  padding: calc(var(--ab-topo-h) + 3.2rem) 1.6rem 6.4rem;
  background: var(--ab-fundo);
}
.ab-tela__foto { position: relative; border-radius: .4rem; overflow: hidden; max-height: 56svh; }
.ab-tela__foto::after { content: ""; position: absolute; inset: 1.6rem; border: 1px solid rgba(232, 200, 138, .55); pointer-events: none; }
.ab-tela__foto img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; }
.ab-tela__texto { max-width: 62rem; }
.ab-tela__texto > p { color: var(--ab-texto-mut); }
.ab-tela--escritorio { background: radial-gradient(ellipse at 85% 30%, rgba(201, 154, 75, .12), transparent 55%), var(--ab-fundo); }
.ab-tela--banco { background: linear-gradient(160deg, var(--ab-fundo-2), var(--ab-fundo)); }
.ab-citacao {
  margin: 2.8rem 0 0; padding: 1.6rem 0 1.6rem 2.4rem; border-left: 2px solid var(--ab-ouro);
  font-family: var(--ab-italica); font-style: italic; font-size: clamp(2.2rem, 1.8rem + 1vw, 3rem); line-height: 1.3; color: var(--ab-ouro-claro);
}

.ab-tela--busca { place-items: center; text-align: center; color: #f3ede2; background: #070d18; }
.ab-tela__fundo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .38; z-index: 0; }
.ab-tela--busca::before { content: ""; position: absolute; inset: 0; z-index: 1; background: radial-gradient(ellipse at center, rgba(7, 13, 24, .35), #070d18 78%); }
.ab-tela__centro { position: relative; z-index: 2; max-width: 92rem; display: grid; justify-items: center; }
.ab-tela__centro > p { color: #d9d2c4; font-size: 1.9rem; max-width: 64rem; }
.ab-tela--busca .ab-sobretitulo { color: var(--ab-ouro-claro); }
.ab-lista-ouro { list-style: none; padding: 0; margin: 2.4rem 0 0; display: grid; gap: 1.2rem; text-align: left; }
.ab-lista-ouro li { display: flex; gap: 1.2rem; align-items: center; padding: 1.4rem 2rem; border: 1px solid rgba(232, 200, 138, .3); background: rgba(7, 13, 24, .55); backdrop-filter: blur(6px); border-radius: .4rem; font-weight: 600; }
.ab-lista-ouro i { color: var(--ab-ouro-claro); font-size: 2.2rem; }

.ab-numeros { display: flex; flex-wrap: wrap; gap: 3.2rem; margin-top: 3.2rem; }
.ab-numeros div { display: grid; }
.ab-numeros strong { font-family: var(--ab-serifa); font-size: clamp(6rem, 4rem + 4vw, 10rem); line-height: .9; color: var(--ab-ouro); }
.ab-numeros span { font-size: 1.4rem; color: var(--ab-texto-mut); max-width: 18rem; }

@media (min-width: 900px) {
  .ab-tela { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 6.4rem; padding-inline: max(4rem, calc((100vw - 128rem) / 2)); }
  .ab-tela__foto { max-height: 78svh; height: 78svh; }
  .ab-tela--busca { grid-template-columns: minmax(0, 1fr); }
  .ab-lista-ouro { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ── 3. Áreas de atuação ───────────────────────────────── */
.ab-areas { padding: 12rem 0; background: var(--ab-fundo); }
.ab-areas__lista { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: minmax(0, 1fr); border-top: 1px solid var(--ab-linha); }
.ab-areas__lista li {
  position: relative; display: grid; grid-template-columns: 5.6rem 3.6rem minmax(0, 1fr); gap: 1.6rem; align-items: start;
  padding: 2.8rem 0; border-bottom: 1px solid var(--ab-linha);
  transition: padding-left .4s ease, background-color .4s ease;
}
.ab-areas__lista li::before { content: ""; position: absolute; left: 0; top: -1px; height: 1px; width: 0; background: var(--ab-ouro); transition: width .6s ease; }
.ab-areas__lista li:hover { padding-left: 1.6rem; background: linear-gradient(90deg, rgba(201, 154, 75, .08), transparent 70%); }
.ab-areas__lista li:hover::before { width: 100%; }
.ab-areas__n { font-family: var(--ab-serifa); font-size: 3.2rem; line-height: 1; color: transparent; -webkit-text-stroke: 1px var(--ab-ouro); }
.ab-areas__lista li:hover .ab-areas__n { color: var(--ab-ouro); }
.ab-areas__lista i { font-size: 2.8rem; color: var(--ab-ouro); margin-top: .2rem; }
.ab-areas__lista h3 { font-family: var(--ab-serifa); font-weight: 600; font-size: 2.1rem; margin: 0 0 .6rem; }
.ab-areas__lista p { margin: 0; color: var(--ab-texto-mut); font-size: 1.55rem; }
@media (min-width: 900px) {
  .ab-areas__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 6.4rem; }
}

/* ── 4. Como funciona ──────────────────────────────────── */
.ab-como { position: relative; overflow: hidden; isolation: isolate; padding: 12rem 0; color: #f3ede2; background: #070d18; }
.ab-como__fundo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .22; z-index: -1; }
.ab-como .ab-sobretitulo { color: var(--ab-ouro-claro); }
.ab-passos { list-style: none; padding: 0; margin: 0; display: grid; gap: 2.4rem; grid-template-columns: minmax(0, 1fr); counter-reset: passo; }
.ab-passos li { position: relative; padding: 4rem 3.2rem 3.2rem; border: 1px solid rgba(232, 200, 138, .28); background: rgba(7, 13, 24, .6); backdrop-filter: blur(8px); border-radius: .4rem; overflow: hidden; }
.ab-passos__n { position: absolute; right: 1.6rem; top: -1.6rem; font-family: var(--ab-serifa); font-size: 14rem; line-height: 1; color: transparent; -webkit-text-stroke: 1px rgba(232, 200, 138, .35); }
.ab-passos h3 { font-family: var(--ab-serifa); font-size: 2.4rem; margin: 0 0 1rem; color: var(--ab-ouro-claro); }
.ab-passos p { margin: 0; color: #cfc6b5; max-width: 32rem; }
@media (min-width: 900px) { .ab-passos { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ab-passos li:nth-child(2) { translate: 0 4rem; } .ab-passos li:nth-child(3) { translate: 0 8rem; } .ab-como { padding-bottom: 20rem; } }

/* ── 5. O advogado ─────────────────────────────────────── */
.ab-advogado { padding: 12rem 0; background: linear-gradient(180deg, var(--ab-fundo-2), var(--ab-fundo)); }
.ab-advogado__grade { display: grid; gap: 4.8rem; grid-template-columns: minmax(0, 1fr); align-items: center; }
.ab-advogado__foto { position: relative; margin: 0; max-width: 46rem; }
.ab-advogado__foto img:first-child { width: 100%; aspect-ratio: 714 / 1000; object-fit: cover; object-position: 50% 15%; border-radius: .4rem; }
.ab-advogado__foto::before { content: ""; position: absolute; inset: 2.4rem -2.4rem -2.4rem 2.4rem; border: 1px solid var(--ab-ouro); z-index: -1; border-radius: .4rem; }
.ab-advogado__foto figcaption { position: absolute; right: -1.6rem; bottom: 2.4rem; width: 9.6rem; height: 9.6rem; display: grid; place-items: center; border-radius: 50%; background: var(--ab-fundo); border: 1px solid var(--ab-ouro); box-shadow: 0 1rem 3rem rgba(0, 0, 0, .4); animation: abSelo 18s linear infinite; }
.ab-advogado__foto figcaption img { width: 6rem; }
@keyframes abSelo { to { rotate: 360deg; } }
.ab-advogado__texto > p { color: var(--ab-texto-mut); max-width: 60rem; }
.ab-advogado__botoes { display: flex; flex-wrap: wrap; gap: 1.2rem; margin-top: 2.4rem; }
@media (min-width: 900px) { .ab-advogado__grade { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 8rem; } }

/* ── 6. Dúvidas ────────────────────────────────────────── */
.ab-duvidas { padding: 12rem 0; background: var(--ab-fundo); }
.ab-duvidas__grade { display: grid; gap: 3.2rem; grid-template-columns: minmax(0, 1fr); }
.ab-duvidas__lista { display: grid; gap: 1.2rem; }
.ab-duvidas details { background: var(--ab-fundo-2); border: 1px solid var(--ab-linha); border-radius: .4rem; padding: 0 2.4rem; }
.ab-duvidas summary { padding: 2.2rem 0; font-family: var(--ab-serifa); font-weight: 600; font-size: 1.8rem; cursor: pointer; }
.ab-duvidas details p { color: var(--ab-texto-mut); padding-bottom: 2.2rem; margin: 0; }
.ab-duvidas details[open] { border-color: var(--ab-ouro); }
@media (min-width: 1024px) { .ab-duvidas__grade { grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: 8rem; } .ab-duvidas .ab-cab { position: sticky; top: calc(var(--ab-topo-h) + 4rem); align-self: start; } }

/* ── 7. Contato ────────────────────────────────────────── */
.ab-contato { padding: 12rem 0; background: radial-gradient(ellipse at 50% 0%, rgba(201, 154, 75, .16), transparent 60%), var(--ab-fundo-2); }
.ab-contato__mono { width: 11rem; margin-bottom: 2.4rem; }
.ab-contato .ab-ima { margin-top: 1.6rem; }
.ab-contato__cartoes { display: grid; gap: 1.6rem; grid-template-columns: minmax(0, 1fr); margin-top: 6.4rem; }
.ab-cartao { display: grid; gap: .6rem; align-content: start; padding: 3.2rem 2.8rem; background: var(--ab-fundo); border: 1px solid var(--ab-linha); border-radius: .4rem; transition: border-color .35s ease, translate .35s ease; }
a.ab-cartao:hover { border-color: var(--ab-ouro); translate: 0 -.6rem; }
.ab-cartao > i { font-size: 3rem; color: var(--ab-ouro); margin-bottom: .8rem; }
.ab-cartao h3 { font-family: var(--ab-serifa); font-size: 1.9rem; margin: 0; }
.ab-cartao p, .ab-cartao address { font-style: normal; color: var(--ab-texto-mut); font-size: 1.55rem; margin: 0; overflow-wrap: anywhere; }
.ab-cartao__acao { margin-top: 1.2rem; display: inline-flex; align-items: center; gap: .6rem; color: var(--ab-ouro); font-weight: 700; font-size: 1.4rem; }
.ab-cartao__acao--mudo { color: var(--ab-texto-mut); font-weight: 600; }
@media (min-width: 700px) { .ab-contato__cartoes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .ab-contato__cartoes { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* ── Rodapé + assinatura SanWeb ────────────────────────── */
.ab-rodape { background: #060b14; color: #cfc6b5; padding: 8rem 0 calc(3.2rem + env(safe-area-inset-bottom, 0px)); }
html[sw-theme="light"] .ab-rodape { background: #15202f; }
.ab-rodape__cima { display: grid; gap: 2rem; justify-items: start; padding-bottom: 4rem; }
.ab-rodape__logo { width: 26rem; }
.ab-rodape__frase { color: #a69f92; max-width: 48rem; margin: 0; }
.ab-rodape__links { display: flex; flex-wrap: wrap; gap: 1.2rem 2.8rem; font-weight: 600; font-size: 1.45rem; }
.ab-rodape__links a:hover { color: var(--ab-ouro-claro); }
.ab-rodape__legal { border-block: 1px solid rgba(201, 154, 75, .18); padding-block: 1.8rem; text-align: center; font-size: 1.3rem; color: #8c8578; }
.ab-rodape__legal p { margin: 0; padding-inline: 1.6rem; }
.ab-assina { text-align: center; margin: 2.4rem 0 7rem; font-size: 1.3rem; color: #8c8578; }
.ab-assina a { display: inline-flex; align-items: center; gap: .6rem; }
.ab-assina__s { width: 1.6rem; height: 1.6rem; background: var(--ab-ouro); -webkit-mask: url("/assets/img/sanweb-s.webp") center / contain no-repeat; mask: url("/assets/img/sanweb-s.webp") center / contain no-repeat; animation: abS 6s ease-in-out infinite; }
@keyframes abS { 0%, 80%, 100% { rotate: 0deg; } 90% { rotate: 360deg; } }
.ab-assina a:hover strong { background: linear-gradient(90deg, var(--ab-ouro-claro), #fff, var(--ab-ouro-claro)); -webkit-background-clip: text; background-clip: text; color: transparent; }
@media (min-width: 900px) { .ab-assina { margin-bottom: 2.4rem; } }

/* WhatsApp fixo */
.ab-zap-fixo {
  position: fixed; right: 1.6rem; bottom: calc(1.6rem + env(safe-area-inset-bottom, 0px)); z-index: 40;
  width: 5.8rem; height: 5.8rem; border-radius: 50%; display: grid; place-items: center;
  background: #25d366; color: #fff; font-size: 3rem; box-shadow: 0 1rem 3rem -.6rem rgba(37, 211, 102, .6);
  animation: abPulso 2.6s ease-out infinite;
}
@keyframes abPulso { 0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, .55); } 70% { box-shadow: 0 0 0 1.6rem rgba(37, 211, 102, 0); } 100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); } }

/* Voltar ao topo (sw-top) — fica acima do WhatsApp fixo */
.ab-topo-btn { right: 2.4rem !important; bottom: calc(9.2rem + env(safe-area-inset-bottom, 0px)) !important; z-index: 41;
  background: linear-gradient(135deg, var(--ab-ouro-claro), var(--ab-ouro) 55%, var(--ab-ouro-escuro)) !important; color: #1a1206 !important;
  box-shadow: 0 .8rem 2rem -.6rem rgba(201, 154, 75, .7) !important; }

/* ═══ MODO DIA EM TODAS AS SEÇÕES (Sandro 03/11: "se é dia e noite, vale para todas as páginas") ═══
   Abertura, tela da busca, "Como funciona" e rodapé eram escuros fixos: no dia viram claros. */
html[sw-theme="light"] .ab-hero { background: var(--ab-fundo); color: var(--ab-texto); }
html[sw-theme="light"] .ab-hero__veu { background:
  linear-gradient(to top, var(--ab-fundo) 10%, rgba(247, 242, 232, .7) 45%, rgba(247, 242, 232, .35) 70%, rgba(247, 242, 232, .75)),
  radial-gradient(ellipse at 20% 70%, rgba(201, 154, 75, .2), transparent 55%); }
html[sw-theme="light"] .ab-hero__titulo { text-shadow: 0 .2rem 2rem rgba(247, 242, 232, .8); }
html[sw-theme="light"] .ab-hero__titulo em { color: var(--ab-ouro); }
html[sw-theme="light"] .ab-hero .ab-sobretitulo { color: var(--ab-ouro); }
html[sw-theme="light"] .ab-hero__sub { color: #3c4250; }
html[sw-theme="light"] .ab-hero__selos { color: #4a505c; }
html[sw-theme="light"] .ab-hero__selos i, html[sw-theme="light"] .ab-hero__rolar { color: var(--ab-ouro); }
html[sw-theme="light"] .ab-hero .ab-btn-linha { color: var(--ab-texto) !important; border-color: var(--ab-linha) !important; }
html[sw-theme="light"] .ab-hero__letra { -webkit-text-stroke-color: rgba(168, 122, 46, .3); }
@media (min-width: 1024px) {
  html[sw-theme="light"] .ab-hero__veu { background:
    linear-gradient(to right, var(--ab-fundo) 0%, rgba(247, 242, 232, .6) 30%, transparent 70%),
    linear-gradient(to top, rgba(247, 242, 232, .6), transparent 40%); }
}
/* topo em cima da abertura: no dia o texto fica escuro */
html[sw-theme="light"] .ab-topo { background: linear-gradient(to bottom, rgba(247, 242, 232, .85), transparent); }
html[sw-theme="light"] .ab-topo__nome, html[sw-theme="light"] .ab-topo__menu a { color: var(--ab-texto); text-shadow: none; }
html[sw-theme="light"] .ab-topo__abrir { color: var(--ab-texto); background: rgba(0, 0, 0, .05); border-color: var(--ab-linha); }
html[sw-theme="light"] .ab-topo__mono { filter: drop-shadow(0 .2rem .6rem rgba(0, 0, 0, .25)); }

html[sw-theme="light"] .ab-tela--busca { background: var(--ab-fundo); color: var(--ab-texto); }
html[sw-theme="light"] .ab-tela--busca::before { background: radial-gradient(ellipse at center, rgba(247, 242, 232, .55), var(--ab-fundo) 78%); }
html[sw-theme="light"] .ab-tela__fundo { opacity: .22; }
html[sw-theme="light"] .ab-tela__centro > p { color: #3c4250; }
html[sw-theme="light"] .ab-tela--busca .ab-sobretitulo { color: var(--ab-ouro); }
html[sw-theme="light"] .ab-lista-ouro li { background: rgba(255, 255, 255, .7); border-color: var(--ab-linha); }
html[sw-theme="light"] .ab-lista-ouro i { color: var(--ab-ouro); }
html[sw-theme="light"] .ab-tela__foto::after { border-color: rgba(168, 122, 46, .6); }

html[sw-theme="light"] .ab-como { background: var(--ab-fundo-2); color: var(--ab-texto); }
html[sw-theme="light"] .ab-como__fundo { opacity: .12; }
html[sw-theme="light"] .ab-como .ab-sobretitulo { color: var(--ab-ouro); }
html[sw-theme="light"] .ab-passos li { background: rgba(255, 255, 255, .75); border-color: var(--ab-linha); }
html[sw-theme="light"] .ab-passos h3 { color: var(--ab-ouro-escuro); }
html[sw-theme="light"] .ab-passos p { color: #4a505c; }
html[sw-theme="light"] .ab-passos__n { -webkit-text-stroke-color: rgba(168, 122, 46, .4); }

html[sw-theme="light"] .ab-rodape { background: var(--ab-fundo-3); color: var(--ab-texto); }
html[sw-theme="light"] .ab-rodape__frase, html[sw-theme="light"] .ab-rodape__legal, html[sw-theme="light"] .ab-assina { color: #5a5f69; }
html[sw-theme="light"] .ab-rodape__legal { border-color: var(--ab-linha); }
html[sw-theme="light"] .ab-rodape__links a:hover { color: var(--ab-ouro-escuro); }
html[sw-theme="light"] .ab-advogado__foto figcaption, html[sw-theme="light"] .ab-cartao { background: #fff; }

/* Menos movimento */
@media (prefers-reduced-motion: reduce) {
  .ab-hero__letra, .ab-advogado__foto figcaption, .ab-assina__s, .ab-zap-fixo { animation: none; }
  html { scroll-behavior: auto; }
}
