@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(fonts/GolosText-400-700-normal-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(fonts/GolosText-400-700-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(fonts/GolosText-400-700-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(fonts/JetBrainsMono-400-600-normal-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(fonts/JetBrainsMono-400-600-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(fonts/JetBrainsMono-400-600-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Sofia Sans Condensed';
  font-style: normal;
  font-weight: 700 900;
  font-display: swap;
  src: url(fonts/SofiaSansCondensed-700-900-normal-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Sofia Sans Condensed';
  font-style: normal;
  font-weight: 700 900;
  font-display: swap;
  src: url(fonts/SofiaSansCondensed-700-900-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Sofia Sans Condensed';
  font-style: normal;
  font-weight: 700 900;
  font-display: swap;
  src: url(fonts/SofiaSansCondensed-700-900-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  --p-white: #ffffff;
  --p-stone: #f1f2f0;
  --p-ink: #15171a;
  --p-ink-2: #474b50;
  --p-grey: #686d73;
  --p-line: #e0e2e3;
  --p-line-2: #c7cacd;
  --p-amber: #f2bd2c;
  --p-amber-soft: #fdf2cf;
  --p-amber-text: #7a5a00;

  --c-bg: var(--p-white);
  --c-surface: var(--p-stone);
  --c-ink: var(--p-ink);
  --c-ink-2: var(--p-ink-2);
  --c-muted: var(--p-grey);
  --c-line: var(--p-line);
  --c-line-2: var(--p-line-2);
  --c-accent: var(--p-amber);
  --c-on-accent: #15171a;
  --c-accent-soft: var(--p-amber-soft);
  --c-accent-text: var(--p-amber-text);

  --f-display: "Sofia Sans Condensed", "Arial Narrow", sans-serif;
  --f-body: "Golos Text", system-ui, sans-serif;
  --f-mono: "JetBrains Mono", ui-monospace, monospace;
  --w-display: 850;
  --t-display: uppercase;
  --ls-display: 0;
  --lh-display: 0.95;
  --h1: clamp(2.5rem, 4.6vw, 4.2rem);
  --h2: clamp(2rem, 3.4vw, 3rem);

  --r-sm: 4px;
  --r-md: 6px;
  --r-lg: 10px;
  --r-btn: 6px;
}

h3 { font-family: var(--f-body); text-transform: none; font-weight: 650; letter-spacing: -0.01em; line-height: 1.25; }
.kicker, .eyebrow { font-family: var(--f-mono); font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.03em; }
.kicker::before { border-radius: 0; width: 12px; height: 12px; background: repeating-linear-gradient(-45deg, var(--p-ink) 0 3px, var(--p-amber) 3px 6px); }
.eb-n { background: var(--p-ink); color: #fff; border-color: var(--p-ink); border-radius: 3px; }
.brand-name { font-size: 1.45rem; }
.btn-solid:hover { background: #e3ab12; color: var(--p-ink); }
.facts dd, .card-price, .cat-total, .order-phone, .big-num { font-family: var(--f-display); }
.mark { color: var(--p-ink); }
.step-n { color: var(--p-ink); }
.note { border-left-color: var(--p-ink); }

.dw .soilbg { fill: #e7dcc6; }
.dw .soild { fill: #b29d77; }
.dw .soill { stroke: #b29d77; stroke-width: 0.9; fill: none; }
.dw .fillbg { fill: #efe7d6; }
.dw .concbg { fill: #d9dbdc; }
.dw .concd { fill: #9da2a6; }
.dw .gravbg { fill: #ece8df; }
.dw .gravd { fill: none; stroke: #a49d8e; stroke-width: 0.9; }
.dw .conc, .dw .grav { stroke: var(--dw-ink); stroke-width: 1.2; }
.dw .wp { fill: none; stroke: #111; stroke-width: 4; stroke-linejoin: round; }
.dw .cont { fill: #f6f7f7; }
.dw .corr { fill: none; stroke: #c3c8cb; stroke-width: 1; }
.dw .air { fill: #ffffff; }
.dw .door { fill: #c3c8cb; stroke: var(--dw-ink); stroke-width: 1; }
.dw .ladder { fill: none; stroke: #6b7176; stroke-width: 1.6; }
.dw .hatch { fill: var(--p-ink); }
.dw .sand { fill: #efe2b9; stroke: #b29d77; stroke-width: 1; }
.dw .pipe { fill: none; stroke: #6b7176; stroke-width: 7; }
.dw .cap { fill: var(--p-ink); }
.dw .unit { fill: var(--p-amber); stroke: var(--dw-ink); stroke-width: 1.2; }
.dw .bunk { fill: #c9a878; stroke: var(--dw-ink); stroke-width: 1; }
.dw .tank { fill: #cfe0ec; stroke: var(--dw-ink); stroke-width: 1; }
.dw .drain { fill: #fff; stroke: var(--dw-ink); stroke-width: 1.4; }
.dw .grass { fill: none; stroke: #7a9a5e; stroke-width: 1.2; }
.dw .ugv { fill: none; stroke: #4f86b8; stroke-width: 1.6; stroke-dasharray: 10 6; }
.dw .t-water { fill: #3d6f9c; }
.dw .call circle { fill: var(--p-ink); }
.dw .call text { fill: #fff; }
.dw .call .tip { fill: var(--p-ink); }
.legend span.n { background: var(--p-ink); color: #fff; }

.hero-draw { margin-top: clamp(32px, 4vw, 48px); }
