@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700;800&display=swap');

:root{
  --ink:#16181a;
  --body:#3a3f44;
  --mute:#767d84;
  --line:#e3e0da;
  --bg:#f7f5f2;
  --card:#ffffff;
  --accent:#a8412c;
  --accent-soft:#f3e6e2;
  --dark:#191b1d;
  --radius:14px;
  --maxw:820px;
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0; background:var(--bg); color:var(--body);
  font-family:"Rubik",-apple-system,"Segoe UI",Arial,sans-serif;
  font-size:17px; line-height:1.65;
}
img{max-width:100%; display:block;}
a{color:var(--accent);}

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

/* шапка */
.hero{background:var(--dark); color:#eceae6; padding:54px 0 46px; }
.hero .kicker{font-size:14px; letter-spacing:.06em; color:#a49c93; font-weight:500; text-transform:uppercase;}
.hero h1{font-size:34px; line-height:1.15; font-weight:800; color:#fff; margin:14px 0 0;}
.hero .sub{font-size:19px; color:#cfc9c1; margin-top:14px; font-weight:500;}
.hero .by{margin-top:26px; font-size:15px; color:#8e8880; border-top:1px solid #2e3134; padding-top:16px;}
.lang{margin-top:18px;}
.lang a{display:inline-block; font-size:14px; color:#cfc9c1; border:1px solid #383c3f; border-radius:999px; padding:5px 14px; text-decoration:none;}
.lang a:hover{border-color:#5a5f63;}

/* секции */
section{padding:44px 0;}
section + section{border-top:1px solid var(--line);}
h2{font-size:25px; line-height:1.25; font-weight:800; color:var(--ink); margin:0 0 6px;}
h2 .num{color:var(--accent); font-weight:700; font-size:16px; display:block; margin-bottom:8px; letter-spacing:.04em;}
h3{font-size:19px; font-weight:700; color:var(--ink); margin:30px 0 6px;}
h4{font-size:16px; font-weight:700; color:var(--ink); margin:20px 0 4px;}
p{margin:10px 0;}
.lead{font-size:18.5px; color:var(--body);}
.mute{color:var(--mute); font-size:15.5px;}

ul{margin:10px 0; padding-inline-start:20px;}
li{margin-bottom:7px;}
ul.clean{list-style:none; padding-inline-start:0;}
ul.clean li{position:relative; padding-inline-start:18px;}
ul.clean li::before{content:""; position:absolute; inset-inline-start:0; top:11px; width:7px; height:7px; border-radius:50%; background:var(--accent);}

.card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:22px 24px; margin:18px 0;}
.card h3{margin-top:0;}

.note{background:var(--accent-soft); border-radius:var(--radius); padding:20px 22px; margin:22px 0; font-size:16px;}
.note strong{color:var(--ink);}

.pain{border-inline-start:3px solid var(--accent); background:#fff; border-radius:8px; padding:14px 18px; margin:14px 0;}
.pain b{color:var(--ink);}

.cases{display:grid; grid-template-columns:1fr; gap:20px; margin-top:22px;}
.case{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;}
.case .shots{display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line);}
.case .shots img{background:#fff;}
.case .body{padding:20px 22px;}
.case h3{margin:0 0 4px;}
.case .facts{font-size:14.5px; color:var(--mute); margin-top:12px;}
.case a.more{display:inline-block; margin-top:12px; font-size:15px; font-weight:600; text-decoration:none; border-bottom:1px solid var(--accent);}

.steps{counter-reset:s; margin-top:18px;}
.step{position:relative; padding-inline-start:44px; margin-bottom:22px;}
.step::before{
  counter-increment:s; content:counter(s);
  position:absolute; inset-inline-start:0; top:2px;
  width:30px; height:30px; border-radius:50%;
  background:var(--accent); color:#fff; font-weight:700; font-size:15px;
  display:flex; align-items:center; justify-content:center;
}
.step h4{margin-top:2px;}

.chips{display:flex; flex-wrap:wrap; gap:8px; margin-top:14px;}
.chip{background:#fff; border:1px solid var(--line); border-radius:999px; padding:6px 14px; font-size:15px; color:var(--ink);}

footer{background:var(--dark); color:#a49c93; padding:34px 0; font-size:15px;}
footer strong{color:#eceae6;}

@media (max-width:560px){
  body{font-size:16px;}
  .hero h1{font-size:27px;}
  h2{font-size:22px;}
  .case .shots{grid-template-columns:1fr;}
}

/* макет цифрового листа сборки */
.mock{
  max-width:350px; margin:24px auto 8px; background:#fff;
  border:1px solid var(--line); border-radius:20px; overflow:hidden;
  box-shadow:0 12px 30px rgba(22,24,26,.10);
}
.mock-top{background:var(--dark); color:#fff; padding:15px 17px;}
.mock-top .t{font-size:17px; font-weight:700;}
.mock-top .s{font-size:13.5px; color:#a49c93; margin-top:3px;}
.bar{height:6px; border-radius:99px; background:#33373a; margin-top:12px; overflow:hidden;}
.bar i{display:block; height:100%; width:52%; background:#5aa06a;}
.mock-top .p{font-size:12.5px; color:#cfc9c1; margin-top:7px;}
.mrow{display:flex; align-items:flex-start; gap:11px; padding:12px 15px; border-top:1px solid var(--line);}
.tick{
  flex:none; width:23px; height:23px; border-radius:6px; border:1.5px solid #c8c3ba;
  display:flex; align-items:center; justify-content:center; font-size:14px; color:#fff; margin-top:2px;
}
.mrow.done .tick{background:#5aa06a; border-color:#5aa06a;}
.mrow .nm{font-size:15.5px; font-weight:600; color:var(--ink); line-height:1.35;}
.mrow.done .nm{color:var(--mute); font-weight:500;}
.mrow .loc{font-size:12.5px; color:var(--mute); margin-top:2px;}
.mrow .qty{margin-inline-start:auto; font-size:15px; font-weight:700; color:var(--ink); white-space:nowrap; padding-top:2px;}
.mrow.gap{background:#fdf6f4;}
.mrow.gap .tick{border-color:var(--accent); border-style:dashed;}
.miss{display:inline-block; margin-top:6px; background:var(--accent); color:#fff;
  border-radius:7px; padding:3px 10px; font-size:12.5px; font-weight:600;}
.mock-foot{background:#faf8f5; padding:12px 15px; font-size:12.5px; color:var(--mute); border-top:1px solid var(--line);}
.mock-cap{text-align:center; font-size:13.5px; color:var(--mute); margin:0 0 6px;}
