/* 7k7594.buzz — концепт «Сад камней» · префикс .rafter- */

:root{
  --rafter-bg:#101110;
  --rafter-surf:#191a18;
  --rafter-surf2:#1f211d;
  --rafter-line:#262823;
  --rafter-acc:#d8d2c4;
  --rafter-acc2:#7a9463;
  --rafter-tx:#ecebe5;
  --rafter-mut:#96958d;
  --rafter-rad:4px 18px 4px 18px;
  --rafter-wrap:1180px;
}

*,*::before,*::after{box-sizing:border-box}

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

body{
  margin:0;
  background:var(--rafter-bg);
  color:var(--rafter-tx);
  font-family:'Ruda',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  font-size:16.5px;
  line-height:1.68;
  font-weight:400;
  background-image:
    repeating-linear-gradient(90deg,rgba(216,210,196,.026) 0 1px,transparent 1px 46px),
    radial-gradient(1100px 460px at 78% -8%,rgba(122,148,99,.10),transparent 62%);
  background-attachment:fixed;
}

/* Заголовочный шрифт — явным правилом, иначе цепочка body ломает раскладку */
h1,h2,h3,h4,
.rafter-logo__t,.rafter-kpi__v,.rafter-num,.rafter-cta,.rafter-tier__n,
.rafter-slot__t,.rafter-tbl th,.rafter-step__n,.rafter-ovrline,.rafter-faq summary{
  font-family:'Commissioner',-apple-system,'Segoe UI',Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.012em;
}

h1{font-size:clamp(27px,4.1vw,43px);line-height:1.14;margin:0 0 16px}
h2{font-size:clamp(22px,2.7vw,31px);line-height:1.2;margin:0 0 14px}
h3{font-size:clamp(17px,1.6vw,20px);line-height:1.3;margin:0 0 8px;font-weight:700}
h4{font-size:16px;line-height:1.35;margin:0 0 6px;font-weight:700}

p{margin:0 0 14px}
a{color:var(--rafter-acc2);text-decoration:none}
a:hover{color:var(--rafter-acc)}
ul{margin:0 0 14px;padding-left:20px}
li{margin:0 0 7px}

.rafter-skip{position:absolute;left:-9999px;top:0}
.rafter-skip:focus{left:12px;top:12px;background:var(--rafter-acc);color:#14150f;padding:9px 15px;z-index:99;border-radius:3px}

.rafter-wrap{max-width:var(--rafter-wrap);margin:0 auto;padding:0 22px}

/* ---------- шапка ---------- */
.rafter-bar{
  position:sticky;top:0;z-index:40;
  display:flex;align-items:center;gap:20px;
  padding:11px 22px;
  background:rgba(16,17,16,.93);
  border-bottom:1px solid var(--rafter-line);
  backdrop-filter:blur(9px);
}
.rafter-logo{display:flex;align-items:center;gap:11px;color:var(--rafter-tx)}
.rafter-logo__svg{width:38px;height:38px;flex:none}
.rafter-logo__t{font-size:17px;line-height:1.08;display:flex;flex-direction:column}
.rafter-logo__sub{font-family:'Ruda',sans-serif;font-weight:400;font-size:11px;color:var(--rafter-mut);letter-spacing:.03em}
.rafter-nav{display:flex;gap:17px;margin-left:auto;flex-wrap:wrap}
.rafter-nav a{color:var(--rafter-mut);font-size:13.5px;padding-bottom:2px;border-bottom:1px solid transparent}
.rafter-nav a:hover{color:var(--rafter-acc);border-bottom-color:var(--rafter-acc2)}

.rafter-cta{
  display:inline-block;
  padding:13px 26px;
  background:var(--rafter-acc);
  color:#15160f;
  border-radius:var(--rafter-rad);
  font-size:14.5px;
  font-weight:800;
  border:1px solid var(--rafter-acc);
  transition:transform .14s ease,background .14s ease;
}
.rafter-cta:hover{background:#efe9db;color:#15160f;transform:translateY(-2px)}
.rafter-cta--gh{background:transparent;color:var(--rafter-acc2);border-color:var(--rafter-acc2)}
.rafter-cta--gh:hover{background:rgba(122,148,99,.13);color:var(--rafter-acc2)}
.rafter-cta--sm{padding:9px 17px;font-size:13px}
.rafter-cta--mini{padding:8px 14px;font-size:12.5px;border-radius:3px 12px 3px 12px}
.rafter-cta--wide{padding:15px 40px;font-size:16px}

/* ---------- hero ---------- */
.rafter-hero{padding:52px 0 30px;position:relative;overflow:hidden}
.rafter-hero__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center}
.rafter-ovrline{
  display:inline-block;font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;
  color:var(--rafter-acc2);margin:0 0 14px;font-weight:700;
  padding:5px 12px;border:1px solid rgba(122,148,99,.35);border-radius:2px 11px 2px 11px;
}
.rafter-lead{font-size:17.5px;color:#dcdad2;margin-bottom:22px;max-width:600px}
.rafter-btnrow{display:flex;gap:13px;flex-wrap:wrap;margin-bottom:8px}
.rafter-hero__art{width:100%;height:auto;display:block}

/* горизонтальная KPI-лента */
.rafter-kpiband{
  margin:34px 0 8px;
  border-top:1px solid var(--rafter-line);
  border-bottom:1px solid var(--rafter-line);
  background:linear-gradient(180deg,rgba(25,26,24,.9),rgba(16,17,16,.55));
  overflow-x:auto;
}
.rafter-kpiband__in{display:flex;min-width:640px}
.rafter-kpi{flex:1 1 0;padding:17px 20px;border-left:1px solid var(--rafter-line)}
.rafter-kpi:first-child{border-left:0}
.rafter-kpi__v{display:block;font-size:23px;color:var(--rafter-acc);line-height:1.1}
.rafter-kpi__k{display:block;font-size:12px;color:var(--rafter-mut);margin-top:5px;letter-spacing:.02em}

/* ---------- секции ---------- */
.rafter-sec{padding:46px 0;border-top:1px solid var(--rafter-line)}
.rafter-sec__head{max-width:800px;margin-bottom:26px}
.rafter-sub{color:var(--rafter-mut);font-size:15.5px;margin:0}
.rafter-rake{
  height:9px;margin:0 0 22px;
  background:repeating-linear-gradient(180deg,rgba(122,148,99,.30) 0 1px,transparent 1px 4px);
}

.rafter-cols2{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.rafter-cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rafter-cols4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

.rafter-card{
  background:var(--rafter-surf);
  border:1px solid var(--rafter-line);
  border-left:2px solid var(--rafter-acc2);
  border-radius:var(--rafter-rad);
  padding:20px 21px;
}
.rafter-card--plain{border-left:1px solid var(--rafter-line)}
.rafter-num{color:var(--rafter-acc);font-size:20px}

/* пакет */
.rafter-step{position:relative;background:var(--rafter-surf);border:1px solid var(--rafter-line);border-radius:var(--rafter-rad);padding:19px 20px}
.rafter-step__n{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--rafter-acc2);display:block;margin-bottom:7px}
.rafter-step__v{font-size:25px;color:var(--rafter-acc);display:block;line-height:1.15;font-family:'Commissioner',sans-serif;font-weight:800}
.rafter-step__d{font-size:13.5px;color:var(--rafter-mut);margin:7px 0 0}

/* каталог */
.rafter-slot{
  background:var(--rafter-surf);
  border:1px solid var(--rafter-line);
  border-radius:var(--rafter-rad);
  padding:16px 17px;
  display:flex;flex-direction:column;gap:9px;
}
.rafter-slot__t{font-size:15.5px;line-height:1.22;color:var(--rafter-tx)}
.rafter-slot__p{font-size:12.5px;color:var(--rafter-acc2);letter-spacing:.03em;margin:0}
.rafter-slot__m{font-size:13px;color:var(--rafter-mut);margin:0;flex:1}
.rafter-slot__m span{color:#cfcdc4}
.rafter-slot .rafter-cta--mini{align-self:flex-start;margin-top:2px}

/* live */
.rafter-live{background:var(--rafter-surf2);border:1px solid var(--rafter-line);border-radius:var(--rafter-rad);padding:17px 18px}
.rafter-live__t{font-size:15.5px;margin:0 0 5px;font-family:'Commissioner',sans-serif;font-weight:700;color:var(--rafter-tx)}
.rafter-live__d{font-size:13.2px;color:var(--rafter-mut);margin:0}

/* ступени */
.rafter-tier{
  display:grid;grid-template-columns:150px 1fr;gap:18px;
  padding:15px 18px;border:1px solid var(--rafter-line);border-radius:var(--rafter-rad);
  background:var(--rafter-surf);margin-bottom:11px;align-items:center;
}
.rafter-tier__n{font-size:17px;color:var(--rafter-acc)}
.rafter-tier__n span{display:block;font-family:'Ruda',sans-serif;font-weight:400;font-size:12px;color:var(--rafter-mut);letter-spacing:.02em}
.rafter-tier__d{font-size:14px;color:#d2d0c7;margin:0}

/* таблицы */
.rafter-scroll{overflow-x:auto;border:1px solid var(--rafter-line);border-radius:var(--rafter-rad)}
.rafter-tbl{width:100%;border-collapse:collapse;min-width:600px;font-size:14px}
.rafter-tbl th,.rafter-tbl td{padding:11px 15px;text-align:left;border-bottom:1px solid var(--rafter-line)}
.rafter-tbl th{background:var(--rafter-surf2);color:var(--rafter-acc);font-size:12.5px;letter-spacing:.05em;text-transform:uppercase}
.rafter-tbl tr:last-child td{border-bottom:0}
.rafter-tbl td:first-child{color:#dedcd3}

/* отзывы */
.rafter-rev{background:var(--rafter-surf);border:1px solid var(--rafter-line);border-radius:var(--rafter-rad);padding:19px 20px}
.rafter-rev__h{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:9px}
.rafter-rev__n{font-family:'Commissioner',sans-serif;font-weight:700;font-size:15px;color:var(--rafter-tx)}
.rafter-rev__c{font-size:12.5px;color:var(--rafter-mut);display:block;font-family:'Ruda',sans-serif;font-weight:400}
.rafter-rev__s{color:var(--rafter-acc2);font-size:13px;letter-spacing:.13em;white-space:nowrap}
.rafter-rev__t{font-size:14.3px;margin:0;color:#d6d4cb}

/* FAQ */
.rafter-faq{border:1px solid var(--rafter-line);border-radius:var(--rafter-rad);background:var(--rafter-surf);margin-bottom:10px;overflow:hidden}
.rafter-faq summary{cursor:pointer;padding:15px 18px;font-size:15px;color:var(--rafter-tx);list-style:none;font-weight:700}
.rafter-faq summary::-webkit-details-marker{display:none}
.rafter-faq summary::after{content:'+';float:right;color:var(--rafter-acc2);font-size:19px;line-height:1}
.rafter-faq[open] summary::after{content:'−'}
.rafter-faq[open] summary{color:var(--rafter-acc);border-bottom:1px solid var(--rafter-line)}
.rafter-faq__a{padding:14px 18px 17px;font-size:14.4px;color:#d3d1c8}
.rafter-faq__a p:last-child{margin-bottom:0}

/* пре-футер */
.rafter-final{
  border:1px solid var(--rafter-line);
  border-left:3px solid var(--rafter-acc);
  border-radius:var(--rafter-rad);
  background:linear-gradient(120deg,rgba(122,148,99,.11),rgba(25,26,24,.85));
  padding:32px 34px;margin:46px 0 0;
}
.rafter-final h3{font-size:23px;margin-bottom:10px}

/* author note */
.rafter-note{border-top:1px solid var(--rafter-line);margin-top:46px;padding:34px 0 8px}
.rafter-note p{font-size:14.2px;color:var(--rafter-mut);max-width:900px}

/* футер */
.rafter-foot{border-top:1px solid var(--rafter-line);padding:30px 0 46px;font-size:13.2px;color:var(--rafter-mut)}
.rafter-foot__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:26px}
.rafter-foot p{margin:0 0 10px}
.rafter-age{
  display:inline-block;border:1px solid var(--rafter-acc2);color:var(--rafter-acc2);
  padding:2px 9px;border-radius:2px 9px 2px 9px;font-weight:700;font-size:12px;
}
.rafter-fp{font-size:11.8px;word-break:break-all;color:#7d7c75}

/* ---------- адаптив ---------- */
@media (max-width:1080px){
  .rafter-cols4{grid-template-columns:repeat(3,1fr)}
  .rafter-hero__grid{gap:30px}
  .rafter-nav{gap:13px}
}
@media (max-width:860px){
  .rafter-hero__grid{grid-template-columns:1fr}
  .rafter-hero__art{max-width:460px;margin:0 auto}
  .rafter-cols3{grid-template-columns:1fr 1fr}
  .rafter-cols4{grid-template-columns:1fr 1fr}
  .rafter-foot__grid{grid-template-columns:1fr}
  .rafter-bar{flex-wrap:wrap;gap:12px}
  .rafter-nav{order:3;width:100%;margin-left:0}
  .rafter-tier{grid-template-columns:1fr;gap:8px}
  .rafter-final{padding:26px 22px}
}
@media (max-width:620px){
  body{font-size:16px}
  .rafter-cols2,.rafter-cols3,.rafter-cols4{grid-template-columns:1fr}
  .rafter-hero{padding:34px 0 22px}
  .rafter-sec{padding:34px 0}
  .rafter-wrap{padding:0 15px}
  .rafter-bar{padding:10px 15px}
  .rafter-rev__h{flex-direction:column;gap:3px}
  .rafter-cta{width:100%;text-align:center}
  .rafter-cta--sm,.rafter-cta--mini{width:auto}
}
