@import url("https://fonts.googleapis.com/css2?family=Libre+Caslon+Text:ital,wght@0,400;0,700;1,400&family=Hanken+Grotesk:wght@300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Space+Grotesk:wght@500;600;700&display=swap");

:root {
  --estate-ivory: #f9f9f7;
  --estate-paper: #ffffff;
  --estate-mist: #f1f0ed;
  --estate-line: #d8d0c2;
  --estate-ink: #1a1c1c;
  --estate-muted: #5e5e5d;
  --estate-charcoal: #2f3131;
  --estate-bronze: #735c00;
  --estate-gold: #d4af37;
  --estate-warm-gold: #e9c349;
}

html {
  background: var(--estate-ivory);
}

body {
  background: var(--estate-ivory) !important;
  color: var(--estate-ink) !important;
  font-family: "Hanken Grotesk", Inter, Arial, sans-serif !important;
}

.font-headline,
.font-display-lg,
.font-display-lg-mobile,
.font-headline-lg,
.font-headline-md,
h1,
h2,
h3 {
  font-family: "Libre Caslon Text", "Noto Serif", Georgia, serif !important;
  letter-spacing: 0 !important;
}

main h1,
main h2,
main h3,
main h4,
.font-headline.font-bold {
  font-weight: 400 !important;
}

main > section:not(#sell) h1 {
  font-size: clamp(2.4rem, 5.4vw, 4rem) !important;
  line-height: 1.08 !important;
}

#sell h1 {
  font-size: clamp(3rem, 7vw, 5.75rem) !important;
  line-height: 1.08 !important;
}

main h2 {
  font-size: clamp(2rem, 3.6vw, 3rem) !important;
  line-height: 1.16 !important;
}

main h3 {
  line-height: 1.25 !important;
}

.font-body,
.font-label,
.font-body-md,
.font-body-lg,
.font-label-md,
.font-label-sm {
  font-family: "Hanken Grotesk", Inter, Arial, sans-serif !important;
}

.font-label,
.font-label-md,
.font-label-sm {
  letter-spacing: 0.12em !important;
  text-transform: uppercase;
  font-weight: 600 !important;
}

main p,
main li {
  line-height: 1.65 !important;
}

.glass-nav,
nav.fixed,
header.fixed {
  background: rgba(47, 49, 49, 0.97) !important;
  border-color: rgba(216, 208, 194, 0.18) !important;
  color: #f1f1f1 !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}

nav.fixed a,
header.fixed a,
nav.fixed button,
header.fixed button {
  color: #f1f1f1 !important;
}

header.fixed .site-header-actions .header-cta-call,
nav.fixed .site-header-actions .header-cta-call {
  display: none !important;
}

nav.fixed a:hover,
header.fixed a:hover {
  color: var(--estate-warm-gold) !important;
}

header.fixed .site-header-nav a,
nav.fixed .site-header-nav a {
  color: #f1f1f1 !important;
  border-color: transparent !important;
  border-bottom-width: 1px;
}

header.fixed .site-header-nav a[href$="shop.html"],
header.fixed .site-header-nav a[href$="what-we-buy.html"],
nav.fixed .site-header-nav a[href$="shop.html"],
nav.fixed .site-header-nav a[href$="what-we-buy.html"] {
  color: #f1f1f1 !important;
  border-color: rgba(233, 195, 73, 0.45) !important;
}

header.fixed .site-header-nav a:hover,
header.fixed .site-header-nav .nav-buy-group > a:hover,
nav.fixed .site-header-nav a:hover,
nav.fixed .site-header-nav .nav-buy-group > a:hover {
  color: var(--estate-warm-gold) !important;
  border-color: rgba(233, 195, 73, 0.75) !important;
}

header.fixed .site-header-nav a.is-current-page,
header.fixed .site-header-nav .nav-buy-group > a.is-current-page,
nav.fixed .site-header-nav a.is-current-page,
nav.fixed .site-header-nav .nav-buy-group > a.is-current-page {
  color: var(--estate-warm-gold) !important;
  border-color: rgba(233, 195, 73, 0.45) !important;
}

header.fixed #mobile-menu a:hover,
header.fixed #mobile-menu a.is-current-page,
nav.fixed #mobile-menu a:hover,
nav.fixed #mobile-menu a.is-current-page {
  color: var(--estate-warm-gold) !important;
  border-color: rgba(233, 195, 73, 0.45) !important;
}

nav.fixed a.text-\[\#d4af37\],
header.fixed a.text-primary,
nav.fixed .text-\[\#d4af37\],
header.fixed .text-primary {
  color: var(--estate-warm-gold) !important;
}

header.fixed .site-brand-text,
nav.fixed .site-brand-text {
  color: var(--estate-warm-gold) !important;
}

.gold-button,
.bg-primary,
button.bg-primary,
a.bg-primary {
  background: var(--estate-bronze) !important;
  color: #fff !important;
}

.gold-button:hover,
.bg-primary:hover,
button.bg-primary:hover,
a.bg-primary:hover {
  background: var(--estate-charcoal) !important;
}

.border-primary,
.border-\[\#d4af37\],
.border-primary\/40,
.border-primary\/60 {
  border-color: var(--estate-bronze) !important;
}

.text-primary,
.text-\[\#d4af37\] {
  color: var(--estate-bronze) !important;
}

.bg-surface,
.bg-\[\#131313\] {
  background-color: var(--estate-ivory) !important;
}

body.bg-background {
  background-color: var(--estate-ivory) !important;
}

.bg-surface-container-low,
.bg-surface-container-highest,
.bg-\[\#1b1b1b\] {
  background-color: var(--estate-mist) !important;
}

.bg-surface-container,
.bg-surface-container-high {
  background-color: var(--estate-paper) !important;
}

.text-on-surface {
  color: var(--estate-ink) !important;
}

.text-on-surface-variant,
.text-gray-300,
.text-gray-400,
.text-gray-500 {
  color: var(--estate-muted) !important;
}

footer,
footer.bg-\[\#1b1b1b\],
.editorial-dark-band {
  background: var(--estate-charcoal) !important;
  color: #f1f1f1 !important;
}

footer a,
footer .text-gray-500,
footer .text-gray-400,
footer .text-on-surface-variant {
  color: #d7d0c3 !important;
}

footer .text-primary,
footer .text-\[\#d4af37\] {
  color: var(--estate-warm-gold) !important;
}

.mobile-menu-panel,
#mobile-menu {
  background: rgba(47, 49, 49, 0.99) !important;
  border-color: rgba(216, 208, 194, 0.18) !important;
}

#mobile-menu a {
  color: #f1f1f1 !important;
  border-color: rgba(216, 208, 194, 0.18) !important;
  display: block !important;
  width: 100% !important;
  padding-top: 0.875rem !important;
  padding-bottom: 0.875rem !important;
  border-bottom: 1px solid var(--estate-line) !important;
  transform: none !important;
  font-family: "Hanken Grotesk", Inter, Arial, sans-serif !important;
  line-height: 1.35 !important;
}

#mobile-menu a:hover,
#mobile-menu a.is-current-page {
  color: var(--estate-warm-gold) !important;
}

#mobile-menu a:last-child {
  border-bottom: 0 !important;
}

main > section:not(.relative) {
  border-color: var(--estate-line) !important;
}

main > section {
  border-color: var(--estate-line) !important;
}

.rounded-md,
.rounded-lg,
.rounded-xl,
.rounded-full {
  border-radius: 0.125rem !important;
}

a.gold-button,
button.gold-button,
.gold-button,
main a[class*="border"][class*="text-primary"],
main button,
nav.fixed button,
header.fixed button {
  border-radius: 0 !important;
  box-shadow: none !important;
}

main a[class*="border"][class*="text-primary"],
main button[class*="border"] {
  background: transparent !important;
  border-color: var(--estate-line) !important;
  color: var(--estate-ink) !important;
}

main a[class*="border"][class*="text-primary"]:hover,
main button[class*="border"]:hover {
  background: var(--estate-charcoal) !important;
  color: #fff !important;
  border-color: var(--estate-charcoal) !important;
}

main .border-white\/5,
main .border-white\/10,
footer .border-white\/5 {
  border-color: var(--estate-line) !important;
}

main .bg-primary\/5,
main .bg-primary\/10,
main .bg-primary\/20 {
  background-color: rgba(115, 92, 0, 0.08) !important;
}

details.bg-surface-container-high,
main a.group.block,
main .bg-surface-container-high {
  border: 1px solid var(--estate-line) !important;
}

details summary {
  background: var(--estate-paper) !important;
}

details summary:hover {
  background: var(--estate-mist) !important;
}

details > div {
  border-top: 1px solid var(--estate-line) !important;
}

.material-symbols-outlined {
  color: inherit;
}

main .shadow-2xl,
main .shadow-xl {
  box-shadow: 0 18px 48px rgba(26, 28, 28, 0.12) !important;
}

.editorial-hero-text,
.hero-light-text,
.dark-hero h1,
.dark-hero h2,
.dark-hero p,
.dark-hero .text-white,
.dark-hero .text-surface,
.dark-hero .text-tertiary-fixed {
  color: #fff !important;
}

#sell h1,
#sell p,
#sell .text-on-surface,
#sell .text-on-surface-variant,
main > section.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 h1,
main > section.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 p,
main > section.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 .text-on-surface,
main > section.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 .text-on-surface-variant {
  color: #f8f5ed !important;
}

#sell .text-primary,
main > section.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 .text-primary {
  color: var(--estate-warm-gold) !important;
}

body:has(a[href="estate-services.html"].text-\[\#d4af37\]) main > section:first-child h1,
body:has(a[href="estate-services.html"].text-\[\#d4af37\]) main > section:first-child p {
  color: var(--estate-ink) !important;
}

body:has(a[href="estate-services.html"].text-\[\#d4af37\]) main > section:first-child .text-on-surface-variant {
  color: var(--estate-muted) !important;
}

nav.fixed .gold-button,
nav.fixed a.gold-button {
  background: var(--estate-bronze) !important;
  color: #fff !important;
}

.editorial-call-button,
header.fixed .editorial-call-button,
nav.fixed .editorial-call-button {
  background: transparent !important;
  color: var(--estate-warm-gold) !important;
  border-color: rgba(233, 195, 73, 0.55) !important;
}

.editorial-call-button:hover,
header.fixed .editorial-call-button:hover,
nav.fixed .editorial-call-button:hover {
  background: var(--estate-bronze) !important;
  color: #fff !important;
}

.nav-buy-group {
  position: relative;
  display: flex;
  align-items: center;
}

/* Language switcher (EN / ES) injected into .site-header-actions. Show both
   options with the active language highlighted so it reads as a switcher. */
.lang-toggle {
  gap: 0.3rem;
}

.lang-toggle .material-symbols-outlined {
  color: rgba(241, 241, 241, 0.6);
}

.lang-toggle .lang-opt,
header.fixed .lang-toggle .lang-opt,
nav.fixed .lang-toggle .lang-opt {
  color: rgba(241, 241, 241, 0.6) !important;
  transition: color 0.15s ease;
}

.lang-toggle .lang-opt.is-current,
header.fixed .lang-toggle .lang-opt.is-current,
nav.fixed .lang-toggle .lang-opt.is-current {
  color: var(--estate-warm-gold) !important;
  font-weight: 700;
}

.lang-toggle .lang-opt:hover,
header.fixed .lang-toggle .lang-opt:hover,
nav.fixed .lang-toggle .lang-opt:hover {
  color: var(--estate-warm-gold) !important;
}

.lang-toggle .lang-sep {
  color: rgba(241, 241, 241, 0.35);
}

.nav-buy-panel {
  position: absolute;
  left: 0;
  top: 100%;
  z-index: 80;
  min-width: 190px;
  padding: 0.5rem;
  background: rgba(47, 49, 49, 0.99);
  border: 1px solid rgba(216, 208, 194, 0.18);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
  transition: opacity 160ms ease, transform 160ms ease;
}

.nav-buy-group:hover .nav-buy-panel,
.nav-buy-group:focus-within .nav-buy-panel {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.nav-buy-panel a {
  display: block;
  padding: 0.65rem 0.75rem;
  color: #d7d0c3 !important;
  font-family: "Hanken Grotesk", Inter, Arial, sans-serif !important;
  font-size: 0.875rem;
}

.nav-buy-panel a:hover {
  background: rgba(216, 208, 194, 0.08);
  color: var(--estate-warm-gold) !important;
}

#mobile-menu a.mobile-subitem {
  padding-left: 2rem !important;
  color: var(--estate-warm-gold) !important;
  font-size: 0.95rem !important;
}

.site-header-nav a,
#mobile-menu a,
.site-header-nav button,
#mobile-menu-toggle {
  font-family: "Hanken Grotesk", Inter, Arial, sans-serif !important;
  letter-spacing: 0.05em !important;
  text-transform: none;
}

/* Nav uses Tailwind text-label-md; ensure size when a page omits editorial-tailwind-config */
.site-header-nav a.text-label-md,
.site-header-actions .text-label-md,
.site-header-actions .lang-toggle,
#mobile-menu-toggle.text-label-md {
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}

.site-header-nav a,
header.fixed .site-header-nav a {
  white-space: nowrap;
}

/* Spanish desktop nav: labels are longer than English ("Preguntas Frecuentes",
   "Servicios de Patrimonio", etc.), which otherwise widens the nav and crushes
   the brand name into multiple lines (making the header very tall). Tighten the
   nav and keep the brand on one line. Only applies where the desktop nav shows
   (>=1536px); the mobile/hamburger view and brand wrapping stay untouched. */
@media (min-width: 1536px) {
  html[lang="es"] .site-header-nav {
    gap: 0.5rem !important;
  }
  html[lang="es"] .site-header-nav a {
    font-size: 0.7rem !important;
    letter-spacing: 0.01em !important;
    padding-left: 0.1rem !important;
    padding-right: 0.1rem !important;
  }
  html[lang="es"] .site-brand-text {
    white-space: nowrap !important;
  }
}

#mobile-menu a.mobile-subitem {
  text-transform: none !important;
  letter-spacing: 0.02em !important;
  font-size: 0.95rem !important;
}

/* Unified site header layout */
.site-header-bar {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}

.site-brand-link {
  min-width: 0;
  flex: 1 1 auto;
  overflow: visible;
  align-items: center;
}

.site-brand-logo {
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: 0.15rem;
}

.site-brand-text {
  display: block;
  min-width: 0;
  overflow: visible;
  white-space: normal;
  overflow-wrap: break-word;
  word-wrap: break-word;
  line-height: 1.2;
  hyphens: none;
  color: var(--estate-warm-gold) !important;
}

.site-brand-short {
  display: none !important;
}

.site-brand-full {
  display: inline !important;
}

.site-header-actions,
.site-header-back {
  flex-shrink: 0;
}

.site-header:not(.fixed) .site-header-bar,
nav.site-header:not(.fixed) .site-header-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.site-menu-toggle,
#mobile-menu-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-width: 4.25rem;
  min-height: 2.5rem;
  touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(115, 92, 0, 0.15);
}

header.fixed .site-menu-toggle,
header.fixed #mobile-menu-toggle,
nav.fixed .site-menu-toggle,
nav.fixed #mobile-menu-toggle,
header.fixed .site-header-actions a[href*="contact.html#submit-item"],
nav.fixed .site-header-actions a[href*="contact.html#submit-item"] {
  border-color: rgba(233, 195, 73, 0.55) !important;
  color: var(--estate-warm-gold) !important;
  background: transparent !important;
}

header.fixed .site-menu-toggle:hover,
header.fixed #mobile-menu-toggle:hover,
nav.fixed .site-menu-toggle:hover,
nav.fixed #mobile-menu-toggle:hover,
header.fixed .site-header-actions a[href*="contact.html#submit-item"]:hover,
nav.fixed .site-header-actions a[href*="contact.html#submit-item"]:hover {
  background: rgba(233, 195, 73, 0.12) !important;
  color: #fff !important;
}

#mobile-menu {
  display: none;
}

@media (min-width: 1536px) {
  .site-brand-logo {
    align-self: center;
    margin-top: 0;
  }

  .site-header-nav {
    display: flex !important;
  }

  .site-menu-toggle,
  #mobile-menu-toggle,
  #mobile-menu {
    display: none !important;
  }
}

@media (max-width: 1535px) {
  .site-header-bar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
  }

  .site-header-nav {
    display: none !important;
  }

  .site-header-actions .header-cta-subscribe,
  .site-header-actions .header-cta-call,
  .site-header-actions .gold-button,
  .site-header-actions .editorial-call-button,
  .site-header-actions .mobile-request-call {
    display: none !important;
  }

  .site-menu-toggle,
  #mobile-menu-toggle {
    display: inline-flex !important;
  }

  #mobile-menu:not(.hidden) {
    display: block !important;
  }

  .site-brand-text {
    font-size: clamp(0.78rem, 2.9vw, 1rem) !important;
    letter-spacing: 0.03em !important;
    line-height: 1.25 !important;
  }

  .site-brand-link {
    align-items: flex-start;
  }
}

/* Offset page content below fixed header (replaces removed "Back to Home" strip) */
nav.site-header.fixed ~ main:not([class*="pt-"]):not([class*="mt-"]),
header.site-header.fixed + main:not([class*="pt-"]):not([class*="mt-"]) {
  padding-top: 5.5rem;
}

@media (min-width: 768px) {
  nav.site-header.fixed ~ main:not([class*="pt-"]):not([class*="mt-"]),
  header.site-header.fixed + main:not([class*="pt-"]):not([class*="mt-"]) {
    padding-top: 6rem;
  }
}

@media (max-width: 1023px) {
  main > section:first-of-type h1,
  main > section:first-of-type h2,
  #sell h1,
  .estate-services-hero h1 {
    font-size: clamp(2.45rem, 10vw, 3.15rem) !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
  }

  main > section:first-of-type p,
  #sell p,
  .estate-services-hero p {
    font-size: clamp(1rem, 4.2vw, 1.25rem) !important;
    line-height: 1.55 !important;
  }
}

footer a[href="gold-services.html"],
footer a[href="silver-services.html"] {
  font-family: "Hanken Grotesk", Inter, Arial, sans-serif !important;
  font-size: 0.875rem !important;
  letter-spacing: 0.025em !important;
  transform: none !important;
}

main a.bg-inverse-surface,
main button.bg-inverse-surface {
  background: var(--estate-charcoal) !important;
  color: var(--estate-warm-gold) !important;
  border: 1px solid rgba(233, 195, 73, 0.35) !important;
}

main a.bg-primary-container,
main button.bg-primary-container {
  background: var(--estate-warm-gold) !important;
  color: var(--estate-ink) !important;
}

main a.bg-primary-container:hover,
main button.bg-primary-container:hover {
  background: var(--estate-gold) !important;
}

main a.bg-primary,
main button.bg-primary {
  background: var(--estate-bronze) !important;
  color: #fff !important;
}

main a.bg-primary:hover,
main button.bg-primary:hover {
  background: var(--estate-charcoal) !important;
}

main a.border,
main button.border {
  text-decoration: none !important;
}

header .font-display-lg-mobile {
  line-height: 1.15 !important;
}

.estate-services-hero h1,
.estate-services-hero p,
.estate-services-hero .text-on-surface-variant {
  color: var(--estate-ink) !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.45);
}

.estate-services-hero .text-primary {
  color: var(--estate-bronze) !important;
}

main > section.estate-services-hero.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 h1,
main > section.estate-services-hero.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 p,
main > section.estate-services-hero.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 .text-on-surface-variant {
  color: var(--estate-ink) !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.45);
}

main > section.estate-services-hero.relative.overflow-hidden:has(> div.absolute.inset-0 img) .container.relative.z-10 .text-primary {
  color: var(--estate-bronze) !important;
}

@media (max-width: 640px) {
  body main section .mobile-hero-title.mobile-hero-title,
  body main #sell h1,
  body main > section h1.text-4xl,
  body main > section h2.text-4xl,
  body main h2.font-display-lg,
  body main > section:first-child h1,
  body main > section:first-child h2,
  body main > section:first-of-type h1,
  body main > section:first-of-type h2,
  body main .estate-services-hero h1 {
    font-size: 38px !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
  }

  body main #sell p,
  body main > section:first-child p,
  body main > section:first-of-type p,
  body main .estate-services-hero p {
    font-size: clamp(1rem, 4vw, 1.18rem) !important;
    line-height: 1.55 !important;
  }
}

.dm-powered-bar {
  background: #030406;
  border-top: 1px solid rgba(0, 240, 255, 0.18);
  display: flex;
  justify-content: center;
  padding: 1.25rem 1rem;
  text-align: center;
  width: 100%;
}

.dm-powered-badge {
  align-items: center;
  animation: dm-nebula-pulse 4s ease-in-out infinite;
  background: rgba(0, 240, 255, 0.08);
  border: 1px solid rgba(0, 240, 255, 0.22);
  border-radius: 1rem;
  box-shadow:
    0 0 24px rgba(0, 240, 255, 0.12),
    inset 0 0 20px rgba(112, 0, 255, 0.08);
  color: inherit;
  display: inline-flex;
  flex-direction: row;
  gap: 0.875rem;
  margin-left: auto;
  margin-right: auto;
  padding: 1rem 1.25rem;
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.dm-powered-badge:hover,
.dm-powered-badge:focus-visible {
  border-color: rgba(0, 240, 255, 0.4);
  box-shadow:
    0 0 32px rgba(112, 0, 255, 0.2),
    inset 0 0 24px rgba(0, 240, 255, 0.1);
  outline: none;
}

.dm-powered-badge__icon {
  color: #00f0ff;
  flex-shrink: 0;
  height: 1.5rem;
  width: 1.5rem;
}

.dm-powered-badge__lockup {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  line-height: 1;
}

.dm-powered-badge__label {
  color: #8e9192;
  font-family: "JetBrains Mono", Consolas, monospace;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}

.dm-powered-badge__name {
  animation: dm-brand-shimmer 6s ease-in-out infinite;
  background: linear-gradient(120deg, #ffffff 0%, #00f0ff 38%, #7000ff 88%);
  background-clip: text;
  background-size: 200% auto;
  filter: drop-shadow(0 0 10px rgba(0, 240, 255, 0.55)) drop-shadow(0 0 22px rgba(112, 0, 255, 0.4));
  font-family: "Space Grotesk", sans-serif;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.dm-powered-badge__subtext {
  color: #8e9192;
  display: block;
  font-family: "Bebas Neue", sans-serif;
  font-size: 9px;
  letter-spacing: 0.16em;
  line-height: 1;
  margin-top: 3px;
  text-transform: uppercase;
  transform: scaleX(1.28);
  transform-origin: left center;
}

@keyframes dm-brand-shimmer {
  0%, 100% { background-position: 0% center; }
  50% { background-position: 100% center; }
}

@keyframes dm-nebula-pulse {
  0%, 100% {
    box-shadow: 0 0 20px rgba(0, 240, 255, 0.1), inset 0 0 16px rgba(112, 0, 255, 0.06);
  }
  50% {
    box-shadow: 0 0 32px rgba(112, 0, 255, 0.2), inset 0 0 24px rgba(0, 240, 255, 0.1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .dm-powered-badge,
  .dm-powered-badge__name {
    animation: none;
  }

  .dm-powered-badge__name {
    background-position: 0% center;
  }
}
