/* vavada5900.com — концепт «клёпаный стальной мост». Префикс .rivt- */

:root{
  --rivt-steel:#12151a;
  --rivt-steel-2:#191d24;
  --rivt-steel-3:#222831;
  --rivt-minium:#c4502e;
  --rivt-minium-2:#e0663f;
  --rivt-zinc:#dfe4e8;
  --rivt-zinc-dim:#98a3ad;
  --rivt-line:#2c333d;
  --rivt-plate-w:1180px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.018) 0 1px, transparent 1px 7px),
    linear-gradient(180deg,#0f1216 0%, var(--rivt-steel) 55%, #101419 100%);
  color:var(--rivt-zinc);
  font-family:'Varela Round', 'Segoe UI', system-ui, sans-serif;
  font-size:17px;
  line-height:1.62;
}
h1,h2,h3,.rivt-girder__n,.rivt-steps__num,.rivt-prize__v{
  font-family:'Sanchez', Georgia, serif;
  font-weight:400;
  letter-spacing:.1px;
}
h1{font-size:2.35rem;line-height:1.2;margin:.2em 0 .5em}
h2{font-size:1.72rem;line-height:1.25;margin:0 0 .55em}
h3{font-size:1.1rem;line-height:1.35;margin:0 0 .5em;color:#f0f3f5}
p{margin:0 0 1em}
a{color:var(--rivt-minium-2);text-decoration:none}
a:hover{text-decoration:underline}

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

/* ---- заклёпочная лента: общий приём концепта ---- */
.rivt-rivets,
.rivt-sec::before{
  content:"";
  display:block;
  height:14px;
  background-image:radial-gradient(circle at 7px 7px, #4a545f 0 3px, #171c22 3px 4.6px, transparent 4.8px);
  background-size:34px 14px;
  opacity:.85;
}

/* ---- шапка ---- */
.rivt-top{
  position:sticky;top:0;z-index:20;
  background:linear-gradient(180deg,#161a20 0%, #12161b 100%);
  border-bottom:2px solid var(--rivt-minium);
  box-shadow:0 4px 18px rgba(0,0,0,.45);
}
.rivt-top__in{display:flex;align-items:center;gap:18px;min-height:64px;flex-wrap:wrap}
.rivt-logo{display:flex;align-items:center;gap:10px;color:var(--rivt-zinc);font-family:'Sanchez',Georgia,serif;font-size:1.22rem;letter-spacing:.6px}
.rivt-logo:hover{text-decoration:none}
.rivt-logo__plate{
  width:34px;height:22px;border-radius:3px;
  background:linear-gradient(180deg,var(--rivt-minium-2),var(--rivt-minium));
  box-shadow:inset 3px 0 0 rgba(255,255,255,.22), inset -3px 0 0 rgba(0,0,0,.28);
  position:relative;
}
.rivt-logo__plate::before,.rivt-logo__plate::after{
  content:"";position:absolute;top:50%;transform:translateY(-50%);
  width:5px;height:5px;border-radius:50%;background:var(--rivt-zinc);
}
.rivt-logo__plate::before{left:5px}
.rivt-logo__plate::after{right:5px}
.rivt-nav{display:flex;gap:4px;flex:1 1 auto;flex-wrap:wrap}
.rivt-nav a{
  color:var(--rivt-zinc-dim);font-size:.95rem;
  padding:12px 12px;min-height:44px;display:flex;align-items:center;
  border-bottom:2px solid transparent;
}
.rivt-nav a:hover{color:var(--rivt-zinc);border-bottom-color:var(--rivt-minium);text-decoration:none}

/* ---- кнопки ---- */
.rivt-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:13px 26px;
  background:linear-gradient(180deg,var(--rivt-minium-2),var(--rivt-minium));
  color:#fff;font-size:1rem;letter-spacing:.3px;
  border:1px solid #8f3a20;border-radius:3px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 3px 0 #7d3219;
  position:relative;
}
.rivt-btn::before,.rivt-btn::after{
  content:"";position:absolute;top:50%;transform:translateY(-50%);
  width:6px;height:6px;border-radius:50%;
  background:rgba(255,255,255,.6);box-shadow:0 1px 1px rgba(0,0,0,.4);
}
.rivt-btn::before{left:9px}
.rivt-btn::after{right:9px}
.rivt-btn:hover{text-decoration:none;filter:brightness(1.08)}
.rivt-btn:active{transform:translateY(2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 0 #7d3219}
.rivt-btn--sm{min-height:44px;padding:10px 18px;font-size:.92rem}
.rivt-btn--lg{min-height:56px;padding:16px 40px;font-size:1.08rem}
.rivt-btn--ghost{
  background:transparent;color:var(--rivt-zinc);
  border:1px solid var(--rivt-line);box-shadow:none;
}
.rivt-btn--ghost::before,.rivt-btn--ghost::after{background:#4a545f}
.rivt-btn--ghost:hover{border-color:var(--rivt-zinc-dim);filter:none}

/* ---- hero ---- */
.rivt-hero{
  padding:56px 0 60px;
  border-bottom:1px solid var(--rivt-line);
  background:
    radial-gradient(1100px 340px at 12% 0%, rgba(196,80,46,.16), transparent 65%),
    repeating-linear-gradient(135deg, rgba(223,228,232,.02) 0 2px, transparent 2px 16px);
}
.rivt-hero__in{display:grid;grid-template-columns:1.55fr 1fr;gap:38px;align-items:start}
.rivt-kicker{
  font-size:.8rem;letter-spacing:2px;text-transform:uppercase;
  color:var(--rivt-minium-2);margin:0 0 6px;
}
.rivt-lead{font-size:1.08rem;color:#c9d1d8;max-width:44em}
.rivt-hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}

.rivt-girder{
  border:1px solid var(--rivt-line);border-top:3px solid var(--rivt-minium);
  background:linear-gradient(180deg,#1b2027,#14181d);
  padding:6px 0;border-radius:2px;
  box-shadow:0 8px 24px rgba(0,0,0,.4);
}
.rivt-girder__row{
  display:flex;align-items:baseline;gap:12px;
  padding:12px 20px;border-bottom:1px dashed #262d36;
}
.rivt-girder__row:last-child{border-bottom:0}
.rivt-girder__n{font-size:1.42rem;color:var(--rivt-zinc);min-width:104px}
.rivt-girder__l{font-size:.92rem;color:var(--rivt-zinc-dim)}

/* ---- секции ---- */
.rivt-sec{padding:0 0 54px}
.rivt-sec::before{margin-bottom:44px}
.rivt-sub{color:var(--rivt-zinc-dim);max-width:62em}
.rivt-note{color:var(--rivt-zinc-dim);font-size:.94rem;margin-top:22px}

.rivt-grid{display:grid;gap:18px}
.rivt-grid--3{grid-template-columns:repeat(3,1fr)}
.rivt-grid--4{grid-template-columns:repeat(4,1fr)}

/* пластина с заклёпками по углам */
.rivt-plate,.rivt-card,.rivt-quote{
  position:relative;
  background:linear-gradient(180deg,#1a1f26,#151920);
  border:1px solid var(--rivt-line);
  border-radius:2px;
  padding:22px 22px 20px;
}
.rivt-plate::before,.rivt-plate::after,
.rivt-card::before,.rivt-card::after,
.rivt-quote::before,.rivt-quote::after{
  content:"";position:absolute;width:7px;height:7px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #6a7580, #333b45);
  box-shadow:0 1px 1px rgba(0,0,0,.6);
}
.rivt-plate::before,.rivt-card::before,.rivt-quote::before{left:8px;top:8px}
.rivt-plate::after,.rivt-card::after,.rivt-quote::after{right:8px;top:8px}
.rivt-plate p,.rivt-card p{margin-bottom:0;font-size:.97rem;color:#c3ccd3}
.rivt-card h3{font-size:1.02rem;color:var(--rivt-zinc)}
.rivt-card__prov{color:var(--rivt-minium-2);font-size:.86rem;letter-spacing:.4px;margin-bottom:8px !important}

/* ---- шаги ---- */
.rivt-steps__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rivt-steps__list li{
  border-left:4px solid var(--rivt-minium);
  background:linear-gradient(90deg,#1a1f26,#14181e);
  padding:20px 22px;
}
.rivt-steps__num{
  display:block;font-size:1.5rem;color:#4d5865;margin-bottom:6px;
}

/* ---- таблицы ---- */
.rivt-tablewrap{overflow-x:auto;margin:8px 0 20px;border:1px solid var(--rivt-line)}
.rivt-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.95rem}
.rivt-table th{
  background:linear-gradient(180deg,#242b34,#1b2028);
  color:var(--rivt-zinc);text-align:left;font-weight:400;
  font-family:'Sanchez',Georgia,serif;
  padding:13px 16px;border-bottom:2px solid var(--rivt-minium);white-space:nowrap;
}
.rivt-table td{padding:12px 16px;border-bottom:1px solid #232932;color:#c3ccd3}
.rivt-table tbody tr:nth-child(even) td{background:rgba(255,255,255,.018)}
.rivt-table tbody tr:last-child td{border-bottom:0}

/* ---- списки фактов ---- */
.rivt-facts{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.rivt-facts li{
  position:relative;padding-left:26px;color:#c3ccd3;font-size:.97rem;
}
.rivt-facts li::before{
  content:"";position:absolute;left:0;top:.62em;
  width:9px;height:9px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #d9673f, #9c3f22);
}

/* ---- турнир ---- */
.rivt-prize{
  border:1px solid var(--rivt-line);border-bottom:3px solid var(--rivt-minium);
  background:linear-gradient(180deg,#1a1f26,#141820);
  padding:18px 20px;display:flex;flex-direction:column;gap:6px;
}
.rivt-prize__p{font-size:.85rem;letter-spacing:1.4px;text-transform:uppercase;color:var(--rivt-zinc-dim)}
.rivt-prize__v{font-size:1.16rem;color:var(--rivt-zinc)}

/* ---- отзывы ---- */
.rivt-quote p{font-size:.97rem;color:#c3ccd3}
.rivt-quote__who{
  margin:14px 0 0 !important;color:var(--rivt-minium-2);
  font-size:.88rem;letter-spacing:.6px;
}

/* ---- финальный CTA ---- */
.rivt-final__in{
  border:1px solid var(--rivt-line);
  border-top:4px solid var(--rivt-minium);
  background:
    radial-gradient(700px 200px at 50% 0%, rgba(196,80,46,.18), transparent 70%),
    linear-gradient(180deg,#1a1f26,#13171d);
  padding:40px 30px;text-align:center;
}
.rivt-final__in p{max-width:46em;margin-left:auto;margin-right:auto;color:#c3ccd3}

/* ---- FAQ ---- */
.rivt-faq details{
  border:1px solid var(--rivt-line);
  background:#171b21;
  margin-bottom:10px;
}
.rivt-faq summary{
  cursor:pointer;list-style:none;
  padding:15px 46px 15px 18px;min-height:48px;
  position:relative;color:var(--rivt-zinc);
  font-family:'Sanchez',Georgia,serif;font-size:1rem;
}
.rivt-faq summary::-webkit-details-marker{display:none}
.rivt-faq summary::after{
  content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);
  color:var(--rivt-minium-2);font-size:1.3rem;line-height:1;
}
.rivt-faq details[open] summary::after{content:"–"}
.rivt-faq details[open] summary{border-bottom:1px solid var(--rivt-line)}
.rivt-faq details p{margin:0;padding:15px 18px 17px;color:#c3ccd3;font-size:.97rem}

/* ---- автор + 18+ ---- */
.rivt-author__note{color:var(--rivt-zinc-dim);font-size:.95rem;max-width:70em}
.rivt-age{
  border-left:4px solid var(--rivt-minium);
  padding:14px 18px;background:#171b21;color:var(--rivt-zinc-dim);font-size:.92rem;
}

/* ---- подвал ---- */
.rivt-foot{
  border-top:2px solid var(--rivt-minium);
  background:#0e1116;padding:30px 0 40px;
}
.rivt-foot__legal{color:var(--rivt-zinc-dim);font-size:.9rem;max-width:76em}
.rivt-foot__mini{color:#6d7883;font-size:.86rem;margin:0}

/* ---- адаптив ---- */
@media (max-width:1000px){
  .rivt-hero__in{grid-template-columns:1fr}
  .rivt-grid--4{grid-template-columns:repeat(2,1fr)}
  .rivt-grid--3{grid-template-columns:repeat(2,1fr)}
  .rivt-steps__list{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
  body{font-size:16px}
  h1{font-size:1.78rem}
  h2{font-size:1.4rem}
  .rivt-hero{padding:36px 0 40px}
  .rivt-grid--3,.rivt-grid--4,.rivt-steps__list{grid-template-columns:1fr}
  .rivt-nav{order:3;width:100%;gap:0}
  .rivt-nav a{padding:10px 10px}
  .rivt-btn,.rivt-btn--sm,.rivt-btn--lg{width:100%}
  .rivt-top__in{padding-top:8px;padding-bottom:8px}
  .rivt-final__in{padding:28px 18px}
  .rivt-girder__n{min-width:88px;font-size:1.28rem}
}
