:root{
  --bg:#F0EEE6; --panel:#FCFAF4; --ink:#3D3929; --dim:#6E6653;
  --terra:#A6522F; --terra-dark:#8C4426; --amber:#E8A33D; --sage:#5B7F5B;
  --line:#E2DACB; --radius:18px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
}
.wrap{max-width:1060px;margin:0 auto;padding:0 20px}
.wrap-narrow{max-width:780px;margin:0 auto;padding:0 20px}
a{color:var(--terra)}
a:hover{color:var(--terra-dark)}
img{max-width:100%;height:auto}

/* шапка */
.site-head{padding:22px 0 10px;border-bottom:1px solid var(--line);background:var(--bg)}
.head-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:inherit}
.brand img{width:44px;height:44px;border-radius:50%;display:block}
.brand b{font-size:20px;letter-spacing:.2px;display:block}
.brand span{display:block;font-size:12px;color:var(--dim);letter-spacing:.6px;text-transform:uppercase}
.nav{display:flex;gap:20px;flex-wrap:wrap}
.nav a{text-decoration:none;color:var(--dim);font-size:15px}
.nav a:hover,.nav a[aria-current="page"]{color:var(--terra)}

/* кнопки */
.btn{
  display:inline-block;background:var(--terra);color:#FFF7EC;text-decoration:none;
  padding:14px 30px;border-radius:12px;font-size:17px;font-weight:600;
  transition:background .15s ease, transform .15s ease;
}
.btn:hover{background:var(--terra-dark);color:#FFF7EC;transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--terra);border:1.5px solid var(--terra);padding:12.5px 26px}
.btn.ghost:hover{background:rgba(166,82,47,.07);color:var(--terra-dark)}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}

/* типографика */
h1{font-size:clamp(27px,4.2vw,44px);line-height:1.15;margin:0 0 16px;letter-spacing:-.4px}
h2{font-size:clamp(21px,3vw,29px);margin:36px 0 16px;letter-spacing:-.2px}
h3{font-size:18px;margin:24px 0 8px}
p{margin:0 0 14px}
ul,ol{padding-left:22px;margin:0 0 14px}
li{margin-bottom:6px}
.lead{font-size:clamp(16px,2vw,19px);color:var(--dim);max-width:34em}
.muted{color:var(--dim)}
section{padding:40px 0}

/* карточки */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:24px;
  display:flex;flex-direction:column;gap:12px}
.card h3{margin:0;font-size:20px}
.card p{margin:0;color:var(--dim);font-size:15.5px}
.card .foot{margin-top:auto;padding-top:6px}
.card.soon{opacity:.72}
.tag{display:inline-block;font-size:12.5px;color:var(--sage);border:1px solid var(--sage);
  border-radius:20px;padding:3px 11px;width:max-content}
.card.soon .tag{color:var(--dim);border-color:var(--line)}

/* документ */
.doc{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:34px;margin:26px 0 44px}
.doc h2{margin-top:28px;font-size:20px}
.doc h2:first-child{margin-top:0}
.doc dl{margin:0}
.doc dt{font-weight:600;margin-top:14px}
.doc dd{margin:2px 0 0;color:var(--dim)}
.upd{color:var(--dim);font-size:14px;margin:-6px 0 22px}
table{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:15.5px}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
th{color:var(--dim);font-weight:600;width:38%}

/* хлебные крошки */
.crumbs{font-size:14px;color:var(--dim);padding:18px 0 0}
.crumbs a{color:var(--dim);text-decoration:none}
.crumbs a:hover{color:var(--terra)}

/* подвал */
.site-foot{border-top:1px solid var(--line);padding:28px 0 44px;color:var(--dim);font-size:14.5px;margin-top:20px}
.foot-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.foot-nav{display:flex;gap:18px;flex-wrap:wrap}
.site-foot a{color:var(--dim)}

@media (max-width:760px){
  section{padding:30px 0}
  .doc{padding:22px}
  th{width:auto}
  table,tbody,tr,td,th{display:block}
  th{border:0;padding-bottom:2px}
  td{padding-top:0;padding-bottom:14px}
}
