@font-face {
  font-family: "Roboto";
  src: local("Roboto Thin"), local("Roboto-Thin"), url(../fonts/roboto/Robotothin.ttf) format("truetype");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Thin Italic"), local("Roboto-ThinItalic"), url(../fonts/roboto/Robotothinitalic.ttf) format("truetype");
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Light"), local("Roboto-Light"), url(../fonts/roboto/Robotolight.ttf) format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Light Italic"), local("Roboto-LightItalic"), url(../fonts/roboto/Robotolightitalic.ttf) format("truetype");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto"), local("Roboto-Regular"), url(../fonts/roboto/Roboto.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Italic"), local("Roboto-Italic"), url(../fonts/roboto/Robotoitalic.ttf) format("truetype");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Medium"), local("Roboto-Medium"), url(../fonts/roboto/Robotomedium.ttf) format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Medium Italic"), local("Roboto-MediumItalic"), url(../fonts/roboto/Robotomediumitalic.ttf) format("truetype");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Bold"), local("Roboto-Bold"), url(../fonts/roboto/Robotobold.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Bold Italic"), local("Roboto-BoldItalic"), url(../fonts/roboto/Robotobolditalic.ttf) format("truetype");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Black"), local("Roboto-Black"), url(../fonts/roboto/Robotoblack.ttf) format("truetype");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "Roboto";
  src: local("Roboto Black Italic"), local("Roboto-BlackItalic"), url(/../fonts/roboto/Robotoblackitalic.ttf) format("truetype");
  font-weight: 900;
  font-style: italic;
}
:root {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #64A70B;
  --bs-secondary: #5B6770;
  --bs-success: #198754;
  --bs-info: #0094D6;
  --bs-link_blue: #0057FF;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #EFEFF1;
  --bs-white: white;
  --bs-light-2: #D8D9DD;
  --bs-dark: #34353E;
  --bs-primary-rgb: 100, 167, 11;
  --bs-secondary-rgb: 91, 103, 112;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 0, 148, 214;
  --bs-link_blue-rgb: 0, 87, 255;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 239, 239, 241;
  --bs-white-rgb: 255, 255, 255;
  --bs-light-2-rgb: 216, 217, 221;
  --bs-dark-rgb: 52, 53, 62;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-body-color-rgb: 52, 53, 62;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: Roboto, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #34353E;
  --bs-body-bg: #fff;
}
body {
  font-family: var(--bs-body-font-family);
}
#sp-main-body {
    padding: 50px 0;
}
h3 {
  padding-bottom: 20px;
}
.blackgroundtext .sppb-title-heading, .blackgroundtext .sppb-title-subheading {
    color: #fff;
}
input[type="text"]:not(.form-control), input[type="email"]:not(.form-control), input[type="url"]:not(.form-control), input[type="date"]:not(.form-control), input[type="password"]:not(.form-control), input[type="search"]:not(.form-control), input[type="tel"]:not(.form-control), input[type="number"]:not(.form-control), select:not(.form-select):not(.form-control) {
    line-height: 34px;
}
.convertforms button, .convertforms form, .convertforms label, .convertforms .cf-input {
    line-height: 25px;
}
#sp-top1 .sp-module-content {
  color: #fff;
}
.sp-megamenu-parent>li>a, .sp-megamenu-parent>li>span {
    font-size: 18px;
}
.sp-megamenu-parent .sp-menu-item>a img, .sp-megamenu-parent .sp-menu-item>span img {
  height: 18px;
}
.mod-articlesnews-horizontal .beforeDisplay {
  padding: 5px;
  background-color: #eee;
  margin: 10px 0;
}
.uppercase {
  text-transform: uppercase;
}
#sp-top1 {
  padding-left: 0;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a, .sp-megamenu-parent .sp-dropdown li.sp-menu-item span:not(.sp-menu-badge) {
    font-size: 16px;
}
.com-content-category-blog .page-header {
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px #ccc solid;
} 
.com-content-category-blog .readmore {
    border-color: #f68e13;
    background-color: #f68e13;
    display: inline-block;
    font-weight: 400;
    text-align: center;
    border: 1px solid transparent;
    padding: 10px 24px;
    font-size: 16px;
    transition: all .15s ease-in-out;
	cursor: pointer;
	margin-bottom: 1rem;
}
.com-content-category-blog .readmore a {
    color: #fff;
    cursor: pointer;
}
.com-content-category-blog div.readmore {
    border-radius: 0;
}
.com-content-category-blog .readmore:hover {
    border-color: #044CD0;
    background-color: #044CD0;
}
.com-content-category-blog .readmore a:hover {
    color: #fff;
}

.com-content-category-blog .readmore a:focus, .com-content-category-blog .readmore a:hover {
    text-decoration: none;
}
.com-content-category-blog .readmore:focus {
    box-shadow: 0 0 0 3px rgba(48, 113, 255, .5);
    outline: 0;
}
.products .article-intro-image img {
    max-height: 300px;
    width: auto;
}
.afterDisplayContent {
	background: #eee;
	padding: 6px 10px 1px;
}
.afterDisplayTitle {
	font-weight: bold;
}
.products .com-content-category-blog__item {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px #eee solid;
}
.sp-module-content-bottom h3 {
    padding-bottom: 10px;
    padding-top: 30px;
    margin-top: 30px;
    border-top: #ccc 1px solid;
}
.com-content-article .fields-container {
	display: none;	
}
.com-content-article .sigplus-gallery>ul>li {
    margin: 20px;
}
td {
    border: 1px solid #999;
    padding: 5px;
}
.lang img {
     margin-left: 20px;
    margin-bottom: 5px;
    width: auto;
    border: 1px solid #CCC;
}

@media (max-width: 575px) {
    #sp-header {
        height: 50px;
    }
}
/* Вариант 2: Трансформация в карточки на мобильных (самый удобный для чтения) */
.pricetable {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
}

.pricetable th,
.pricetable td {
    padding: 12px 15px;
    text-align: left;
    border: 1px solid #e0e0e0;
    vertical-align: top;
}

.pricetable th {
    background: #f5f5f5;
    font-weight: 600;
}

/* На мобильных превращаем таблицу в карточки */
@media (max-width: 768px) {
    .pricetable,
    .pricetable tbody,
    .pricetable tr,
    .pricetable td,
    .pricetable th {
        display: block;
    }
    
    /* Скрываем заголовки */
    .pricetable thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    
    .pricetable tr {
        margin-bottom: 20px;
        border: 1px solid #e0e0e0;
        border-radius: 12px;
        overflow: hidden;
        background: white;
        box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    }
    
    .pricetable td {
        border: none;
        border-bottom: 1px solid #f0f0f0;
        position: relative;
        padding-left: 50%;
        white-space: normal;
        min-height: 60px;
    }
    
    .pricetable td:last-child {
        border-bottom: none;
    }
    
    /* Добавляем псевдо-заголовки для каждой ячейки */
    .pricetable td:before {
        position: absolute;
        left: 12px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        font-weight: 600;
        color: #333;
    }
    
    /* Указываем заголовки для каждого столбца */
    .pricetable tr td:nth-of-type(1):before { content: "Наименование:"; }
    .pricetable tr td:nth-of-type(2):before { content: "Описание:"; }
    .pricetable tr td:nth-of-type(3):before { content: "Стоимость, руб.:"; }
    
    /* Для строк с colspan */
    .pricetable td[colspan] {
        padding-left: 12px;
        background: #f8f9fa;
        font-weight: 600;
    }
    
    .pricetable td[colspan]:before {
        display: none;
    }
    
    /* Картинки адаптируются */
    .pricetable img {
        max-width: 80px;
    }
}