.legal-page{
  padding:58px 0 84px;
  background:#f7f5ef;
  color:#17263a;
}
.legal-page *,
.legal-page *::before,
.legal-page *::after{box-sizing:border-box}
.legal-page .legal-container{
  width:min(1040px,calc(100% - 48px));
  margin-inline:auto;
}
.legal-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:28px;
  color:#617087;
  font-size:13px;
}
.legal-breadcrumb a{color:#986616}
.legal-hero{
  margin-bottom:22px;
  padding:42px 46px;
  border-radius:32px;
  background:#102642;
  color:#fff;
}
.legal-kicker{
  margin-bottom:12px;
  color:#f1c66f;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.legal-hero h1{
  max-width:900px;
  margin:0;
  font:700 clamp(38px,5vw,64px)/1.05 Georgia,serif;
  letter-spacing:-.04em;
}
.legal-hero p{
  max-width:820px;
  margin:20px 0 0;
  color:#d6e1ea;
  font-size:18px;
  line-height:1.55;
}
.legal-updated{
  display:inline-flex;
  margin-top:20px;
  padding:8px 13px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  color:#fff;
  font-size:12px;
}
.legal-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:22px 0;
}
.legal-summary article{
  padding:22px;
  border:1px solid #e0e5ea;
  border-radius:20px;
  background:#fff;
}
.legal-summary b{
  display:block;
  margin-bottom:8px;
  color:#a26c17;
  font-size:13px;
  text-transform:uppercase;
}
.legal-summary p{margin:0;color:#4f6074;line-height:1.5}
.legal-document{
  padding:34px 42px;
  border:1px solid #e0e5ea;
  border-radius:28px;
  background:#fff;
  box-shadow:0 14px 34px rgba(16,38,66,.07);
}
.legal-section{
  padding:27px 0;
  border-bottom:1px solid #e4e8ec;
}
.legal-section:last-child{border-bottom:0}
.legal-section h2{
  margin:0 0 14px;
  color:#17263a;
  font-size:27px;
  line-height:1.25;
}
.legal-section h3{
  margin:22px 0 10px;
  color:#243b58;
  font-size:19px;
}
.legal-section p,
.legal-section li,
.legal-section td,
.legal-section th{
  font-size:16px;
  line-height:1.65;
}
.legal-section p{margin:10px 0;color:#3e4f63}
.legal-section ul,
.legal-section ol{margin:12px 0;padding-left:24px}
.legal-section li{margin:7px 0;color:#3e4f63}
.legal-section a{
  color:#275fb9;
  text-decoration:underline;
  text-underline-offset:3px;
}
.legal-note{
  margin:18px 0!important;
  padding:17px 19px;
  border-left:4px solid #e1a33b;
  border-radius:0 12px 12px 0;
  background:#fff8e9;
  color:#37485c!important;
}
.legal-table-wrap{
  margin:18px 0;
  overflow-x:auto;
  border:1px solid #dde3e8;
  border-radius:16px;
}
.legal-table{
  width:100%;
  min-width:700px;
  border-collapse:collapse;
}
.legal-table th,
.legal-table td{
  padding:14px 16px;
  border-bottom:1px solid #e3e7eb;
  vertical-align:top;
  text-align:left;
}
.legal-table th{
  background:#eef2f6;
  color:#17263a;
  font-size:14px;
}
.legal-table tr:last-child td{border-bottom:0}
.legal-requisites{
  display:grid;
  grid-template-columns:190px 1fr;
  gap:8px 18px;
  margin:16px 0 0;
}
.legal-requisites dt{font-weight:700;color:#17263a}
.legal-requisites dd{margin:0;color:#4f6074}
.legal-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:20px;
}
.legal-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 18px;
  border-radius:7px;
  background:#102642;
  color:#fff!important;
  font-weight:700;
  text-decoration:none!important;
}
.legal-action--light{
  border:1px solid #aeb8c2;
  background:#fff;
  color:#17263a!important;
}

.form-consent{
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:start!important;
  margin:4px 0!important;
  color:inherit!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.45!important;
  text-align:left!important;
}
.form-consent input{
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
  min-height:18px!important;
  margin:1px 0 0!important;
  padding:0!important;
  accent-color:#102642;
}
.form-consent a{
  color:inherit!important;
  font-weight:700;
  text-decoration:underline!important;
  text-underline-offset:2px;
}
.bottom-consultation-form .form-consent{color:#fff!important}

/* Consent rows inside white lead cards must not inherit the dark section's
   white text. Used by partner and all city consultation forms. */
.draft-form > .form-consent,
.lead-form > .form-consent{
  display:grid!important;
  color:#253b55!important;
  opacity:1!important;
  visibility:visible!important;
}
.draft-form > .form-consent span,
.lead-form > .form-consent span{
  display:block!important;
  color:#253b55!important;
  opacity:1!important;
  visibility:visible!important;
}
.draft-form > .form-consent a,
.lead-form > .form-consent a{
  color:#1f5ebd!important;
}

@media(max-width:760px){
  .legal-page{padding:34px 0 58px}
  .legal-page .legal-container{width:calc(100% - 28px)}
  .legal-hero{padding:28px 22px;border-radius:24px}
  .legal-hero h1{font-size:38px}
  .legal-hero p{font-size:16px}
  .legal-summary{grid-template-columns:1fr}
  .legal-document{padding:22px 19px;border-radius:22px}
  .legal-section{padding:22px 0}
  .legal-section h2{font-size:23px}
  .legal-section p,
  .legal-section li,
  .legal-section td,
  .legal-section th{font-size:15px}
  .legal-requisites{grid-template-columns:1fr;gap:2px}
  .legal-requisites dd{margin-bottom:8px}
}
