/* v1.0 (2026-09-08) - Shared, static homepage atmosphere for SPA and legal pages. */

:is(.digital-luxury, [data-legal-page]) {
  --site-luxury-hero:
    radial-gradient(ellipse at 94% 8%, rgba(230, 169, 76, .22), transparent 42%),
    repeating-linear-gradient(90deg, transparent 0 11%, rgba(255, 221, 147, .045) 11.2% 11.4%, transparent 11.6% 18%),
    linear-gradient(110deg, #052137, #091321 53%, #302016);
  --site-luxury-edge: rgba(217, 184, 73, .42);
}

/* A single shared heading surface, including lists, products and account pages.
   Backgrounds do not cover images, controls, or selectable text. */
.dark-ui.digital-luxury main .card:has(h1),
body[data-legal-page] .legal-hero {
  background: var(--site-luxury-hero);
  border: 1px solid var(--site-luxury-edge);
  border-radius: 28px;
  padding: clamp(1.4rem, 3.5vw, 3rem);
  box-shadow: 0 20px 48px rgba(0, 0, 0, .25), inset 0 1px rgba(255, 239, 184, .12);
}

.dark-ui.digital-luxury main h1:not(.personal-home-luxury__title),
body[data-legal-page] h1 {
  color: #fff8e8;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2rem, 3.6vw, 3.5rem);
  line-height: 1.12;
  letter-spacing: -.025em;
  text-wrap: balance;
  overflow-wrap: anywhere;
}

.dark-ui.digital-luxury main h1:not(.personal-home-luxury__title)::after,
body[data-legal-page] h1::after {
  display: block;
  width: 4rem;
  height: 2px;
  margin-top: 1rem;
  content: "";
  background: linear-gradient(90deg, #e8c76c, rgba(217, 184, 73, .05));
}

.dark-ui.digital-luxury main h2,
body[data-legal-page] h2 {
  text-wrap: balance;
  overflow-wrap: anywhere;
}

.dark-ui.digital-luxury main .btn,
body[data-legal-page] .legal-nav a {
  white-space: normal;
  overflow-wrap: anywhere;
}

.dark-ui.digital-luxury main :is(button, a):focus-visible,
body[data-legal-page] :is(button, a, select):focus-visible {
  outline: 2px solid #fff0b2;
  outline-offset: 4px;
}

body[data-legal-page] .legal-card:not(.legal-note) {
  border-color: rgba(217, 184, 73, .25);
}

@media (max-width: 640px) {
  .dark-ui.digital-luxury main .card:has(h1),
  body[data-legal-page] .legal-hero {
    border-radius: 20px;
    padding: 1.25rem;
  }
}

/* No animation, backdrop blur, fixed image or rendering loop is added. */
@media print {
  .dark-ui.digital-luxury main .card:has(h1),
  body[data-legal-page] .legal-hero {
    background: white;
    box-shadow: none;
  }
  .dark-ui.digital-luxury main h1:not(.personal-home-luxury__title),
  body[data-legal-page] h1 {
    color: black;
  }
}
