/* Neo-industrial executive noir: matte black/charcoal foundation, disciplined CapexIQ gold accents, left-weighted executive hierarchy, fine technical rules, translucent governance cards, and slow restrained motion. Legal-page extension: preserve executive readability while using the same dark/gold shared chrome. */
.legal-hero { padding: clamp(5rem, 8vw, 8rem) clamp(1.25rem, 4vw, 4rem) 3rem; background-image: linear-gradient(90deg, rgba(5,7,11,.98), rgba(5,7,11,.82)), url('../images/security-abstract.png'); background-size:cover; background-position:center right; border-bottom:1px solid rgba(212,175,55,.22); }
.legal-shell { max-width: 1060px; margin:0 auto; }
.legal-hero h1 { font-size: clamp(2.7rem, 6vw, 5rem); max-width:900px; }
.legal-hero p { color:var(--text-secondary); font-size:1.15rem; line-height:1.65; max-width:760px; }
.legal-content { max-width:1060px; margin:0 auto; padding: clamp(3rem, 6vw, 5rem) clamp(1.25rem, 4vw, 4rem); }
.legal-panel { background: rgba(8,12,18,.75); border:1px solid rgba(212,175,55,.26); border-radius:12px; padding: clamp(1.5rem, 3vw, 2.4rem); margin-bottom:1.4rem; }
.legal-panel h2 { font-size: clamp(1.55rem, 2.7vw, 2.2rem); letter-spacing:-.03em; margin-bottom:.8rem; }
.legal-panel h3 { color:var(--gold-light); margin-bottom:.7rem; }
.legal-panel p, .legal-panel li { color:#d8dde6; line-height:1.72; }
.legal-panel ul { padding-left:1.2rem; }
.legal-meta { color:var(--gold-light); letter-spacing:.1em; text-transform:uppercase; font-size:.84rem; font-weight:800; }
.security-feature-grid { display:grid; grid-template-columns: repeat(3, 1fr); gap:1rem; margin-top:1.3rem; }
.security-feature-grid article { border:1px solid rgba(212,175,55,.26); background:rgba(255,255,255,.03); padding:1.2rem; border-radius:8px; }
.security-feature-grid h3 { color:var(--gold-light); }
.thank-you-hero { min-height:58vh; display:flex; align-items:center; }
.thank-you-shell { position:relative; }
.thank-you-shell h1 { max-width:760px; }
.thank-you-actions { display:flex; flex-wrap:wrap; gap:1rem; margin-top:2rem; }
.thank-you-content { padding-top:clamp(2rem, 4vw, 3rem); }
.thank-you-panel { display:grid; grid-template-columns:minmax(0, .65fr) minmax(0, 1fr); gap:2rem; align-items:start; }
.thank-you-panel strong { color:var(--gold-light); }
@media (max-width: 800px) { .security-feature-grid, .thank-you-panel { grid-template-columns:1fr; } .thank-you-actions .btn { width:100%; } }

/* Uploaded legal/security page compatibility: preserves the neo-industrial shell while styling approved policy content. */
.legal-content-uploaded {
  background: radial-gradient(circle at 18% 0%, rgba(212,175,55,.08), transparent 34%), #06101a;
}
.legal-content-uploaded .container {
  max-width: 980px;
  margin: 0 auto;
  padding: clamp(3rem, 6vw, 5rem) clamp(1.25rem, 4vw, 2.5rem);
}
.legal-content-uploaded h1 {
  display: none;
}
.legal-updated {
  color: var(--gold-light);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: .86rem;
  font-weight: 800;
  margin: 0 0 1.4rem;
}
.legal-intro,
.legal-content-uploaded .contact-info,
.legal-content-uploaded .highlight-box {
  border: 1px solid rgba(212,175,55,.28);
  background: linear-gradient(135deg, rgba(255,255,255,.09), rgba(255,255,255,.035));
  box-shadow: 0 22px 60px rgba(0,0,0,.24);
  padding: clamp(1.25rem, 3vw, 2rem);
  margin: 1.5rem 0 2.25rem;
}
.legal-content-uploaded h2 {
  color: #fff;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(1.65rem, 3vw, 2.25rem);
  line-height: 1.12;
  margin: 2.8rem 0 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(212,175,55,.18);
}
.legal-content-uploaded h3 {
  color: var(--gold-light);
  font-size: 1.12rem;
  margin: 1.75rem 0 .75rem;
}
.legal-content-uploaded p,
.legal-content-uploaded li {
  color: #d8dde6;
  line-height: 1.78;
}
.legal-content-uploaded ul,
.legal-content-uploaded ol {
  margin: .75rem 0 1.4rem;
  padding-left: 1.35rem;
}
.legal-content-uploaded li::marker {
  color: var(--gold-light);
}
.legal-content-uploaded strong {
  color: #fff;
}
.legal-content-uploaded a {
  color: var(--gold-light);
  text-decoration: none;
  border-bottom: 1px solid rgba(242,201,76,.36);
}
.legal-content-uploaded a:hover,
.legal-content-uploaded a:focus {
  border-color: var(--gold-light);
}
.compliance-grid,
.security-grid,
.controls-grid,
.contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 1.5rem 0 2rem;
}
.compliance-card,
.security-card,
.control-card,
.contact-card {
  border: 1px solid rgba(212,175,55,.18);
  background: rgba(255,255,255,.055);
  padding: 1.25rem;
}
@media (max-width: 760px) {
  .compliance-grid,
  .security-grid,
  .controls-grid,
  .contact-grid {
    grid-template-columns: 1fr;
  }
}

