/* Shared legal-page styling. It intentionally uses the same palette, type
   scale, rounded cards, and quiet shadows as the public Kalimera sections. */
.legal-page{
  position:relative;
  min-height:calc(100vh - 82px);
  padding:58px 0 96px;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 8%,rgba(239,170,90,.18),transparent 25rem),
    linear-gradient(180deg,var(--cream) 0%,#eef7f7 100%);
}
.legal-shell{
  position:relative;
  z-index:1;
  width:min(900px,calc(100% - 32px));
  margin:0 auto;
}
.legal-back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:8px 14px;
  border:1px solid rgba(43,110,143,.25);
  border-radius:999px;
  background:rgba(255,253,249,.7);
  color:var(--blue);
  font-weight:800;
  text-decoration:none;
  box-shadow:0 3px 0 rgba(22,53,71,.05);
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.legal-back:hover,.legal-back:focus-visible{
  border-color:var(--blue);
  background:var(--white);
  transform:translateY(-1px);
  outline:0;
}
.legal-header{
  margin:30px 0 24px;
  padding-inline:4px;
}
.legal-header .eyebrow{
  display:block;
  margin-bottom:11px;
}
.legal-header h1{
  max-width:760px;
  margin:0;
  color:var(--ink);
  font:900 clamp(44px,7vw,78px)/.9 Rubik,Arial,sans-serif;
  letter-spacing:-.075em;
}
.legal-header p{
  max-width:650px;
  margin:17px 0 0;
  color:#55707d;
  font-size:18px;
  line-height:1.5;
}
.legal-updated{
  font-size:14px!important;
  font-weight:700;
}
.legal-card{
  padding:36px 42px;
  border:1px solid rgba(22,53,71,.15);
  border-radius:14px;
  background:rgba(255,253,249,.96);
  box-shadow:12px 14px 0 rgba(22,53,71,.08);
}
.legal-card h2{
  margin:0 0 10px;
  color:var(--ink);
  font:800 27px/1.1 Rubik,Arial,sans-serif;
  letter-spacing:-.045em;
}
.legal-card h2:not(:first-child){
  margin-top:31px;
  padding-top:1px;
}
.legal-card p,.legal-card li{
  color:#305262;
  font-size:17px;
  line-height:1.7;
}
.legal-card p{margin:0}
.legal-card ul{
  margin:10px 0 0;
  padding:0 24px 0 0;
}
.legal-card li+li{margin-top:6px}
.legal-card a{
  color:var(--blue);
  font-weight:800;
  text-underline-offset:3px;
}
.legal-contact{
  margin-top:30px!important;
  padding-top:19px;
  border-top:1px solid var(--line);
  font-weight:700;
}
.footer-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:11px;
  font-size:14px;
}
.footer-links a{
  color:#fffdf9;
  text-decoration:underline;
  text-underline-offset:3px;
}
.footer-links a:hover,.footer-links a:focus-visible{color:#efaa5a}
@media(max-width:700px){
  .legal-page{min-height:calc(100vh - 70px);padding:40px 0 66px}
  .legal-shell{width:calc(100% - 28px)}
  .legal-header{margin:24px 0 20px;padding-inline:2px}
  .legal-header h1{font-size:48px}
  .legal-header p{font-size:16px}
  .legal-card{padding:25px 20px;box-shadow:8px 9px 0 rgba(22,53,71,.08)}
  .legal-card h2{font-size:23px}
  .legal-card h2:not(:first-child){margin-top:26px}
  .legal-card p,.legal-card li{font-size:16px;line-height:1.65}
  .legal-card ul{padding-right:21px}
}
