/* Tema Bradesco Seguros — ativado com ?theme=bradesco. */

html[data-theme="bradesco"] {
  --bradesco-red: #cc092f;
  --bradesco-red-dark: #a60a2a;
  --bradesco-red-light: #f9dfe5;
  --bradesco-cloud: #f7f7f8;
  --bradesco-line: #d5d8dc;
  --bradesco-ink: #3d3d43;
  --sdb-petroleum: var(--bradesco-ink);
  --sdb-turquoise: var(--bradesco-red);
  --sdb-orange: var(--bradesco-red);
  --sdb-off-white: var(--bradesco-cloud);
  --sdb-graphite: var(--bradesco-ink);
  --sdb-bg: var(--bradesco-cloud);
  --sdb-surface: #ffffff;
  --sdb-surface-raised: #ffffff;
  --sdb-border: rgba(61, 61, 67, 0.19);
  --sdb-text: var(--bradesco-ink);
  --sdb-muted: #686a70;
  --sdb-error: #b00020;
  --sdb-radius-card: 18px;
  --sdb-radius-control: 8px;
  --sdb-shadow: 0 22px 58px rgba(67, 11, 24, 0.1), 0 3px 10px rgba(35, 35, 39, 0.06);
  font-family: "Helvetica Neue", Helvetica, Arial, ui-sans-serif, system-ui, sans-serif;
}

html[data-theme="bradesco"] body {
  background:
    radial-gradient(circle at 96% 88%, rgba(204, 9, 47, 0.07), transparent 27rem),
    linear-gradient(180deg, #ffffff 0 92px, var(--bradesco-cloud) 92px);
}

html[data-theme="bradesco"] body::before {
  background: none;
}

html[data-theme="bradesco"] .skip-link {
  background: var(--bradesco-red-dark);
}

html[data-theme="bradesco"] .site-header {
  border-bottom: 1px solid #e4e4e6;
}

html[data-theme="bradesco"] .brand {
  color: var(--bradesco-ink);
}

html[data-theme="bradesco"] .brand__halo,
html[data-theme="bradesco"] .brand__smile {
  stroke: var(--bradesco-red);
}

html[data-theme="bradesco"] .brand__car {
  fill: var(--bradesco-ink);
  stroke: var(--bradesco-ink);
}

html[data-theme="bradesco"] .brand__face {
  stroke: #ffffff;
}

html[data-theme="bradesco"] .brand__wordmark strong {
  color: var(--bradesco-red);
}

html[data-theme="bradesco"] .partner-lockup__divider {
  height: 38px;
  background: #dedee1;
}

html[data-theme="bradesco"] .partner-lockup__label {
  color: #77787d;
}

html[data-theme="bradesco"] .partner-lockup__logo {
  width: 118px;
  max-width: 118px;
  height: 44px;
  background: #ffffff;
  mix-blend-mode: multiply;
}

html[data-theme="bradesco"] .header-assurance {
  color: var(--bradesco-ink);
}

html[data-theme="bradesco"] .header-assurance span {
  background: var(--bradesco-red-light);
  color: var(--bradesco-red-dark);
}

html[data-theme="bradesco"] .quote-stage {
  border-color: rgba(61, 61, 67, 0.14);
}

html[data-theme="bradesco"] .brand-panel {
  background:
    radial-gradient(circle at 86% 8%, rgba(255, 255, 255, 0.14), transparent 21rem),
    linear-gradient(148deg, #ed123b 0%, var(--bradesco-red) 48%, #a70b2b 100%);
}

html[data-theme="bradesco"] .brand-panel::before {
  position: absolute;
  top: -128px;
  right: -150px;
  width: 390px;
  height: 330px;
  border: 2px solid rgba(255, 255, 255, 0.62);
  border-radius: 50%;
  content: "";
  transform: rotate(-18deg);
}

html[data-theme="bradesco"] .brand-panel::after {
  right: -105px;
  bottom: -162px;
  border-color: #f5728b;
  opacity: 0.55;
}

html[data-theme="bradesco"] .brand-panel__eyebrow {
  color: #ffe8ed;
}

html[data-theme="bradesco"] .brand-panel__title strong {
  color: #ffffff;
}

html[data-theme="bradesco"] .brand-panel__illustration {
  filter: drop-shadow(0 24px 36px rgba(76, 0, 17, 0.24));
}

html[data-theme="bradesco"] .brand-panel__road--top {
  stroke: #ffacbd;
}

html[data-theme="bradesco"] .brand-panel__car {
  fill: rgba(120, 0, 27, 0.34);
  stroke: #ffffff;
}

html[data-theme="bradesco"] .brand-panel__window,
html[data-theme="bradesco"] .brand-panel__face {
  stroke: #ffffff;
}

html[data-theme="bradesco"] .brand-panel__road--bottom {
  stroke: #ffd3dc;
}

html[data-theme="bradesco"] .brand-panel__note {
  background: rgba(105, 0, 24, 0.22);
  color: #ffffff;
}

html[data-theme="bradesco"] .back-button:hover {
  background: rgba(204, 9, 47, 0.07);
  color: var(--bradesco-red-dark);
}

html[data-theme="bradesco"] .secure-mark,
html[data-theme="bradesco"] .step-group,
html[data-theme="bradesco"] .lookup-status--success,
html[data-theme="bradesco"] .vehicle-result__eyebrow,
html[data-theme="bradesco"] .tap-feedback {
  color: var(--bradesco-red-dark);
}

html[data-theme="bradesco"] .encouragement {
  border-color: rgba(204, 9, 47, 0.24);
  background: #fff4f6;
  color: #70414b;
}

html[data-theme="bradesco"] .encouragement span,
html[data-theme="bradesco"] .vehicle-result__check,
html[data-theme="bradesco"] .success-state__icon {
  background: var(--bradesco-red);
  color: #ffffff;
}

html[data-theme="bradesco"] .step-heading h1,
html[data-theme="bradesco"] .success-state h1,
html[data-theme="bradesco"] .field__label {
  color: var(--bradesco-ink);
}

html[data-theme="bradesco"] .step-heading h1,
html[data-theme="bradesco"] .success-state h1 {
  letter-spacing: -0.045em;
}

html[data-theme="bradesco"] .step-heading h1::after {
  width: 54px;
  height: 4px;
  background: var(--bradesco-red);
}

html[data-theme="bradesco"] .social-name-toggle {
  border-color: rgba(204, 9, 47, 0.35);
  background: #fff4f6;
  color: var(--bradesco-red-dark);
}

html[data-theme="bradesco"] .social-name-toggle:hover {
  background: var(--bradesco-red-light);
}

html[data-theme="bradesco"] .social-name-panel {
  border-color: rgba(204, 9, 47, 0.22);
  background: #fff8f9;
}

html[data-theme="bradesco"] .field__input {
  border-width: 1px;
  border-color: var(--bradesco-line);
  border-radius: var(--sdb-radius-control);
  color: var(--bradesco-ink);
  box-shadow: none;
}

html[data-theme="bradesco"] .field__input:hover {
  border-color: #9c9da2;
}

html[data-theme="bradesco"] .field__input:focus {
  border-color: var(--bradesco-red);
  box-shadow: 0 0 0 3px rgba(204, 9, 47, 0.13);
}

html[data-theme="bradesco"] .select-wrap::after {
  color: var(--bradesco-ink);
}

html[data-theme="bradesco"] .choice-card,
html[data-theme="bradesco"] .fipe-candidate,
html[data-theme="bradesco"] .consent-card {
  border-width: 1px;
  border-color: var(--bradesco-line);
  border-radius: 9px;
  box-shadow: none;
}

html[data-theme="bradesco"] .choice-card:hover {
  border-color: var(--bradesco-red);
  background: #fffafb;
}

html[data-theme="bradesco"] .choice-card:has(input:focus-visible),
html[data-theme="bradesco"] .consent-card:has(input:focus-visible) {
  outline-color: rgba(204, 9, 47, 0.3);
}

html[data-theme="bradesco"] .choice-card:has(input:checked),
html[data-theme="bradesco"] .fipe-candidate:has(input:checked) {
  border-color: var(--bradesco-red);
  background: var(--bradesco-red-light);
  box-shadow: 0 0 0 1px rgba(204, 9, 47, 0.07);
}

html[data-theme="bradesco"] .choice-card__check,
html[data-theme="bradesco"] .consent-card__control {
  border-color: #98999e;
}

html[data-theme="bradesco"] .choice-card:has(input:checked) .choice-card__check,
html[data-theme="bradesco"] .consent-card:has(input:checked) .consent-card__control {
  border-color: var(--bradesco-red);
  background: var(--bradesco-red);
  color: #ffffff;
}

html[data-theme="bradesco"] .alternative-actions button:hover {
  background: #fff1f4;
  color: var(--bradesco-red-dark);
}

html[data-theme="bradesco"] .vehicle-result {
  border-color: rgba(204, 9, 47, 0.3);
  background: #fff4f6;
}

html[data-theme="bradesco"] .consent-card:has(input:checked) {
  border-color: rgba(204, 9, 47, 0.52);
  background: #fff4f6;
}

html[data-theme="bradesco"] .button {
  border-radius: 7px;
}

html[data-theme="bradesco"] .button:focus-visible,
html[data-theme="bradesco"] .back-button:focus-visible,
html[data-theme="bradesco"] .alternative-actions button:focus-visible {
  outline-color: rgba(204, 9, 47, 0.38);
}

html[data-theme="bradesco"] .button--primary {
  background: var(--bradesco-red);
  box-shadow: 0 9px 20px rgba(166, 10, 42, 0.2);
  color: #ffffff;
}

html[data-theme="bradesco"] .button--primary:hover {
  background: var(--bradesco-red-dark);
  box-shadow: 0 12px 25px rgba(166, 10, 42, 0.25);
}

html[data-theme="bradesco"] .button--skip {
  background: #eeeeef;
  color: var(--bradesco-ink);
}

html[data-theme="bradesco"] .success-state__icon {
  box-shadow: 0 0 0 11px rgba(204, 9, 47, 0.1);
}

@media (max-width: 899px) {
  html[data-theme="bradesco"] body,
  html[data-theme="bradesco"] .site-header {
    background: #ffffff;
  }

  html[data-theme="bradesco"] .quote-stage {
    border-radius: 14px 14px 0 0;
    box-shadow: 0 -7px 28px rgba(80, 10, 25, 0.06);
  }
}

@media (max-width: 480px) {
  html[data-theme="bradesco"] .partner-lockup__logo {
    width: 82px;
    max-width: 82px;
    height: 34px;
  }
}
