﻿:root {
  --dv-black: #080704;
  --dv-black-soft: #100d08;
  --dv-gold: #d6b14a;
  --dv-gold-strong: #e2bf55;
  --dv-bg: #f7f1e7;
  --dv-text: #17130c;
}

/* Base */
html,
body {
  overflow-x: hidden !important;
}

/* Cabeçalho */
header,
.site-header,
.main-header,
.navbar,
.dv-header {
  background: #080704 !important;
  min-height: 86px !important;
  box-shadow: 0 18px 45px -35px rgba(0,0,0,.75) !important;
}

header .brand,
header .logo,
nav .brand,
nav .logo,
.site-logo,
.dv-brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 170px !important;
  min-height: 64px !important;
}

header img,
nav img,
.logo img,
.brand img,
.site-logo img,
.dv-brand img,
.dv-header-symbol-fixed {
  width: auto !important;
  height: auto !important;
  max-width: 86px !important;
  max-height: 72px !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
}

/* Quando houver texto da marca ao lado, evitar duplicação visual */
header .brand span,
header .logo span,
.site-logo span,
.dv-brand span {
  color: #f2e7c8 !important;
  letter-spacing: .08em !important;
}

/* Home: hero principal */
body .dv-home-hero-media-fixed {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 320px !important;
  min-height: 420px !important;
  border-radius: 34px !important;
  overflow: hidden !important;
  background:
    linear-gradient(135deg, rgba(8,7,4,.08), rgba(8,7,4,.72)),
    url("/dv-hero-home.jpg?v=20260515-210731") center / cover no-repeat !important;
  box-shadow:
    0 34px 100px -58px rgba(0,0,0,.85),
    inset 0 0 0 1px rgba(214,177,74,.16) !important;
}

/* Oculta imagem quebrada ou símbolo indevido dentro do hero */
body .dv-home-hero-media-fixed > img,
body .dv-home-hero-media-fixed picture,
body .dv-home-hero-media-fixed figure {
  display: none !important;
}

/* Força os blocos visuais da primeira seção da home a terem tamanho real */
body.dv-page-home main > section:first-of-type [class*="visual"],
body.dv-page-home main > section:first-of-type [class*="media"],
body.dv-page-home main > section:first-of-type [class*="image"],
body.dv-page-home main > section:first-of-type .hero-card,
body.dv-page-home main > section:first-of-type .visual-card {
  min-height: 420px !important;
  border-radius: 34px !important;
}

/* CTA da home */
body.dv-page-home main > section:first-of-type a,
body.dv-page-home main > section:first-of-type button {
  font-weight: 700 !important;
}

/* Banner de cookies mais controlado */
.cookie-banner,
.cookie-consent,
.dv-cookie,
#cookie-banner,
.dv-cookie-compact {
  max-width: 560px !important;
  border-radius: 18px !important;
  z-index: 9999 !important;
  box-shadow: 0 22px 65px -35px rgba(0,0,0,.85) !important;
}

.cookie-banner p,
.cookie-consent p,
.dv-cookie p,
#cookie-banner p {
  line-height: 1.5 !important;
}

/* Ajustes mobile */
@media (max-width: 980px) {
  header,
  .site-header,
  .main-header,
  .navbar,
  .dv-header {
    min-height: 74px !important;
  }

  header img,
  nav img,
  .logo img,
  .brand img,
  .site-logo img,
  .dv-brand img,
  .dv-header-symbol-fixed {
    max-width: 68px !important;
    max-height: 58px !important;
  }

  body .dv-home-hero-media-fixed,
  body.dv-page-home main > section:first-of-type [class*="visual"],
  body.dv-page-home main > section:first-of-type [class*="media"],
  body.dv-page-home main > section:first-of-type [class*="image"],
  body.dv-page-home main > section:first-of-type .hero-card,
  body.dv-page-home main > section:first-of-type .visual-card {
    min-height: 300px !important;
    border-radius: 26px !important;
  }
}

@media (max-width: 640px) {
  body .dv-home-hero-media-fixed,
  body.dv-page-home main > section:first-of-type [class*="visual"],
  body.dv-page-home main > section:first-of-type [class*="media"],
  body.dv-page-home main > section:first-of-type [class*="image"],
  body.dv-page-home main > section:first-of-type .hero-card,
  body.dv-page-home main > section:first-of-type .visual-card {
    min-height: 230px !important;
    border-radius: 22px !important;
  }

  .cookie-banner,
  .cookie-consent,
  .dv-cookie,
  #cookie-banner,
  .dv-cookie-compact {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    max-width: none !important;
  }
}
