:root {
  --paper:#f7f5ef; --ink:#1b2430; --muted:#60706d; --line:#ded8cc;
  --panel:#fff; --teal:#0f766e; --deep:#0b4f49; --berry:#b5175b;
  --amber:#e7a72d; --shadow:0 18px 44px rgba(22,31,42,.12);
}
* { box-sizing:border-box; }
body {
  margin:0; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:var(--paper); color:var(--ink); line-height:1.62; letter-spacing:0;
}
a { color:inherit; } img { max-width:100%; height:auto; display:block; }
.skip { position:absolute; left:16px; top:-60px; background:#111; color:#fff; padding:10px; z-index:20; }
.skip:focus { top:10px; }
.topbar {
  position:sticky; top:0; z-index:10; display:grid;
  grid-template-columns:auto auto 1fr auto auto; gap:12px; align-items:center;
  padding:10px clamp(16px,4vw,42px); background:rgba(247,245,239,.94);
  border-bottom:1px solid var(--line); backdrop-filter:blur(12px);
}
.brand { display:flex; align-items:center; gap:9px; font-weight:900; text-decoration:none; }
.brand img { width:32px; height:32px; object-fit:contain; border-radius:6px; }
.menubtn {
  display:none; align-items:center; gap:8px; border:1px solid var(--line);
  background:var(--panel); padding:9px 11px; border-radius:8px; font-weight:800;
}
.menubtn i,.menubtn i:before,.menubtn i:after {
  display:block; width:17px; height:2px; background:currentColor; content:""; border-radius:2px;
}
.menubtn i:before { transform:translateY(-6px); }
.menubtn i:after { transform:translateY(4px); }
.nav { display:flex; justify-content:center; gap:4px; min-width:0; }
.navlink {
  text-decoration:none; font-weight:800; color:#47534f; padding:8px 10px;
  border-radius:8px; white-space:nowrap;
}
.navlink:hover,.navlink.active { color:var(--deep); background:#e6f4ee; }
.langs {
  display:grid; grid-template-columns:repeat(2,1fr); border:1px solid var(--line);
  border-radius:8px; overflow:hidden; background:var(--panel);
}
.lang { text-decoration:none; font-weight:900; padding:8px 10px; color:var(--muted); text-align:center; min-width:42px; }
.lang.active { background:var(--ink); color:#fff; }
.topcta,.btn {
  display:inline-flex; align-items:center; justify-content:center; text-decoration:none;
  border-radius:8px; font-weight:900; min-height:44px;
}
.topcta {
  background:var(--berry); color:#fff; padding:9px 16px;
  box-shadow:0 10px 24px rgba(181,23,91,.22); white-space:nowrap;
}
.hero {
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);
  gap:clamp(18px,4vw,52px); align-items:center;
  padding:clamp(24px,5vw,56px) clamp(16px,5vw,64px) clamp(20px,4vw,42px);
  max-width:1220px; margin:0 auto;
}
.crumbs { display:flex; flex-wrap:wrap; gap:8px; font-size:.92rem; color:var(--muted); margin-bottom:14px; }
.crumbs a { color:var(--deep); font-weight:800; text-decoration:none; }
.crumbs a+span:before { content:"/"; margin-right:8px; color:#9a9487; }
.eyebrow,.kicker {
  margin:0 0 10px; color:var(--berry); font-size:.8rem;
  text-transform:uppercase; font-weight:950; letter-spacing:.06em;
}
h1,h2,h3,p { overflow-wrap:anywhere; }
h1 { margin:0; font-size:clamp(2.15rem,5vw,4.8rem); line-height:.98; letter-spacing:0; }
.lead { color:#34413d; font-size:clamp(1.04rem,1.7vw,1.28rem); max-width:760px; }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.btn { padding:12px 18px; border:1px solid transparent; }
.primary { background:var(--teal); color:#fff; box-shadow:0 14px 28px rgba(15,118,110,.2); }
.ghost { background:var(--panel); color:var(--deep); border-color:var(--line); }
.media {
  margin:0; background:var(--panel); border:1px solid var(--line);
  border-radius:8px; box-shadow:var(--shadow); overflow:hidden;
}
.media img { width:100%; max-height:310px; object-fit:cover; }
.media figcaption { padding:10px 14px; font-weight:900; color:var(--deep); background:#fdfcf8; }
.content { max-width:1060px; margin:0 auto; padding:0 clamp(16px,4vw,38px) 54px; }
.section { padding:clamp(22px,4vw,34px) 0; border-top:1px solid var(--line); }
.section h2 { margin:0 0 8px; font-size:clamp(1.45rem,2.5vw,2.2rem); line-height:1.14; }
.section h3 { margin:0 0 12px; color:var(--deep); font-size:1.03rem; }
.section p { margin:0; max-width:860px; }
.factbox {
  margin-top:18px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(260px,1fr);
  gap:18px; padding:18px; background:#fffaf0; border:1px solid #edd9ad; border-radius:8px;
}
.factbox p { margin:0; } .factbox a { color:var(--deep); font-weight:900; }
.tablewrap { margin-top:18px; overflow-x:auto; border:1px solid var(--line); border-radius:8px; background:var(--panel); }
table { width:100%; border-collapse:collapse; font-size:.98rem; }
caption { text-align:left; padding:12px 14px; font-weight:950; color:var(--deep); }
th,td { text-align:left; vertical-align:top; padding:12px 14px; border-top:1px solid var(--line); }
th { width:34%; color:var(--ink); }
.grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px; }
.card {
  min-height:148px; text-decoration:none; padding:16px; border:1px solid var(--line);
  border-radius:8px; background:var(--panel); box-shadow:0 8px 22px rgba(22,31,42,.06);
}
.card span { display:block; color:var(--deep); font-weight:950; margin-bottom:8px; }
.card small { display:block; color:var(--muted); font-size:.92rem; line-height:1.45; }
details { border:1px solid var(--line); background:var(--panel); border-radius:8px; padding:14px 16px; margin-top:10px; }
summary { cursor:pointer; font-weight:950; }
.final {
  display:flex; justify-content:space-between; gap:18px; align-items:center;
  padding:18px; background:var(--ink); color:#fff; border-radius:8px; box-shadow:var(--shadow);
}
.final p { margin:6px 0 0; color:#d8e1dd; }
.final .primary { background:var(--amber); color:#1b2430; box-shadow:none; flex:0 0 auto; }
.footer {
  display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px;
  padding:26px clamp(16px,4vw,42px); background:#121a23; color:#f6f4ec;
}
.footer p { margin:6px 0 0; color:#c7d0cb; max-width:720px; }
.footer nav { display:flex; flex-wrap:wrap; gap:10px 16px; justify-content:flex-end; }
.footer a { color:#f6f4ec; text-decoration:none; font-weight:800; }
@media (max-width:980px) {
  .topbar { grid-template-columns:auto auto 1fr auto; }
  .menubtn { display:inline-flex; }
  .nav { display:none; grid-column:1/-1; justify-content:start; flex-wrap:wrap; padding-top:8px; }
  .nav.open { display:flex; }
  .hero { grid-template-columns:1fr; padding-top:20px; }
  .media img { max-height:250px; }
  .grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .topbar { grid-template-columns:auto 1fr auto; gap:8px; padding:8px 12px; }
  .brand span { display:none; }
  .brand img { width:28px; height:28px; }
  .menubtn { justify-self:start; padding:8px 10px; min-height:40px; }
  .langs { justify-self:end; }
  .lang { min-width:36px; padding:7px 8px; }
  .topcta { grid-column:1/-1; width:100%; min-height:42px; padding:8px 12px; }
  .nav { grid-column:1/-1; }
  h1 { font-size:2.35rem; }
  .media img { max-height:210px; }
  .factbox { grid-template-columns:1fr; padding:14px; }
  .grid { grid-template-columns:1fr; }
  .final { flex-direction:column; align-items:stretch; }
  .footer { grid-template-columns:1fr; }
  .footer nav { justify-content:flex-start; }
}
