/* rune-stone — резной гранит: вертикальные борозды, сколотые края, зернистая поверхность */

:root{
  --rns-bg:#121312;
  --rns-surface:#1d1f1e;
  --rns-accent:#a8b5a0;
  --rns-accent2:#c2703f;
  --rns-text:#e8eae7;
  --rns-mute:#8d938b;
  --rns-edge:#2b2e2c;
  --rns-groove:rgba(168,181,160,.09);
  --rns-carve:14px;
}

*{box-sizing:border-box;margin:0;padding:0}

html{-webkit-text-size-adjust:100%}

body{
  background:var(--rns-bg);
  color:var(--rns-text);
  font-family:"Alumni Sans Collegiate One","Arial Narrow",Arial,sans-serif;
  font-size:20px;
  line-height:1.62;
  letter-spacing:.012em;
  overflow-x:hidden;
  background-image:
    repeating-linear-gradient(90deg,var(--rns-groove) 0 1px,transparent 1px 84px),
    radial-gradient(circle at 12% 8%,rgba(194,112,63,.07),transparent 46%),
    radial-gradient(circle at 88% 72%,rgba(168,181,160,.06),transparent 52%);
}

.rns-shell{max-width:1120px;margin:0 auto;padding:0 22px}

/* ---------- резные заголовки ---------- */

.rns-h1{
  font-family:"Rubik Puddles","Georgia",serif;
  font-size:clamp(30px,5.4vw,56px);
  line-height:1.12;
  font-weight:400;
  letter-spacing:.01em;
  color:var(--rns-text);
  text-shadow:0 2px 0 #0a0b0a,0 -1px 0 rgba(232,234,231,.14);
}

.rns-h2{
  font-family:"Rubik Puddles","Georgia",serif;
  font-size:clamp(23px,3.2vw,34px);
  line-height:1.2;
  font-weight:400;
  margin:0 0 14px;
  padding-left:20px;
  position:relative;
  text-shadow:0 2px 0 #0a0b0a;
}
.rns-h2::before{
  content:"";
  position:absolute;left:0;top:.18em;bottom:.18em;width:6px;
  background:linear-gradient(180deg,var(--rns-accent2),var(--rns-accent));
  clip-path:polygon(0 0,100% 6%,100% 94%,0 100%);
}

.rns-h3{
  font-family:"Rubik Puddles","Georgia",serif;
  font-size:clamp(19px,2.3vw,24px);
  font-weight:400;
  line-height:1.26;
  color:var(--rns-accent);
  margin:26px 0 9px;
}

p{margin:0 0 15px}
a{color:var(--rns-accent2);text-decoration:none;border-bottom:1px solid rgba(194,112,63,.4)}
a:hover{color:var(--rns-accent);border-bottom-color:rgba(168,181,160,.55)}

.rns-em{color:var(--rns-accent2);font-weight:400;letter-spacing:.02em}
.rns-num{color:var(--rns-accent);letter-spacing:.03em}

/* ---------- каменная плита ---------- */

.rns-slab{
  background:var(--rns-surface);
  border:1px solid var(--rns-edge);
  border-left:3px solid rgba(168,181,160,.32);
  padding:26px 24px;
  margin:0 0 26px;
  background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.24) 0 2px,transparent 2px 26px);
  clip-path:polygon(0 0,calc(100% - var(--rns-carve)) 0,100% var(--rns-carve),100% 100%,var(--rns-carve) 100%,0 calc(100% - var(--rns-carve)));
}

/* ---------- шапка ---------- */

.rns-top{
  border-bottom:1px solid var(--rns-edge);
  padding:16px 0;
  background:rgba(29,31,30,.78);
}
.rns-top-in{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.rns-mark{
  font-family:"Rubik Puddles","Georgia",serif;
  font-size:26px;
  letter-spacing:.06em;
  color:var(--rns-text);
}
.rns-mark span{color:var(--rns-accent2)}
.rns-top-note{color:var(--rns-mute);font-size:17px;letter-spacing:.06em;text-transform:uppercase}

/* ---------- герой ---------- */

.rns-hero{padding:46px 0 10px;position:relative}
.rns-hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(90deg,transparent 0 58px,rgba(194,112,63,.05) 58px 60px);
}
.rns-lead{font-size:22px;color:#cfd4cc;max-width:64ch}

.rns-stele{
  display:grid;grid-template-columns:44px 1fr;gap:18px;align-items:start;margin-bottom:22px;
}
.rns-stele-rail{
  height:100%;min-height:120px;
  background:linear-gradient(180deg,var(--rns-accent2) 0 18%,var(--rns-edge) 18% 34%,var(--rns-accent) 34% 52%,var(--rns-edge) 52% 70%,var(--rns-accent2) 70% 82%,var(--rns-edge) 82% 100%);
  clip-path:polygon(28% 0,100% 5%,100% 95%,28% 100%,0 72%,0 26%);
  opacity:.85;
}

/* ---------- KPI ---------- */

.rns-kpi{
  display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:28px 0 30px;
}
.rns-kpi-cell{
  background:var(--rns-surface);
  border-top:2px solid var(--rns-accent2);
  padding:16px 14px 18px;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);
  background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.2) 0 1px,transparent 1px 18px);
}
.rns-kpi-k{display:block;font-size:16px;letter-spacing:.11em;text-transform:uppercase;color:var(--rns-mute);margin-bottom:7px}
.rns-kpi-v{display:block;font-family:"Rubik Puddles","Georgia",serif;font-size:25px;line-height:1.16;color:var(--rns-text)}

/* ---------- CTA ---------- */

.rns-cta{
  display:inline-block;
  background:linear-gradient(180deg,var(--rns-accent2),#9c5530);
  color:#14100d;
  border:0;border-bottom:0;
  padding:15px 34px;
  font-family:"Rubik Puddles","Georgia",serif;
  font-size:21px;letter-spacing:.05em;
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
}
.rns-cta:hover{background:linear-gradient(180deg,var(--rns-accent),#7f8c78);color:#101210}
.rns-cta-wrap{margin:8px 0 34px}
.rns-cta-sub{display:block;color:var(--rns-mute);font-size:17px;margin-top:9px;letter-spacing:.04em}

/* ---------- секции ---------- */

.rns-sec{padding:26px 0 8px;border-top:1px solid var(--rns-edge)}
.rns-sec:first-of-type{border-top:0}
.rns-body{max-width:76ch}

.rns-cols{display:grid;grid-template-columns:1fr 1fr;gap:22px}

/* ---------- списки-борозды ---------- */

.rns-groovelist{list-style:none;margin:0 0 18px}
.rns-groovelist li{
  position:relative;padding:8px 0 8px 26px;border-bottom:1px dashed rgba(168,181,160,.16);
}
.rns-groovelist li::before{
  content:"";position:absolute;left:4px;top:1.05em;width:11px;height:3px;
  background:var(--rns-accent2);transform:skewX(-28deg);
}

/* ---------- таблицы ---------- */

.rns-tw{overflow-x:auto;margin:0 0 24px;border:1px solid var(--rns-edge);background:rgba(29,31,30,.6)}
table{border-collapse:collapse;width:100%;min-width:560px;font-size:19px}
caption{
  caption-side:top;text-align:left;padding:13px 14px;
  color:var(--rns-accent);letter-spacing:.06em;text-transform:uppercase;font-size:16px;
  border-bottom:1px solid var(--rns-edge);
}
th,td{padding:11px 13px;text-align:left;border-bottom:1px solid rgba(43,46,44,.9)}
th{
  color:var(--rns-mute);font-weight:400;letter-spacing:.07em;text-transform:uppercase;font-size:15px;
  background:rgba(18,19,18,.7);
}
tbody tr:nth-child(odd) td{background:rgba(255,255,255,.015)}
tfoot td{color:var(--rns-accent);border-top:2px solid var(--rns-accent2);border-bottom:0}

/* ---------- ступени клуба ---------- */

.rns-tiers{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:18px 0 24px}
.rns-tier{
  background:var(--rns-surface);padding:15px 13px;border-left:3px solid var(--rns-accent);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
}
.rns-tier-n{display:block;color:var(--rns-mute);font-size:15px;letter-spacing:.12em;margin-bottom:5px}
.rns-tier-t{display:block;font-family:"Rubik Puddles","Georgia",serif;font-size:21px;margin-bottom:5px}
.rns-tier-v{display:block;color:var(--rns-accent2);font-size:18px}

/* ---------- отзыв ---------- */

.rns-voice{
  border-left:4px solid var(--rns-accent2);
  background:linear-gradient(90deg,rgba(194,112,63,.08),transparent 62%);
  padding:20px 22px;margin:24px 0;
}
.rns-voice-who{display:block;margin-top:10px;color:var(--rns-mute);font-size:17px;letter-spacing:.05em}

/* ---------- FAQ ---------- */

details{
  background:var(--rns-surface);border:1px solid var(--rns-edge);
  margin:0 0 9px;padding:13px 16px;
  clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);
}
summary{cursor:pointer;font-family:"Rubik Puddles","Georgia",serif;font-size:20px;color:var(--rns-text);list-style:none}
summary::-webkit-details-marker{display:none}
summary::before{content:"\25B8 ";color:var(--rns-accent2)}
details[open] summary::before{content:"\25BE ";color:var(--rns-accent)}
details p{margin:11px 0 3px;color:#cfd4cc}

/* ---------- источники ---------- */

.rns-src{
  border:1px dashed rgba(168,181,160,.28);padding:20px 22px;margin:26px 0;
  background:rgba(29,31,30,.5);
}
.rns-src ul{list-style:none}
.rns-src li{padding:5px 0 5px 20px;position:relative;font-size:18px;color:#c6cbc3}
.rns-src li::before{content:"";position:absolute;left:0;top:.92em;width:9px;height:2px;background:var(--rns-accent)}

/* ---------- подвал ---------- */

.rns-foot{
  border-top:2px solid var(--rns-edge);margin-top:34px;padding:26px 0 44px;
  background:rgba(29,31,30,.55);color:var(--rns-mute);font-size:18px;
}
.rns-foot p{margin:0 0 9px;max-width:88ch}
.rns-foot-18{color:var(--rns-accent);letter-spacing:.03em}
.rns-foot-lic{color:#c6cbc3}

/* ---------- мобильная ---------- */

@media (max-width:640px){
  body{font-size:19px}
  .rns-shell{padding:0 16px}
  .rns-kpi{grid-template-columns:1fr 1fr;gap:9px}
  .rns-kpi-cell:last-child{grid-column:1 / -1}
  .rns-tiers{grid-template-columns:1fr 1fr}
  .rns-tier:last-child{grid-column:1 / -1}
  .rns-cols{grid-template-columns:1fr;gap:0}
  .rns-stele{grid-template-columns:22px 1fr;gap:12px}
  .rns-slab{padding:20px 16px;--rns-carve:10px}
  .rns-cta{padding:14px 22px;font-size:19px;display:block;text-align:center}
  table{font-size:17px;min-width:470px}
  th,td{padding:9px 10px}
  .rns-hero{padding:30px 0 6px}
}
