/* Shared DPstar.in public footer and information-page layout. */
.site-footer{
  clear:both;
  box-sizing:border-box;
  width:100%;
  margin:6px 0 0;
  padding:10px 8px 13px;
  background:linear-gradient(180deg,#ffe5c5 0%,#ffcc99 100%);
  border:2px solid #e0557f;
  border-radius:10px;
  color:#111;
  font-family:Helvetica,Arial,sans-serif;
  font-style:normal;
  font-weight:700;
  line-height:1.35;
  text-align:center;
}
.site-footer p,
.site-footer nav{margin:0}
.site-footer__powered{font-size:16px}
.site-footer__copy{font-size:15px}
.site-footer__links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:25px;
  font-size:14px;
  flex-wrap:wrap;
}
body .site-footer__links a{
  display:inline-block;
  padding:3px 1px;
  color:#0013a5;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:2px;
}
body .site-footer__links a:hover,
body .site-footer__links a:focus-visible{color:#522f92}

/* Keep the fixed homepage Refresh button clear of the final link row. */
body.board .site-footer{padding-bottom:53px}

body.legal-page{
  margin:0;
  padding:0;
  min-width:0;
  background:#ffcc99;
  color:#000;
  font-family:Helvetica,Arial,sans-serif;
  overflow-x:hidden;
}
.legal-shell{
  box-sizing:border-box;
  width:min(100%,760px);
  min-height:100vh;
  margin:0 auto;
  padding:2px 6px 10px;
  background:#ffcc99;
}
.legal-shell .top-nav{margin-bottom:6px}
.legal-page .legal-brand{
  height:auto;
  min-height:96px;
  padding-block:clamp(6px,1.1vw,16px);
  text-decoration:none;
}
.legal-page .legal-brand .brand-text-logo{gap:0}
.legal-page .legal-brand .brand-text-logo__dp{font-size:clamp(43px,14.8vw,110px)}
.legal-page .legal-brand .brand-text-logo__star{
  font-size:clamp(34px,11.2vw,84px);
  letter-spacing:0;
}
.legal-card{
  margin:0;
  padding:12px clamp(12px,3vw,24px) 15px;
  background:#ffe0bd;
  border:2px solid #e0557f;
  border-radius:10px;
  text-align:left;
}
.legal-card h1{
  margin:0 0 8px;
  color:#0013a5;
  font-size:clamp(22px,5vw,30px);
  line-height:1.15;
  text-align:center;
}
.legal-card h2{
  margin:14px 0 5px;
  color:#00094d;
  font-size:18px;
  line-height:1.2;
}
.legal-card p,
.legal-card li{
  margin:0 0 8px;
  font-size:15px;
  font-weight:500;
  line-height:1.38;
}
.legal-card ul{margin:0 0 6px;padding-left:22px}
.legal-card .page-note{
  margin:0 0 11px;
  color:#5b1640;
  font-size:13px;
  font-weight:700;
  text-align:center;
}
.legal-contact-status{
  padding:10px;
  background:#fff1df;
  border:1px solid #b9005e;
  border-radius:8px;
  color:#4b1332;
  font-weight:700;
}
.contact-details{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin:12px 0 14px;
  padding:10px;
  background:#fff1df;
  border:2px solid #b9005e;
  border-radius:10px;
}
.contact-detail{
  min-width:0;
  padding:9px 10px;
  background:#ffe0bd;
  border:1px solid #e0557f;
  border-radius:8px;
  text-align:center;
}
.contact-detail__label{
  display:block;
  margin-bottom:3px;
  color:#00094d;
  font-size:15px;
  font-weight:800;
}
.contact-detail__value,
.contact-detail__value a{
  color:#0013a5;
  font-size:14px;
  font-weight:700;
  overflow-wrap:anywhere;
}
.contact-detail__value a{text-decoration:underline;text-underline-offset:2px}

@media (min-width:560px){
  .contact-details{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:360px){
  .site-footer{padding-inline:5px}
  .site-footer__copy{font-size:14px}
  .site-footer__links{gap:4px;font-size:12.5px}
  .legal-card{padding-inline:11px}
  .legal-card p,.legal-card li{font-size:14px}
}
