/**
 * Páginas públicas secundárias (RGPD, erro, enviado, mapa pedido) —
 * alinhadas ao index.html: fundo escuro, tipografia Nikoovers, cartões e botões coerentes.
 * Carregar depois de css/dua-public-nav.css e, se necessário, css/bootstrap-icons.css.
 */
@font-face {
  font-family: "Nikoovers";
  src: url("../Font_Nikoovers.woff2") format("woff2"),
       url("../Font_Nikoovers.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Marca «dua» (reforço com --accent desta página; ver também css/dua-public-nav.css) */
.dua-accent-a {
  color: var(--accent, #ffd700);
  font-weight: 400;
}

body.dua-site-public-page {
  --bg: #0a0a0a;
  --muted: #9aa0a6;
  --text: #e8eaed;
  --accent: #ffd700;
  --card: #111214;
  --line: #222326;
  --form-border: #6b7280;
  --link: #cbd5e1;
  --shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  --radius: 1.25rem;
  --maxw: 1100px;
  --pad: clamp(16px, 2vw, 28px);
  margin: 0;
  background: var(--bg);
  color: var(--muted);
  font-family: "Nikoovers", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  word-spacing: 0.12em;
  font-synthesis: none;
}

body.dua-site-public-page .dua-page-main {
  padding-bottom: clamp(2rem, 5vw, 3.5rem);
}

body.dua-site-public-page .dua-page-content-wrap {
  padding: clamp(1.25rem, 3vw, 2rem) var(--pad);
}

body.dua-site-public-page .wrap {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 var(--pad);
}

body.dua-site-public-page .dua-card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: clamp(1.35rem, 3vw, 2rem);
  box-shadow: var(--shadow);
  color: var(--muted);
}

body.dua-site-public-page .dua-card h2,
body.dua-site-public-page .dua-card .h5 {
  color: var(--text);
  font-weight: 400;
  letter-spacing: 0.06em;
}

body.dua-site-public-page .dua-page-hero {
  text-align: center;
  margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

body.dua-site-public-page .dua-page-hero h1 {
  color: var(--text);
  font-weight: 400;
  font-size: clamp(1.25rem, 2.8vw, 1.65rem);
  letter-spacing: 0.08em;
  text-transform: lowercase;
  margin: 0 0 0.65rem;
}

body.dua-site-public-page .dua-page-title-line {
  text-align: left;
  margin: 0 0 1rem;
  font-size: clamp(1.05rem, 2.2vw, 1.35rem);
  font-weight: 400;
  letter-spacing: 0.06em;
  color: var(--text);
  line-height: 1.35;
}

body.dua-site-public-page .dua-page-hero .lead {
  color: var(--muted);
  margin: 0;
  font-size: clamp(0.92rem, 1.6vw, 1.05rem);
  line-height: 1.65;
}

body.dua-site-public-page a:not(.dua-btn):not(.nav-links a):not(.social a):not(.veja-wa-fab):not(.footer-brand a) {
  color: var(--link);
  text-decoration: none;
}
body.dua-site-public-page a:not(.dua-btn):not(.nav-links a):not(.social a):not(.veja-wa-fab):hover,
body.dua-site-public-page a:not(.dua-btn):not(.nav-links a):not(.social a):not(.veja-wa-fab):focus-visible {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 0.15em;
  font-weight: 400;
}

/* Compatibilidade com classes Bootstrap ainda usadas no markup */
body.dua-site-public-page .veja-comprar-section {
  padding: 0;
}
body.dua-site-public-page .veja-comprar-card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: clamp(1.35rem, 3vw, 2rem);
  box-shadow: var(--shadow);
  color: var(--muted);
}
body.dua-site-public-page .veja-comprar-card-cap {
  display: none;
}
body.dua-site-public-page .veja-comprar-title,
body.dua-site-public-page h1.veja-comprar-title {
  color: var(--text) !important;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: lowercase;
}
/* Intro / tempo estimado: mais escuro que --muted, para ler como instrução (não como campo) */
body.dua-site-public-page .veja-comprar-lead,
body.dua-site-public-page .veja-comprar-eta {
  color: color-mix(in oklab, var(--muted), var(--text) 40%) !important;
}
/* Texto auxiliar dentro do formulário de pedido */
body.dua-site-public-page .veja-comprar-form .form-text,
body.dua-site-public-page .veja-comprar-form .veja-comprar-step-desc,
body.dua-site-public-page .veja-comprar-form .veja-comprar-step-desc.text-muted,
body.dua-site-public-page .veja-comprar-form p.text-muted,
body.dua-site-public-page .veja-comprar-form p.small.text-muted {
  color: color-mix(in oklab, var(--muted), var(--text) 48%) !important;
}
/* .text-muted noutros sítios da página: um pouco mais escuro que antes (evitar mistura com #fff) */
body.dua-site-public-page .text-muted {
  color: color-mix(in oklab, var(--muted), var(--text) 28%) !important;
}
body.dua-site-public-page .text-body,
body.dua-site-public-page .veja-comprar-card .text-body {
  color: var(--text) !important;
}
body.dua-site-public-page .veja-comprar-step-title {
  color: var(--text) !important;
  font-weight: 400;
}
body.dua-site-public-page h1,
body.dua-site-public-page h2,
body.dua-site-public-page h3,
body.dua-site-public-page h4,
body.dua-site-public-page h5,
body.dua-site-public-page h6,
body.dua-site-public-page strong,
body.dua-site-public-page b {
  font-weight: 400;
}
body.dua-site-public-page .border-top {
  border-color: var(--line) !important;
}

/* Botões */
body.dua-site-public-page .dua-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  padding: 0.8em 1.25em;
  border-radius: 999px;
  font: inherit;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-decoration: none !important;
  border: 1px solid var(--form-border);
  cursor: pointer;
  transition:
    box-shadow 0.2s ease,
    border-color 0.15s ease,
    filter 0.15s ease,
    transform 0.15s ease;
}
body.dua-site-public-page .dua-btn-primary {
  background: var(--card);
  color: #fff !important;
  border-color: var(--form-border);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.1);
}
body.dua-site-public-page .dua-btn-primary:hover,
body.dua-site-public-page .dua-btn-primary:focus-visible {
  filter: brightness(1.08);
  color: var(--accent) !important;
  border-color: var(--accent) !important;
  transform: translateY(-1px);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1), 0 8px 22px rgba(0, 0, 0, 0.12);
}
body.dua-site-public-page .dua-btn-ghost {
  background: rgba(255, 255, 255, 0.05);
  color: #fff !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 4px 14px rgba(0, 0, 0, 0.08);
}
body.dua-site-public-page .dua-btn-ghost:hover,
body.dua-site-public-page .dua-btn-ghost:focus-visible {
  color: var(--accent) !important;
  border-color: var(--accent);
  transform: translateY(-1px);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1), 0 8px 20px rgba(0, 0, 0, 0.1);
}
@media (prefers-reduced-motion: reduce) {
  body.dua-site-public-page .dua-btn {
    transition: none;
  }
  body.dua-site-public-page .dua-btn-primary:hover,
  body.dua-site-public-page .dua-btn-ghost:hover {
    transform: none;
  }
}

body.dua-site-public-page .btn-warning.text-dark {
  background: var(--card) !important;
  color: #fff !important;
  border: 1px solid var(--form-border) !important;
  border-radius: 999px;
  font-weight: 400;
}
body.dua-site-public-page .btn-warning.text-dark:hover,
body.dua-site-public-page .btn-warning.text-dark:focus-visible {
  color: var(--accent) !important;
}
body.dua-site-public-page .btn-outline-dark {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid var(--form-border) !important;
  border-radius: 999px;
}
body.dua-site-public-page .btn-outline-dark:hover,
body.dua-site-public-page .btn-outline-dark:focus-visible {
  color: var(--accent) !important;
  border-color: var(--accent) !important;
  font-weight: 400;
}

/* Rodapé (igual ao index.html) */
body.dua-site-public-page footer[role="contentinfo"] {
  border-top: 1px solid var(--line);
  background: #0c0d0f;
  padding: clamp(1.5rem, 3vw, 2.25rem) 0;
}
body.dua-site-public-page footer .footer-grid {
  display: grid;
  gap: 1rem;
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 var(--pad);
}
body.dua-site-public-page footer .small {
  font-size: 0.92rem;
}
body.dua-site-public-page footer .social {
  text-align: center;
  margin: 1.75rem 0 0;
  font-size: 1rem;
}
body.dua-site-public-page footer .social a {
  margin: 0 0.75rem;
  color: inherit;
  text-decoration: none;
}
body.dua-site-public-page footer .social a:hover {
  color: var(--accent);
  text-decoration: underline;
  font-weight: 400;
}

/* Breadcrumb Bootstrap → tema escuro (se ainda existir .breadcrumb) */
body.dua-site-public-page .breadcrumb {
  background: transparent !important;
  padding: 0;
  margin: 0;
}
body.dua-site-public-page .breadcrumb-item a {
  color: var(--link) !important;
}
body.dua-site-public-page .breadcrumb-item.active,
body.dua-site-public-page .breadcrumb-item.active::before {
  color: var(--muted) !important;
}

/* Mapa pedido: caixa do mapa */
body.dua-site-public-page .gmap-imovel-wrap {
  border-color: color-mix(in oklab, var(--accent), transparent 35%) !important;
  background: #1a1d22 !important;
}

body.dua-site-public-page .dua-icon-accent {
  color: var(--accent);
  font-weight: 400;
}

body.dua-site-public-page .dua-flex-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}

body.dua-site-public-page .dua-alert-warn {
  background: color-mix(in oklab, var(--accent), transparent 88%);
  border: 1px solid color-mix(in oklab, var(--accent), transparent 45%);
  color: var(--text);
  padding: 0.85rem 1rem;
  border-radius: 0.65rem;
  margin-bottom: 1rem;
  font-size: 0.95rem;
}
