@import url("styles.css");

.legal-hero { padding: 88px 0 50px; background: linear-gradient(180deg, #f4f8ff, #fff); }
.legal-hero h1 { margin-bottom: 16px; font-size: clamp(2.7rem, 6vw, 5.5rem); }
.legal-hero p { margin: 0; color: var(--slate); font-size: 1.08rem; }
.legal-layout { display: grid; grid-template-columns: 240px minmax(0, 760px); justify-content: center; gap: 64px; padding-block: 70px 110px; }
.legal-aside { position: sticky; top: 120px; align-self: start; }
.legal-aside strong { display: block; margin-bottom: 16px; font-family: var(--display); }
.legal-aside nav { display: grid; gap: 8px; }
.legal-aside a { padding: 9px 12px; border-radius: 8px; color: var(--slate); text-decoration: none; }
.legal-aside a:hover, .legal-aside a[aria-current="page"] { color: var(--blue); background: var(--canvas); }
.legal-copy { color: #263954; }
.legal-copy h2 { margin: 2.4em 0 .7em; color: var(--navy-950); font-size: 1.45rem; letter-spacing: -.02em; }
.legal-copy h2:first-child { margin-top: 0; }
.legal-copy p, .legal-copy li { max-width: 72ch; }
.legal-copy ul { display: grid; gap: 10px; padding-left: 22px; }
.legal-copy a { color: var(--blue); }
.legal-notice { margin-top: 40px; padding: 20px; border: 1px solid #cbdcf1; border-radius: 12px; background: var(--canvas); }
.lang-copy[hidden] { display: none; }

@media (max-width: 860px) {
  .legal-layout { grid-template-columns: 1fr; gap: 36px; }
  .legal-aside { position: static; }
  .legal-aside nav { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
  .legal-hero { padding-top: 60px; }
  .legal-layout { padding-block: 50px 80px; }
  .legal-aside nav { grid-template-columns: 1fr; }
}
