.legal-shell{
  width:min(1120px,calc(100% - 32px));
  margin:0 auto;
  padding:30px 0 56px;
}

.legal-hero{
  margin-bottom:22px;
  padding:42px;
  border:1px solid var(--border);
  border-radius:22px;
  background:
    linear-gradient(90deg,rgba(2,11,19,.94),rgba(2,11,19,.64)),
    url('/assets/ocean.jpg') center/cover no-repeat;
  box-shadow:0 24px 70px rgba(0,0,0,.35);
}

.legal-hero h1{
  margin-bottom:16px;
  font-size:clamp(42px,6vw,68px);
}

.legal-hero p{
  max-width:780px;
  margin:0 0 16px;
  color:#d8efff;
  font-size:19px;
  line-height:1.6;
}

.effective-date{
  display:inline-block;
  padding:8px 12px;
  border:1px solid var(--border);
  border-radius:999px;
  background:rgba(7,28,45,.82);
  color:var(--muted);
  font-size:13px;
  font-weight:800;
}

.legal-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.legal-card{
  min-height:210px;
}

.legal-card h2{
  margin-bottom:14px;
  color:#fff;
}

.legal-card p,
.legal-card li{
  color:#d2eaff;
  line-height:1.65;
}

.legal-card ul{
  margin:10px 0 0;
  padding-left:22px;
}

.legal-card li+li{
  margin-top:7px;
}

.legal-alert{
  margin-bottom:22px;
  padding:20px 22px;
  border:1px solid rgba(255,212,71,.55);
  border-left:6px solid var(--yellow);
  border-radius:16px;
  background:rgba(255,212,71,.08);
}

.legal-alert strong{
  display:block;
  color:var(--yellow);
  font-size:24px;
}

.legal-alert p{
  margin:7px 0 0;
  color:#f7f0c4;
}

.warning-hero{
  background:
    linear-gradient(90deg,rgba(20,5,5,.92),rgba(2,11,19,.68)),
    url('/assets/ocean.jpg') center/cover no-repeat;
}

@media(max-width:800px){
  .legal-grid{
    grid-template-columns:1fr;
  }

  .legal-card{
    min-height:0;
  }
}

@media(max-width:640px){
  .legal-shell{
    width:min(100% - 24px,1120px);
    padding-top:14px;
  }

  .legal-hero{
    padding:28px 22px;
  }

  .legal-hero p{
    font-size:17px;
  }

  .legal-card{
    padding:20px;
  }
}
