
:root{
  --legal-ink:#17332b;
  --legal-muted:#63756f;
  --legal-green:#155e49;
  --legal-soft:#f2f7f4;
  --legal-border:#dbe7e0;
}
.bloomve-legal-page{margin:0;background:#f7faf8;color:var(--legal-ink)}
.bloomve-legal-shell{min-height:60vh}
.bloomve-legal-hero{
  padding:74px 0 62px;
  color:#fff;
  background:
    radial-gradient(circle at 84% 20%,rgba(255,255,255,.16),transparent 28%),
    linear-gradient(135deg,#0d382c,#17634d 62%,#7da58d);
}
.bloomve-legal-kicker{
  display:inline-block;margin-bottom:12px;
  font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:#d7eee3
}
.bloomve-legal-hero h1{margin:0 0 13px;font:700 clamp(38px,6vw,64px)/1.05 Georgia,serif}
.bloomve-legal-hero p{max-width:790px;margin:0;color:#e6f3ed;font-size:18px;line-height:1.7}
.bloomve-legal-meta{margin-top:20px;font-size:13px;color:#cfe5db}
.bloomve-legal-content{padding:38px 0 72px}
.bloomve-legal-content .container{max-width:1040px}
.bloomve-legal-notice,.bloomve-legal-callout{
  padding:18px 20px;border:1px solid #cde2d7;border-radius:14px;background:#eaf5ef;line-height:1.65
}
.bloomve-legal-notice{margin-bottom:22px}
.bloomve-legal-callout{margin:18px 0}
.bloomve-legal-card{
  margin:0 0 18px;padding:30px 32px;border:1px solid var(--legal-border);
  border-radius:16px;background:#fff;box-shadow:0 5px 24px rgba(21,55,44,.035)
}
.bloomve-legal-card h2{margin:0 0 16px;font:700 27px/1.2 Georgia,serif;color:#133f32}
.bloomve-legal-card h3{margin:25px 0 11px;font-size:18px;font-weight:800;color:#225846}
.bloomve-legal-card p,.bloomve-legal-card li{font-size:15px;line-height:1.8;color:#52645e}
.bloomve-legal-card ul{padding-left:21px;margin-bottom:16px}
.bloomve-legal-card li{margin-bottom:7px}
.bloomve-legal-card a{color:#0e6c50;font-weight:700}
.bloomve-legal-contact{padding:17px 19px;border-left:4px solid var(--legal-green);background:var(--legal-soft);line-height:1.8}
.bloomve-legal-footnote{
  margin-top:28px;padding:16px 18px;border-radius:12px;background:#eef2f0;
  color:#697873;font-size:13px;line-height:1.65
}
@media(max-width:700px){
 .bloomve-legal-hero{padding:54px 0 46px}
 .bloomve-legal-content{padding:24px 0 50px}
 .bloomve-legal-card{padding:22px 20px;border-radius:13px}
 .bloomve-legal-card h2{font-size:23px}
}

/* v2.7.3 — full user-supplied legal documents */
.bloomve-legal-source-note{
  margin-bottom:20px;padding:14px 16px;border:1px solid #efd79c;border-radius:12px;
  background:#fff8e7;color:#6e5720;font-size:13px;line-height:1.6
}
.bloomve-legal-longform{padding:34px 38px}
.bloomve-legal-longform h1{display:none}
.bloomve-legal-longform h2{
  margin:34px 0 14px;padding-top:28px;border-top:1px solid var(--legal-border);
  font:700 27px/1.25 Georgia,serif;color:#133f32
}
.bloomve-legal-longform h2:first-child{margin-top:0;padding-top:0;border-top:0}
.bloomve-legal-longform h3{margin:25px 0 10px;font-size:18px;color:#225846}
.bloomve-legal-longform p,.bloomve-legal-longform li{
  color:#52645e;font-size:15px;line-height:1.8
}
.bloomve-legal-longform strong{color:#24483d}
.bloomve-legal-longform a{overflow-wrap:anywhere}
.bloomve-legal-longform hr{margin:28px 0;border:0;border-top:1px solid var(--legal-border)}
@media(max-width:700px){
  .bloomve-legal-longform{padding:22px 19px}
  .bloomve-legal-longform h2{font-size:22px}
}
