
:root {
  --container: 1180px;
  --color-bg: #080a0d;
  --color-bg-2: #101217;
  --color-surface: rgba(21, 25, 31, .94);
  --color-surface-2: rgba(32, 21, 24, .88);
  --color-text: #f3f1ed;
  --color-muted: #b7b0ad;
  --color-soft: #8d8785;
  --color-border: rgba(255,255,255,.105);
  --color-border-strong: rgba(138, 31, 39, .56);
  --color-accent: #8a1f27;
  --color-accent-2: #b94735;
  --color-accent-soft: rgba(138,31,39,.22);
  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 28px;
  --shadow: 0 24px 70px rgba(0,0,0,.36);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--color-text);
  background:
    radial-gradient(circle at 15% 5%, rgba(138,31,39,.18), transparent 28%),
    radial-gradient(circle at 80% 20%, rgba(255,255,255,.06), transparent 24%),
    linear-gradient(180deg, #07090c, #101217 42%, #07090c);
  line-height: 1.65;
}
body::before {
  content:""; position:fixed; inset:0; pointer-events:none; opacity:.18; z-index:-1;
  background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 34px 34px;
  mask-image: linear-gradient(to bottom, black, transparent 80%);
}
a { color: var(--color-accent-2); text-decoration: none; }
a:hover { text-decoration: underline; }
img { display:block; max-width:100%; height:auto; }
.container { width:min(100% - 32px, var(--container)); margin:0 auto; }
.site-header { position:sticky; top:0; z-index:50; background:rgba(8,10,13,.94); backdrop-filter:blur(14px); border-bottom:1px solid var(--color-border); }
.site-header__inner { min-height:74px; display:flex; align-items:center; gap:22px; }
.site-logo { display:inline-flex; flex:0 0 auto; align-items:center; }
.site-logo__image { width:180px; height:auto; }
.main-menu { margin-left:auto; }
.main-menu__list { display:flex; align-items:center; gap:6px; margin:0; padding:0; list-style:none; }
.main-menu__item { position:relative; display:flex; align-items:center; flex:0 0 auto; }
.main-menu__link { color:var(--color-muted); font-size:15px; padding:10px 10px; border-radius:999px; white-space:nowrap; }
.main-menu__link.is-active, .main-menu__link:hover { color:var(--color-text); background:var(--color-accent-soft); text-decoration:none; }
.dropdown-toggle { width:28px; height:28px; margin-left:-8px; border:0; background:transparent; color:var(--color-muted); cursor:pointer; }
.dropdown-toggle::after { content:""; display:inline-block; width:7px; height:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg) translateY(-2px); }
.main-menu__item.has-dropdown::after, .language-menu::after { content:""; position:absolute; left:0; right:0; top:100%; height:16px; }
.main-menu__dropdown { position:absolute; left:0; top:calc(100% + 10px); width:min(340px, 82vw); margin:0; padding:10px; list-style:none; background:rgba(14,16,20,.98); border:1px solid var(--color-border-strong); border-radius:var(--radius-md); box-shadow:var(--shadow); opacity:0; visibility:hidden; transform:translateY(6px); transition:.16s ease; z-index:90; }
.has-dropdown:hover .main-menu__dropdown, .has-dropdown:focus-within .main-menu__dropdown, .has-dropdown.is-open .main-menu__dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.main-menu__dropdown a { display:block; color:var(--color-muted); padding:9px 10px; border-radius:10px; font-size:14px; }
.main-menu__dropdown a:hover, .main-menu__dropdown a.is-active { color:var(--color-text); background:var(--color-accent-soft); text-decoration:none; }
.menu-toggle { display:none; border:1px solid var(--color-border); border-radius:999px; background:var(--color-surface); color:var(--color-text); padding:8px 14px; cursor:pointer; }
.language-menu { position:relative; flex:0 0 auto; }
.language-menu__current { border:1px solid var(--color-border); border-radius:999px; background:rgba(255,255,255,.04); color:var(--color-text); padding:9px 14px; cursor:pointer; }
.language-menu__current::after { content:""; display:inline-block; width:7px; height:7px; margin-left:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg) translateY(-2px); }
.language-menu__dropdown { position:absolute; right:0; top:calc(100% + 10px); margin:0; padding:8px; list-style:none; background:rgba(14,16,20,.98); border:1px solid var(--color-border-strong); border-radius:14px; min-width:86px; opacity:0; visibility:hidden; transform:translateY(6px); transition:.16s ease; box-shadow:var(--shadow); }
.language-menu:hover .language-menu__dropdown, .language-menu:focus-within .language-menu__dropdown, .language-menu.is-open .language-menu__dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.language-menu__dropdown a { display:block; padding:8px 12px; border-radius:10px; color:var(--color-muted); }
.language-menu__dropdown a:hover { color:var(--color-text); background:var(--color-accent-soft); text-decoration:none; }
.site-main { padding:32px 0 72px; }
.breadcrumbs { margin-bottom:26px; color:var(--color-muted); font-size:14px; }
.breadcrumbs__list { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; margin:0; }
.breadcrumbs__item:not(:last-child)::after { content:"/"; margin-left:8px; color:var(--color-border-strong); }
.section-kicker { display:inline-flex; align-items:center; gap:10px; color:#c76453; text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:700; }
.section-kicker::before { content:""; width:26px; height:2px; background:var(--color-accent); border-radius:99px; }
.btn { display:inline-flex; align-items:center; justify-content:center; padding:12px 18px; border-radius:999px; font-weight:700; transition:.18s ease; }
.btn:hover { text-decoration:none; transform:translateY(-1px); }
.btn-primary { color:#fff; background:linear-gradient(135deg, #781a22, #b94735); box-shadow:0 12px 32px rgba(138,31,39,.28); }
.btn-outline { color:var(--color-text); border:1px solid var(--color-border-strong); background:rgba(255,255,255,.035); }
.practical-hero { position:relative; isolation:isolate; min-height:520px; display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,340px); gap:34px; align-items:end; padding:54px; margin-bottom:26px; overflow:hidden; border-radius:var(--radius-lg); background-image:var(--hero-bg-image); background-size:cover; background-position:center; box-shadow:var(--shadow); }
.practical-hero__shade { position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgba(5,7,10,.94), rgba(5,7,10,.74) 48%, rgba(5,7,10,.45)), radial-gradient(circle at 80% 20%, rgba(138,31,39,.28), transparent 30%); }
.practical-hero__content { max-width:760px; }
.practical-hero h1 { margin:14px 0 18px; max-width:780px; font-size:clamp(40px,5vw,68px); line-height:1.03; letter-spacing:-.04em; }
.practical-hero p { margin:0 0 24px; max-width:700px; color:#ddd6d2; font-size:19px; }
.practical-hero__actions { display:flex; flex-wrap:wrap; gap:12px; }
.hero-checklist { align-self:center; justify-self:end; max-width:340px; display:flex; flex-direction:column; justify-content:center; padding:24px; border:1px solid rgba(138,31,39,.36); border-radius:var(--radius-md); background:rgba(20,15,17,.58); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); box-shadow:0 16px 42px rgba(0,0,0,.22); }
.hero-checklist strong { display:block; margin-bottom:14px; font-size:19px; }
.hero-checklist ul { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.hero-checklist li { position:relative; padding-left:22px; color:#ddd6d2; }
.hero-checklist li::before { content:""; position:absolute; left:0; top:.75em; width:8px; height:8px; background:var(--color-accent); transform:rotate(45deg); }
.task-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:0 0 58px; }
.task-strip__item { display:grid; grid-template-columns:auto 1fr; gap:8px 14px; padding:20px; min-height:160px; border:1px solid var(--color-border); border-radius:var(--radius-md); background:linear-gradient(180deg, rgba(28,18,21,.94), rgba(16,18,23,.92)); transition:.18s ease; }
.task-strip__item:hover { transform:translateY(-4px); border-color:var(--color-border-strong); background:linear-gradient(180deg, rgba(38,18,22,.98), rgba(16,18,23,.94)); box-shadow:0 18px 48px rgba(0,0,0,.26); text-decoration:none; }
.task-strip__item span { grid-row:span 2; color:#c76453; font-weight:800; font-size:26px; line-height:1; }
.task-strip__item strong { color:var(--color-text); font-size:19px; }
.task-strip__item em { color:var(--color-muted); font-style:normal; font-size:15px; }
.section-heading { margin:0 0 22px; text-align:center; }
.section-heading--left { text-align:left; }
.section-heading h2 { margin:10px 0 0; font-size:clamp(28px,3.4vw,42px); line-height:1.12; letter-spacing:-.025em; }
.scheme-board, .mounting-matrix, .diameter-panel, .object-cases { margin:58px 0; }
.scheme-board__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.scheme-card a { position:relative; display:flex; flex-direction:column; min-height:250px; padding:24px; border:1px solid var(--color-border); border-radius:var(--radius-md); background:linear-gradient(180deg, rgba(19,22,27,.96), rgba(9,11,14,.96)); overflow:hidden; transition:.18s ease; }
.scheme-card a:hover { transform:translateY(-5px); border-color:var(--color-border-strong); box-shadow:0 18px 50px rgba(0,0,0,.25); text-decoration:none; }
.scheme-card__line { width:54px; height:4px; border-radius:99px; background:var(--color-accent); margin-bottom:20px; }
.scheme-card h3 { margin:0 0 14px; color:var(--color-text); font-size:21px; line-height:1.18; }
.scheme-card p { margin:0; color:var(--color-muted); font-size:15px; }
.mounting-matrix { display:grid; grid-template-columns:minmax(280px, .8fr) minmax(0,1.2fr); gap:28px; padding:34px; border-top:1px solid var(--color-border-strong); border-bottom:1px solid var(--color-border); background:linear-gradient(90deg, rgba(138,31,39,.10), rgba(255,255,255,.025)); }
.mounting-matrix__intro h2 { margin:10px 0 12px; font-size:clamp(28px,3vw,40px); line-height:1.12; }
.mounting-matrix__intro p { color:var(--color-muted); }
.mounting-matrix__list { display:grid; gap:12px; }
.matrix-row { display:grid; grid-template-columns:minmax(180px,.45fr) 1fr; gap:18px; align-items:center; padding:18px 20px; border:1px solid var(--color-border); border-radius:var(--radius-sm); background:rgba(9,12,16,.68); transition:.18s ease; }
.matrix-row:hover { border-color:var(--color-border-strong); background:rgba(138,31,39,.14); transform:translateX(4px); text-decoration:none; }
.matrix-row strong { color:var(--color-text); }
.matrix-row span { color:var(--color-muted); }
.diameter-panel { padding:34px; border-radius:var(--radius-lg); background:radial-gradient(circle at 20% 0, rgba(138,31,39,.22), transparent 32%), rgba(16,18,23,.82); border:1px solid var(--color-border); }
.diameter-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.diameter-card { padding:26px 20px; border-radius:var(--radius-md); border:1px solid var(--color-border); background:rgba(8,10,13,.58); transition:.18s ease; }
.diameter-card:hover { transform:translateY(-4px); border-color:var(--color-border-strong); background:rgba(138,31,39,.16); text-decoration:none; }
.diameter-card strong { display:block; color:var(--color-text); font-size:27px; margin-bottom:12px; }
.diameter-card span { display:block; color:var(--color-muted); font-size:15px; }
.object-cases__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.object-card a { display:block; height:100%; overflow:hidden; border-radius:var(--radius-md); border:1px solid var(--color-border); background:linear-gradient(180deg, rgba(18,20,25,.96), rgba(10,12,15,.96)); transition:.18s ease; }
.object-card a:hover { transform:translateY(-4px); border-color:var(--color-border-strong); box-shadow:0 18px 48px rgba(0,0,0,.24); text-decoration:none; }
.object-card__media { aspect-ratio:16/9; overflow:hidden; border-bottom:1px solid var(--color-border); }
.object-card__media img { width:100%; height:100%; object-fit:cover; }
.object-card__body { padding:18px; }
.object-card h3 { margin:0 0 10px; color:var(--color-text); font-size:20px; }
.object-card p { margin:0; color:var(--color-muted); font-size:15px; }
.home-seo { max-width:1080px; }
.page-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,42%); gap:42px; align-items:center; margin-bottom:34px; padding:34px; background:linear-gradient(135deg, rgba(138,31,39,.12), rgba(255,255,255,.03)); border:1px solid var(--color-border); border-radius:var(--radius-lg); }
.page-intro h1 { margin:0 0 18px; font-size:clamp(34px,4.6vw,58px); line-height:1.08; letter-spacing:-.035em; }
.page-intro p { margin:0; color:var(--color-muted); font-size:18px; }
.page-intro__media { border-radius:var(--radius-md); overflow:hidden; border:1px solid var(--color-border-strong); background:var(--color-surface); }
.page-image, .card-image { width:100%; height:100%; object-fit:cover; }
.page-image { aspect-ratio:3/2; }
.child-cards { margin:32px 0 44px; }
.child-cards__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.child-card, .home-card { overflow:hidden; background:linear-gradient(180deg, rgba(17,20,25,.96), rgba(10,12,16,.96)); border:1px solid var(--color-border); border-radius:var(--radius-md); box-shadow:0 12px 34px rgba(0,0,0,.16); transition:.18s ease; }
.child-card:hover, .home-card:hover { transform:translateY(-4px); border-color:var(--color-border-strong); box-shadow:0 18px 48px rgba(0,0,0,.24); }
.child-card a, .home-card a { color:inherit; }
.child-card a:hover, .home-card a:hover { text-decoration:none; }
.home-card > a { display:block; height:100%; }
.child-card__media, .home-card__media { display:block; }
.child-card__media, .home-card__media { aspect-ratio:16/10; overflow:hidden; border-bottom:1px solid var(--color-border); }
.child-card__body, .home-card__body { padding:18px; }
.child-card h2, .home-card h3 { margin:0 0 10px; font-size:20px; line-height:1.2; }
.child-card p, .home-card p { margin:0; color:var(--color-muted); font-size:15px; }
.child-card__body { display:flex; flex-direction:column; gap:10px; }
.child-card .card-link { margin-top:auto; color:var(--color-accent-2); font-weight:700; font-size:14px; }
.page-body { max-width:980px; margin:44px auto 0; padding:34px; background:rgba(8,10,13,.72); border:1px solid var(--color-border); border-radius:var(--radius-lg); }
.page-body h2 { margin:0 0 16px; font-size:clamp(24px,3vw,34px); line-height:1.18; }
.page-body h2:not(:first-child) { margin-top:34px; }
.page-body p { margin:0 0 18px; color:#ded8d4; }
.page-body p:last-child { margin-bottom:0; }
.page-body strong { color:var(--color-text); }
.page-body a { color:inherit; text-decoration:underline; text-decoration-color:rgba(185,71,53,.55); text-underline-offset:3px; }
.page-body a:hover { color:var(--color-accent-2); text-decoration:none; }
.site-footer { border-top:1px solid var(--color-border); background:#07090c; padding:46px 0 28px; }
.site-footer__inner { display:grid; grid-template-columns:280px 1fr; gap:34px; }
.site-footer__brand p { color:var(--color-muted); font-size:14px; }
.site-footer__phones { width:200px; max-width:100%; height:auto; margin:14px 0 12px; }
.site-footer__nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.site-footer__nav strong { display:block; margin-bottom:12px; color:var(--color-text); }
.site-footer__nav a { display:block; color:var(--color-muted); font-size:14px; margin:7px 0; }
.site-footer__nav a:hover { color:var(--color-accent-2); text-decoration:none; }
.site-footer__bottom { grid-column:1/-1; padding-top:20px; border-top:1px solid var(--color-border); color:var(--color-soft); font-size:13px; }
@media (max-width: 1100px) {
  .main-menu { position:absolute; top:100%; left:16px; right:16px; display:none; margin:0; padding:14px; background:rgba(10,12,16,.98); border:1px solid var(--color-border); border-radius:var(--radius-md); box-shadow:var(--shadow); }
  .main-menu.is-open { display:block; }
  .main-menu__list { display:block; }
  .main-menu__item { display:block; }
  .main-menu__link { display:inline-flex; width:calc(100% - 34px); }
  .main-menu__dropdown { position:static; width:100%; box-shadow:none; opacity:1; visibility:visible; transform:none; display:none; margin:6px 0 8px; background:rgba(255,255,255,.035); }
  .has-dropdown.is-open .main-menu__dropdown { display:block; }
  .has-dropdown:hover .main-menu__dropdown { display:none; }
  .has-dropdown.is-open:hover .main-menu__dropdown { display:block; }
  .menu-toggle { display:inline-flex; margin-left:auto; }
  .site-header__inner { position:relative; }
  .practical-hero, .page-intro, .mounting-matrix { grid-template-columns:1fr; }
  .scheme-board__grid, .diameter-grid, .object-cases__grid, .child-cards__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .container { width:min(100% - 24px, var(--container)); }
  .site-logo__image { width:150px; }
  .practical-hero { min-height:auto; padding:34px 24px; }
  .practical-hero h1 { font-size:36px; }
  .task-strip, .scheme-board__grid, .diameter-grid, .object-cases__grid, .child-cards__grid { grid-template-columns:1fr; }
  .matrix-row { grid-template-columns:1fr; gap:8px; }
  .site-footer__inner, .site-footer__nav { grid-template-columns:1fr; }
  .page-intro, .page-body, .diameter-panel, .mounting-matrix { padding:24px; }
}

.contacts-requisites {
  display: block;
  width: 100%;
  margin: 0 0 30px;
  padding: 0;
}

.contacts-requisites img {
  display: block;
  width: 273px;
  max-width: 100%;
  height: auto;
}

.page-body .contacts-requisites + h2 {
  margin-top: 0;
}