/*
Theme Name: Сварочное оборудование
Theme URI: 
Author: 
Author URI: 
Description: Тема для сайта сварочного оборудования
Version: 1.0
Text Domain: welding

*/

/* Reset and Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    overflow-x: hidden;
}

:root {
    --light-grey: #EFF1F3;
    --red: #DB222F;
    --white: #FFFFFF;
    --dark-blue: #1A1B2F;
    --black: #000000;
    --medium-blue: #474959;
    --dark-red: #910D16;
}

body {
    font-family: 'Montserrat', sans-serif;
    background-color: var(--light-grey);
    color: var(--dark-blue);
    line-height: 1.5;
    position: relative;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

.logo-img,
.social-icon img,
.equipment-link img,
.advantage-icon img,
.faq-question img,
.pagination-arrow img,
.sort-box img {
    display: block;
}

.container {
    max-width: 100vw;
    margin: 0 auto;
    padding: 0 6.77vw;
    width: 100%;
    box-sizing: border-box;
}

/* Links */
a {
    color: inherit;
    text-decoration: none;
}

a:hover {
    color: inherit;
    text-decoration: none;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    text-transform: uppercase;
}

h1 {
    font-size: 3.65vw;
    line-height: 1.143;
}

h2 {
    font-size: 2.6vw;
    line-height: 1.2;
}

.subtitle {
    font-size: 1.3vw;
    line-height: 1.2;
    font-weight: 500;
}

.text-button {
    font-size: 1.04vw;
    line-height: 1.5;
    font-weight: 700;
}

.text-large {
    font-size: 1.04vw;
    line-height: 1.5;
    font-weight: 500;
}

.text-medium {
    font-size: 0.94vw;
    line-height: 1.111;
    font-weight: 500;
}

.text-small {
    font-size: 0.83vw;
    line-height: 1.25;
    font-weight: 300;
}

.linkund {
	text-decoration: underline;
}
.linkund:hover {
	text-decoration: none;
}

/* Header */
.header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    padding: 1.04vw 0;
    width: 100%;
    box-sizing: border-box;
}

.header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 100%;
}

.logo {
    display: flex;
    align-items: center;
    gap: 1.3vw;
    padding: 0.52vw 0;
}

.logo-img {
    width: 4.43vw;
    height: 3.13vw;
}

.logo-text {
    font-size: 0.73vw;
    font-weight: 700;
    line-height: 1.219;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--white);
    width: 7.81vw;
}

.logo-text-red {
    color: var(--red);
}

.logo-text-dark {
    color: var(--dark-blue);
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 1.04vw;
}

.social-icons {
    display: flex;
    gap: 0.52vw;
}

.social-icon {
    width: 2.6vw;
    height: 2.6vw;
    border: 0.052vw solid var(--white);
    border-radius: 1.56vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s;
}

.social-icon:hover {
    background-color: var(--white);
    opacity: 0.8;
}

.social-icon img {
    width: 1.3vw;
    height: 1.3vw;
}

/* Buttons */
.btn {
    padding: 0.52vw 1.3vw;
    border-radius: 1.56vw;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.04vw;
    font-weight: 700;
    line-height: 1.5;
    cursor: pointer;
    border: none;
    transition: all 0.3s;
    text-decoration: none;
    display: inline-block;
}

.btn-outline {
    background: transparent;
    border: 1px solid var(--white);
    color: var(--white);
    text-decoration: none;
    display: inline-block;
}

.btn-outline:hover {
    background-color: var(--white);
    color: var(--dark-blue);
    text-decoration: none;
}

.btn-primary {
    background-color: var(--red);
    color: var(--white);
    padding: 0.78vw 1.3vw;
}

.btn-primary:hover {
    background-color: var(--dark-red);
}

.btn-cart {
    background-color: var(--red);
    color: var(--white);
    padding: 0.31vw 0.78vw 0.26vw;
    border-radius: 0.78vw;
    font-size: 1.04vw;
    font-weight: 700;
	text-align: center;
}

.btn-cart:hover {
    background-color: var(--dark-red);
}

/* Hero Section */
.hero {
    position: relative;
    /*height: 47.4vh;*/
	height: auto;
    min-height: 70vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    width: 100%;
	padding-bottom: 150px;
}

.hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.hero-background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-content {
    position: relative;
    z-index: 1;
	padding-top: 160px;
    /*padding-top: 12vh;*/
    max-width: 42.7vw;
    width: 100%;
}

.hero-title {
    color: var(--white);
    margin-bottom: 1.04vw;
    max-width: 42.7vw;
    width: 100%;
}

.hero-subtitle {
    color: var(--light-grey);
    font-size: 1.3vw;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 1.04vw;
    max-width: 42.7vw;
    width: 100%;
}

.hero-features {
    list-style: none;
    padding: 0;
    /*margin: 0 0 1.56vw 0;*/
	margin: 0 0 80px 0;
    max-width: 42.7vw;
    width: 100%;
}

.hero-features li {
    color: var(--light-grey);
    font-size: 1vw;
    font-weight: 500;
    line-height: 1.2;
    padding-left: 1.56vw;
    position: relative;
    margin-bottom: 0.52vw;
}

.hero-features li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: var(--light-grey);
    font-size: 1.3vw;
}

/* Equipment Types Section */
.equipment-types {
    padding: 7.81vw 0;
    width: 100%;
}

.section-title {
    color: var(--dark-blue);
    margin-bottom: 2.6vw;
    max-width: 42.7vw;
    width: 100%;
}

.equipment-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(13.54vw, 1fr));
    gap: 1.04vw;
    justify-content: start;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.equipment-card {
    background: var(--white);
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    padding: 1.04vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    min-height: 320px;
}

.equipment-image {
    width: 10.42vw;
    height: 200px;
    overflow: hidden;
}

.equipment-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.equipment-link {
    display: flex;
    align-items: flex-end;
    gap: 0.52vw;
    width: 11.46vw;
    cursor: pointer;
    position: relative;
    margin-top: auto;
}

.equipment-link span {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.111;
    color: var(--medium-blue);
}

.equipment-link img {
    width: 1.04vw;
    height: 1.04vw;
}

.equipment-strelochka {
    position: absolute;
    right: 1.04vw;
    bottom: 1.04vw;
    width: auto;
    height: auto;
    max-width: 2.6vw;
    max-height: 2.6vw;
    object-fit: contain;
    align-self: flex-end;
}

/* Trust Section */
.trust {
    padding: 2.6vw 0;
    width: 100%;
}

.trust-logos {
    display: flex;
    flex-wrap: wrap;
    gap: 2.6vw;
    width: 100%;
    max-width: 86.46vw;
    justify-content: center;
}

.trust-logo {
    flex: 0 0 calc((100% - 8 * 2.6vw) / 9);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 6.25vw;
    overflow: visible;
}

.trust-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: grayscale(100%) brightness(0.8);
    opacity: 0.7;
    display: block;
}

/* About Section */
.about {
    background-color: var(--dark-blue);
    padding: 7.81vw 0;
    width: 100%;
}

.about-content {
    display: flex;
    flex-direction: column;
    gap: 2.6vw;
    align-items: start;
    max-width: 86.46vw;
    width: 100%;
}

.about-header {
    display: flex;
    gap: 2.6vw;
    width: 100%;
    align-items: start;
}

.about-title {
    color: var(--white);
    margin: 0;
    flex-shrink: 0;
    font-size: 50px;
    line-height: 1.1;
}

.section-title-white {
    color: var(--white);
    margin-bottom: 2.6vw;
}

.about-text {
    color: var(--light-grey);
    flex: 1;
}

.about-text p {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 500;
    margin-bottom: 1.04vw;
}

.advantages {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.04vw;
    width: 100%;
    margin-bottom: -20vh;
    justify-items: center;
}

.advantage-card {
    position: relative;
    width: 540px;
    max-width: 100%;
    height: 540px;
    border-radius: 32px;
    overflow: hidden;
}

.advantage-image {
    width: 540px;
    max-width: 100%;
    height: 540px;
    position: relative;
    overflow: hidden;
}

.advantage-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.advantage-overlay {
    display: none;
}

.advantage-info {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: auto;
    background: #05060A;
    display: flex;
    flex-direction: column;
    padding: 24px 28px;
    box-sizing: border-box;
    color: #ffffff;
}

.advantage-icon {
    width: 40px;
    height: 40px;
    margin-bottom: 16px;
    display: none!important;
}

.advantage-icon svg {
    width: 40px;
    height: 40px;
    display: block;
}

.advantage-text {
    font-size: 25px;
    font-weight: 500;
    line-height: 1.4;
    margin: 0;
}

/* Catalog Section */
.catalog {
    padding: 7.81vw 0;
    width: 100%;
}

.catalog-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.04vw;
}

.catalog-controls {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 2.6vw;
}

.pagination-wrapper {
    display: flex;
    align-items: center;
    gap: 1.04vw;
}

.sort-selector-desktop {
    position: relative;
    width: 13.54vw;
}

.sort-box {
    display: flex;
    align-items: center;
    background: var(--white);
    border-radius: 0.26vw;
    width: 100%;
    height: 2.08vw;
    cursor: pointer;
    position: relative;
    padding: 0;
}

.sort-selector-desktop .sort-dropdown-content {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 0.26vw;
    background: var(--white);
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    padding: 0.52vw;
    z-index: 1000;
    box-shadow: 0 0.26vw 0.52vw rgba(0, 0, 0, 0.1);
}

.sort-selector-desktop.active .sort-dropdown-content {
    display: flex;
    flex-direction: column;
    gap: 0.26vw;
}

.sort-box::before {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 2.08vw;
    height: 2.08vw;
    background: var(--medium-blue);
    border-radius: 0 0.26vw 0.26vw 0;
}

.sort-box span {
    font-size: 1.04vw;
    font-weight: 500;
    color: var(--medium-blue);
    padding-left: 1.04vw;
    padding-right: 2.6vw;
    flex: 1;
    position: relative;
    z-index: 1;
    line-height: 2.08vw;
}

.sort-box img {
    width: 1.04vw;
    height: 1.04vw;
    position: absolute;
    right: 0.52vw;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    filter: brightness(0) invert(1);
}

.sort-dropdown {
    position: relative;
    width: 13.54vw;
    display: none;
}

.sort-dropdown-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 2.08vw;
    padding: 0 1.04vw;
    background: var(--white);
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    cursor: pointer;
    font-size: 1.04vw;
    font-weight: 500;
    color: var(--medium-blue);
    font-family: 'Montserrat', sans-serif;
}

.sort-dropdown-toggle:hover {
    background: var(--light-grey);
}

.sort-arrow {
    width: 1.04vw;
    height: 1.04vw;
    transition: transform 0.3s;
}

.sort-dropdown.active .sort-arrow {
    transform: rotate(180deg);
}

.sort-dropdown-content {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 0.26vw;
    background: var(--white);
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    padding: 0.52vw;
    z-index: 10;
    box-shadow: 0 0.26vw 0.52vw rgba(0, 0, 0, 0.1);
}

.sort-dropdown.active .sort-dropdown-content {
    display: flex;
    flex-direction: column;
    gap: 0.26vw;
}

.sort-option {
    padding: 0.52vw 1.04vw;
    background: transparent;
    border: none;
    border-radius: 0.26vw;
    cursor: pointer;
    font-size: 1.04vw;
    font-weight: 500;
    color: var(--medium-blue);
    font-family: 'Montserrat', sans-serif;
    text-align: left;
    transition: background 0.3s;
}

.sort-option:hover {
    background: var(--light-grey);
}

.sort-option.active {
    background: var(--medium-blue);
    color: var(--white);
}

.pagination-wrapper {
    display: flex;
    align-items: center;
    gap: 1.04vw;
}

.pagination-info {
    font-size: 1.04vw;
    font-weight: 500;
    color: var(--dark-blue);
}

.pagination {
    display: flex;
    gap: 0.26vw;
    align-items: center;
}

html.yith-mode-active .catalog-controls-desktop .pagination,
html.yith-mode-active [data-pagination-wrapper] .pagination {
    display: none !important;
}

.pagination.pagination-controls-hidden {
    display: none !important;
}

.pagination-arrow,
.pagination-number {
    width: 2.08vw;
    height: 2.08vw;
    border-radius: 0.26vw;
    background: var(--white);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 1.04vw;
    font-weight: 500;
    color: var(--black);
    transition: all 0.3s;
}

.pagination-number.active {
    background: var(--medium-blue);
    color: var(--white);
}

.pagination-arrow:hover,
.pagination-number:hover {
    background: var(--light-grey);
}

.pagination-arrow svg {
    width: 1.04vw;
    height: 1.04vw;
}

.pagination-arrow svg path {
    stroke: var(--black);
}

.catalog-content {
    display: flex;
    flex-direction: column;
    gap: 2.6vw;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
}

.catalog-main-row {
    display: grid;
    grid-template-columns: 19vw 1fr;
    gap: 2.6vw;
    width: 100%;
}

.filters-desktop {
    display: flex;
    flex-direction: column;
    gap: 2.6vw;
    width: 100%;
    box-sizing: border-box;
}
.yith-wcan-filters
{
    padding: 20px!important;
}

.filters-desktop aside {
    padding: 0;
    margin: 0;
    width: 100%;
}

/* YITH widget styles */
.filters-desktop .widget,
.filters-desktop .yith-wcan-filter-widget,
.filters-desktop .yith-wcan-reset-navigation {
    width: 100%;
    padding: 0;
    margin: 0 0 2.6vw 0;
}

.filters-desktop .yith-wcan-reset-navigation {
    margin-top: 1.3vw;
}

.filters-desktop .yith-wcan-reset-navigation a,
.filters-desktop button.filter-reset,
.filters-desktop .yith-wcan-reset-navigation button {
    display: block;
    width: 100%;
    padding: 0.78vw 1.04vw;
    background: var(--medium-blue);
    color: var(--white);
    border: none;
    border-radius: 0.26vw;
    font-size: 1.04vw;
    font-weight: 500;
    text-align: center;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
    transition: background 0.3s;
}

.filters-desktop .yith-wcan-reset-navigation a:hover,
.filters-desktop button.filter-reset:hover,
.filters-desktop .yith-wcan-reset-navigation button:hover {
    background: var(--dark-blue);
}

.filters-tablet {
    display: none;
}

.catalog-right {
    display: flex;
    flex-direction: column;
    gap: 2.6vw;
    width: 100%;
}

.catalog-controls-desktop {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
}

.filter-dropdown {
    position: relative;
    width: 13.54vw;
    display: none;
}

.filter-dropdown-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 2.08vw;
    padding: 0 1.04vw;
    background: var(--white);
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    cursor: pointer;
    font-size: 1.04vw;
    font-weight: 500;
    color: var(--medium-blue);
    font-family: 'Montserrat', sans-serif;
}

.filter-dropdown-toggle:hover {
    background: var(--light-grey);
}

.filter-arrow {
    width: 1.04vw;
    height: 1.04vw;
    transition: transform 0.3s;
}

.filter-dropdown.active .filter-arrow {
    transform: rotate(180deg);
}

.filter-dropdown-content {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 0.26vw;
    background: var(--white);
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    padding: 0.52vw;
    z-index: 10;
    max-height: 20.83vw;
    overflow-y: auto;
}

.filter-dropdown.active .filter-dropdown-content {
    display: flex;
    flex-direction: column;
    gap: 0.26vw;
}

.products-container {
    width: 100%;
}

.products-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.04vw;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.filter-group {
    margin-bottom: 2.6vw;
    padding: 0;
    width: 100%;
}

.filter-group:last-child {
    margin-bottom: 0;
}

.filter-title {
    font-size: 1.3vw;
    font-weight: 500;
    line-height: 1.2;
    color: var(--dark-blue);
    margin-bottom: 1.3vw;
    margin-top: 0;
    padding: 0;
}

.filter-list {
    display: flex;
    flex-direction: column;
    gap: 0.78vw;
    padding: 0;
    margin: 0;
    width: 100%;
}

.checkbox-item {
    display: flex;
    align-items: center;
    gap: 1.04vw;
    cursor: pointer;
    padding: 0.26vw 0;
    width: 100%;
    min-height: 2.08vw;
}

.checkbox-item input[type="checkbox"] {
    display: none;
}

.checkbox-custom {
    width: 1.56vw;
    height: 1.56vw;
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    background: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.checkbox-item input[type="checkbox"]:checked + .checkbox-custom {
    background: var(--medium-blue);
    border-color: var(--medium-blue);
}

.checkbox-item input[type="checkbox"]:checked + .checkbox-custom::after {
    content: '✓';
    color: var(--white);
    font-size: 1.04vw;
    font-weight: bold;
}

.checkbox-item span:last-child {
    font-size: 1.04vw;
    font-weight: 500;
    color: var(--medium-blue);
    flex: 1;
    line-height: 1.4;
    word-wrap: break-word;
    overflow-wrap: break-word;
}


.product-card {
    background: var(--white);
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    padding: 0.78vw 0.52vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.78vw;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    height: 500px; /* Унифицируем высоту карточек */
    min-height: 500px; /* Минимальная высота для унификации */
}

.product-image {
    width: 100%;
    max-width: 10.42vw;
    height: 200px;
    overflow: hidden;
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-info {
    display: flex;
    flex-direction: column;
    width: 100%;
    flex: 1; /* Растягиваем на доступное пространство */
    justify-content: space-between; /* Распределяем элементы равномерно */
}

.product-title {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}

.product-title a {
    color: inherit;
    text-decoration: none;
}

.product-title a:hover {
    color: inherit;
    text-decoration: none;
}

.product-title {
    color: var(--dark-blue);
    margin-top: auto;
}

.product-description {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.25;
    color: var(--dark-blue);
    overflow: hidden; /* Скрываем переполнение */
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Ограничиваем количество строк */
    line-clamp: 3; /* Стандартное свойство для совместимости */
    -webkit-box-orient: vertical;
    flex-shrink: 0; /* Не сжимаем описание */
    margin-top: 20px;
}

.product-price {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    color: var(--red);
    margin-bottom: 20px;
    margin-top: 20px;
}

/* FAQ Section */
.faq {
    padding: 7.81vw 0;
    width: 100%;
}

.faq-list {
    display: flex;
    flex-direction: column;
    gap: 0.52vw;
}

.faq-item {
    background: var(--white);
    border-radius: 0.26vw;
    padding: 1.3vw;
}

.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}

.faq-question h3 {
    font-size: 1.3vw;
    font-weight: 500;
    line-height: 1.2;
    color: var(--dark-blue);
    text-transform: none;
}

.faq-question img {
    width: 1.04vw;
    height: 1.04vw;
    transition: transform 0.3s;
    display: block;
}

.faq-item.active .faq-question img {
    transform: rotate(180deg);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    margin-top: 1.04vw;
}

.faq-item.active .faq-answer {
    max-height: 26.04vw;
}

.faq-answer p {
    font-size: 0.94vw;
    font-weight: 500;
    line-height: 1.667;
    color: var(--dark-blue);
}

/* Contact Section */
.contact {
    background-color: var(--dark-blue);
    padding: 7.81vw 0;
    width: 100%;
}

.contact-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5.21vw;
    max-width: 78.13vw;
    width: 100%;
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 1.04vw;
}

.contact-email {
    display: flex;
    gap: 0.52vw;
    align-items: center;
}

.contact-email span {
    font-size: 1.3vw;
    font-weight: 500;
    line-height: 1.2;
    color: var(--light-grey);
}

.contact-email a {
    font-size: 1.3vw;
    font-weight: 500;
    line-height: 1.2;
    color: var(--white);
    text-decoration: none;
}

.contact-email a:hover {
    text-decoration: underline;
}

.contact-social {
    display: flex;
    gap: 0.52vw;
}

.contact-form-section {
    display: flex;
    flex-direction: column;
    gap: 1.04vw;
}

.contact-subtitle {
    font-size: 1.3vw;
    font-weight: 500;
    line-height: 1.2;
    color: var(--light-grey);
}

.contact-form {
    display: flex;
    flex-direction: column;
    gap: 1.04vw;
    align-items: flex-start;
}

.contact-form-row {
    display: flex;
    flex-direction: row;
    gap: 1.04vw;
    width: 100%;
    align-items: flex-start;
}

.contact-form .form-input {
    flex: 0 0 auto;
}

.contact-form .btn {
    flex: 0 0 auto;
}

.form-input {
    width: 17.71vw;
    height: 3.13vw;
    padding: 1.04vw;
    border: 0.052vw solid var(--light-grey);
    border-radius: 1.56vw;
    background: transparent;
    color: var(--white);
    font-family: 'Montserrat', sans-serif;
    font-size: 0.83vw;
    font-weight: 300;
    flex-shrink: 0;
}

.form-input::placeholder {
    color: var(--light-grey);
}

.form-input:focus {
    outline: none;
    border-color: var(--white);
}

.contact-form .checkbox-item {
    width: 100%;
}

.contact-form .checkbox-custom {
    background: transparent;
    border: 0.052vw solid var(--white);
}

.contact-form .checkbox-item input[type="checkbox"]:checked + .checkbox-custom {
    background: transparent;
    border-color: var(--white);
}

.contact-form .checkbox-item span:last-child {
    color: var(--light-grey);
    font-size: 0.83vw;
    font-weight: 300;
    width: auto;
}

.form-message {
    font-size: 0.9vw;
    line-height: 1.5;
    border-radius: 4px;
    padding: 10px 15px;
    margin-top: 15px;
}

.form-message.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.form-message.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

/* Footer */
.footer {
    background-color: var(--white);
    padding: 7.81vw 0;
    width: 100%;
}

.footer-content {
    display: flex;
    flex-direction: column;
    gap: 2.6vw;
}

.footer-logo {
    display: flex;
    align-items: center;
    gap: 1.3vw;
    padding: 0.52vw 0;
}

.footer-logo img {
    width: 4.43vw;
    height: 3.13vw;
}

.footer-nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 1.04vw 2.26vw;
    max-width: 86.46vw;
    width: 100%;
}

.footer-nav a {
    font-size: 0.94vw;
    font-weight: 500;
    line-height: 1.111;
    color: var(--medium-blue);
    text-decoration: none;
    transition: color 0.3s;
}

.footer-nav a:hover {
    color: var(--red);
}

.footer-privacy-link {
    font-size: 0.94vw;
    font-weight: 500;
    color: var(--medium-blue);
    text-decoration: none;
}
.footer-privacy-link:hover {
    color: var(--red);
}

.footer-copyright {
    font-size: 0.83vw;
    font-weight: 300;
    line-height: 1.25;
    color: var(--medium-blue);
}

/* Tablet Styles (768px - 1024px) */
@media screen and (max-width: 1024px) {
    .container {
        height: 100%;
    }
    .product-hero-content
    {
        max-width: 100%!important;
        gap:3rem!important;
        padding-left: 0!important;
    }

    /* Typography */
    h1 {
        font-size: 9.11vw; /* 70px / 768px * 100vw */
    }

    h2 {
        font-size: 6.51vw; /* 50px / 768px * 100vw */
    }

    .subtitle {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
    }

    .text-button {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .text-large {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .text-medium {
        font-size: 2.34vw; /* 18px / 768px * 100vw */
    }

    .text-small {
        font-size: 2.08vw; /* 16px / 768px * 100vw */
    }

    /* Header */
    .header {
        padding: 1.3vw 0; /* 10px / 768px * 100vw */
    }

    .logo-img {
        width: 11.07vw; /* 85px / 768px * 100vw */
        height: 7.81vw; /* 60px / 768px * 100vw */
    }

    .logo-text {
        font-size: 1.82vw; /* 14px / 768px * 100vw */
        width: 19.53vw; /* 150px / 768px * 100vw */
    }

    .social-icon {
        width: 6.51vw; /* 50px / 768px * 100vw */
        height: 6.51vw; /* 50px / 768px * 100vw */
    }

    .social-icon img {
        width: 3.26vw; /* 25px / 768px * 100vw */
        height: 3.26vw; /* 25px / 768px * 100vw */
    }

    .btn {
        padding: 0.65vw 3.26vw; /* 5px 25px / 768px * 100vw */
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .btn-primary {
        padding: 1.95vw 3.26vw; /* 15px 25px / 768px * 100vw */
    }

    /* Hero Section */
    .hero {
        height: 118.49vh; /* 910px / 768px * 100vh */
        min-height: 118.49vh;
    }

    .hero-content {
        padding-top: 26.04vw; /* 200px / 768px * 100vw */
        max-width: 94.4vw; /* 725px / 768px * 100vw */
    }

    .hero-title {
        max-width: 94.4vw;
        margin-bottom: 2.6vw; /* 20px / 768px * 100vw */
    }

    .hero-subtitle {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
        margin-bottom: 2.6vw;
        max-width: 94.4vw;
    }

    .hero-features {
        gap: 0.65vw; /* 5px / 768px * 100vw */
        margin-bottom: 2.6vw;
        max-width: 94.4vw;
    }

    .hero-features li {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
        padding-left: 3.91vw;
        margin-bottom: 0.65vw;
    }

    .hero-features li::before {
        font-size: 3.26vw;
    }

    /* Equipment Types Section */
    .equipment-types {
        padding: 10.42vw 0; /* 80px / 768px * 100vw */
    }

    .section-title {
        margin-bottom: 3.26vw; /* 25px / 768px * 100vw */
        max-width: 94.4vw;
    }

    .equipment-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 1.3vw; /* 10px / 768px * 100vw */
    }

    .equipment-card {
        padding: 2.6vw; /* 20px / 768px * 100vw */
        gap: 1.3vw;
    }

    .equipment-image {
        width: 22.79vw; /* 175px / 768px * 100vw */
        height: 22.79vw;
    }

    .equipment-link {
        width: 25.39vw; /* 195px / 768px * 100vw */
        gap: 0.65vw;
    }

    .equipment-link span {
        font-size: 2.34vw; /* 18px / 768px * 100vw */
    }

    .equipment-link img {
        width: 2.6vw; /* 20px / 768px * 100vw */
        height: 2.6vw;
    }

    /* Trust Section */
    .trust {
        padding: 3.26vw 0;
    }

    .trust-logos {
        gap: 1.3vw;
        justify-content: center;
    }
    
    .trust-logo {
        flex: 0 0 calc((100% - 4 * 1.3vw) / 5);
    }

    .trust-logo {
        height: 15.63vw; /* 120px / 768px * 100vw */
    }

    /* About Section */
    .about {
        padding: 10.42vw 0;
        margin-bottom: 1600px;
    }

    .about-content {
        gap: 2.6vw;
    }
    
    .about-header {
        flex-direction: column;
        gap: 2.6vw;
    }
    
    .about-title {
        margin-bottom: 0;
    }

    .about-text p {
        font-size: 20px;
    }

    .advantages {
        grid-template-columns: 1fr;
        gap: 2.6vw;
    }

    .advantage {
        gap: 1.3vw;
    }

    .advantage-card {
        max-width: 100%;
        height: 540px;
    }

    .advantage-image {
        width: 540px;
        max-width: 100%;
        height: 540px;
    }

    .advantage-icon {
        width: 3.91vw; /* 30px / 768px * 100vw */
        height: 3.91vw;
    }

    .advantage-icon img {
        width: 1.82vw; /* 14px / 768px * 100vw */
        height: 1.82vw;
    }

    .advantage-title {
        font-size: 3.91vw; /* 30px / 768px * 100vw */
        width: 100%;
    }

    .advantage-text {
        font-size: 25px;
    }

    /* Catalog Section */
    .catalog {
        padding: 10.42vw 0;
    }

    .catalog-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 2.6vw;
    }

    .catalog-controls {
        flex-direction: row;
        gap: 1.3vw;
        width: 100%;
        flex-wrap: wrap;
    }

    .catalog-controls {
        justify-content: flex-start;
    }

    .catalog-main-row {
        grid-template-columns: 1fr;
        gap: 2.6vw;
    }

    .filters-desktop {
        display: none;
    }

    .catalog .filters-tablet {
        display: flex;
        flex-direction: column;
        gap: 1.3vw;
        width: 100%;
    }

    .catalog .catalog-controls-desktop {
        display: none;
    }

    .catalog .sort-dropdown {
        display: block;
        width: 100%;
    }

    .catalog .filter-dropdown {
        display: block;
        width: 100%;
    }

    .sort-dropdown-toggle {
        height: 5.21vw; /* 40px / 768px * 100vw */
        padding: 0 2.6vw; /* 20px / 768px * 100vw */
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .sort-arrow {
        width: 2.6vw; /* 20px / 768px * 100vw */
        height: 2.6vw;
    }

    .sort-dropdown-content {
        margin-top: 0.65vw;
        padding: 1.3vw;
    }

    .sort-option {
        padding: 1.3vw 2.6vw;
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .pagination-wrapper-tablet {
        display: flex;
        align-items: center;
        gap: 1.3vw;
        width: 100%;
        justify-content: flex-start;
        margin-top: 1.3vw;
    }

    .pagination-wrapper-tablet .pagination {
        gap: 0.65vw;
    }

    .pagination-wrapper-tablet .pagination-arrow,
    .pagination-wrapper-tablet .pagination-number {
        width: 5.21vw;
        height: 5.21vw;
        font-size: 2.6vw;
    }

    .pagination-wrapper-tablet .pagination-arrow svg {
        width: 2.6vw;
        height: 2.6vw;
    }

    .pagination-wrapper-tablet .pagination-info {
        font-size: 2.6vw;
    }

    .filter-dropdown {
        width: 100%;
    }

    .filter-dropdown-toggle {
        height: 5.21vw; /* 40px / 768px * 100vw */
        padding: 0 2.6vw; /* 20px / 768px * 100vw */
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .filter-arrow {
        width: 2.6vw; /* 20px / 768px * 100vw */
        height: 2.6vw;
    }

    .filter-dropdown-content {
        margin-top: 0.65vw;
        padding: 1.3vw;
        max-height: 52.08vw; /* 400px / 768px * 100vw */
    }

    .sort-box {
        width: 33.85vw; /* 260px / 768px * 100vw */
        height: 5.21vw; /* 40px / 768px * 100vw */
    }

    .filters-desktop {
        padding: 2.6vw;
    }

    .filter-group {
        margin-bottom: 3.91vw;
        padding: 0;
    }

    .filter-group:last-child {
        margin-bottom: 0;
    }

    .filter-title {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
        margin-bottom: 1.95vw; /* 15px / 768px * 100vw */
        padding: 0;
    }

    .filter-list {
        gap: 1.95vw;
        padding: 0;
    }

    .checkbox-item {
        padding: 0.65vw 0;
        min-height: 5.21vw;
    }

    .checkbox-custom {
        width: 3.91vw; /* 30px / 768px * 100vw */
        height: 3.91vw;
    }

    .checkbox-item span:last-child {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
        width: auto;
    }

    .filters-desktop .yith-wcan-reset-navigation a,
    .filters-desktop button.filter-reset,
    .filters-desktop .yith-wcan-reset-navigation button {
        padding: 1.95vw 2.6vw;
        font-size: 2.6vw;
        border-radius: 0.65vw;
    }

    .products-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 1.3vw;
    }

    .product-card {
        padding: 2.6vw;
        gap: 1.3vw;
        min-height: 50vw; /* Унифицируем высоту на планшете */
    }

    .product-image {
        max-width: 22.79vw; /* 175px / 768px * 100vw */
        height: 22.79vw;
    }

    .product-title {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .product-description {
        font-size: 2.08vw; /* 16px / 768px * 100vw */
        max-height: 8vw; /* Ограничиваем высоту описания на планшете */
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        line-clamp: 3; /* Стандартное свойство для совместимости */
        -webkit-box-orient: vertical;
    }

    .product-price {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
        width: 14.97vw; /* 115px / 768px * 100vw */
    }

    .pagination-info {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .pagination-arrow,
    .pagination-number {
        width: 5.21vw; /* 40px / 768px * 100vw */
        height: 5.21vw;
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .pagination-arrow svg {
        width: 2.6vw; /* 20px / 768px * 100vw */
        height: 2.6vw;
    }

    /* FAQ Section */
    .faq {
        padding: 10.42vw 0;
    }

    .faq-item {
        padding: 1.95vw; /* 15px / 768px * 100vw */
    }

    .faq-question h3 {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
    }

    .faq-question img {
        width: 2.6vw; /* 20px / 768px * 100vw */
        height: 2.6vw;
    }

    .faq-answer {
        margin-top: 1.95vw;
    }

    .faq-answer p {
        font-size: 2.34vw; /* 18px / 768px * 100vw */
    }

    /* Contact Section */
    .contact {
        padding: 13.02vw 0; /* увеличен вертикальный отступ */
    }

    .contact-content {
        grid-template-columns: 1fr;
        gap: 5.21vw; /* увеличен отступ между элементами */
    }

    .contact-info {
        gap: 2.6vw; /* увеличен отступ между элементами контактов */
    }

    .contact-email span,
    .contact-email a {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
    }

    .section-title-white {
        font-size: 5.21vw; /* уменьшен размер заголовка */
    }

    .contact-form-section {
        gap: 2.6vw; /* увеличен отступ между элементами формы */
    }

    .contact-form {
        flex-direction: column;
        gap: 2.6vw; /* увеличен отступ между элементами формы */
    }

    .contact-form-row {
        flex-direction: column;
        gap: 2.6vw; /* увеличен отступ между полями */
    }

    .form-input {
        width: 100%;
        height: 6.51vw; /* уменьшена высота поля ввода */
        padding: 1.95vw; /* уменьшен padding */
        font-size: 2.08vw; /* 16px / 768px * 100vw */
    }

    .contact-form .checkbox-item {
        width: 100%;
    }

    .contact-form .checkbox-custom {
        width: 3.91vw; /* 30px / 768px * 100vw */
        height: 3.91vw;
        border-width: 0.13vw; /* 1px / 768px * 100vw */
    }

    .contact-form .checkbox-item span:last-child {
        font-size: 2.08vw; /* 16px / 768px * 100vw */
    }

    /* Footer */
    .footer {
        padding: 10.42vw 0;
    }

    .footer-nav {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.3vw 2.6vw;
    }

    .footer-nav a {
        font-size: 2.34vw; /* 18px / 768px * 100vw */
    }

    .footer-privacy-link {
        font-size: 2.34vw;
    }

    .footer-copyright {
        font-size: 2.08vw; /* 16px / 768px * 100vw */
    }
}

/* Mobile Styles (max-width: 480px) */
@media screen and (max-width: 480px) {
    .container {
        padding: 0 4vw; /* 16px / 400px * 100vw */
    }

    /* Typography */
    h1 {
        font-size: 8vw; /* 32px / 400px * 100vw */
    }

    h2 {
        font-size: 6vw; /* 24px / 400px * 100vw */
    }

    .subtitle {
        font-size: 4vw; /* 16px / 400px * 100vw */
    }

    .text-button {
        font-size: 3.5vw; /* 14px / 400px * 100vw */
    }

    .text-large {
        font-size: 3.5vw; /* 14px / 400px * 100vw */
    }

    .text-medium {
        font-size: 3.25vw; /* 13px / 400px * 100vw */
    }

    .text-small {
        font-size: 3vw; /* 12px / 400px * 100vw */
    }

    /* Header */
    .header {
        padding: 2vw 0;
    }

    .header-content {
        flex-direction: column;
        gap: 2vw;
        align-items: flex-start;
    }

    .logo {
        width: 50%;
    }

    .logo-img {
        width: 15vw;
        height: 11vw;
    }

    .logo-text {
        font-size: 2.5vw;
        width: auto;
    }

    .header-actions {
        width: 100%;
        justify-content: space-between;
        display: none;
    }

    .social-icons {
        gap: 2vw;
    }

    .social-icon {
        width: 8vw;
        height: 8vw;
    }

    .social-icon img {
        width: 4vw;
        height: 4vw;
    }

    .btn {
        padding: 1vw 4vw;
        font-size: 3.5vw;
    }

    .btn-primary {
        padding: 2.5vw 4vw;
    }

    /* Hero Section */
    .hero {
        height: 60vh;
        min-height: 60vh;
    }

    .hero-content {
        padding-top: 8vh;
        max-width: 100%;
    }

    .hero-title {
        max-width: 100%;
        margin-bottom: 3vw;
    }

    .hero-subtitle {
        font-size: 4vw;
        margin-bottom: 3vw;
        max-width: 100%;
    }

    .hero-features {
        gap: 1vw;
        margin-bottom: 3vw;
        max-width: 100%;
    }

    .hero-features li {
        font-size: 4vw;
        padding-left: 5vw;
        margin-bottom: 1vw;
    }

    .hero-features li::before {
        font-size: 4vw;
    }

    /* Equipment Types Section */
    .equipment-types {
        padding: 8vw 0;
    }

    .section-title {
        margin-bottom: 4vw;
        max-width: 100%;
    }

    .equipment-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
    }

    .equipment-card {
        padding: 3vw;
        gap: 2vw;
    }

    .equipment-image {
        width: 30vw;
        height: 30vw;
    }

    .equipment-link {
        width: 35vw;
        gap: 1vw;
    }

    .equipment-link span {
        font-size: 3.25vw;
    }

    .equipment-link img {
        width: 3.5vw;
        height: 3.5vw;
    }

    /* Trust Section */
    .trust {
        padding: 5vw 0;
    }

    .trust-logos {
        gap: 3vw;
        justify-content: center;
    }
    
    .trust-logo {
        flex: 0 0 calc((100% - 1 * 3vw) / 2);
    }

    .trust-logo {
        height: 20vw;
    }

    /* About Section */
    .about {
        padding: 8vw 0;
        margin-bottom: 900px;
    }

    .about-content {
        gap: 4vw;
    }
    
    .about-header {
        flex-direction: column;
        gap: 4vw;
    }
    
    .about-title {
        margin-bottom: 0;
        font-size: 35px;
        font-weight: 700;
        line-height: 1.2;
    }

    .about-text p {
        font-size: 16px;
        font-weight: 300;
        line-height: 1.6;
    }

    .advantages {
        grid-template-columns: 1fr;
        gap: 4vw;
        margin-bottom: 0;
    }

    .advantage-card {
        max-width: 100%;
        width: 345px;
        height: 295px;
        border-radius: 24px;
    }

    .advantage-image {
        width: 345px;
        max-width: 100%;
        height: auto;
    }

    .advantage-info {
        height: auto;
        padding: 16px 18px;
    }

    .advantage-icon {
        width: 32px;
        height: 32px;
        margin-bottom: 10px;
    }

    .advantage-icon svg {
        width: 32px;
        height: 32px;
    }

    .advantage-text {
        font-size: 18px;
        font-weight: 500;
        line-height: 1.4;
    }

    /* Catalog Section */
    .catalog {
        padding: 8vw 0;
    }

    .catalog-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 3vw;
    }

    .catalog-main-row {
        grid-template-columns: 1fr;
        gap: 4vw;
    }

    .filters-desktop {
        display: flex !important;
        flex-direction: column;
        gap: 4vw;
        width: 100%;
        padding: 4vw;
        margin-bottom: 4vw;
    }

    .catalog .filters-tablet {
        display: none;
    }

    .catalog .catalog-controls-desktop {
        display: none;
    }

    .catalog .sort-dropdown {
        display: block;
        width: 100%;
    }

    .catalog .filter-dropdown {
        display: block;
        width: 100%;
    }

    .sort-dropdown-toggle {
        height: 8vw;
        padding: 0 4vw;
        font-size: 3.5vw;
    }

    .sort-arrow {
        width: 4vw;
        height: 4vw;
    }

    .sort-dropdown-content {
        margin-top: 1vw;
        padding: 2vw;
    }

    .sort-option {
        padding: 2vw 4vw;
        font-size: 3.5vw;
    }

    .filter-dropdown-toggle {
        height: 8vw;
        padding: 0 4vw;
        font-size: 3.5vw;
    }

    .filter-arrow {
        width: 4vw;
        height: 4vw;
    }

    .filter-dropdown-content {
        margin-top: 1vw;
        padding: 2vw;
        max-height: 60vw;
    }

    .filters-desktop {
        padding: 4vw;
    }

    .filter-group {
        margin-bottom: 5vw;
        padding: 0;
    }

    .filter-group:last-child {
        margin-bottom: 0;
    }

    .filter-title {
        font-size: 4vw;
        margin-bottom: 3vw;
        padding: 0;
    }

    .filter-list {
        gap: 3vw;
        padding: 0;
    }

    .checkbox-item {
        gap: 2vw;
        padding: 1vw 0;
        min-height: 8vw;
    }

    .checkbox-custom {
        width: 5vw;
        height: 5vw;
    }

    .checkbox-item span:last-child {
        font-size: 3.5vw;
        line-height: 1.4;
        flex: 1;
    }

    .filters-desktop aside {
        width: 100%;
        padding: 0;
    }

    .yith-wcan-filters {
    }

    .filters-desktop .yith-wcan-reset-navigation a,
    .filters-desktop button.filter-reset,
    .filters-desktop .yith-wcan-reset-navigation button {
        padding: 3vw 4vw;
        font-size: 3.5vw;
        border-radius: 1vw;
        width: 100%;
    }

    .products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
    }

    .product-card {
        padding: 2vw;
        min-height: 80vw; /* Унифицируем высоту на мобильных */
    }

    .product-image {
        max-width: 100%;
        height: 35vw;
    }

    .product-title {
        font-size: 3.5vw;
    }

    .product-description {
        font-size: 3vw;
        max-height: 12vw; /* Ограничиваем высоту описания на мобильных */
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        line-clamp: 3; /* Стандартное свойство для совместимости */
        -webkit-box-orient: vertical;
    }

    .product-price {
        font-size: 3.5vw;
        width: auto;
    }

    .btn-cart {
        padding: 1.5vw 3vw;
        font-size: 3vw;
    }

    .pagination-wrapper-tablet {
        gap: 2vw;
        margin-top: 2vw;
    }

    .pagination-wrapper-tablet .pagination {
        gap: 1vw;
    }

    .pagination-wrapper-tablet .pagination-arrow,
    .pagination-wrapper-tablet .pagination-number {
        width: 8vw;
        height: 8vw;
        font-size: 3.5vw;
    }

    .pagination-wrapper-tablet .pagination-arrow svg {
        width: 4vw;
        height: 4vw;
    }

    .pagination-wrapper-tablet .pagination-info {
        font-size: 3.5vw;
    }

    /* FAQ Section */
    .faq {
        padding: 8vw 0;
    }

    .faq-item {
        padding: 3vw;
    }

    .faq-question h3 {
        font-size: 4vw;
    }

    .faq-question img {
        width: 4vw;
        height: 4vw;
    }

    .faq-answer {
        margin-top: 3vw;
    }

    .faq-answer p {
        font-size: 3.5vw;
    }

    /* Contact Section */
    .contact {
        padding: 8vw 0;
    }

    .contact-content {
        grid-template-columns: 1fr;
        gap: 5vw;
    }

    .contact-email span,
    .contact-email a {
        font-size: 4vw;
    }

    .contact-form {
        flex-direction: column;
        gap: 2vw;
    }

    .contact-form-row {
        flex-direction: column;
        gap: 2vw;
    }

    .form-input {
        width: 100%;
        height: 10vw;
        padding: 3vw;
        font-size: 3vw;
    }

    .contact-form .checkbox-item {
        width: 100%;
    }

    .contact-form .checkbox-custom {
        width: 5vw;
        height: 5vw;
        border-width: 0.25vw;
    }

    .contact-form .checkbox-item span:last-child {
        font-size: 3vw;
    }

    /* Footer */
    .footer {
        padding: 8vw 0;
    }

    .footer-nav {
        grid-template-columns: 1fr;
        gap: 2vw;
    }

    .footer-nav a {
        font-size: 3.5vw;
    }

    .footer-privacy-link {
        font-size: 3.5vw;
    }

    .footer-copyright {
        font-size: 3vw;
    }
}

/* Product Page Styles */
.product-page {
    padding: 2.6vw 0;
    width: 100%;
}

.product-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4.17vw;
    width: 100%;
    max-width: 86.46vw;
    margin: 0 auto;
}

.product-gallery {
    display: flex;
    flex-direction: column;
    gap: 1.04vw;
}

.product-main-image {
    width: 100%;
    height: 40.63vw;
    background: var(--white);
    border-radius: 0.52vw;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-main-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-thumbnails {
    display: flex;
    gap: 1.04vw;
}

.thumbnail {
    width: 13.54vw;
    height: 13.54vw;
    background: var(--white);
    border: 0.052vw solid var(--light-grey);
    border-radius: 0.26vw;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s;
}

.thumbnail:hover {
    border-color: var(--medium-blue);
}

.thumbnail.active {
    border-color: var(--red);
}

.thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-info-section {
    display: flex;
    flex-direction: column;
    gap: 2.6vw;
}

.product-page-title {
    font-size: 3.13vw;
    font-weight: 700;
    line-height: 1.2;
    color: var(--dark-blue);
    text-transform: uppercase;
}

.product-price-section {
    display: flex;
    align-items: center;
    gap: 1.04vw;
}

.product-price-large {
    font-size: 2.6vw;
    font-weight: 700;
    color: var(--red);
}

.product-description-full {
    color: var(--dark-blue);
}

.product-description-full p {
    font-size: 1.04vw;
    line-height: 1.5;
    margin-bottom: 1.04vw;
    font-weight: 500;
}

.product-features {
    display: flex;
    flex-direction: column;
    gap: 1.04vw;
}

.product-features h3 {
    font-size: 1.3vw;
    font-weight: 700;
    color: var(--dark-blue);
    text-transform: uppercase;
}

.features-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.52vw;
}

.features-list li {
    font-size: 1.04vw;
    line-height: 1.5;
    color: var(--dark-blue);
    padding-left: 1.56vw;
    position: relative;
    font-weight: 500;
}

.features-list li::before {
    content: '•';
    position: absolute;
    left: 0;
    color: var(--red);
    font-size: 1.3vw;
}

.product-actions {
    display: flex;
    gap: 1.04vw;
    flex-wrap: wrap;
}

.btn-cart-large {
    flex: 1;
    min-width: 20.83vw;
    padding: 1.04vw 2.6vw;
    font-size: 1.04vw;
}

/* Tablet Product Page */
@media screen and (max-width: 1024px) {
    .product-content {
        grid-template-columns: 1fr;
        gap: 3.91vw;
    }

    .product-main-image {
        height: 52.08vw;
    }

    .product-thumbnails {
        justify-content: center;
    }

    .thumbnail {
        width: 17.71vw;
        height: 17.71vw;
    }

    .product-page-title {
        font-size: 4.17vw;
    }

    .product-price-large {
        font-size: 3.39vw;
    }

    .product-description-full p {
        font-size: 2.6vw;
    }

    .product-features h3 {
        font-size: 3.26vw;
    }

    .features-list li {
        font-size: 2.6vw;
        padding-left: 3.91vw;
    }

    .features-list li::before {
        font-size: 3.26vw;
    }

    .product-actions {
        flex-direction: column;
    }

    .btn-cart-large {
        width: 100%;
        padding: 2.6vw;
        font-size: 2.6vw;
    }
}

/* Mobile Product Page */
@media screen and (max-width: 480px) {
    .product-page {
        padding: 4vw 0;
    }

    .product-content {
        grid-template-columns: 1fr;
        gap: 5vw;
    }

    .product-main-image {
        height: 60vw;
    }

    .product-thumbnails {
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 2vw;
    }

    .thumbnail {
        width: 25vw;
        height: 25vw;
        flex-shrink: 0;
    }

    .product-page-title {
        font-size: 5vw;
    }

    .product-price-large {
        font-size: 5vw;
    }

    .product-description-full p {
        font-size: 4vw;
    }

    .product-features h3 {
        font-size: 4.5vw;
    }

    .features-list li {
        font-size: 4vw;
        padding-left: 6vw;
    }

    .features-list li::before {
        font-size: 5vw;
    }

    .product-actions {
        flex-direction: column;
        gap: 2vw;
    }

    .btn-cart-large {
        width: 100%;
        padding: 3vw;
        font-size: 4vw;
    }
}

/* Category Page Styles */
.category-hero {
    position: relative;
    width: 100%;
    height: 20.83vw; /* 400px / 1920px * 100vw */
    min-height: 20.83vw;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.category-hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000;
    z-index: 0;
}

.category-hero-content {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 86.46vw;
    margin: 0 auto;
    padding: 0 6.77vw;
}

.category-title {
    color: var(--white);
    font-size: 2.6vw; /* 50px / 1920px * 100vw */
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    margin-bottom: 0.83vw; /* 16px / 1920px * 100vw */
}

.breadcrumbs {
    color: var(--light-grey);
    font-size: 1.04vw; /* 20px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.5;
}

.breadcrumbs a:hover {
	text-decoration: underline !important;
}

.category-content-section {
    padding: 2.6vw 0;
    width: 100%;
}

.category-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2.6vw;
    width: 100%;
    max-width: 86.46vw;
    margin-left: auto;
    margin-right: auto;
    padding: 0 6.77vw;
}

.category-sort {
    display: flex;
    gap: 10px;
}

.category-pagination-top {
    display: flex;
    align-items: center;
    gap: 1.04vw;
}

.category-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.04vw;
    width: 100%;
    max-width: 86.46vw;
    margin: 0 auto 2.6vw;
    padding: 0 6.77vw;
}

.category-card-link {
    text-decoration: none;
    color: inherit;
}

.equipment-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
}

.equipment-card-link:hover {
    text-decoration: none;
    color: inherit;
}

.category-card {
    background: var(--white);
    border-radius: 1.56vw; /* 30px / 1920px * 100vw */
    padding: 2.04vw;
    border: 0.052vw solid transparent;
    transition: all 0.3s;
    cursor: pointer;
    height: 7vh;
    display: flex;
    align-items: center;
}

.category-card:hover {
    border-color: var(--light-grey);
}

.category-card-active {
    border: 0.052vw solid var(--dark-red);
}

.category-card-active .category-card-text {
    color: var(--dark-red);
}

.category-card-active .category-card-arrow {
    filter: none;
}

.category-card-content {
    display: flex;
    align-items: center;
    gap: 0.52vw;
    width: 13.54vw; /* 260px / 1920px * 100vw */
}

.category-card-text {
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.111;
    color: var(--medium-blue);
    flex: 1;
}

.category-card-arrow {
    width: 1.04vw;
    height: 1.04vw;
    filter: brightness(0) saturate(100%) invert(28%) sepia(8%) saturate(1000%) hue-rotate(200deg) brightness(95%) contrast(88%);
}

.category-card-active .category-card-arrow {
    filter: brightness(0) saturate(100%) invert(12%) sepia(90%) saturate(5000%) hue-rotate(350deg) brightness(60%) contrast(100%);
}

.category-products {
    width: 100%;
    max-width: 86.46vw;
    margin: 0 auto;
    padding: 0 6.77vw;
}

.text-section {
    padding: 7.81vw 0;
    padding-bottom: 7vw;
    width: 100%;
}

.text-content {
    max-width: 86.46vw;
    margin: 0 auto;
}

.text-content p {
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.667;
    color: var(--dark-blue);
    margin: 0 0 1em 0;
}
.text-content p:last-child {
    margin-bottom: 0;
}

/* Абзацы и списки при вставке из редактора — аккуратная выкладка */
.text-content ul,
.text-content ol {
    margin: 0 0 1em 0;
    padding-left: 1.5em;
    font-size: 0.94vw;
    font-weight: 500;
    line-height: 1.667;
    color: var(--dark-blue);
}
.text-content ul {
    list-style-type: disc;
}
.text-content ol {
    list-style-type: decimal;
}
.text-content li {
    margin-bottom: 0.35em;
}
.text-content li:last-child {
    margin-bottom: 0;
}
.text-content h2,
.text-content h3,
.text-content h4 {
    margin: 1.2em 0 0.5em 0;
    font-weight: 700;
    color: var(--dark-blue);
    line-height: 1.3;
}
.text-content h2 { font-size: 1.25em; }
.text-content h3 { font-size: 1.1em; }
.text-content h4 { font-size: 1em; }
.text-content h2:first-child,
.text-content h3:first-child,
.text-content h4:first-child {
    margin-top: 0;
}
.text-content a {
    color: var(--medium-blue);
    text-decoration: underline;
}
.text-content a:hover {
    color: var(--red);
}

/* Таблицы из редактора (без ручных inline-правок) */
.text-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 1.5em 0;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.text-content thead th {
    background: #f5f5f5;
    font-weight: 700;
}
.text-content th,
.text-content td {
    border: 1px solid rgba(30, 40, 60, 0.2);
    padding: 0.65em 0.75em;
    text-align: left;
    vertical-align: top;
    font-size: 0.94vw;
    line-height: 1.5;
    color: var(--dark-blue);
}

/* Нормализация типографики при вставке HTML из внешних редакторов */
.text-content p[style],
.text-content ul[style],
.text-content ol[style],
.text-content li[style],
.text-content h2[style],
.text-content h3[style],
.text-content h4[style],
.text-content table[style],
.text-content thead[style],
.text-content tbody[style],
.text-content tr[style],
.text-content th[style],
.text-content td[style] {
    font-size: inherit !important;
    line-height: inherit !important;
}
.text-content p[style],
.text-content ul[style],
.text-content ol[style],
.text-content table[style] {
    margin-bottom: 1em !important;
}
.text-content ul[style],
.text-content ol[style] {
    padding-left: 1.5em !important;
}
.text-content th[style],
.text-content td[style] {
    padding: 0.65em 0.75em !important;
    border-color: rgba(30, 40, 60, 0.2) !important;
}

/* Tablet Category Page */
@media screen and (max-width: 1024px) {
    .category-hero {
        height: 52.08vw; /* 400px / 768px * 100vw */
        min-height: 52.08vw;
    }

    .category-title {
        font-size: 6.51vw; /* 50px / 768px * 100vw */
        margin-bottom: 2.08vw;
    }

    .breadcrumbs {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .category-controls {
        flex-direction: column;
        align-items: flex-start;
        gap: 2.6vw;
        margin-bottom: 3.91vw;
    }

    .category-cards {
        grid-template-columns: repeat(3, 1fr);
        gap: 1.3vw;
        margin-bottom: 3.91vw;
    }

    .category-card-content {
        width: 100%;
    }

    .category-card-text {
        font-size: 2.34vw; /* 18px / 768px * 100vw */
    }

    .category-card-arrow {
        width: 2.6vw;
        height: 2.6vw;
    }

    .text-content p {
        font-size: 2.34vw; /* 18px / 768px * 100vw */
    }
    .text-content ul,
    .text-content ol {
        font-size: 2.34vw;
    }
    .text-content th,
    .text-content td {
        font-size: 2.34vw;
    }
}

/* Mobile Category Page */
@media screen and (max-width: 480px) {
    .category-hero {
        height: 40vw;
        min-height: 70vw;
    }

    .category-title {
        font-size: 5vw;
        margin-bottom: 2vw;
    }

    .breadcrumbs {
        font-size: 3.5vw;
    }

    .category-controls {
        flex-direction: column;
        align-items: flex-start;
        gap: 3vw;
        margin-bottom: 5vw;
    }

    .category-cards {
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
        margin-bottom: 5vw;
    }

    .category-card {
        padding: 2vw;
    }

    .category-card-content {
        width: 100%;
    }

    .category-card-text {
        font-size: 3.25vw;
    }

    .category-card-arrow {
        width: 3.5vw;
        height: 3.5vw;
    }

    .text-content p {
        font-size: 3.5vw;
    }
    .text-content ul,
    .text-content ol {
        font-size: 3.5vw;
        padding-left: 1.2em;
    }
    .text-content th,
    .text-content td {
        font-size: 3.5vw;
        padding: 0.55em 0.65em;
    }
    .category-hero-content {
        position: relative;
        z-index: 1;
        width: 100%;
        max-width: 86.46vw;
    }
}

/* Product Page Styles */
.product-hero {
    position: relative;
    height: 300px; /* 400px / 1920px * 100vw */
    background: #000000;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.product-hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000000;
    z-index: 0;
}

.product-hero-content {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 86.46vw;
    margin: 0 auto;
    padding: 40px 6.77vw 0 6.77vw;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    height: 100%;
	min-height: 110px;
    gap: 1.56vw;
}

.product-hero-title {
    font-size: 2.6vw; /* 50px / 1920px * 100vw */
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    color: var(--white);
    margin: 0;
}

.product-breadcrumbs {
    font-size: 1.04vw; /* 20px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.5;
    display: flex;
    align-items: center;
    gap: 0.52vw;
}

.breadcrumb-link {
    color: var(--light-grey);
    text-decoration: none;
    transition: color 0.3s;
}

.breadcrumb-link:hover {
    color: var(--white);
}

.breadcrumb-link a:hover {
    color: var(--white);
	text-decoration: underline;
}

.breadcrumb-separator {
    color: var(--light-grey);
}

.breadcrumb-current {
    color: var(--red);
}

.product-main-section {
    padding: 2.6vw 0; /* 50px / 1920px * 100vw */
    background: var(--white);
}

.product-main-content {
    display: grid;
    grid-template-columns: 42.71vw 1fr; /* 820px / 1920px * 100vw */
    gap: 4.17vw; /* 80px / 1920px * 100vw */
    align-items: start;
}

.product-image-wrapper {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.product-image-slider {
    display: flex;
    transition: transform 0.5s ease-in-out;
    width: 100%;
}

.product-image-slide {
    min-width: 100%;
    flex-shrink: 0;
    height: 40.63vw;
    background: var(--white);
    border-radius: 0.52vw;
    overflow: hidden;
}

.product-main-image {
    width: 100%;
    height: 100%!important;
    object-fit: contain;
    display: block;
}

.product-image-indicators {
    display: flex;
    justify-content: center;
    gap: 0.52vw;
    margin-top: 1.04vw;
}

.product-indicator {
    width: 0.52vw;
    height: 0.52vw;
    border-radius: 50%;
    background: var(--medium-blue);
    cursor: pointer;
    transition: all 0.3s;
}

.product-indicator.active {
    background: var(--red);
    width: 0.78vw;
    height: 0.78vw;
}

/* Видео товара рядом с галереей */
.product-gallery-video {
    width: min(22vw, 100%);
    min-width: 16.67vw;
    margin-top: 0.78vw;
    border-radius: 0.52vw;
    overflow: hidden;
    background: #111;
    position: relative;
    aspect-ratio: 16 / 9;
    box-shadow: 0 0.42vw 1.25vw rgba(20, 30, 50, 0.08);
    border: 0.052vw solid rgba(71, 73, 89, 0.12);
}
.product-gallery-video::before {
    content: 'Видео';
    position: absolute;
    top: 0.52vw;
    left: 0.52vw;
    z-index: 2;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    font-size: 0.63vw;
    line-height: 1;
    padding: 0.3vw 0.46vw;
    border-radius: 0.26vw;
}
.product-image-slide-video .product-gallery-video,
.product-image-slide-video .product-gallery-video-mp4 {
    width: min(88%, 34vw);
    min-width: 0;
    margin-top: 0;
    height: auto;
    aspect-ratio: 1 / 1;
    border-radius: 0.52vw;
    border: 0.052vw solid rgba(71, 73, 89, 0.12);
    box-shadow: 0 0.42vw 1.25vw rgba(20, 30, 50, 0.08);
}
.product-image-slide-video .product-gallery-video::before {
    top: 0.78vw;
    left: 0.78vw;
}
.product-image-slide-video {
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
}
.product-gallery-video-poster {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.product-gallery-video-play {
    width: 4.17vw;
    height: 4.17vw;
    border-radius: 50%;
    background: rgba(255,255,255,0.9);
    display: block;
    position: relative;
    transition: transform 0.2s ease;
}
.product-gallery-video:hover .product-gallery-video-play {
    transform: scale(1.07);
}
.product-gallery-video-play::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -0.4vw;
    margin-top: -0.7vw;
    border: 0.7vw solid transparent;
    border-left-color: #333;
    border-width: 0.7vw 0 0.7vw 1.1vw;
}
.product-gallery-video-iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.product-gallery-video-iframe iframe {
    width: 100%;
    height: 100%;
    border: none;
}
.product-gallery-video-mp4 {
    width: min(22vw, 100%);
    min-width: 16.67vw;
    margin-top: 0.78vw;
    aspect-ratio: 16 / 9;
    border-radius: 0.52vw;
    overflow: hidden;
    box-shadow: 0 0.42vw 1.25vw rgba(20, 30, 50, 0.08);
    border: 0.052vw solid rgba(71, 73, 89, 0.12);
}
.product-gallery-video-native {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    background: #000;
}

.product-details-wrapper {
    display: flex;
    flex-direction: column;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
}

.product-details-info {
    display: flex;
    flex-direction: column;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
}

.product-details-info {
    display: flex;
    flex-direction: column;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
}

.product-category-tag {
    margin-bottom: 0.52vw;
}

.product-detail-item {
    display: flex;
    gap: 2.6vw; /* 50px / 1920px * 100vw */
}

.product-detail-label {
    font-size: 1.04vw; /* 20px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.5;
    color: var(--dark-blue);
    width: 13.54vw; /* 260px / 1920px * 100vw */
}

.product-detail-value {
    font-size: 1.3vw; /* 25px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.2;
    color: var(--dark-blue);
}

.product-description-full {
    margin-top: 1.56vw; /* 30px / 1920px * 100vw */
}

.product-description-full p {
    font-size: 1.04vw; /* 20px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.5;
    color: var(--dark-blue);
}

.product-actions-wrapper {
    display: flex;
    flex-direction: column;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
}

.product-details-info .product-links {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    margin-top: 1.56vw;
}
.product-links
{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    margin-top: 1.56vw;
}

.product-link-card {
    background: var(--light-grey);
    border-radius: 1.56vw; /* 30px / 1920px * 100vw */
    padding: 1.04vw; /* 20px / 1920px * 100vw */
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    text-decoration: none;
    color: var(--medium-blue);
    width: 13.54vw; /* 260px / 1920px * 100vw */
}

.product-link-card span {
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.111;
}

.product-link-card img {
    width: 1.04vw;
    height: 1.04vw;
    filter: brightness(0) saturate(100%) invert(28%) sepia(8%) saturate(1000%) hue-rotate(200deg) brightness(95%) contrast(88%);
}

.product-price-section {
    margin: 0;
}

.product-price-large {
    font-size: 2.6vw; /* 50px / 1920px * 100vw */
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    color: var(--dark-blue);
}

.btn-order-equipment {
    width: 17.97vw; /* 345px / 1920px * 100vw */
    padding: 0.78vw 1.3vw; /* 15px 25px / 1920px * 100vw */
    margin-top: 0;
}

.product-specifications {
    background: white;
}

.specifications-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.04vw; /* отступ между колонками */
    max-width: 86.46vw;
    margin: 0 auto;
    padding: 0 6.77vw;
}

.spec-column {
    display: flex;
    flex-direction: column;
}

.spec-item {
    font-size: 1.04vw; /* 20px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.5;
    color: var(--dark-blue);
    padding: 0.78vw 1.56vw; /* 15px 30px / 1920px * 100vw */
    margin: 0;
    border-radius: 0.26vw; /* округление углов */
    display: flex;
    align-items: center;
    box-sizing: border-box;
}

.spec-item:not(:last-child) {
    margin-bottom: 0.52vw; /* отступ между строками */
}

.spec-column-labels .spec-item:nth-child(odd) {
    background: var(--light-grey);
}

.spec-column-labels .spec-item:nth-child(even) {
    background: var(--white);
}

.spec-column-values .spec-item:nth-child(odd) {
    background: var(--light-grey);
}

.spec-column-values .spec-item:nth-child(even) {
    background: var(--white);
}


.specifications-note {
    max-width: 86.46vw;
    margin: 0 auto;
    padding: 0 6.77vw;
    margin-top: 3.13vw; /* 60px / 1920px * 100vw */
}

.specifications-note p {
    font-size: 1.04vw; /* 20px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.5;
    color: var(--dark-blue);
    width: 28.13vw; /* 540px / 1920px * 100vw */
}

.video-review-section {
    padding: 7.81vw 0; /* 150px / 1920px * 100vw */
    padding-bottom: 0;
    background: white;
}

.video-review-content {
    display: grid;
    grid-template-columns: 1fr 42.71vw; /* заголовок слева, видео справа */
    gap: 4.17vw; /* 80px / 1920px * 100vw */
    align-items: start;
}

.video-review-section .section-title {
    color: var(--dark-blue);
    margin: 0;
}

.video-player-placeholder {
    width: 42.71vw; /* 820px / 1920px * 100vw */
    height: 23.44vw; /* 450px / 1920px * 100vw - прямоугольник */
    background: var(--dark-blue);
    border-radius: 0.26vw;
}

.video-player-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 0.26vw;
    overflow: hidden;
    background: var(--dark-blue);
}

.video-poster {
    position: relative;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: opacity 0.3s ease;
}

.video-poster:hover {
    opacity: 0.9;
}

.video-poster-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.video-play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    transition: transform 0.3s ease;
}

.video-poster:hover .video-play-button {
    transform: translate(-50%, -50%) scale(1.1);
}

.video-iframe-container {
    position: relative;
    width: 100%;
    height: 100%;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
}

.video-iframe-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.similar-products-section {
    padding: 7.81vw 0 7.81vw 0; /* 150px / 1920px * 100vw */
    background: var(--white);
    position: relative;
}

.similar-products-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: var(--light-grey);
    z-index: 0;
}

.similar-products-section .container {
    position: relative;
    z-index: 1;
}

.similar-products-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0.52vw;
    margin-bottom: 1.56vw; /* 30px */
}

.similar-products-nav {
    display: flex;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
    position: relative;
    z-index: 100;
}

.slider-nav-btn {
    background: var(--light-grey);
    border: none;
    border-radius: 0.26vw; /* 5px / 1920px * 100vw */
    padding: 0.52vw; /* 10px / 1920px * 100vw */
    cursor: pointer !important;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    transition: opacity 0.3s ease;
    pointer-events: auto !important;
    position: relative;
    z-index: 100 !important;
    user-select: none;
    -webkit-user-select: none;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.slider-nav-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.slider-nav-btn:not(:disabled):hover {
    opacity: 0.8;
}

.slider-nav-btn svg {
    width: 1.04vw; /* 20px / 1920px * 100vw */
    height: 1.04vw; /* 20px / 1920px * 100vw */
}

.similar-products-title {
    text-align: left;
    margin: 0;
}

.similar-products-content {
    display: flex;
    flex-direction: column;
    gap: 2.6vw;
}

.similar-products-slider {
    overflow: hidden;
    width: 100%;
    position: relative;
    order: 1;
}

.similar-products-note {
    margin-top: 0;
    padding: 0;
    position: relative;
    order: 2;
}

.similar-products-note p {
    font-size: 1.04vw;
    font-weight: 500;
    line-height: 1.5;
    color: var(--dark-blue);
    margin: 0;
}

.similar-products-slider-track {
    display: flex;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    transition: transform 0.5s ease-in-out;
    will-change: transform;
}

.similar-products-slider-track .product-card {
    flex: 0 0 auto;
    width: calc((100% - 3.12vw) / 4); /* 4 cards per row, accounting for 3 gaps */
    min-width: 0;
}

.product-advantages-section {
    padding: 7.81vw 0; /* 150px / 1920px * 100vw */
    background: var(--dark-blue);
}

.product-advantages-section .section-title {
    margin-bottom: 2.6vw;
}

.advantages-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2.6vw; /* 50px / 1920px * 100vw */
}

.advantage-item {
    display: flex;
    flex-direction: column;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    align-items: flex-start;
}

.advantage-icon {
    width: 3.13vw; /* 60px / 1920px * 100vw */
    height: 3.13vw; /* 60px / 1920px * 100vw */
    display: flex;
    align-items: center;
    justify-content: center;
}

.advantage-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(0) saturate(100%) invert(12%) sepia(90%) saturate(5000%) hue-rotate(350deg) brightness(60%) contrast(100%);
}

.product-advantages-section .advantage-title {
    font-size: 1.3vw; /* 25px / 1920px * 100vw */
    font-weight: 700;
    line-height: 1.2;
    color: var(--white);
    text-transform: none;
    margin: 0;
    position: static !important;
    width: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: block !important;
}

.product-advantages-section .advantage-text {
    font-size: 1.04vw; /* 20px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.5;
    color: var(--white);
    margin: 0;
    display: block !important;
}

.section-title-white {
    color: var(--white);
}

.contact-details {
    display: flex;
    flex-direction: column;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
    margin-top: 1.04vw; /* 20px / 1920px * 100vw */
}

.contact-detail-item {
    display: flex;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
}

.contact-label {
    font-size: 1.3vw; /* 25px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.2;
    color: var(--light-grey);
}

.contact-value {
    font-size: 1.3vw; /* 25px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.2;
    color: var(--white);
}

.contact-social {
    display: flex;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
    margin-top: 1.04vw; /* 20px / 1920px * 100vw */
}

.contact-social .social-icon {
    width: 2.6vw; /* 50px / 1920px * 100vw */
    height: 2.6vw; /* 50px / 1920px * 100vw */
    border: 0.052vw solid var(--white);
    border-radius: 1.56vw; /* 30px / 1920px * 100vw */
}

.contact-subtitle {
    font-size: 1.3vw; /* 25px / 1920px * 100vw */
    font-weight: 500;
    line-height: 1.2;
    color: var(--light-grey);
    margin-top: 1.04vw; /* 20px / 1920px * 100vw */
}

.contact-form-wrapper {
    display: flex;
    flex-direction: column;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
}

.contact-checkbox {
    display: flex;
    align-items: center;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
}

.contact-checkbox label {
    font-size: 0.83vw; /* 16px / 1920px * 100vw */
    font-weight: 300;
    line-height: 1.25;
    color: var(--light-grey);
}

@media (max-width: 1024px) {
    .product-hero {
        height: 350px; /* 400px / 768px * 100vw */
    }

    .product-hero-title {
        font-size: 6.51vw; /* 50px / 768px * 100vw */
    }

    .product-breadcrumbs {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
        width: 100%;
        gap: 0.65vw;
    }
    
    .product-hero-content {
        max-width: 100% !important;
        gap: 3rem !important;
        padding-left: 0 !important;
		padding-bottom: 40px !important;
    }
    
    .container {
        height: 100%;
    }
    .about-container {
        height: 515px!important;
    }

    .product-image-slide {
        height: 60vw; /* увеличен размер слайдера изображений */
    }

    .product-image-wrapper {
        align-self: flex-start; /* прижато к левому краю */
    }
    .product-gallery-video,
    .product-gallery-video-mp4 {
        width: 100%;
        min-width: 0;
        margin-top: 1.6vw;
    }
    .product-image-slide-video .product-gallery-video,
    .product-image-slide-video .product-gallery-video-mp4 {
        width: min(88%, 50vw);
        margin-top: 0;
        border-radius: 1.04vw;
    }
    .product-gallery-video::before {
        top: 1.04vw;
        left: 1.04vw;
        font-size: 1.3vw;
        padding: 0.65vw 0.95vw;
        border-radius: 0.52vw;
    }

    .product-image-indicators {
        gap: 0.65vw;
        margin-top: 1.3vw;
    }

    .product-indicator {
        width: 0.65vw;
        height: 0.65vw;
    }

    .product-indicator.active {
        width: 0.98vw;
        height: 0.98vw;
    }

    .product-main-content {
        grid-template-columns: 1fr;
        gap: 5.21vw; /* 40px / 768px * 100vw */
    }

    .product-detail-label {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
        width: 33.85vw; /* 260px / 768px * 100vw */
    }

    .product-detail-value {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
    }

    .product-description-full p {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
    }

    .product-link-card {
        width: 33.85vw; /* 260px / 768px * 100vw */
        padding: 2.6vw; /* 20px / 768px * 100vw */
    }

    .product-link-card span {
        font-size: 2.34vw; /* 18px / 768px * 100vw */
    }

    .product-price-large {
        font-size: 6.51vw; /* 50px / 768px * 100vw */
    }

    .btn-order-equipment {
        width: 44.92vw; /* 345px / 768px * 100vw */
        padding: 1.95vw 3.26vw; /* 15px 25px / 768px * 100vw */
    }

    .specifications-grid {
        grid-template-columns: 1fr 1fr;
        gap: 1.3vw;
        padding: 0;
    }

    .spec-item {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
        border-radius: 0.65vw;
        min-height: 7.81vw;
    }

    .spec-item:not(:last-child) {
        margin-bottom: 0.65vw;
    }

    .specifications-note p {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
        width: 70.31vw; /* 540px / 768px * 100vw */
    }

    .video-review-section {
        padding-bottom: 0;
    }

    .video-review-content {
        grid-template-columns: 1fr;
        gap: 3.91vw;
    }

    .video-review-section .section-title {
        color: var(--dark-blue);
    }

    .video-player-placeholder {
        width: 100%;
        height: 58.59vw; /* прямоугольник на планшете */
    }

    .similar-products-section {
        padding: 10.42vw 0 10.42vw 0;
    }

    .similar-products-header {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 3vw;
    }

    .similar-products-title {
        text-align: left;
    }

    .similar-products-content {
        flex-direction: column;
        gap: 3vw;
    }

    .slider-nav-btn {
        width: 5.21vw;
        height: 5.21vw;
        padding: 1.3vw;
    }

    .slider-nav-btn svg {
        width: 2.6vw;
        height: 2.6vw;
    }

    .similar-products-note {
        margin-top: 0;
        padding: 0;
    }

    .similar-products-note p {
        font-size: 2.6vw;
    }

    .product-image-slide {
        height: 60vw; /* увеличен размер слайдера изображений */
    }

    .similar-products-slider-track .product-card {
        width: calc((100% - 2.08vw) / 3);
    }

    .similar-products-slider-track .product-card .product-image {
        height: 30vw; /* увеличен размер изображения в карточке */
    }

    .advantages-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .advantage-icon {
        width: 7.81vw; /* 60px / 768px * 100vw */
        height: 7.81vw; /* 60px / 768px * 100vw */
    }

    .product-advantages-section .advantage-title {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
        font-weight: 700;
        color: var(--white);
        position: static;
        width: auto;
        bottom: auto;
        left: auto;
    }

    .product-advantages-section .advantage-text {
        font-size: 2.6vw; /* 20px / 768px * 100vw */
        color: var(--white);
    }

    .contact-label,
    .contact-value {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
    }

    .contact-social .social-icon {
        width: 6.51vw; /* 50px / 768px * 100vw */
        height: 6.51vw; /* 50px / 768px * 100vw */
    }

    .contact-subtitle {
        font-size: 3.26vw; /* 25px / 768px * 100vw */
    }

    .contact-checkbox label {
        font-size: 2.08vw; /* 16px / 768px * 100vw */
    }
}

@media (max-width: 480px) {
    .product-hero {
        height: 250px; /* 400px / 360px * 100vw */
    }

    .product-hero .container {
        padding: 0 4vw !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        width: 100%;
    }
    
    .product-hero-content {
        max-width: 100% !important;
        width: 100% !important;
		min-height: 70px;
        padding: 0 0 30px 0 !important; /* убран padding, так как он уже в container */
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    .product-hero-title {
        font-size: 9vw; /* 50px / 360px * 100vw */
    }

    .product-breadcrumbs {
        font-size: 4vw; /* 20px / 360px * 100vw */
        width: 100%;
        gap: 1.11vw;
    }

    .product-image-slide {
        height: 70vw; /* увеличен размер слайдера изображений */
    }

    .product-image-wrapper {
        align-self: flex-start; /* прижато к левому краю */
    }
    .product-gallery-video,
    .product-gallery-video-mp4 {
        width: 100%;
        min-width: 0;
        margin-top: 2.78vw;
    }
    .product-image-slide-video .product-gallery-video,
    .product-image-slide-video .product-gallery-video-mp4 {
        width: min(82%, 52vw);
        margin-top: 0;
        border-radius: 2.22vw;
    }
    .product-gallery-video::before {
        top: 1.67vw;
        left: 1.67vw;
        font-size: 2.78vw;
        padding: 1.11vw 1.67vw;
        border-radius: 1.11vw;
    }
    .product-gallery-video-play {
        width: 13.33vw;
        height: 13.33vw;
    }

    .product-image-indicators {
        gap: 1.11vw;
        margin-top: 2.22vw;
    }

    .product-indicator {
        width: 1.11vw;
        height: 1.11vw;
    }

    .product-indicator.active {
        width: 1.67vw;
        height: 1.67vw;
    }

    .product-main-content {
        gap: 11.11vw; /* 40px / 360px * 100vw */
        padding: 0;
        margin: 0;
        max-width: 100%;
        width: 100%;
        box-sizing: border-box;
    }
    
    .product-main-section {
        padding: 2.6vw 0;
        width: 100%;
        overflow-x: hidden;
    }
    
    .product-main-section .container {
        padding: 0 4vw;
        max-width: 100%;
        box-sizing: border-box;
        width: 100vw;
    }
    
    .product-details-wrapper,
    .product-image-wrapper {
        width: 100vw;
        max-width: 100%;
        box-sizing: border-box;
    }
    
    .product-details-info,
    .product-image-slider,
    .product-image-slide {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .product-detail-label {
        font-size: 5.56vw; /* 20px / 360px * 100vw */
        width: 65vw; /* 260px / 360px * 100vw */
    }

    .product-detail-value {
        font-size: 6.94vw; /* 25px / 360px * 100vw */
    }

    .product-description-full p {
        font-size: 5.56vw; /* 20px / 360px * 100vw */
    }

    .product-link-card {
        width: 72.22vw; /* 260px / 360px * 100vw */
        padding: 5.56vw; /* 20px / 360px * 100vw */
    }

    .product-link-card span {
        font-size: 5vw; /* 18px / 360px * 100vw */
    }

    .product-price-large {
        font-size: 13.89vw; /* 50px / 360px * 100vw */
    }

    .btn-order-equipment {
        width: 95.83vw; /* 345px / 360px * 100vw */
        padding: 4.17vw 6.94vw; /* 15px 25px / 360px * 100vw */
    }

    .specifications-grid {
        grid-template-columns: 1fr 1fr;
        gap: 2vw;
    }

    .spec-item {
        font-size: 5.56vw; /* 20px / 360px * 100vw */
        border-radius: 1.11vw;
        min-height: 13.89vw;
    }

    .spec-item:not(:last-child) {
        margin-bottom: 1.11vw;
    }

    .specifications-note p {
        font-size: 5.56vw; /* 20px / 360px * 100vw */
        width: 100%;
    }

    .video-review-section {
        padding-bottom: 0;
    }

    .video-review-content {
        grid-template-columns: 1fr;
        gap: 5vw;
    }

    .video-review-section .section-title {
        color: var(--dark-blue);
    }

    .video-player-placeholder {
        width: 100%;
        height: 56.25vw; /* прямоугольник на мобильном (16:9 соотношение) */
    }
    
    .video-player-wrapper {
        width: 100%;
        aspect-ratio: 16 / 9;
        border-radius: 2vw;
    }
    
    .video-play-button {
        width: 15vw;
        height: 15vw;
    }
    
    .video-play-button svg {
        width: 100%;
        height: 100%;
    }

    .similar-products-section {
        padding: 8vw 0 8vw 0;
    }

    .similar-products-header {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 4vw;
    }

    .similar-products-title {
        text-align: left;
    }

    .similar-products-content {
        flex-direction: column;
        gap: 5vw;
    }

    .similar-products-note p {
        font-size: 4.5vw;
    }

    .slider-nav-btn {
        width: 8.33vw; /* увеличен размер кнопки */
        height: 8.33vw;
        padding: 2.22vw;
    }

    .slider-nav-btn svg {
        width: 4.44vw; /* увеличен размер иконки */
        height: 4.44vw;
    }

    .product-image-slide {
        height: 70vw; /* увеличен размер слайдера изображений */
    }

    .similar-products-slider-track .product-card {
        width: calc((100% - 1.04vw) / 2);
    }

    .similar-products-slider-track .product-card .product-image {
        height: 40vw; /* увеличен размер изображения в карточке */
    }

    .advantages-grid {
        grid-template-columns: 1fr;
    }

    .advantage-icon {
        width:  unset; /* 60px / 360px * 100vw */
        height: unset; /* 60px / 360px * 100vw */
    }

    .product-advantages-section .advantage-title {
        font-size: 6.94vw; /* 25px / 360px * 100vw */
        font-weight: 700;
        color: var(--white);
        position: static;
        width: auto;
        bottom: auto;
        left: auto;
    }

    .product-advantages-section .advantage-text {
        font-size: 5.56vw; /* 20px / 360px * 100vw */
        color: var(--white);
    }

    .contact-label,
    .contact-value {
        font-size: 6.94vw; /* 25px / 360px * 100vw */
    }

    .contact-social .social-icon {
        width: 13.89vw; /* 50px / 360px * 100vw */
        height: 13.89vw; /* 50px / 360px * 100vw */
    }

    .contact-subtitle {
        font-size: 6.94vw; /* 25px / 360px * 100vw */
    }

    .contact-checkbox label {
        font-size: 4.44vw; /* 16px / 360px * 100vw */
    }
}

/* ============================================
   Модалка «Заказать оборудование»
   ============================================ */
.order-equipment-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    box-sizing: border-box;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.25s, opacity 0.25s;
}
.order-equipment-modal.order-modal-open {
    visibility: visible;
    opacity: 1;
}
.order-equipment-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    cursor: pointer;
}
.order-equipment-modal-box {
    position: relative;
    width: 100%;
    max-width: 440px;
    background: var(--white);
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
    padding: 28px 24px;
    max-height: calc(100vh - 40px);
    overflow-y: auto;
    font-size: 0.75vw;
}
.order-modal-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    padding: 0;
    border: none;
    background: transparent;
    font-size: 28px;
    line-height: 1;
    color: #666;
    cursor: pointer;
    border-radius: 4px;
    transition: color 0.2s, background 0.2s;
}
.order-modal-close:hover {
    color: #333;
    background: #eee;
}
.order-modal-title {
    margin: 0 0 20px 0;
    font-size: 1em;
    font-weight: 700;
    color: var(--dark-blue);
}
.order-equipment-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.order-equipment-form .order-modal-input {
    width: 100%;
    padding: 12px 14px;
    border: 1px solid #ccc;
    border-radius: 6px;
    background: #fff;
    color: #1f2533;
    caret-color: #1f2533;
    font-size: 1em;
    box-sizing: border-box;
}
.order-equipment-form .order-modal-input::placeholder {
    color: #8a90a0;
    opacity: 1;
}
.order-equipment-form .order-modal-input:focus {
    outline: none;
    border-color: var(--dark-blue);
}
.order-equipment-form .checkbox-item {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 6px 2px;
    cursor: pointer;
    font-size: 1em!important;
    color: #444;
    line-height: 1.5;
}
.order-equipment-form .checkbox-custom {
    width: 22px;
    height: 22px;
    border: 1px solid black;
    border-radius: 5px;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.order-equipment-form .checkbox-item input[type="checkbox"]:focus-visible + .checkbox-custom {
    box-shadow: 0 0 0 3px rgba(71, 73, 89, 0.2);
}
.order-equipment-form .checkbox-item input[type="checkbox"]:checked + .checkbox-custom {
    background: var(--red);
    border-color: var(--red);
}
.order-equipment-form .checkbox-item input[type="checkbox"]:checked + .checkbox-custom::after {
    content: '';
    width: 6px;
    height: 11px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    margin-top: -1px;
}
.order-equipment-form .checkbox-item span:last-child {
    font-size: 1em;
    color: #444;
    line-height: 1.5;
    flex: 1;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
.order-equipment-form .checkbox-item .linkund {
    vertical-align: baseline;
    text-decoration: underline;
}
.order-modal-message {
    padding: 10px 12px;
    border-radius: 6px;
    font-size: 1em;
    line-height: 1.4;
}
.order-modal-submit {
    margin-top: 4px;
    width: 100%;
    padding: 12px 20px;
    cursor: pointer;
}