/* Estland 2 legal pages v45 */
.legal-main {
  position: relative;
  z-index: 2;
  padding: 76px 0 110px;
}
.legal-hero {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 28px;
  align-items: end;
  padding: 38px;
  border: 1px solid rgba(111,158,205,.2);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 14%, rgba(255,199,95,.13), transparent 30%),
    linear-gradient(145deg, rgba(12,25,40,.95), rgba(6,15,27,.98));
  box-shadow: 0 28px 80px rgba(0,0,0,.28);
}
.legal-kicker {
  display: block;
  margin-bottom: 12px;
  color: #ffc85d;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.legal-hero h1 {
  margin: 0;
  max-width: 760px;
  color: #fff;
  font-size: clamp(38px,5.2vw,68px);
  line-height: .98;
  letter-spacing: -.045em;
}
.legal-hero p {
  max-width: 760px;
  margin: 18px 0 0;
  color: #aabbd0;
  font-size: 17px;
  line-height: 1.7;
}
.legal-date {
  min-width: 190px;
  padding: 18px 20px;
  border: 1px solid rgba(255,200,93,.23);
  border-radius: 18px;
  background: rgba(255,200,93,.07);
}
.legal-date span,.legal-date strong { display:block; }
.legal-date span { color:#8ea2b9; font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.legal-date strong { margin-top:7px; color:#fff; font-size:16px; }
.legal-layout {
  display: grid;
  grid-template-columns: 260px minmax(0,1fr);
  gap: 28px;
  margin-top: 28px;
}
.legal-side {
  align-self: start;
  position: sticky;
  top: 112px;
  padding: 18px;
  border: 1px solid rgba(111,158,205,.18);
  border-radius: 22px;
  background: rgba(8,18,31,.9);
  backdrop-filter: blur(18px);
}
.legal-language-title { display:block; margin:4px 6px 12px; color:#7f93ab; font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.legal-language-switch { display:grid; gap:7px; }
.legal-language-switch button {
  width:100%; padding:11px 13px; border:1px solid transparent; border-radius:12px;
  background:transparent; color:#9fb0c4; font:inherit; font-weight:800; text-align:left; cursor:pointer;
}
.legal-language-switch button:hover { background:rgba(255,255,255,.04); color:#fff; }
.legal-language-switch button.is-active { border-color:rgba(255,200,93,.28); background:rgba(255,200,93,.09); color:#ffd277; }
.legal-side-links { display:grid; gap:8px; margin-top:16px; padding-top:16px; border-top:1px solid rgba(111,158,205,.14); }
.legal-side-links a { color:#95a9bf; font-size:13px; font-weight:750; text-decoration:none; }
.legal-side-links a:hover { color:#fff; }
.legal-document {
  padding: 36px clamp(24px,4vw,54px);
  border: 1px solid rgba(111,158,205,.18);
  border-radius: 26px;
  background: rgba(7,17,30,.94);
  box-shadow: 0 24px 70px rgba(0,0,0,.2);
}
.legal-document[hidden] { display:none!important; }
.legal-document section + section { margin-top:36px; padding-top:34px; border-top:1px solid rgba(111,158,205,.13); }
.legal-document h2 { margin:0 0 14px; color:#fff; font-size:24px; letter-spacing:-.025em; }
.legal-document h3 { margin:24px 0 10px; color:#e9f2fb; font-size:17px; }
.legal-document p,.legal-document li { color:#aab9ca; font-size:15px; line-height:1.78; }
.legal-document p { margin:0 0 12px; }
.legal-document ul { margin:12px 0 0; padding-left:22px; }
.legal-document li + li { margin-top:8px; }
.legal-document a { color:#ffd06f; font-weight:800; }
.legal-note {
  margin: 22px 0;
  padding: 18px 20px;
  border-left: 3px solid #ffc85d;
  border-radius: 0 14px 14px 0;
  background: rgba(255,200,93,.07);
  color:#dfe8f2!important;
}
.id-terms a { color:#ffd06f; font-weight:800; text-decoration:none; }
.id-terms a:hover { text-decoration:underline; }
@media(max-width:900px){
  .legal-main{padding-top:42px}
  .legal-hero{grid-template-columns:1fr;padding:28px}
  .legal-date{min-width:0}
  .legal-layout{grid-template-columns:1fr}
  .legal-side{position:static}
  .legal-language-switch{grid-template-columns:repeat(3,1fr)}
  .legal-language-switch button{text-align:center}
}
@media(max-width:600px){
  .legal-main{padding:26px 0 96px}
  .legal-hero{padding:24px 20px;border-radius:22px}
  .legal-hero h1{font-size:38px}
  .legal-hero p{font-size:15px}
  .legal-document{padding:26px 20px;border-radius:22px}
  .legal-side{border-radius:18px}
}
