:root { --bg:#ffffff; --green-1:#1b7f4d; --green-2:#67b137; --green-3:#62cf39; --accent:#e2600f; --ink:#575756; --muted:#696f73; --soft:#f5f8f4; --line:rgba(25,48,84,.09); --shadow-soft:0 18px 54px rgba(25,48,84,.10); --container:1180px; --container-narrow:960px; --font-heading:'Montserrat',sans-serif; --font-body:'Inter',sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font-family:var(--font-body); color:var(--ink); background:var(--bg); overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.legal-shell { min-height:100vh; background:linear-gradient(180deg,#0b7f3f 0,#167e36 290px,#fff 290px,#fff 100%); }
.legal-container { width:min(var(--container),calc(100% - 32px)); margin:0 auto; }
.legal-container-narrow { width:min(var(--container-narrow),calc(100% - 32px)); }
.legal-header { position:sticky; top:0; z-index:20; padding-top:14px; }
.legal-nav { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:12px 18px; border:1px solid rgba(0,0,0,.08); border-radius:999px; background:rgba(255,255,255,.96); box-shadow:0 18px 50px rgba(0,0,0,.12); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }
.legal-brand { display:inline-flex; align-items:center; flex-shrink:0; }
.legal-brand img { height:38px; width:auto; object-fit:contain; }
.legal-links { display:flex; align-items:center; gap:8px; }
.legal-link { padding:10px 14px; border-radius:999px; color:var(--ink); font-size:.92rem; font-weight:700; white-space:nowrap; transition:.22s ease; }
.legal-link:hover { background:rgba(0,0,0,.06); color:#111; }
.legal-link.active { color:#fff; background:linear-gradient(180deg,var(--green-2) 0%,var(--green-1) 100%); box-shadow:0 12px 30px rgba(27,127,77,.22); }
.legal-menu-toggle { display:none; width:46px; height:46px; align-items:center; justify-content:center; border-radius:50%; border:1px solid rgba(0,0,0,.10); background:#f5f6f7; color:#111; font-size:1.2rem; }
.legal-mobile-panel { display:none; }
.legal-hero { padding:62px 0 30px; color:#fff; text-align:center; }
.legal-eyebrow { display:inline-flex; align-items:center; justify-content:center; padding:8px 14px; margin-bottom:16px; border-radius:999px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.08); font-size:.78rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.legal-title { max-width:820px; margin:0 auto 12px; font-family:var(--font-heading); font-size:clamp(2rem,3.6vw,3.4rem); line-height:1.02; letter-spacing:-.035em; font-weight:900; text-wrap:balance; }
.legal-desc { max-width:620px; margin:0 auto; color:rgba(255,255,255,.86); font-size:1rem; line-height:1.6; }
.legal-main { padding:0 0 64px; }
.legal-document { padding:34px 38px 42px; border-radius:30px; border:1px solid var(--line); background:#fff; box-shadow:var(--shadow-soft); }
.legal-document-head { margin-bottom:24px; padding-bottom:18px; border-bottom:1px solid var(--line); }
.legal-document-kicker { margin:0 0 7px; color:var(--green-1); font-size:.78rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.legal-document-title { margin:0; color:var(--ink); font-family:var(--font-heading); font-size:clamp(1.35rem,2.4vw,2.1rem); line-height:1.12; font-weight:900; }
.legal-text { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; color:#45484d; font-family:var(--font-body); font-size:1rem; line-height:1.74; }
.legal-contact-footer { padding-top:0; background:#fff; }
.legal-contact-shell { padding:28px 26px 16px; border-radius:34px 34px 0 0; background:linear-gradient(180deg,#49a430 0%,#55b337 100%); color:#fff; box-shadow:0 -18px 52px rgba(0,0,0,.20); }
.legal-footer-head { display:flex; align-items:center; gap:18px; margin-bottom:18px; }
.legal-brand-pill { width:auto; max-width:132px; min-height:46px; padding:9px 13px; border-radius:16px; display:inline-flex; align-items:center; justify-content:center; background:rgba(255,255,255,.96); }
.legal-brand-pill img {  display: block;  width: auto; max-width: 110px; height: auto; max-height: 34px; object-fit: contain; }
.legal-footer-title { margin:0; color:#fff; font-family:var(--font-heading); font-size:clamp(1.65rem,2.6vw,2.2rem); line-height:1.05; font-weight:900; letter-spacing:-.025em; }
.legal-contact-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 20px; }
.legal-contact-item { display:flex; align-items:flex-start; gap:12px; color:#fff; font-size:.95rem; line-height:1.55; }
.legal-contact-item i { width:32px; height:32px; min-width:32px; display:flex; align-items:center; justify-content:center; border-radius:12px; background:rgba(255,255,255,.12); color:#fff; font-size:17px; line-height:1; }
.legal-contact-item span,.legal-contact-item a { color:inherit; font-family:var(--font-body); text-decoration:none; }
.legal-contact-item a:hover { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.legal-footer-bottom { margin-top:22px; padding-top:14px; border-top:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.86); text-align:center; font-size:.82rem; line-height:1.55; }
@media (max-width:991.98px) { .legal-links { display:none; } .legal-menu-toggle { display:inline-flex; } .legal-mobile-panel { display:grid; gap:8px; position:fixed; top:88px; left:12px; right:12px; z-index:25; padding:14px; border-radius:24px; border:1px solid rgba(0,0,0,.06); background:rgba(255,255,255,.98); box-shadow:0 24px 60px rgba(0,0,0,.18); opacity:0; transform:translateY(-10px); pointer-events:none; transition:opacity .22s ease, transform .22s ease; } .legal-mobile-panel.open { opacity:1; transform:translateY(0); pointer-events:auto; } .legal-mobile-panel a { display:flex; justify-content:center; padding:12px 16px; border-radius:16px; color:var(--ink); background:#f5f6f7; font-weight:800; } .legal-mobile-panel a.active { color:#fff; background:linear-gradient(180deg,var(--green-2) 0%,var(--green-1) 100%); } .legal-contact-list { grid-template-columns:1fr; } }
@media (max-width:767.98px) { .legal-container,.legal-container-narrow { width:calc(100% - 18px); } .legal-shell { background:linear-gradient(180deg,#0b7f3f 0,#167e36 260px,#fff 260px,#fff 100%); } .legal-brand img { height:30px; } .legal-nav { min-height:64px; padding:10px 12px; } .legal-hero { padding:44px 0 24px; } .legal-title { font-size:clamp(1.85rem,8vw,2.45rem); } .legal-desc { font-size:.92rem; } .legal-document { padding:24px 18px 28px; border-radius:24px; } .legal-text { font-size:.93rem; line-height:1.68; } .legal-contact-shell { padding:24px 16px 12px; border-radius:30px 30px 0 0; } .legal-footer-head { gap:14px; } .legal-contact-item { gap:10px; } }

.footer-brand-mark {
  width: 72px;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
  border-radius: 20px;
  background: #ffffff;
}

.footer-brand-mark img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}