    /* ── Legal Placeholder: Atmospheric hero ── */
    .legal-placeholder {
      position: relative;
      width: 100%;
      min-height: 100vh;
      min-height: 100svh;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      background: var(--bg-cold);
      padding: 8rem 5vw 6rem;
      overflow: hidden;
    }

    /* Layer 1: Multi-gradient vignette (shifted from privacy for visual variety) */
    .legal-placeholder::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(ellipse 50% 45% at 50% 50%, rgba(231, 65, 50, 0.035) 0%, transparent 60%),
        radial-gradient(ellipse 55% 40% at 65% 45%, rgba(231, 65, 50, 0.02) 0%, transparent 50%),
        radial-gradient(ellipse 45% 35% at 30% 55%, rgba(245, 240, 235, 0.01) 0%, transparent 45%),
        linear-gradient(175deg, transparent 0%, rgba(20, 12, 8, 0.2) 100%);
      pointer-events: none;
      z-index: 0;
    }

    /* Layer 2: SVG noise texture */
    .legal-placeholder::after {
      content: '';
      position: absolute;
      inset: 0;
      opacity: 0.033;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
      background-size: 256px 256px;
      pointer-events: none;
      z-index: 1;
    }

    /* Layer 3: Atmospheric glow orb */
    .legal-placeholder-glow {
      position: absolute;
      width: 400px;
      height: 260px;
      top: 48%;
      left: 50%;
      transform: translate(-50%, -50%);
      background: radial-gradient(ellipse at center, rgba(231, 65, 50, 0.045) 0%, rgba(231, 65, 50, 0.012) 40%, transparent 70%);
      filter: blur(3.5rem);
      pointer-events: none;
      z-index: 0;
    }

    /* Content container */
    .legal-placeholder-content {
      position: relative;
      z-index: 2;
      max-width: 600px;
    }

    /* Decorative clipboard icon */
    .legal-placeholder-icon {
      width: 56px;
      height: 56px;
      margin: 0 auto 2rem;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      background: rgba(231, 65, 50, 0.06);
      border: 1px solid rgba(231, 65, 50, 0.1);
    }

    .legal-placeholder-icon svg {
      width: 24px;
      height: 24px;
      stroke: var(--brand-red);
      fill: none;
      stroke-width: 1.5;
      stroke-linecap: round;
      stroke-linejoin: round;
      opacity: 0.85;
    }

    /* Hero label */
    .legal-placeholder .hero-label {
      font-family: var(--font-body);
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--brand-red);
      margin-bottom: 1.5rem;
    }

    /* Heading */
    .legal-placeholder .hero-heading {
      font-family: var(--font-accent);
      font-size: clamp(2.4rem, 5vw, 4.5rem);
      font-weight: 400;
      letter-spacing: -0.02em;
      line-height: 1.05;
      color: var(--text-primary);
      margin-bottom: 1.5rem;
      text-shadow:
        0 2px 16px rgba(0, 0, 0, 0.7),
        0 4px 32px rgba(0, 0, 0, 0.4),
        0 0 60px rgba(0, 0, 0, 0.25);
    }

    /* Body */
    .legal-placeholder .hero-body {
      font-family: var(--font-body);
      font-size: clamp(0.95rem, 1.2vw, 1.1rem);
      font-weight: 400;
      line-height: 1.7;
      color: var(--text-muted);
      max-width: 44ch;
      margin: 0 auto 2.5rem;
    }

    /* "Coming Soon" badge */
    .legal-placeholder-badge {
      display: inline-block;
      font-family: var(--font-body);
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: var(--brand-red);
      padding: 0.5rem 1.25rem;
      border: 1px solid rgba(231, 65, 50, 0.2);
      border-radius: 2px;
      background: rgba(231, 65, 50, 0.04);
      margin-bottom: 2.5rem;
      box-shadow:
        0 2px 12px rgba(231, 65, 50, 0.08),
        0 0 0 1px rgba(231, 65, 50, 0.04);
    }

    /* CTA link */
    .legal-placeholder-cta {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      font-family: var(--font-body);
      font-size: 0.85rem;
      font-weight: 500;
      color: var(--text-muted);
      letter-spacing: 0.02em;
      transition: color 0.3s var(--ease-out), transform 0.3s var(--ease-out);
    }

    .legal-placeholder-cta:hover {
      color: var(--text-primary);
      transform: translateX(2px);
    }

    .legal-placeholder-cta:focus-visible {
      outline: 2px solid var(--brand-red);
      outline-offset: 4px;
    }

    .legal-placeholder-cta svg {
      width: 14px;
      height: 14px;
      stroke: currentColor;
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
      transition: transform 0.3s var(--ease-out);
    }

    .legal-placeholder-cta:hover svg {
      transform: translateX(3px);
    }

    /* ── Mobile ── */
    @media (max-width: 768px) {
      .legal-placeholder {
        min-height: 100vh;
        min-height: 100svh;
        padding: 6rem 5vw 4rem;
      }
      .legal-placeholder-glow {
        width: 280px;
        height: 180px;
      }
      .legal-placeholder-icon {
        width: 48px;
        height: 48px;
        margin-bottom: 1.5rem;
      }
      .legal-placeholder-icon svg {
        width: 20px;
        height: 20px;
      }
    }
