/* scrimshaw / scw — bone plate + ink hatching */

:root {
  --scw-bone: #e9e2d4;
  --scw-bone-hi: #f5f0e5;
  --scw-bone-lo: #d8cfbc;
  --scw-ink: #242021;
  --scw-ink-soft: #4a4244;
  --scw-wave: #3f6f7a;
  --scw-wave-lo: #2d5159;
  --scw-wave-hi: #7ba7b0;
  --scw-hatch: rgba(36, 32, 33, .14);
}

* { box-sizing: border-box; }

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

body {
  margin: 0;
  padding: 0;
  background: var(--scw-bone);
  background-image:
    repeating-linear-gradient(64deg, var(--scw-hatch) 0 1px, transparent 1px 9px),
    repeating-linear-gradient(-26deg, rgba(63, 111, 122, .07) 0 1px, transparent 1px 14px);
  color: var(--scw-ink);
  font-family: "Bellota", "Trebuchet MS", sans-serif;
  font-size: 17px;
  line-height: 1.68;
  font-weight: 400;
}

.scw-shell {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 26px 54px;
}

a { color: var(--scw-wave-lo); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--scw-ink); }

p { margin: 0 0 15px; }

/* ——— гравированная пластина ——— */

.scw-plate {
  position: relative;
  background: linear-gradient(176deg, var(--scw-bone-hi), var(--scw-bone-lo));
  border: 2px solid var(--scw-ink);
  border-radius: 34px 10px 34px 10px;
  margin: 0 0 30px;
  padding: 30px 30px 26px;
  box-shadow: 0 1px 0 rgba(255, 255, 255, .7) inset, 3px 4px 0 rgba(36, 32, 33, .2);
}

.scw-plate::before {
  content: "";
  position: absolute;
  inset: 7px;
  border: 1px dashed rgba(36, 32, 33, .45);
  border-radius: 27px 5px 27px 5px;
  pointer-events: none;
}

.scw-plate > * { position: relative; }

/* ——— hero ——— */

.scw-hero {
  border-radius: 10px 44px 10px 44px;
  padding: 34px 32px 30px;
  background:
    radial-gradient(120% 90% at 82% 12%, rgba(63, 111, 122, .2), transparent 62%),
    linear-gradient(172deg, var(--scw-bone-hi), var(--scw-bone-lo));
  margin-top: 26px;
}

.scw-hero::before { border-radius: 4px 36px 4px 36px; }

.scw-crest {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.scw-crest svg { flex: 0 0 auto; }

.scw-sign {
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: .82rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--scw-wave-lo);
}

h1 {
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: 2.28rem;
  line-height: 1.16;
  letter-spacing: .012em;
  margin: 0 0 16px;
  font-weight: 700;
  text-shadow: 1px 1px 0 rgba(255, 255, 255, .6);
}

.scw-lede {
  font-size: 1.07rem;
  max-width: 44em;
  color: var(--scw-ink-soft);
}

h2 {
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: 1.62rem;
  line-height: 1.24;
  margin: 0 0 6px;
  font-weight: 700;
}

.scw-rule {
  width: 92px;
  height: 7px;
  margin: 0 0 18px;
  background-image:
    repeating-linear-gradient(90deg, var(--scw-wave) 0 2px, transparent 2px 6px);
  border-bottom: 1px solid var(--scw-ink);
}

h3 {
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: 1.18rem;
  margin: 24px 0 7px;
  font-weight: 700;
  color: var(--scw-wave-lo);
}

/* ——— KPI: гравированные медальоны ——— */

.scw-kpi {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 13px;
  margin: 26px 0 24px;
}

.scw-medal {
  text-align: center;
  padding: 16px 8px 14px;
  border: 1px solid var(--scw-ink);
  border-radius: 50% 50% 50% 50% / 24% 24% 24% 24%;
  background:
    repeating-linear-gradient(48deg, rgba(36, 32, 33, .08) 0 1px, transparent 1px 7px),
    var(--scw-bone-hi);
  box-shadow: 0 0 0 3px var(--scw-bone-lo), 0 0 0 4px var(--scw-ink);
}

.scw-medal dt {
  font-size: .7rem;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--scw-ink-soft);
  margin-bottom: 5px;
}

.scw-medal dd {
  margin: 0;
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: 1.24rem;
  line-height: 1.15;
  color: var(--scw-wave-lo);
}

/* ——— CTA ——— */

.scw-cta {
  display: inline-block;
  margin: 12px 0 4px;
  padding: 13px 30px;
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: 1.08rem;
  letter-spacing: .07em;
  color: var(--scw-bone-hi);
  background: var(--scw-wave-lo);
  border: 2px solid var(--scw-ink);
  border-radius: 22px 6px 22px 6px;
  text-decoration: none;
  box-shadow: 3px 3px 0 var(--scw-ink);
}

.scw-cta:hover { color: #fff; background: var(--scw-ink); box-shadow: 1px 1px 0 var(--scw-wave-lo); }

.scw-cta-note {
  display: block;
  margin-top: 9px;
  font-size: .86rem;
  color: var(--scw-ink-soft);
}

/* ——— текстовые акценты (вместо b/strong) ——— */

.scw-num {
  font-family: "Bona Nova SC", Georgia, serif;
  font-weight: 700;
  color: var(--scw-wave-lo);
  white-space: nowrap;
}

.scw-etch {
  font-weight: 700;
  border-bottom: 1px dotted var(--scw-wave);
}

/* ——— списки ——— */

.scw-list { margin: 8px 0 16px; padding: 0; list-style: none; }

.scw-list li {
  position: relative;
  padding: 0 0 7px 25px;
  margin-bottom: 4px;
  border-bottom: 1px dotted rgba(36, 32, 33, .3);
}

.scw-list li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: .72em;
  width: 9px;
  height: 9px;
  border: 1px solid var(--scw-ink);
  background: var(--scw-wave-hi);
  transform: rotate(45deg);
}

/* ——— сетка карточек ——— */

.scw-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(232px, 1fr));
  gap: 15px;
  margin: 18px 0 8px;
}

.scw-card {
  padding: 15px 17px 13px;
  border: 1px solid var(--scw-ink);
  border-left: 5px solid var(--scw-wave);
  border-radius: 0 18px 0 18px;
  background: rgba(255, 255, 255, .34);
}

.scw-card h3 { margin-top: 0; }

.scw-tier {
  display: block;
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: 1.18rem;
  font-weight: 700;
  color: var(--scw-wave-lo);
  margin: 0 0 5px;
}

.scw-card p:last-child { margin-bottom: 0; }

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

.scw-wrap {
  overflow-x: auto;
  margin: 16px 0 14px;
  border: 1px solid var(--scw-ink);
  border-radius: 16px 4px 16px 4px;
  background: rgba(255, 255, 255, .3);
}

table {
  width: 100%;
  border-collapse: collapse;
  font-size: .94rem;
  min-width: 480px;
}

caption {
  caption-side: top;
  text-align: left;
  padding: 11px 15px 9px;
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: .95rem;
  letter-spacing: .05em;
  color: var(--scw-ink-soft);
  border-bottom: 1px dashed rgba(36, 32, 33, .4);
}

th, td {
  padding: 9px 14px;
  text-align: left;
  border-bottom: 1px solid rgba(36, 32, 33, .22);
}

thead th {
  font-family: "Bona Nova SC", Georgia, serif;
  font-weight: 700;
  font-size: .86rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--scw-bone-hi);
  background: var(--scw-ink);
  border-bottom: 2px solid var(--scw-wave);
}

tbody tr:nth-child(even) { background: rgba(63, 111, 122, .08); }

tbody tr:last-child td { border-bottom: 0; }

td:first-child { font-family: "Bona Nova SC", Georgia, serif; }

.scw-hi { color: var(--scw-wave-lo); font-weight: 700; }

/* ——— сетка колышков (SVG-обёртка) ——— */

.scw-peg {
  display: block;
  margin: 10px auto 6px;
  max-width: 100%;
  height: auto;
}

.scw-cap {
  display: block;
  text-align: center;
  font-size: .85rem;
  color: var(--scw-ink-soft);
  margin-bottom: 10px;
}

/* ——— отзыв ——— */

.scw-quote {
  margin: 20px 0 6px;
  padding: 17px 20px 14px 24px;
  border: 1px solid var(--scw-ink);
  border-radius: 24px 24px 6px 24px;
  background: rgba(63, 111, 122, .1);
}

.scw-quote p { margin: 0 0 9px; font-style: italic; }

.scw-quote footer {
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: .9rem;
  letter-spacing: .06em;
  color: var(--scw-wave-lo);
}

/* ——— FAQ ——— */

.scw-faq details {
  border: 1px solid var(--scw-ink);
  border-radius: 14px 3px 14px 3px;
  margin-bottom: 9px;
  background: rgba(255, 255, 255, .32);
  padding: 0 16px;
}

.scw-faq summary {
  cursor: pointer;
  padding: 12px 0;
  font-family: "Bona Nova SC", Georgia, serif;
  font-size: 1.03rem;
  color: var(--scw-ink);
  list-style: none;
}

.scw-faq summary::-webkit-details-marker { display: none; }

.scw-faq summary::before {
  content: "\2732";
  color: var(--scw-wave);
  margin-right: 10px;
  font-size: .8em;
}

.scw-faq details[open] summary { color: var(--scw-wave-lo); border-bottom: 1px dotted rgba(36, 32, 33, .35); }

.scw-faq details p { margin: 11px 0 14px; font-size: .96rem; }

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

.scw-src {
  font-size: .9rem;
  color: var(--scw-ink-soft);
}

.scw-src .scw-list li { border-bottom-style: solid; border-bottom-color: rgba(63, 111, 122, .22); }

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

.scw-foot {
  margin-top: 8px;
  padding: 24px 26px 26px;
  border-top: 2px solid var(--scw-ink);
  font-size: .89rem;
  color: var(--scw-ink-soft);
  background:
    repeating-linear-gradient(72deg, rgba(36, 32, 33, .07) 0 1px, transparent 1px 8px);
}

.scw-foot p { margin: 0 0 8px; }

.scw-age {
  font-family: "Bona Nova SC", Georgia, serif;
  letter-spacing: .05em;
  color: var(--scw-ink);
  border-top: 1px dashed rgba(36, 32, 33, .4);
  padding-top: 10px;
  margin-top: 12px;
}

/* ——— мобильный ——— */

@media (max-width: 640px) {
  body { font-size: 16px; }
  .scw-shell { padding: 0 14px 34px; }
  .scw-plate { padding: 22px 17px 20px; border-radius: 22px 6px 22px 6px; }
  .scw-plate::before { inset: 5px; border-radius: 17px 3px 17px 3px; }
  .scw-hero { padding: 24px 17px 22px; border-radius: 6px 26px 6px 26px; }
  h1 { font-size: 1.62rem; }
  h2 { font-size: 1.3rem; }
  h3 { font-size: 1.07rem; }
  .scw-kpi { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .scw-medal { border-radius: 40% 40% 40% 40% / 20% 20% 20% 20%; }
  .scw-cta { display: block; text-align: center; padding: 13px 16px; }
  .scw-grid { grid-template-columns: 1fr; }
  table { font-size: .88rem; min-width: 430px; }
  th, td { padding: 8px 10px; }
}
