a {
    transition: color 0.3s ease;
    scroll-top-margin: 90px;
}

.phone-link .tn-atom a:hover {
    color: #FF2B2B !important;  
}

.icon-container-dark a {
    margin-right: 15px; /* Отступ справа для каждой ссылки */
    display: inline-block; /* Сделаем ссылку блочно-строчной, чтобы применять к ней отступы */
}

.icon-container-dark a:last-child {
    margin-right: 0; /* Убираем отступ для последней иконки */
}

.sm-icon-bg {
    transition: fill 0.3s ease;
}

a:hover .sm-icon-bg {
    fill: rgba(255, 43, 43, 1); /* При наведении на ссылку, меняем цвет элемента с классом sm-icon-bg внутри SVG */
}

.uc-custom-header .t396__artboard {
    box-shadow: #00000012 0px 4px 8px;
}

.wheel-slash::after {
    content: "";
    position: absolute;
    top: 0;
    right: -6px;
    width: 30px;
    height: 100%;
    background-color: #FF2B2B;
    transform: skewX(-15deg);
    z-index: -1;
}

.custom-shape-right .tn-atom::after {
    content: "";
    position: absolute;
    top: 0;
    right: -7.5px;
    width: 15px;
    height: 100%; 
    background-color: #F5F5F5; 
    transform: skewX(-12deg);
}

.custom-ordered-list ol {
    list-style: none;
    counter-reset: list-counter;
    padding-left: 0 !important;
}

.custom-ordered-list ol li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 36px;
}

.custom-ordered-list ol li::before {
    content: counter(list-counter);
    counter-increment: list-counter;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background-color: rgba(255, 43, 43, 1);
    border-radius: 50%;
    color: white;
    font-size: 14px;
    text-align: center;
    line-height: 24px;
}

.button-container {
    display: flex;
    gap: 25px;
    max-width: 100%;
}

.button {
    flex: 1;
    position: relative;
    padding: 5px 40px 5px 20px;
    height: 48px;
    color: white;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    /*transition: background-color 0.3s ;*/
    line-height: 28px;
    vertical-align: top;
    background-color: #F5F5F5;
    color: #04090F;
    text-align: left;
    border: none;
    font-family: PTRootUI, sans-serif;
}

.button:hover {
    background-color: #EAEAEA;
}

.button svg {
    position: absolute;
    right: 15px;
    top: 50%;
    width: 38px;
    height: 38px;
    transform: translateY(-50%);
}

/* Первая кнопка – срез в конце */
.button.first::after {
    z-index: -1;
    right: -10px;
    top: 0;
    content: "";
    position: absolute;
    width: 30px;
    height: 100%;
    background-color: inherit;
    transform: skewX(-15deg);
}

/* Вторая кнопка – срез в начале и в конце */
.button.second::after {
    z-index: -1;
    right: -10px;
    top: 0;
    content: "";
    position: absolute;
    width: 30px;
    height: 100%;
    background-color: inherit;
    transform: skewX(-15deg);
}

.button.second::before {
    z-index: -1;
    left: -10px;
    top: 0;
    content: "";
    position: absolute;
    width: 30px;
    height: 100%;
    background-color: inherit;
    transform: skewX(-15deg);
}

/* Третья кнопка – срез в начале */
.button.third::before {
    z-index: -1;
    left: -10px;
    top: 0;
    content: "";
    position: absolute;
    width: 30px;
    height: 100%;
    background-color: inherit;  /* цвет фона по умолчанию кнопки */
    transform: skewX(-15deg);
}

/* Стили для активной кнопки */
.button.active {
    background-color: #FF2B2B;
    color: white;
}

.button.active svg path {
    fill: rgba(255, 255, 255, 1);
}

.button.active::after,
.button.active::before {
    background-color: #FF2B2B;
}

.button-icon-color path {
    fill: rgba(4, 9, 15, 0.3);
}

/* Стили для мобильных устройств */
@media (max-width: 959px) {
    .button-container {
        flex-direction: column; /* кнопки идут вертикально */
        gap: 5px;
    }
    
    .button {
        padding: 5px 12px;
        font-size: 12px;
    }
    
    .button svg {
        right: 12px;
        width: 28px;
        height: 28px;
    }

    .button::after,
    .button::before {
        display: none; /* скрыть элементы after и before */
    }
}

.container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.block {
    display: flex;
    flex-direction: column;
    flex: calc(20% - 20px);
    height: 250px;
    background-color: #F5F5F5;
    justify-content: space-between;
    padding: 30px;
    transition: background-color .2s ease;
}

.title {
    font-family: 'PTRootUI', sans-serif;
    font-size: 25px;
    line-height: 1.1;
    letter-spacing: -0.5px;
    margin: 0;
    margin-bottom: 10px;
    transition: color .2s ease;
}

.description {
    font-family: 'PTRootUI', sans-serif;
    line-height: 1.4;
    font-size: 16px;
    margin: 0;
    transition: color .2s ease;
}

.icon svg {
    width: 48px;
    height: 48px;
}

.ic-red {
    transition: fill .2s ease;
}

.ic-black {
    transition: fill .2s ease;
}


.block:hover {
    background-color: #FF2B2B;
}

.block:hover .title,
.block:hover .description {
    color: #fff;
}

.block:hover .ic-black {
    fill: #fff;
}

.block:hover .ic-red {
    fill: #8A0000;
}

@media screen and (min-width: 960px) and (max-width: 1199px) {
    .block {
        flex: calc(18% - 20px);
    }
}

@media screen and (min-width: 640px) and (max-width: 959px) {
    .block {
        flex: calc(40% - 20px);
        padding: 20px;
        height: 180px;
    }
    
    .title {
        font-size: 20px;
        line-height: 1.2;
        letter-spacing: -0.2px;
    }
    
    .description {
        font-size: 14px;
    }
}

@media screen and (min-width: 320px) and (max-width: 639px) {
    .container {
        gap: 10px;    
    }
    
    .block {
        flex: 100%;
        padding: 15px;
        justify-content: none;
        height: 100%;
        flex-direction: row;
    }
    
    .title {
        font-size: 16px;
        letter-spacing: -0.1px;
    }
    
    .description {
        font-size: 12px;
    }
    
    .icon svg {
        width: 30px;
        height: 30px;
    }
    
    .text-group {
        padding-right: 40px;
    }
}

.hide-accord {
    height: 0!important;
    pointer-events: none!important;
}

.content-accord.time-step , .accord-icon { transition: all 0.4s ease-in-out}
.content-accord {
    padding-top: 0!important;
    padding-bottom: 0!important;
    overflow: hidden!important;
}

.active-accord .accord-icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.accord { 
    cursor: pointer;
}

.product-detail-container {
    padding: 30px;   
    font-family: 'PTRootUi', sans-serif;
    color: #04090F;
}

.product-detail-container h2 {
    font-size: 32px;
    letter-spacing: -1px;
    line-height: 1.2;
    padding-bottom: 30px;
}

.product-detail-container h3 {
    padding-top: 30px;
    padding-bottom: 10px;
}

.product-detail-container p {
    font-size: 16px;
    line-height: 1.3;
    padding-bottom: 15px;
}

.specs {
    width: 100%;
}

.spec-item {
    display: flex; 
    justify-content: space-between;
    font-size: 16px;
}

.spec-title, .spec-value {
    padding: 8px 12px;
}

.spec-item:nth-child(odd) {
    background-color: #f5f5f5;
}

.spec-item:nth-child(even) {
    background-color: white;
}

.spec-title {
    color: rgba(4, 9, 15, 0.5);
    flex: 1 1 30%;
}

.spec-value {
    font-weight: 500;
    color: #04090F;
    flex: 1 1 70%;
    font-weight: 500;
}

.buttons-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.product-detail-button {
    font-weight: 500;
    text-transform: uppercase;
    box-sizing: border-box;
    flex: 1;
    display: block;
    width: 100%;
    font-size: 16px;
    line-height: 1;
    padding: 15px 25px;
    text-align: center;
}

.product-detail-container .primary-button {
    background-color: #FF2B2B;
    color: white !important;
}

.product-detail-container .secondary-button {
    background-color: #FFEBEB;
    color: #FF2B2B !important;
}

@media (max-width: 639px) {
    .product-detail-container {
        padding: 15px;
    }
    
    .product-detail-container h2 {
        font-size: 20px;
        padding-bottom: 20px;
    }
    
    .product-detail-container h3 {
        font-size: 16px;
        padding-top: 20px;
    }
    
    .product-detail-container p {
        font-size: 14px;
    }
    
    .spec-title {
        padding: 8px 12px;
    }
    
    .spec-value {
        padding: 0px 12px 8px 12px;
    }
    
    .spec-item {
        font-size: 14px;
    }
    
    .spec-item {
        display: block;
    }
    
    .buttons-group {
        flex-direction: column;
    }

    .primary-button, .secondary-button {
        width: 100%;
        font-size: 14px;
    }
}