/* Black em Dobro — seasonal marketing layer. Base account/checkout styles stay independent. */
html.dark[data-campaign="black-em-dobro"] {
  --ink: #10100f;
  --ink-light: #171715;
  --smoke: #20201c;
  --smoke-light: #282822;
  --cream: #faf7f0;
  --cream-soft: #ded8cb;
  --muted: #bcb4a5;
  --amber: #f5b64b;
  --amber-deep: #e99e2d;
  --accent-text: #f5b64b;
  --amber-glow: rgba(245, 182, 75, .1);
  --gold-line: #b98a42;
}

html[data-campaign="black-em-dobro"] :is(#navbar, .mobile-menu, .hero, .pricing, footer) {
  --ink: #10100f;
  --ink-light: #171715;
  --smoke: #20201c;
  --cream: #faf7f0;
  --cream-soft: #ded8cb;
  --muted: #bcb4a5;
  --amber: #f5b64b;
  --accent-text: #f5b64b;
  --gold-line: #b98a42;
  color: var(--cream);
}

html[data-campaign="black-em-dobro"] #navbar {
  background: rgba(16, 16, 15, .94);
  border-bottom: 1px solid rgba(245, 182, 75, .15);
}
html[data-campaign="black-em-dobro"] .mobile-menu { background: rgba(16, 16, 15, .99); }
html[data-campaign="black-em-dobro"] #navbar .brand-sabor { color: #f45e11; }

html[data-campaign="black-em-dobro"] .hero {
  gap: 12px;
  padding: 122px 24px 56px;
  background: radial-gradient(ellipse at 85% 45%, rgba(244, 94, 17, .12), transparent 48%), #10100f;
  border-bottom: 1px solid rgba(245, 182, 75, .12);
}
html[data-campaign="black-em-dobro"] .hero-text {
  order: 1;
  width: 100%;
  max-width: 650px;
  position: relative;
  z-index: 2;
  text-align: left;
}
.black-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #f5b64b;
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .17em;
  line-height: 1.5;
  text-transform: uppercase;
  margin: 0 0 26px;
}
.black-eyebrow > span { width: 25px; height: 1px; background: currentColor; flex-shrink: 0; }
html[data-campaign="black-em-dobro"] .black-heading {
  font-size: clamp(4.8rem, 10vw, 7.8rem);
  line-height: .86;
  letter-spacing: -.055em;
  margin: 0 0 30px;
  min-height: 0;
}
.black-heading-main {
  display: block;
  font-family: 'League Spartan', 'DM Sans', sans-serif;
  font-weight: 900;
  text-transform: uppercase;
}
.black-heading-end {
  display: block;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: .7em;
  font-style: italic;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -.055em;
  color: #f5b64b;
}
.black-heading-dot { color: #f45e11; }
.puff-in-center {
  -webkit-animation: puff-in-center .7s cubic-bezier(.470, .000, .745, .715) both;
  animation: puff-in-center .7s cubic-bezier(.470, .000, .745, .715) both;
  transform-origin: 40% 50%;
}
@keyframes puff-in-center {
  0% { transform: scale(2); filter: blur(7px); opacity: 0; }
  100% { transform: scale(1); filter: blur(0); opacity: 1; }
}
@-webkit-keyframes puff-in-center {
  0% { -webkit-transform: scale(2); -webkit-filter: blur(7px); opacity: 0; }
  100% { -webkit-transform: scale(1); -webkit-filter: blur(0); opacity: 1; }
}
html[data-campaign="black-em-dobro"] .black-offer {
  animation: puff-in-center .7s .3s cubic-bezier(.470, .000, .745, .715) both;
  transform-origin: 15% 50%;
}
.black-offer { display: flex; gap: 18px; align-items: center; margin-bottom: 22px; }
.black-offer > strong {
  flex: 0 0 auto;
  font-family: 'League Spartan', 'DM Sans', sans-serif;
  font-size: 2.7rem;
  line-height: 1;
  letter-spacing: -.04em;
  color: #f5b64b;
}
.black-offer > strong span { display: block; font-family: 'DM Sans', sans-serif; font-size: .6rem; line-height: 1.7; letter-spacing: .28em; text-align: center; }
.black-offer p { padding-left: 18px; border-left: 1px solid #55412a; font-size: .95rem; line-height: 1.6; color: #faf7f0; font-weight: 600; }
.black-offer p span { color: #bcb4a5; font-weight: 400; }
.black-hero-description { max-width: 430px; font-size: .94rem; line-height: 1.75; color: #bcb4a5; margin: 0 0 26px; }
.black-hero-description strong { color: #faf7f0; }
html[data-campaign="black-em-dobro"] .hero-ticket-wrap { display: none; }
html[data-campaign="black-em-dobro"] .hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 24px; margin: 0; text-align: left; }
html[data-campaign="black-em-dobro"] .black-primary {
  padding: 16px 25px;
  font-size: .9rem;
  background: linear-gradient(115deg, #ffd07a, #f5b64b);
  color: #1a1208;
  gap: 14px;
  box-shadow: 0 5px 26px rgba(245, 182, 75, .13);
}
html[data-campaign="black-em-dobro"] .black-primary:hover { background: #ffd78f; }
.black-secondary { color: #faf7f0; font-size: .81rem; border-bottom: 1px solid #666052; padding: 5px 0; white-space: nowrap; }
.black-secondary span { color: #f5b64b; margin-left: 5px; }
.black-hero-note { font-size: .69rem; line-height: 1.65; color: #bcb4a5; margin-top: 22px; }
.black-hero-note strong { font-weight: 600; color: #ded8cb; }

html[data-campaign="black-em-dobro"] .hero-banner { order: 2; width: 100%; max-width: 570px; height: 350px; margin: 0 auto; border-radius: 0; }
html[data-campaign="black-em-dobro"] .hero-banner #threeCanvas { transform: translateY(-7%); }
html[data-campaign="black-em-dobro"] #hero-placeholder { top: 43%; }
.black-orbit { position: absolute; width: 73%; aspect-ratio: 1; top: 43%; left: 50%; transform: translate(-50%, -50%); border: 1px solid rgba(245, 182, 75, .25); border-radius: 50%; }
.black-orbit::before, .black-orbit::after { content: ''; position: absolute; inset: -9%; border: 1px solid rgba(245, 182, 75, .08); border-radius: 50%; }
.black-orbit::before { animation: black-impact-wave 4.5s .4s ease-out infinite; }
.black-orbit::after { inset: 10%; border-style: dashed; border-color: rgba(245, 182, 75, .12); animation: black-orbit-turn 32s linear infinite; }
@keyframes black-impact-wave {
  0% { transform: scale(.8); border-color: rgba(245, 182, 75, .55); opacity: .8; }
  42%, 100% { transform: scale(1.14); border-color: rgba(245, 182, 75, .05); opacity: 0; }
}
@keyframes black-orbit-turn { to { transform: rotate(360deg); } }
.black-banner-caption { position: absolute; bottom: 12px; left: 0; right: 0; text-align: center; z-index: 45; pointer-events: none; }
.black-banner-caption span { display: block; color: #bcb4a5; font-size: .64rem; letter-spacing: .2em; text-transform: uppercase; }
.black-banner-caption strong { color: #faf7f0; font-family: 'Playfair Display', Georgia, serif; font-style: italic; font-weight: 500; font-size: 1.8rem; line-height: 1.6; }
html[data-campaign="black-em-dobro"] #banner-hint { bottom: 95px; font-size: 8px; letter-spacing: 2px; }
html[data-campaign="black-em-dobro"] .mantra-bar { background: #f5b64b; color: #17130e; padding: 13px 0; font-family: 'League Spartan', 'DM Sans', sans-serif; font-size: .76rem; font-weight: 800; letter-spacing: .12em; }
html[data-campaign="black-em-dobro"] .mantra-inner span::after { content: ' /'; opacity: .65; }

html[data-campaign="black-em-dobro"] .pricing {
  background: radial-gradient(ellipse at 50% 0%, rgba(244, 94, 17, .1), transparent 55%), #10100f;
  border-top: 1px solid rgba(245, 182, 75, .22);
  padding-top: 90px;
}
.black-eyebrow-centered { justify-content: center; margin-bottom: 16px; }
html[data-campaign="black-em-dobro"] .pricing h2 { line-height: 1.2; margin-bottom: 20px; }
html[data-campaign="black-em-dobro"] .pricing-sub { color: #bcb4a5; max-width: 550px; margin: 0 auto 52px; line-height: 1.8; }
html[data-campaign="black-em-dobro"] .plan-wrapper { max-width: 960px; gap: 28px; align-items: start; }
html[data-campaign="black-em-dobro"] .plan { display: flex; flex-direction: column; padding: 36px 30px 30px; background: #191917; border: 1px solid #3a362e; }
html[data-campaign="black-em-dobro"] .plan.destaque { background: linear-gradient(155deg, #30271b, #191917 42%); border: 1px solid #d5a24d; animation: none; transform: none; box-shadow: 0 12px 55px rgba(0, 0, 0, .15); }
html[data-campaign="black-em-dobro"] .plan:hover { transform: translateY(-4px); }
html[data-campaign="black-em-dobro"] .plan-tag { background: #f5b64b; color: #1a1208; font-size: .62rem; letter-spacing: .08em; padding: 7px 18px; }
html[data-campaign="black-em-dobro"] .plan-name { font-family: 'DM Sans', sans-serif; font-size: 1.45rem; letter-spacing: -.03em; margin-bottom: 8px; }
html[data-campaign="black-em-dobro"] .plan-period { font-size: .78rem; margin-bottom: 15px; }
html[data-campaign="black-em-dobro"] .price-original { color: #bcb4a5; font-size: .8rem; }
html[data-campaign="black-em-dobro"] .plan-price { font-size: 4rem; color: #f5b64b; letter-spacing: -.05em; }
html[data-campaign="black-em-dobro"] .plan-price sup { margin-right: 4px; letter-spacing: 0; font-size: 1.1rem; }
html[data-campaign="black-em-dobro"] .plan-price small { font-size: 1.6rem; }
.black-price-condition { font-size: .72rem; color: #bcb4a5; line-height: 1.6; margin-bottom: 16px; }
.black-regular-price { color: #ded8cb; font-size: .72rem; line-height: 1.6; margin: 0 0 12px; }
.black-urgency-banner { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; margin-bottom: 24px; }
.black-urgency-banner .black-eyebrow { margin: 0; font-size: .54rem; letter-spacing: .12em; }
.black-month-label { padding: 6px 10px; border-radius: 4px; background: #f45e11; color: #171008; font-size: .63rem; line-height: 1.2; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.black-heading-end { background: linear-gradient(110deg, #f5b64b 20%, #fff0bb 43%, #f5b64b 64%); background-size: 240% 100%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; animation: black-gold-sweep 7s .5s ease-in-out infinite; }
@keyframes black-gold-sweep { 0%, 22% { background-position: 100% 0; } 65%, 100% { background-position: 0 0; } }
.black-month-stamp { position: absolute; z-index: 42; right: 4%; top: 9%; width: 128px; height: 128px; display: flex; flex-direction: column; justify-content: center; text-align: center; border: 1px solid #ffbb58; border-radius: 50%; background: #f45e11; color: #171008; transform: rotate(9deg); box-shadow: 0 0 0 8px rgba(244, 94, 17, .08); pointer-events: none; }
.black-month-stamp small { font-size: .47rem; font-weight: 900; letter-spacing: .12em; margin-bottom: 4px; }
.black-month-stamp strong { font-family: 'League Spartan', 'DM Sans', sans-serif; font-size: 1.45rem; line-height: .95; letter-spacing: -.04em; font-weight: 900; }
.black-month-stamp > span { margin-top: 7px; font-size: .47rem; font-weight: 800; letter-spacing: .1em; }
.black-deadline-card { width: 100%; max-width: 370px; margin: 0 0 22px; padding: 13px 17px 10px; border: 1px solid #6f4c28; border-left: 3px solid #f45e11; border-radius: 12px; background: rgba(245, 182, 75, .035); }
.black-deadline-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 8px; }
.black-deadline-title { display: flex; align-items: center; gap: 7px; font-size: .65rem; font-weight: 600; color: #faf7f0; }
.black-deadline-title > span { width: 5px; height: 5px; border-radius: 50%; background: #f5b64b; animation: pulse-dot 2s ease-in-out infinite; }
.black-deadline-date { color: #d4ae74; font-size: .56rem; letter-spacing: .04em; white-space: nowrap; }
.black-countdown { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; gap: 8px; max-width: 285px; }
.black-countdown > div { text-align: center; }
.black-countdown strong { display: block; font-family: 'League Spartan', 'DM Sans', sans-serif; font-variant-numeric: tabular-nums; font-size: 1.9rem; line-height: 1; font-weight: 700; color: #f5b64b; }
.black-countdown b { color: #705939; font-size: 1.1rem; line-height: 1.5; font-weight: 400; }
.black-countdown > div > span { display: block; font-size: .48rem; text-transform: uppercase; letter-spacing: .12em; color: #bcb4a5; margin-top: 2px; }
.black-deadline-disclaimer { font-size: .54rem; color: #bcb4a5; margin-top: 7px; line-height: 1.5; }
.black-enrollment-deadline { max-width: 660px; padding: 18px 24px; margin: -26px auto 40px; background: rgba(244, 94, 17, .06); border: 1px solid #664326; border-radius: 12px; text-align: center; }
.black-enrollment-deadline > span:first-child { color: #f5b64b; padding-right: 8px; font-size: 1rem; }
.black-enrollment-deadline strong { color: #f5b64b; font-size: .82rem; }
.black-enrollment-deadline > span:last-child { display: block; color: #bcb4a5; font-size: .72rem; line-height: 1.8; margin-top: 6px; }
.black-price-stage { position: relative; padding: 12px 0 0; margin-bottom: 2px; }
.black-price-stage .black-regular-price { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 44px; margin-bottom: 10px; color: #ded8cb; font-size: .7rem; }
.black-old-value { position: relative; display: inline-block; font-size: 1.5rem; line-height: 1.25; font-weight: 500; color: #d8cfc2; letter-spacing: -.04em; isolation: isolate; }
.black-old-accessible { opacity: 0; }
.black-old-half { position: absolute; inset: 0; display: block; color: inherit; }
.black-old-half-top { clip-path: polygon(0 0, 100% 0, 100% 50%, 0 64%); }
.black-old-half-bottom { clip-path: polygon(0 64%, 100% 50%, 100% 100%, 0 100%); }
.black-cut-sweep { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; overflow: visible; opacity: 0; pointer-events: none; }
.black-cut-sweep path { fill: none; stroke: #f47735; stroke-width: 2; stroke-linecap: round; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-dashoffset: 0; }
.black-cut-percent { display: inline-block; border-radius: 5px; background: #f5b64b; color: #191108; padding: 4px 7px; font-size: .7rem; line-height: 1.2; font-weight: 900; letter-spacing: -.02em; }
.black-new-price-label { display: block; margin: 0 0 5px; font-size: .65rem; color: #bcb4a5; }
.black-price-stage[data-black-split-pending] .plan-price { opacity: 0; }
.black-price-revealed .black-cut-sweep { animation: black-cut-visibility 1s .16s both; }
.black-price-revealed .black-cut-sweep path { animation: black-price-slash .42s .16s cubic-bezier(.22, 1, .36, 1) both; }
.black-price-revealed .black-old-half-top { animation: black-price-split-top .65s .48s cubic-bezier(.16, 1, .3, 1) both; }
.black-price-revealed .black-old-half-bottom { animation: black-price-split-bottom .65s .48s cubic-bezier(.16, 1, .3, 1) both; }
.black-price-revealed .black-cut-percent { animation: black-discount-stamp .45s .7s cubic-bezier(.16, 1, .3, 1) both; }
.black-price-revealed .plan-price { animation: black-new-price .65s .85s cubic-bezier(.16, 1, .3, 1) both; }
@keyframes black-price-slash { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes black-cut-visibility { 0%, 100% { opacity: 1; } }
@keyframes black-price-split-top { 0% { transform: translate(0, 0) rotate(0); opacity: 1; } 65% { transform: translate(-6px, -6px) rotate(-4deg); opacity: .7; } 100% { transform: translate(0, 0) rotate(0); opacity: .7; } }
@keyframes black-price-split-bottom { 0% { transform: translate(0, 0) rotate(0); opacity: 1; } 65% { transform: translate(6px, 6px) rotate(3deg); opacity: .7; } 100% { transform: translate(0, 0) rotate(0); opacity: .7; } }
@keyframes black-discount-stamp { 0% { opacity: 0; transform: scale(1.8) rotate(-15deg); } 75% { opacity: 1; transform: scale(.94) rotate(1deg); } 100% { opacity: 1; transform: scale(1) rotate(0); } }
@keyframes black-new-price { from { opacity: 0; transform: translateY(16px) scale(.84); } to { opacity: 1; transform: translateY(0) scale(1); } }
.black-auto-discount { display: flex; justify-content: center; align-items: center; gap: 8px; padding: 12px 10px; margin: 0 0 15px; border: 1px solid #5d482a; border-radius: 10px; color: #f5b64b; background: rgba(245, 182, 75, .045); font-size: .72rem; }
.black-auto-discount svg { flex-shrink: 0; }
html[data-black-inactive="true"] :is(.black-offer, .black-month-stamp, .black-month-label, .black-countdown, .black-enrollment-deadline, .black-auto-discount, .black-new-price-label) { display: none; }
html[data-black-inactive="true"] .pricing :is(.price-original, .black-regular-price, .plan-tag, .plan-savings) { display: none; }
html[data-black-inactive="true"] .black-price-stage .plan-price { animation: none; opacity: 1; transform: none; }
html[data-black-inactive="true"] .black-heading-end { animation: none; }
.black-renewal-note { font-size: .75rem; line-height: 1.75; color: #bcb4a5; }
html[data-campaign="black-em-dobro"] .plan-savings { border-radius: 8px; background: rgba(245, 182, 75, .07); color: #f5b64b; padding: 10px 8px; margin: 0 0 15px; font-size: .73rem; line-height: 1.7; }
html[data-campaign="black-em-dobro"] .plan-features { flex-grow: 0; }
html[data-campaign="black-em-dobro"] .plan-commitment-note { color: #bcb4a5; font-size: .75rem; line-height: 1.75; padding: 0 0 22px; }
.black-checkout-help { display: flex; gap: 10px; justify-content: center; align-items: flex-start; max-width: 640px; margin: 30px auto 0; color: #bcb4a5; font-size: .77rem; line-height: 1.75; text-align: left; }
.black-checkout-help svg { flex-shrink: 0; color: #f5b64b; margin-top: 2px; }
.black-copy-status { position: fixed; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
html[data-campaign="black-em-dobro"] .plan-guarantee { margin-top: 20px; font-size: .75rem; }

html.dark[data-campaign="black-em-dobro"] .parceiro-card { background: #20201c; }
html[data-campaign="black-em-dobro"] footer { background: #0c0c0b; border-top: 1px solid rgba(245, 182, 75, .2); }
html[data-campaign="black-em-dobro"] footer :is(.footer-col a, .footer-brand p, .footer-bottom) { color: #bcb4a5; }
html[data-campaign="black-em-dobro"] footer .brand-sabor { color: #f45e11; }
.black-footer-label { display: inline-block; margin-top: 16px; padding: 6px 10px; border: 1px solid #574329; border-radius: 5px; color: #f5b64b; font-size: .59rem; letter-spacing: .07em; text-transform: uppercase; }
html[data-campaign="black-em-dobro"] :is(.black-primary, .black-secondary):focus-visible { outline: 3px solid #f5b64b; outline-offset: 5px; }
html[data-campaign="black-em-dobro"] .floating-cta { display: none; }
html[data-campaign="black-em-dobro"] .floating-cta.black-show-floating { display: inline-flex; }

@media (min-width: 1000px) {
  html[data-campaign="black-em-dobro"] .hero { flex-direction: row; min-height: 800px; min-height: max(800px, 95svh); padding: 125px 4vw 65px; gap: 0; }
  html[data-campaign="black-em-dobro"] .hero-text { flex: 0 0 53%; max-width: 760px; padding: 0 0 0 3vw; align-items: flex-start; }
  html[data-campaign="black-em-dobro"] .hero-banner { flex: 0 0 47%; max-width: 800px; height: 610px; margin: 0; }
  html[data-campaign="black-em-dobro"] .black-heading { font-size: clamp(6.2rem, 9vw, 9rem); }
  .black-banner-caption { bottom: 28px; }
  .black-banner-caption strong { font-size: 2.3rem; }
  html[data-campaign="black-em-dobro"] #banner-hint { bottom: 125px; }
}
@media (max-width: 768px) {
  html[data-campaign="black-em-dobro"] .hero { padding-top: 114px; }
  html[data-campaign="black-em-dobro"] .hero-banner { height: 310px; margin-top: 10px; }
  html[data-campaign="black-em-dobro"] #banner-hint { display: none; }
  html[data-campaign="black-em-dobro"] .plan-wrapper { gap: 38px; max-width: 480px; }
  html[data-campaign="black-em-dobro"] .pricing { padding-top: 65px; }
}
@media (max-width: 480px) {
  html[data-campaign="black-em-dobro"] .hero { padding: 108px 22px 28px; }
  html[data-campaign="black-em-dobro"] .black-heading { font-size: clamp(4.25rem, 20vw, 6rem); }
  .black-eyebrow { font-size: .59rem; letter-spacing: .1em; margin-bottom: 22px; }
  .black-offer { gap: 14px; }
  .black-offer p { font-size: .86rem; padding-left: 14px; }
  .black-hero-description { font-size: .85rem; }
  html[data-campaign="black-em-dobro"] .hero-actions { gap: 15px; }
  html[data-campaign="black-em-dobro"] .black-primary { width: 100%; }
  .black-secondary { margin: 0 auto; }
  .black-hero-note { text-align: center; font-size: .64rem; }
  html[data-campaign="black-em-dobro"] .hero-banner { height: 265px; }
  .black-banner-caption strong { font-size: 1.5rem; }
  .black-banner-caption span { font-size: .55rem; }
  html[data-campaign="black-em-dobro"] #banner-hint { bottom: 80px; }
  html[data-campaign="black-em-dobro"] .plan { padding: 32px 22px 24px; }
  html[data-campaign="black-em-dobro"] .plan-tag { font-size: .56rem; }
  html[data-campaign="black-em-dobro"] .pricing h2 { font-size: 1.9rem; }
  html[data-campaign="black-em-dobro"] .pricing-sub { font-size: .87rem; }
  .black-urgency-banner { gap: 8px; margin-bottom: 22px; }
  .black-month-label { font-size: .54rem; padding: 6px 8px; }
  .black-urgency-banner .black-eyebrow { font-size: .46rem; letter-spacing: .07em; }
  .black-month-stamp { width: 83px; height: 83px; top: 3%; right: 3%; box-shadow: 0 0 0 5px rgba(244, 94, 17, .08); }
  .black-month-stamp small { font-size: .31rem; margin-bottom: 3px; }
  .black-month-stamp strong { font-size: 1rem; }
  .black-month-stamp > span { font-size: .32rem; margin-top: 5px; }
  .black-deadline-card { padding: 12px 14px 10px; max-width: none; }
  .black-deadline-title { font-size: .59rem; }
  .black-deadline-date { font-size: .51rem; }
  .black-countdown { max-width: 260px; }
  .black-countdown strong { font-size: 1.75rem; }
  .black-enrollment-deadline { padding: 15px 16px; margin: -25px auto 35px; }
  .black-enrollment-deadline strong { font-size: .75rem; }
  .black-enrollment-deadline > span:last-child { font-size: .68rem; }
  .black-auto-discount { font-size: .66rem; }
}
@media (prefers-reduced-motion: reduce) {
  html[data-campaign="black-em-dobro"] :is(.puff-in-center, .black-offer) { animation: none !important; transform: none; filter: none; opacity: 1; }
  html[data-campaign="black-em-dobro"] .black-orbit::before,
  html[data-campaign="black-em-dobro"] .black-orbit::after { animation: none !important; }
  html[data-campaign="black-em-dobro"] :is(.black-heading-end, .black-deadline-title > span, .black-price-revealed .black-cut-percent, .black-price-revealed .plan-price) { animation: none !important; opacity: 1; transform: none; }
  html[data-campaign="black-em-dobro"] :is(.black-old-half, .black-cut-sweep, .black-cut-sweep path, .black-price-stage .plan-price) { animation: none !important; transform: none; opacity: 1; }
  html[data-campaign="black-em-dobro"] .black-cut-sweep path { stroke-dashoffset: 0; }
}

/* A complete light variant; keep the account dialog's existing light tokens. */
html.dark[data-campaign="black-em-dobro"] { color-scheme: dark; }
html.light[data-campaign="black-em-dobro"] {
  color-scheme: light;
  --black-light-text: #241d14;
  --black-light-muted: #655c50;
  --black-light-accent: #925500;
  --black-light-border: #c7a77b;
}
html.light[data-campaign="black-em-dobro"] :is(#navbar, .mobile-menu, .hero, .pricing, footer) {
  --ink: #fbf6ef;
  --ink-light: #f2e9dc;
  --smoke: #ffffff;
  --cream: var(--black-light-text);
  --cream-soft: #51493f;
  --muted: var(--black-light-muted);
  --accent-text: var(--black-light-accent);
  --gold-line: var(--black-light-border);
  color: var(--black-light-text);
}
html.light[data-campaign="black-em-dobro"] #navbar {
  background: rgba(251, 246, 239, .96);
  border-bottom-color: #dfcfb8;
}
html.light[data-campaign="black-em-dobro"] .mobile-menu { background: rgba(251, 246, 239, .99); }
html.light[data-campaign="black-em-dobro"] .hero {
  background: radial-gradient(ellipse at 85% 45%, rgba(244, 94, 17, .08), transparent 48%), #fbf6ef;
  border-bottom-color: #dfcfb8;
}
html.light[data-campaign="black-em-dobro"] .pricing {
  background: radial-gradient(ellipse at 50% 0%, rgba(244, 94, 17, .055), transparent 55%), #fbf6ef;
  border-top-color: #d5bc96;
}
html.light[data-campaign="black-em-dobro"] .black-heading-end {
  color: var(--black-light-accent);
  background-image: linear-gradient(110deg, #925500 20%, #b36a09 43%, #925500 64%);
}
html.light[data-campaign="black-em-dobro"] :is(.black-eyebrow, .black-offer > strong, .black-secondary span, .black-countdown strong, .black-footer-label) { color: var(--black-light-accent); }
html.light[data-campaign="black-em-dobro"] :is(.black-offer p, .black-hero-description strong, .black-secondary, .black-banner-caption strong, .black-deadline-title) { color: var(--black-light-text); }
html.light[data-campaign="black-em-dobro"] :is(.black-offer p span, .black-hero-description, .black-hero-note, .black-banner-caption > span, .black-countdown > div > span, .black-deadline-disclaimer, .pricing-sub, .black-price-condition, .black-renewal-note, .black-checkout-help, .black-new-price-label) { color: var(--black-light-muted); }
html.light[data-campaign="black-em-dobro"] .black-hero-note strong { color: #51493f; }
html.light[data-campaign="black-em-dobro"] .black-offer p { border-left-color: #cbb28d; }
html.light[data-campaign="black-em-dobro"] .black-secondary { border-bottom-color: #a38a66; }
html.light[data-campaign="black-em-dobro"] .black-orbit { border-color: rgba(152, 93, 20, .35); }
html.light[data-campaign="black-em-dobro"] .black-orbit::after { border-color: rgba(152, 93, 20, .22); }
html.light[data-campaign="black-em-dobro"] .black-orbit::before { animation-name: black-impact-wave-light; }
@keyframes black-impact-wave-light {
  0% { transform: scale(.8); border-color: rgba(152, 93, 20, .5); opacity: .8; }
  42%, 100% { transform: scale(1.14); border-color: rgba(152, 93, 20, .05); opacity: 0; }
}
html.light[data-campaign="black-em-dobro"] .black-deadline-card {
  border-color: #cfad7d;
  border-left-color: #c44c0e;
  background: #fff8ec;
}
html.light[data-campaign="black-em-dobro"] :is(.black-deadline-date, .black-countdown b) { color: #795529; }
html.light[data-campaign="black-em-dobro"] .black-deadline-title > span { background: #925500; }
html.light[data-campaign="black-em-dobro"] .black-enrollment-deadline { background: #fff6e6; border-color: #cfad7d; }
html.light[data-campaign="black-em-dobro"] :is(.black-enrollment-deadline strong, .black-enrollment-deadline > span:first-child) { color: var(--black-light-accent); }
html.light[data-campaign="black-em-dobro"] .black-enrollment-deadline > span:last-child { color: var(--black-light-muted); }
html.light[data-campaign="black-em-dobro"] .plan {
  background: #ffffff;
  border-color: #d8c8b0;
  box-shadow: 0 12px 35px rgba(65, 43, 13, .055);
}
html.light[data-campaign="black-em-dobro"] .plan.destaque {
  background: linear-gradient(155deg, #ffedc9, #ffffff 44%);
  border-color: #b77d2a;
  box-shadow: 0 12px 40px rgba(145, 88, 13, .09);
}
html.light[data-campaign="black-em-dobro"] .plan-price { color: var(--black-light-accent); }
html.light[data-campaign="black-em-dobro"] :is(.price-original, .black-price-stage .black-regular-price) { color: var(--black-light-muted); }
html.light[data-campaign="black-em-dobro"] .black-old-value { color: #51493f; }
html.light[data-campaign="black-em-dobro"] .black-cut-sweep path { stroke: #b84a12; }
html.light[data-campaign="black-em-dobro"] .black-auto-discount { color: #855006; border-color: #c7a77b; background: #fff7e9; }
html.light[data-campaign="black-em-dobro"] .plan-savings { color: #855006; background: #fff3da; }
html.light[data-campaign="black-em-dobro"] .plan-commitment-note { color: var(--black-light-muted); }
html.light[data-campaign="black-em-dobro"] .black-checkout-help svg { color: var(--black-light-accent); }
html.light[data-campaign="black-em-dobro"] footer { background: #f2e9dc; border-top-color: #d5bc96; }
html.light[data-campaign="black-em-dobro"] footer :is(.footer-col a, .footer-brand p, .footer-bottom) { color: var(--black-light-muted); }
html.light[data-campaign="black-em-dobro"] .black-footer-label { border-color: #bfa47e; }
html.light[data-campaign="black-em-dobro"] :is(.black-primary, .black-secondary):focus-visible { outline-color: #925500; }
html.light[data-campaign="black-em-dobro"] .auth-tab.active { color: #1a1208; }
html.light[data-campaign="black-em-dobro"] .auth-success { color: #14662a; }
