:root{
  color-scheme:light dark;
  --page:#f4f6f1;
  --surface:#fbfcf9;
  --surface-strong:#ffffff;
  --ink:#163027;
  --body:#42564e;
  --muted:#687970;
  --line:#d8e1da;
  --line-strong:#c4d1c7;
  --brand:#246b4b;
  --brand-strong:#18573b;
  --brand-soft:#e2eee6;
  --warm:#b96d3a;
  --shadow:0 20px 60px rgba(22,48,39,.08);
  --radius:18px;
  --content:1120px;
  font-synthesis:none;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 8% 0,rgba(57,125,88,.12),transparent 28rem),
    var(--page);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.7;
  text-rendering:optimizeLegibility;
}
a{color:var(--brand);text-underline-offset:.2em;text-decoration-thickness:.08em}
a:hover{color:var(--brand-strong)}
a:focus-visible{outline:3px solid rgba(36,107,75,.35);outline-offset:4px;border-radius:4px}
.skip-link{
  position:fixed;
  z-index:100;
  top:12px;
  left:12px;
  padding:10px 14px;
  border-radius:10px;
  background:var(--ink);
  color:var(--surface);
  font-weight:750;
  transform:translateY(-150%);
  transition:transform .18s ease;
}
.skip-link:focus{transform:translateY(0)}
.wrap{width:min(100% - 40px,var(--content));margin-inline:auto}
.nav{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:76px;
  border-bottom:1px solid var(--line);
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--ink);
  font-size:15px;
  font-weight:800;
  letter-spacing:-.015em;
  text-decoration:none;
}
.brand::before{
  width:10px;
  height:10px;
  border:3px solid var(--brand);
  border-radius:50% 50% 50% 10%;
  content:"";
  transform:rotate(-45deg);
}
.links{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.links>a,.links .lang a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:6px 10px;
  border-radius:10px;
  font-size:14px;
  font-weight:700;
  text-decoration:none;
}
.links>a:hover,.links .lang a:hover{background:var(--brand-soft)}
.lang{display:inline-flex;align-items:center;color:var(--line-strong);font-size:0}
.lang a{font-size:12px}
.hero{padding:clamp(64px,10vw,112px) 0 48px}
.eyebrow{
  color:var(--brand);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
h1,h2,h3{color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif}
h1{
  max-width:900px;
  margin:12px 0 20px;
  font-size:clamp(42px,7vw,76px);
  font-weight:800;
  letter-spacing:-.055em;
  line-height:.98;
}
h2{margin:0 0 12px;font-size:clamp(21px,3vw,26px);letter-spacing:-.025em;line-height:1.2}
h3{margin:0 0 8px;font-size:17px}
p,li{color:var(--body)}
p{margin:0 0 1.1em}
.lead{max-width:760px;color:#334b40;font-size:clamp(18px,2.4vw,22px);line-height:1.55}
.badge{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  margin-top:8px;
  padding:6px 12px;
  border:1px solid #c7ddce;
  border-radius:999px;
  background:var(--brand-soft);
  color:var(--brand-strong);
  font-size:13px;
  font-weight:750;
}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 72px}
.card{
  display:flex;
  min-height:240px;
  flex-direction:column;
  padding:28px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:rgba(255,255,255,.62);
}
.card p{flex:1}
.card a{font-weight:750;text-decoration:none}
.legal-layout{
  display:grid;
  grid-template-columns:minmax(180px,230px) minmax(0,720px);
  justify-content:space-between;
  gap:clamp(48px,8vw,112px);
  padding:clamp(46px,7vw,80px) 0 64px;
}
.contents{align-self:start;position:sticky;top:24px}
.contents-title{
  margin:0 0 12px;
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.contents ol{margin:0;padding:0;list-style:none}
.contents li{margin:0}
.contents a{
  display:block;
  padding:7px 0;
  color:var(--muted);
  font-size:13px;
  font-weight:650;
  line-height:1.35;
  text-decoration:none;
}
.contents a:hover{color:var(--brand)}
.legal-document{min-width:0}
.legal-document header{padding:0 0 36px}
.legal-document h1{font-size:clamp(42px,6vw,68px)}
.updated{
  display:inline-flex;
  margin:0 0 24px;
  padding:5px 9px;
  border-radius:8px;
  background:var(--brand-soft);
  color:var(--brand-strong);
  font-size:12px;
  font-weight:700;
}
.legal-document section{
  scroll-margin-top:28px;
  padding:32px 0;
  border-top:1px solid var(--line);
}
.legal-document section p:last-child,.legal-document section ul:last-child{margin-bottom:0}
.legal-document ul{margin:14px 0 0;padding-left:1.25rem}
.legal-document li{padding-left:.35rem;margin:.5rem 0}
.legal-document li::marker{color:var(--brand)}
.note{
  padding:20px 22px;
  border:1px solid var(--line-strong);
  border-left:4px solid var(--brand);
  border-radius:12px;
  background:var(--surface-strong);
}
.footer{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  min-height:104px;
  padding:30px 0 42px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:13px;
}
.footer a{font-weight:700;text-decoration:none}
::selection{background:#c9e4d2;color:#10291f}
@media(max-width:840px){
  .grid{grid-template-columns:1fr}
  .card{min-height:0}
  .legal-layout{grid-template-columns:1fr;gap:28px}
  .contents{
    position:static;
    padding:18px 20px;
    border:1px solid var(--line);
    border-radius:14px;
    background:rgba(255,255,255,.5);
  }
  .contents ol{columns:2;column-gap:28px}
  .contents li{break-inside:avoid}
}
@media(max-width:620px){
  .wrap{width:min(100% - 28px,var(--content))}
  .nav{align-items:flex-start;flex-direction:column;gap:6px;padding:16px 0}
  .links{width:100%;margin-left:-8px}
  .hero{padding-top:54px}
  .grid{margin-bottom:52px}
  .contents ol{columns:1}
  .legal-layout{padding-top:38px}
  .legal-document section{padding:26px 0}
  .footer{min-height:88px}
}
@media(prefers-color-scheme:dark){
  :root{
    --page:#0d1511;
    --surface:#111c16;
    --surface-strong:#15231b;
    --ink:#edf5ef;
    --body:#b5c4ba;
    --muted:#93a59a;
    --line:#293a30;
    --line-strong:#3a5042;
    --brand:#83c9a2;
    --brand-strong:#a1d9b8;
    --brand-soft:#183226;
    --shadow:none;
  }
  body{background:radial-gradient(circle at 8% 0,rgba(81,151,105,.12),transparent 28rem),var(--page)}
  .lead{color:#c4d1c8}
  .card,.contents{background:rgba(21,35,27,.7)}
  .brand::before{border-color:var(--brand)}
  ::selection{background:#2d6346;color:#fff}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
@media print{
  body{background:#fff;color:#111;font-size:11pt}
  .wrap{width:100%;max-width:none}
  .nav,.contents,.skip-link,.footer{display:none}
  .legal-layout{display:block;padding:0}
  .legal-document{max-width:none}
  .legal-document header{padding-top:0}
  .legal-document section{break-inside:avoid;padding:18px 0}
  a{color:inherit}
}