@font-face{font-family:'Inter';font-weight:400;font-style:normal;font-display:swap;src:local(''), url('../fonts/Inter-Regular.woff2') format('woff2'), url('../fonts/Inter-Regular.woff') format('woff')}
@font-face{font-family:'Inter';font-weight:500;font-style:normal;font-display:swap;src:local(''), url('../fonts/Inter-Medium.woff2') format('woff2'), url('../fonts/Inter-Medium.woff') format('woff')}
@font-face{font-family:'Inter';font-weight:700;font-style:normal;font-display:swap;src:local(''), url('../fonts/Inter-Bold.woff2') format('woff2'), url('../fonts/Inter-Bold.woff') format('woff')}

body {font-family:'Inter', sans-serif;font-weight:400;color:#222;line-height:1.7em;width:100%}
h1, h2, h3, h4, h5, h6 {font-weight:700;color:#444}
h1 {margin:0 0 20px;font-size:1.8em}
h2 {margin:0 0 15px;font-size:1.6em}
h3 {margin:0 0 15px;font-size:1.4em}
h4 {font-size:1.2em}
h5 {font-size:1.1em}
h6 {font-size:1em}
a {color:#0066CC}
a:hover {text-decoration:none}
legend {font-size:18px;padding:7px 0px}
label {font-weight:500}
select.form-control, textarea.form-control, input[type="text"].form-control, input[type="password"].form-control, input[type="datetime"].form-control, input[type="datetime-local"].form-control, input[type="date"].form-control, input[type="month"].form-control, input[type="time"].form-control, input[type="week"].form-control, input[type="number"].form-control, input[type="email"].form-control, input[type="url"].form-control, input[type="search"].form-control, input[type="tel"].form-control, input[type="color"].form-control {
    height:34px;
    font-size:12px;
    border-color:#ddd;
    box-shadow:none
}
.input-group input, .input-group select, .input-group .dropdown-menu, .input-group .popover {font-size:12px}
.input-group .input-group-addon {font-size:12px;height:30px}
button,select,.btn,.btn:active,.btn:hover,.btn:focus,.nav-tabs .li {outline:none!important;-moz-user-select:none!important;-webkit-user-select:none!important;user-select:none!important}
span.hidden-xs, span.hidden-sm, span.hidden-md, span.hidden-lg {display:inline}
.nav-tabs {margin-bottom:15px}
div.required .control-label:before {content:'* ';color:#f00;font-weight:700}
.dropdown-menu li > a:hover, .dropdown-menu li > button:hover {text-decoration:none;color:#333;background:rgba(0 0 0 /.05)}

.row-flex{display:flex;flex-wrap:wrap}
.sticky{position:sticky;top:15px}

#top {background-color:#f5f8fc;margin:0 0 25px;min-height:38px;border-bottom:1px solid #e3e9f1}
#top * {font-size:12px}
#top .container{display:flex;align-items:center;min-height:36px}
#top #form-currency .currency-select,#top #form-language .language-select {text-align:left}
#top .container div:not(#top-links){flex:1 1 auto}
#top .btn-link, #top-links li, #top-links a {color:#555;text-decoration:none}
#top-links .dropdown-menu a {text-shadow:none}
#top .container div:not(#top-links) .dropdown-toggle{padding:0 15px 0 0}
#top ul{margin:0}
#top-links .list-inline > li{padding:0}
#top-links .list-inline > li + li{margin:0 0 0 15px}
#top-links a + a {margin-left:15px}

#logo img {
    margin: 0 auto;
    max-width: 50%;
    height: auto;
}


#search {width:100%;margin-bottom:15px}
#search .input-lg {height:38px;line-height:20px;padding:0 10px;border-radius:6px}
#search .btn-lg {position:absolute;z-index:99;top:1px;right:6px;font-size:15px;line-height:15px;padding:10px 15px;background:rgba(0 0 0 / .01);border-radius:0 6px 6px 0}

/* cart */
#cart {margin-bottom:15px}
#cart > .btn {display:flex;justify-content:center;align-items:center;height:38px;font-weight:700;font-size:12px;color:#fff;background:#0066CC}
#cart.open > .btn {box-shadow:none;text-shadow:none}
#cart.open > .btn:hover {background:#0052a3;color:#fff}
#cart > .btn i{margin:0 10px 0 0;font-size:1.8em;color:#fff}
#cart .dropdown-menu {background:#f5f5f5;z-index:1001}
#cart .dropdown-menu {min-width:100%;overflow-y:auto;max-height:800px;scrollbar-width:thin;overflow-x:hidden}
#cart .dropdown-menu table {margin-bottom:10px}
#cart .dropdown-menu table td {vertical-align:middle}
#cart .dropdown-menu li > div {min-width:427px;padding:0 10px}
#cart .dropdown-menu li p {margin:20px 0}

/* Кнопки удаления в корзине */
#cart .dropdown-menu table td.text-center {text-align:center;vertical-align:middle}
#cart .dropdown-menu table td button,
#cart .dropdown-menu table td .btn,
#cart .dropdown-menu table button.btn-danger {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:30px !important;
    height:30px !important;
    padding:0 !important;
    margin:0 !important;
    background:#fff !important;
    border:1px solid #ddd !important;
    border-radius:4px !important;
    transition:all 0.3s ease !important;
    color:#dc3545 !important;
    min-width:30px !important;
}

#cart .dropdown-menu table td button:hover,
#cart .dropdown-menu table td .btn:hover,
#cart .dropdown-menu table button.btn-danger:hover {
    background:#dc3545 !important;
    border-color:#dc3545 !important;
    color:#fff !important;
}

#cart .dropdown-menu table td button i,
#cart .dropdown-menu table td button .fa,
#cart .dropdown-menu table td button .fas,
#cart .dropdown-menu table td .btn i,
#cart .dropdown-menu table td .btn .fa,
#cart .dropdown-menu table td .btn .fas,
#cart .dropdown-menu table button.btn-danger i,
#cart .dropdown-menu table button.btn-danger .fa,
#cart .dropdown-menu table button.btn-danger .fas {
    margin:0 !important;
    font-size:14px !important;
    color:#dc3545 !important;
    line-height:1 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
}

#cart .dropdown-menu table td button:hover i,
#cart .dropdown-menu table td button:hover .fa,
#cart .dropdown-menu table td button:hover .fas,
#cart .dropdown-menu table td .btn:hover i,
#cart .dropdown-menu table td .btn:hover .fa,
#cart .dropdown-menu table td .btn:hover .fas,
#cart .dropdown-menu table button.btn-danger:hover i,
#cart .dropdown-menu table button.btn-danger:hover .fa,
#cart .dropdown-menu table button.btn-danger:hover .fas {
    color:#fff !important;
}

/* Поле количества в корзине */
#cart .dropdown-menu table td input[type="text"],
#cart .dropdown-menu table input.form-control {
    width:50px !important;
    height:30px !important;
    text-align:center !important;
    padding:0 5px !important;
    border:1px solid #ddd !important;
    border-radius:4px !important;
    min-width:50px !important;
    max-width:50px !important;
}

/* Группа кнопок управления количеством в корзине (Simple модуль) */
#cart .dropdown-menu .input-group {
    display:flex;
    align-items:stretch;
}

#cart .dropdown-menu .input-group .form-control {
    width:50px !important;
    min-width:50px !important;
    max-width:50px !important;
    height:34px !important;
    text-align:center !important;
    padding:0 5px !important;
    border:1px solid #ddd !important;
    font-size:14px !important;
    line-height:34px !important;
}

#cart .dropdown-menu .input-group-btn {
    display:flex;
    align-items:stretch;
}

#cart .dropdown-menu .input-group-btn .btn {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:34px !important;
    height:34px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:4px !important;
    min-width:34px !important;
    transition:all 0.3s ease !important;
}

#cart .dropdown-menu .input-group-btn .btn-primary {
    background:#0066CC !important;
    border-color:#0066CC !important;
    color:#fff !important;
}

#cart .dropdown-menu .input-group-btn .btn-primary:hover {
    background:#0052a3 !important;
    border-color:#0052a3 !important;
}

#cart .dropdown-menu .input-group-btn .btn-danger {
    background:#fff !important;
    border:1px solid #ddd !important;
    color:#dc3545 !important;
}

#cart .dropdown-menu .input-group-btn .btn-danger:hover {
    background:#dc3545 !important;
    border-color:#dc3545 !important;
    color:#fff !important;
}

#cart .dropdown-menu .input-group-btn .btn i,
#cart .dropdown-menu .input-group-btn .btn .fa,
#cart .dropdown-menu .input-group-btn .btn .fas {
    margin:0 !important;
    font-size:14px !important;
    line-height:1 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
}

#cart .dropdown-menu .input-group-btn .btn-primary i,
#cart .dropdown-menu .input-group-btn .btn-primary .fa,
#cart .dropdown-menu .input-group-btn .btn-primary .fas {
    color:#fff !important;
}

#cart .dropdown-menu .input-group-btn .btn-danger i,
#cart .dropdown-menu .input-group-btn .btn-danger .fa,
#cart .dropdown-menu .input-group-btn .btn-danger .fas {
    color:#dc3545 !important;
}

#cart .dropdown-menu .input-group-btn .btn-danger:hover i,
#cart .dropdown-menu .input-group-btn .btn-danger:hover .fa,
#cart .dropdown-menu .input-group-btn .btn-danger:hover .fas {
    color:#fff !important;
}
#menu {margin:0 0 25px;background-color:#0066CC;min-height:46px;border:none;border-radius:6px}
#menu .nav > li > a {color:#fff;padding:13px 20px;min-height:15px}
#menu .nav > li > a:hover, #menu .nav > li.open > a {background-color:rgba(0, 0, 0, 0.1)}

#menu .dropdown-inner {display:table}
#menu .dropdown-inner ul {display:table-cell}
#menu .dropdown-inner a {min-width:250px;display:block;padding:5px 10px;clear:both;line-height:20px;color:#333333}
#menu li.dropdown > a:after{display:inline-block;content:'›';margin:0 0 0 10px;font-weight:700;color:inherit;transform:rotate(90deg)}
#menu li.dropdown.open > a:after, #menu li.dropdown:hover > a:after{transform:rotate(-90deg)}
#menu .dropdown-inner li a:hover {color:#0066CC;background:none}
#menu .see-all {display:none;margin:10px}
#menu .see-all:hover, #menu .see-all:focus {text-decoration:none;color:#fff;background:none}
#menu #category {float:left;padding-left:15px;font-size:1.2em;font-weight:700;line-height:44px;color:#fff}
#menu .btn-navbar {
    font-size:18px;
    font-weight:600;
    color:#fff;
    padding:10px 18px;
    float:right;
    background-color:#0066CC;
    border:2px solid rgba(255, 255, 255, 0.3);
    border-radius:6px;
    transition:all 0.3s ease;
    display:none;
}
#menu .btn-navbar:hover, #menu .btn-navbar:focus, #menu .btn-navbar:active, #menu .btn-navbar.disabled, #menu .btn-navbar[disabled] {
    color:#fff;
    background-color:#0052a3;
    border-color:rgba(255, 255, 255, 0.5);
}

#content {min-height:10px}

footer {margin-top:30px;padding-top:0;background:linear-gradient(to bottom, #f8f9fa 0%, #ffffff 50%);color:#333;border-top:3px solid #0066CC}
footer hr {border:none;border-top:1px solid #e3e9f1;margin:30px 0 20px;opacity:0.6}
footer a {color:#555;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;transition:all 0.3s ease;position:relative}
footer a:hover {color:#0066CC}
footer h5 {margin:0 0 15px;font-weight:700;font-size:1.2em;color:#0066CC}
footer li{padding:0 0 5px}

.alert {padding:8px 14px 8px 14px}
.alert > .close {
    position: relative;
    top: -2px;
    right: 0px;
    color: inherit;
}

.breadcrumb {margin:0 0 20px 0;font-size:.85em;border-radius:6px}
.breadcrumb i {font-size:15px;color:#0066CC}
.breadcrumb > li {position:relative;white-space:nowrap}
.breadcrumb > li + li:before {content:'»';padding:0 6px;color:#666}

.dropdown-menu{min-width:250px;padding:10px;border:none;border-radius:6px}
.dropdown-menu > li > a, .dropdown-menu > li > button {padding:7px 10px;border-radius:4px}

.nav-tabs > li > a{font-size:1.1em}

html[dir=rtl] .breadcrumb > li::after {
    top:-3px;
    left:-5px;
    width:26px;
    height:26px;
    border-left:1px solid #DDD;
    border-top:1px solid #DDD;
    right:unset;
    border-right:unset;
    border-bottom:unset;
}
.pagination {margin:0}

.buttons {margin:1em 0}

.btn {
    padding:8.5px 12px;
    font-size:12px;
    border:none;
    border-radius:6px;
    font-weight:600;
    transition:all 0.3s ease;
}
.btn-xs {padding:5px 8px;font-size:9px}
.btn-sm {font-size:11px}
.btn-lg {padding:10px 16px;font-size:15px}

.btn-group > .btn, .btn-group > .dropdown-menu, .btn-group > .popover {font-size:12px}
.btn-group > .btn-xs {font-size:9px}
.btn-group > .btn-sm {font-size:10.2px}
.btn-group > .btn-lg {font-size:15px}

.btn-default {
    color:#fff;
    background-color:#0066CC;
}
.btn-default:hover, .btn-default:active, .btn-default.active {
    background-color:#0052a3;
    color:#fff;
}
.btn-primary {
    color:#fff;
    background-color:#0066CC;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] {
    background-color:#0052a3;
    color:#fff;
}
.btn-warning {color:#fff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#faa732;background-image:linear-gradient(to bottom, #fbb450, #f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704}
.btn-warning:hover, .btn-warning:active, .btn-warning.active, .btn-warning.disabled, .btn-warning[disabled] {box-shadow:inset 0 1000px 0 rgba(0, 0, 0, 0.1)}
.btn-danger {color:#fff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#da4f49;background-image:linear-gradient(to bottom, #ee5f5b, #bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420}
.btn-danger:hover, .btn-danger:active, .btn-danger.active, .btn-danger.disabled, .btn-danger[disabled] {box-shadow:inset 0 1000px 0 rgba(0, 0, 0, 0.1)}
.btn-success {color:#fff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#5bb75b;background-image:linear-gradient(to bottom, #62c462, #51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038}
.btn-success:hover, .btn-success:active, .btn-success.active, .btn-success.disabled, .btn-success[disabled] {box-shadow:inset 0 1000px 0 rgba(0, 0, 0, 0.1)}
.btn-info {color:#fff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#df5c39;background-image:linear-gradient(to bottom, #e06342, #dc512c);background-repeat:repeat-x;border-color:#dc512c #dc512c #a2371a}
.btn-info:hover, .btn-info:active, .btn-info.active, .btn-info.disabled, .btn-info[disabled] {background-image:none;background-color:#df5c39}
.btn-link {border-color:rgba(0, 0, 0, 0);cursor:pointer;color:#0066CC;border-radius:0}
.btn-link, .btn-link:active, .btn-link[disabled] {background-color:rgba(0, 0, 0, 0);background-image:none;box-shadow:none}
.btn-inverse {
    color:#fff;
    background-color:#0066CC;
}
.btn-inverse:hover, .btn-inverse:active, .btn-inverse.active, .btn-inverse.disabled, .btn-inverse[disabled] {
    background-color:#0052a3;
}

/* list group */
.list-group a {border:1px solid #ddd;color:#888;padding:10px 12px}
.list-group a.active, .list-group a.active:hover, .list-group a:hover {color:#0066CC;background:#eee;border:1px solid #ddd;text-shadow:0 1px 0 #fff}

/* carousel */
.carousel-caption {color:#fff;text-shadow:0 1px 0 #000}
.carousel-control .icon-prev:before {content:'\f053';font-family:FontAwesome}
.carousel-control .icon-next:before {content:'\f054';font-family:FontAwesome}

.category__category-list{margin:15px -10px 25px;padding:0;list-style:none}
.category__category-list-item{margin:0 10px 10px}
.category__category-list-item a{display:block;padding:10px 15px;background:#F5F5F5;border-radius:4px}

.product-thumb {width:100%;border:1px solid #ddd;margin-bottom:25px;padding:15px;border-radius:6px}
.product-thumb .image {text-align:center}
.product-thumb .image a {display:block}
.product-thumb .image a:hover {opacity:0.8}
.product-thumb .image img {margin-left:auto;margin-right:auto}
.product-thumb .caption {min-height:180px;margin:0 0 15px}
.product-thumb .caption h4{font-size:1.1em}
.product-thumb .rating {padding-bottom:10px}
.product-thumb .price {margin:0 0 15px;color:#444;font-size:1.3em;font-weight:700}
.product-thumb .price-old {color:#999;text-decoration:line-through;margin-left:10px}
.product-thumb .price-tax {color:#999;font-weight:400;font-size:.65em;display:block;margin:5px 0 0}
.product-thumb .button-group {
    display:flex;
    overflow:auto;
    border:none;
    overflow:hidden;
    max-width:100%;
}
.product-thumb .button-group button {
    border:none;
    padding:8.5px 15px;
    background-color:#0066CC;
    color:#fff;
    text-align:center;
    white-space:nowrap;
    border-radius:6px;
    font-weight:600;
    transition:all 0.3s ease;
}
.product-thumb .button-group button:first-child{
    flex:1 1 100%;
    color:#fff;
    background:#0066CC;
}
.product-thumb .button-group button + button {
    margin:0 0 0 10px;
    color:#fff;
    background:#0052a3;
}
.product-thumb .button-group button:hover {
    background:#0052a3;
    text-decoration:none;
    cursor:pointer;
    transform:translateY(-2px);
    box-shadow:0 4px 12px rgba(0, 102, 204, 0.3);
}

.product-layout:not(.product-list) .product-thumb {display:flex;flex-direction:column}
.product-layout:not(.product-list) .product-thumb .image {margin-bottom:10px}
.product-grid .button-group{margin:0}

.rating .fa-stack {font-size:8px}
.rating .fa-star-o {color:#999;font-size:15px}
.rating .fa-star {color:#FC0;font-size:15px}
.rating .fa-star + .fa-star-o {color:#E69500}
h2.price {margin:0}

.product-page__price{margin:20px 0 10px}

.product-page__qty-btn{display:flex;align-items:center;margin:30px 0;white-space:nowrap}
.product-page__qty-btn input[name="quantity"]{width:60px;height:38px;margin:0 20px;text-align:center}
.product-page__qty-btn .btn{height:38px}

.thumbnails {overflow:auto;clear:both;list-style:none;padding:0;margin:0}
.thumbnails > li {margin-left:20px}
.thumbnails {margin-left:-20px}
.thumbnails > img {width:100%}
.image-additional a {margin-bottom:20px;padding:5px;display:block;border:1px solid #ddd}
.image-additional {max-width:78px}
.thumbnails .image-additional {float:left;margin-left:20px}

.swiper-viewport {
    margin: 0 0 60px;
    background: #fff;
    z-index: 1;
    border: 4px solid #fff;
    border-radius: 4px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .2);
    width: 100%;
    height: auto;
    position: relative;
    overflow: visible;
}

.swiper-viewport .swiper-container,
.swiper-viewport .swiper-wrapper,
.swiper-viewport .swiper-slide {
    height: auto !important;
}

.swiper-viewport img {
    display: block;
    max-height: 100px;
    width: auto;
    margin: 0 auto;
}

.swiper-slide{display:flex;align-items:center;justify-content:center}
.swiper-pagination-bullet{background:#ddd !important;box-shadow:none !important}
.swiper-pagination-bullet-active{background:#0066CC !important}
.panel-group .panel{margin:0 0 15px;border-radius:6px}
.panel-group .panel-heading{border-radius:5px 5px 0 0}
#product-product .tab-content{margin:0 0 40px}

#account-login #content > .row{display:flex;flex-wrap:wrap}
#account-login #content > .row .col-sm-6 {flex:1 0 50%;margin:0 0 20px}
#account-login #content > .row .well{display:flex;flex-wrap:wrap;height:100%}
#account-login #content > .row .well h2{width:100%}
#account-login #content > .row .well h2 + p {display:none;margin:0 0 auto}
#account-login #content > .row .well .control-label{display:none}
#account-login #content > .row .well input + a {display:inline-block;margin:10px 0 }
#account-login #content > .row .well .btn {margin:auto 0 0}
#account-login #content > .row .well input.btn {margin:auto 0 -10px}

#account-account .list-unstyled{display:flex;flex-wrap:wrap;margin:0 0 20px}
#account-account .list-unstyled li{margin:0 15px 15px 0;padding:10px 15px;background:rgba(0 0 0 / .03);border-radius:6px}
#account-account .list-unstyled li:last-child{margin-right:0}

.row-flex > div {display:flex}
.row-flex > div .caption {display:flex;flex-direction:column;flex: 1 1 auto;min-height:0;margin:0;overflow:hidden}
.row-flex > div .caption p:not(.price){margin:0 0 auto;padding:0 0 15px}

.cookie-notification{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(135deg, rgba(0, 102, 204, 0.95) 0%, rgba(0, 77, 153, 0.95) 100%);color:#fff;padding:15px 0;z-index: 9999;backdrop-filter:blur(10px);border-top:2px solid rgba(255, 255, 255, 0.2);box-shadow:0 -4px 20px rgba(0, 0, 0, 0.2)}
.cookie-notification__container{display:flex;justify-content:center;align-items:center}
.cookie-notification__info{padding:0 30px 0 0;color:#FFFFFF;font-size:14px}
.cookie-notification__info a{white-space:nowrap;color:#FFFFFF;text-decoration:underline;font-weight:600}
.cookie-notification__info a:hover{color:#E0F2FF}
.cookie-notification__btn {
    height:fit-content;
    background-color:#FFFFFF;
    color:#0066CC;
    border:2px solid #FFFFFF;
    font-weight:600;
    font-size:14px;
    padding:12px 28px;
    border-radius:6px;
    transition:all 0.3s ease;
}
.cookie-notification__btn:hover {
    background-color:#E0F2FF;
    color:#0066CC;
    transform:translateY(-2px);
    box-shadow:0 4px 12px rgba(255, 255, 255, 0.3);
}

/* ========== HEADER STYLES ========== */

/* Верхняя полоса */
#header-top {
    background-color: #f5f8fc;
    border-bottom: 1px solid #e3e9f1;
    font-size: 13px;
    padding: 8px 0;
}

#header-top .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header-top-left {
    display: flex;
    gap: 20px;
    align-items: center;
}

.header-contact {
    color: #555;
    display: flex;
    align-items: center;
    gap: 6px;
}

.header-contact i {
    color: #0066CC;
}

.header-top-right {
    display: flex;
    gap: 20px;
    align-items: center;
}

.header-top-right a {
    color: #555;
    text-decoration: none;
    transition: color 0.2s;
}

.header-top-right a:hover {
    color: #0066CC;
}

.header-account {
    display: flex;
    align-items: center;
}

/* Центральная часть */
#header-middle {
    background-color: #FFFFFF;
    padding: 20px 0;
    border-bottom: 1px solid #e3e9f1;
}

.header-middle-wrapper {
    display: flex;
    align-items: center;
    gap: 30px;
}

.header-logo {
    flex: 0 0 auto;
    max-width: 200px;
}

.header-logo img {
    max-width: 100%;
    height: auto;
}

.header-logo h1 {
    margin: 0;
    font-size: 24px;
}

.header-logo h1 a {
    color: #0066CC;
    text-decoration: none;
}

.header-search {
    flex: 1 1 auto;
    max-width: 600px;
}

#search .input-group {
    display: flex;
}

#search input.form-control {
    border: 2px solid #0066CC;
    border-radius: 6px 0 0 6px;
    height: 44px;
    padding: 0 15px;
    font-size: 14px;
}

#search .btn {
    background-color: #0066CC;
    color: #FFFFFF;
    border: 2px solid #0066CC;
    border-radius: 0 6px 6px 0;
    padding: 0 20px;
    height: 44px;
    transition: background-color 0.2s;
}

#search .btn:hover {
    background-color: #0052a3;
    border-color: #0052a3;
}

.header-icons {
    display: flex;
    gap: 20px;
    align-items: center;
}

.header-icon-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: #333;
    position: relative;
    transition: color 0.2s;
}

.header-icon-item:hover {
    color: #0066CC;
}

.header-icon-item i {
    font-size: 24px;
    margin-bottom: 4px;
    color: #333;
    transition: all 0.2s;
}

.header-icon-item:hover i {
    color: #0066CC;
}

.header-icon-label {
    font-size: 12px;
    white-space: nowrap;
}

.header-icon-count {
    position: absolute;
    top: -5px;
    right: -8px;
    background-color: #0066CC;
    color: #FFFFFF;
    border-radius: 10px;
    padding: 2px 6px;
    font-size: 11px;
    font-weight: 700;
    min-width: 18px;
    text-align: center;
}

.header-cart #cart {
    margin: 0;
}

.header-cart #cart > .btn {
    background-color: #0066CC;
    color: #FFFFFF;
    border: none;
    padding: 10px 20px;
    height: 44px;
    border-radius: 6px;
    font-weight: 600;
    transition: background-color 0.2s;
}

.header-cart #cart > .btn:hover {
    background-color: #0052a3;
}

.header-cart #cart > .btn i {
    color: #FFFFFF;
    margin: 0 10px 0 0;
}

/* Меню категорий */
#header-menu {
    background-color: #0066CC;
    position: relative;
    z-index: 1000;
}

#header-menu .container {
    position: relative;
}

.menu-toggle {
    display:none;
    background:#0066CC;
    border:2px solid rgba(255, 255, 255, 0.3);
    color:#fff;
    font-size:18px;
    font-weight:600;
    padding:10px 18px;
    cursor:pointer;
    border-radius:6px;
    transition:all 0.3s ease;
}

.menu-toggle:hover {
    background:#0052a3;
    border-color:rgba(255, 255, 255, 0.5);
}

.menu-toggle i {
    margin-right:8px;
    font-size:20px;
}

.main-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 5px;
}

.menu-item {
    position: relative;
}

.menu-item > a {
    display: block;
    padding: 14px 18px;
    color: #FFFFFF;
    text-decoration: none;
    font-weight: 500;
    font-size: 15px;
    transition: background-color 0.2s;
    border-radius: 4px;
}

.menu-item > a:hover,
.menu-item.open > a {
    background-color: rgba(255, 255, 255, 0.15);
}

.menu-item.has-children > a:after {
    content: '\f107';
    font-family: FontAwesome;
    margin-left: 6px;
    font-size: 12px;
}

/* Подменю первого уровня */
.submenu {
    position: absolute;
    top: 100%;
    left: 0;
    background-color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border-radius: 6px;
    min-width: 240px;
    list-style: none;
    margin: 0;
    padding: 10px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1001;
}

.menu-item:hover > .submenu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.submenu-item > a {
    display: block;
    padding: 10px 20px;
    color: #333;
    text-decoration: none;
    transition: all 0.2s;
    font-size: 14px;
}

.submenu-item > a:hover {
    background-color: #f5f8fc;
    color: #0066CC;
    padding-left: 25px;
}

.submenu-item.has-children {
    position: relative;
}

.submenu-item.has-children > a:after {
    content: '\f105';
    font-family: FontAwesome;
    float: right;
    font-size: 12px;
    color: #0066CC;
}

/* Подменю второго уровня */
.submenu-level-2 {
    position: absolute;
    top: 0;
    left: 100%;
    background-color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border-radius: 6px;
    min-width: 220px;
    list-style: none;
    margin: 0;
    padding: 10px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-10px);
    transition: all 0.3s ease;
}

.submenu-item:hover > .submenu-level-2 {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.submenu-level-2 li a {
    display: block;
    padding: 8px 20px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    transition: all 0.2s;
}

.submenu-level-2 li a:hover {
    background-color: #f5f8fc;
    color: #0066CC;
    padding-left: 25px;
}

/* Адаптивность */
@media (max-width: 991px) {
    #header-top .container {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .header-top-left,
    .header-top-right {
        flex-wrap: wrap;
        justify-content: center;
    }

    .header-middle-wrapper {
        flex-direction: column;
        gap: 15px;
    }

    .header-logo {
        max-width: 150px;
    }

    .header-search {
        width: 100%;
        max-width: 100%;
    }

    .header-icons {
        width: 100%;
        justify-content: space-around;
    }

    .header-icon-label {
        display: none;
    }

    .menu-toggle {
        display:flex;
        align-items:center;
        justify-content:center;
        width:100%;
        margin:10px 0;
    }

    #menu .btn-navbar {
        display:flex;
        align-items:center;
        justify-content:center;
    }

    .main-menu {
        display: none;
        flex-direction: column;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background-color: #0066CC;
        padding: 10px 0;
        gap: 0;
    }

    .main-menu.active {
        display: flex;
    }

    .menu-item > a {
        padding: 12px 20px;
        border-radius: 0;
    }

    .submenu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        background-color: rgba(0, 0, 0, 0.1);
        display: none;
        border-radius: 0;
    }

    .menu-item.open > .submenu {
        display: block;
    }

    .submenu-item > a {
        padding-left: 35px;
        color: #FFFFFF;
    }

    .submenu-item > a:hover {
        background-color: rgba(255, 255, 255, 0.1);
        padding-left: 40px;
    }

    .submenu-level-2 {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        background-color: rgba(0, 0, 0, 0.15);
        display: none;
    }

    .submenu-item.open > .submenu-level-2 {
        display: block;
    }

    .submenu-level-2 li a {
        padding-left: 50px;
        color: #FFFFFF;
    }

    .submenu-level-2 li a:hover {
        background-color: rgba(255, 255, 255, 0.1);
        padding-left: 55px;
    }
}

@media (max-width: 576px) {
    #header-top {
        font-size: 12px;
        padding: 6px 0;
    }

    .header-top-left,
    .header-top-right {
        gap: 10px;
    }

    .header-logo {
        max-width: 120px;
    }

    .header-icons {
        gap: 15px;
    }

    .header-icon-item i {
        font-size: 20px;
    }
}

/* ========== END HEADER STYLES ========== */

/* ========== FOOTER STYLES ========== */

/* Основной контейнер footer */
footer {
    margin-top: 60px;
    padding-top: 0;
    background: linear-gradient(to bottom, #f8f9fa 0%, #ffffff 50%);
    color: #333;
    border-top: 3px solid #0066CC;
}

/* Верхняя контентная часть footer */
footer .container {
    padding-top: 50px;
    padding-bottom: 30px;
}

/* Сетка колонок footer */
footer .row {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 40px;
}

footer .row > div {
    flex: 1 1 calc(25% - 30px);
    min-width: 200px;
}

/* Заголовки секций */
footer h5 {
    margin: 0 0 20px;
    font-weight: 700;
    font-size: 1.1em;
    color: #0066CC;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    position: relative;
    padding-bottom: 12px;
}

/* Декоративная линия под заголовками */
footer h5:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 2px;
    background: linear-gradient(to right, #0066CC, transparent);
}

/* Списки ссылок */
footer .list-unstyled {
    margin: 0;
    padding: 0;
    list-style: none;
}

footer .list-unstyled li {
    padding: 8px 0;
    transition: transform 0.3s ease;
}

footer .list-unstyled li:hover {
    transform: translateX(5px);
}

/* Ссылки в footer */
footer a {
    color: #555;
    text-decoration: none;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    transition: all 0.3s ease;
    position: relative;
}

footer a:before {
    content: '›';
    margin-right: 8px;
    color: #0066CC;
    font-weight: 700;
    opacity: 0;
    transform: translateX(-5px);
    transition: all 0.3s ease;
}

footer a:hover:before {
    opacity: 1;
    transform: translateX(0);
}

footer a:hover {
    color: #0066CC;
    padding-left: 5px;
}

/* Разделительная линия */
footer hr {
    border: none;
    border-top: 1px solid #e3e9f1;
    margin: 30px 0 20px;
    opacity: 0.6;
}

/* Нижняя зона копирайта */
footer p {
    text-align: center;
    margin: 0;
    padding: 25px 0;
    font-size: 13px;
    color: #FFFFFF;
    background: linear-gradient(135deg, #0066CC 0%, #004d99 100%);
    border-radius: 8px 8px 0 0;
    box-shadow: 0 -2px 10px rgba(0, 102, 204, 0.1);
    position: relative;
    margin: 0 -15px -30px;
}

footer p:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(to right, transparent, rgba(255,255,255,0.3), transparent);
}

/* Если есть логотип в footer (опционально) */
footer .footer-logo {
    max-width: 150px;
    margin-bottom: 20px;
    opacity: 0.9;
    transition: opacity 0.3s ease;
}

footer .footer-logo:hover {
    opacity: 1;
}

/* Социальные иконки (если есть в HTML) */
footer .social-icons {
    display: flex;
    gap: 12px;
    margin-top: 20px;
}

footer .social-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: #f5f8fc;
    color: #0066CC;
    border-radius: 50%;
    transition: all 0.3s ease;
    padding: 0;
}

footer .social-icons a:before {
    display: none;
}

footer .social-icons a:hover {
    background: #0066CC;
    color: #FFFFFF;
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0, 102, 204, 0.3);
    padding: 0;
}

footer .social-icons a i {
    font-size: 18px;
}

/* Дополнительные акценты для footer */
footer .highlight-box {
    background: linear-gradient(135deg, #f5f8fc 0%, #e8f2ff 100%);
    padding: 20px;
    border-radius: 8px;
    border-left: 3px solid #0066CC;
    margin-top: 10px;
}

footer .highlight-box h6 {
    margin: 0 0 10px;
    color: #0066CC;
    font-size: 14px;
    font-weight: 600;
}

footer .highlight-box p {
    margin: 0;
    font-size: 13px;
    color: #555;
    background: transparent;
    padding: 0;
    text-align: left;
    box-shadow: none;
    border-radius: 0;
}

/* Адаптивность footer */
@media (max-width: 991px) {
    footer .row {
        gap: 20px;
    }

    footer .row > div {
        flex: 1 1 calc(50% - 20px);
    }

    footer h5 {
        font-size: 1em;
        margin-bottom: 15px;
    }

    footer .list-unstyled li {
        padding: 6px 0;
    }

    footer a {
        font-size: 13px;
    }
}

@media (max-width: 576px) {
    footer {
        margin-top: 40px;
    }

    footer .container {
        padding-top: 30px;
        padding-bottom: 20px;
    }

    footer .row {
        flex-direction: column;
        gap: 25px;
    }

    footer .row > div {
        flex: 1 1 100%;
        min-width: 100%;
    }

    footer h5 {
        font-size: 16px;
        margin-bottom: 12px;
    }

    footer .list-unstyled li {
        padding: 5px 0;
    }

    footer a {
        font-size: 14px;
    }

    footer p {
        font-size: 12px;
        padding: 20px 15px;
        margin: 0 0 0;
        border-radius: 0;
    }

    footer .social-icons {
        justify-content: center;
    }

    .cookie-notification__container {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }

    .cookie-notification__info {
        padding: 0;
    }

    .cookie-notification__btn {
        width: 100%;
    }
}

/* Анимация появления footer при прокрутке (опционально) */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

footer .row > div {
    animation: fadeInUp 0.6s ease-out;
    animation-fill-mode: both;
}

footer .row > div:nth-child(1) {
    animation-delay: 0.1s;
}

footer .row > div:nth-child(2) {
    animation-delay: 0.2s;
}

footer .row > div:nth-child(3) {
    animation-delay: 0.3s;
}

footer .row > div:nth-child(4) {
    animation-delay: 0.4s;
}

/* ========== END FOOTER STYLES ========== */

/* ========== ICON STYLES ========== */

/* Универсальные стили для всех иконок FontAwesome на сайте */
.fa, .fas, .far, .fab {
    font-size: 20px;
    color: #0066CC;
    transition: all 0.3s ease;
    vertical-align: middle;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Иконки в ссылках */
a .fa,
a .fas,
a .far,
a .fab {
    margin-right: 6px;
    color: #0066CC;
}

a:hover .fa,
a:hover .fas,
a:hover .far,
a:hover .fab {
    color: #004d99;
    transform: scale(1.1);
}

/* Иконки в кнопках */
.btn .fa,
.btn .fas,
.btn .far,
.btn .fab {
    margin-right: 8px;
    font-size: 18px;
    color: #fff;
}

.btn:hover .fa,
.btn:hover .fas,
.btn:hover .far,
.btn:hover .fab {
    transform: scale(1.05);
}

/* Иконки в header (верхняя панель) */
#header-top .fa,
#header-top .fas,
#header-top .far {
    font-size: 16px;
    color: #0066CC;
    margin-right: 6px;
}

/* Иконки в центральной части header */
.header-icons .fa,
.header-icons .fas,
.header-icons .far {
    font-size: 24px;
    color: #333;
    transition: all 0.3s ease;
}

.header-icon-item:hover .fa,
.header-icon-item:hover .fas,
.header-icon-item:hover .far {
    color: #0066CC;
    transform: scale(1.15);
}

/* Иконки в меню */
#menu .fa,
#menu .fas {
    font-size: 14px;
    margin-right: 8px;
    color: #fff;
}

/* Иконки в dropdown меню (тёмные для контраста с белым фоном) */
.dropdown-menu .fa,
.dropdown-menu .fas {
    color: #0066CC;
}

/* Иконки в карточках товаров */
.product-thumb .button-group button .fa,
.product-thumb .button-group button .fas {
    font-size: 16px;
    margin-right: 6px;
    color: #fff;
}

.product-thumb .button-group button:hover .fa,
.product-thumb .button-group button:hover .fas {
    transform: scale(1.1);
}

/* Иконки в breadcrumbs */
.breadcrumb .fa {
    font-size: 14px;
    color: #0066CC;
    margin-right: 6px;
}

/* Иконки корзины */
#cart > .btn .fa,
#cart > .btn .fas {
    font-size: 22px;
    color: #FFFFFF;
    margin-right: 10px;
}

#cart.open > .btn .fa {
    animation: cartShake 0.5s ease;
}

@keyframes cartShake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-3px); }
    75% { transform: translateX(3px); }
}

/* Иконки в footer */
footer .fa,
footer .fas,
footer .far,
footer .fab {
    font-size: 18px;
    color: #0066CC;
    transition: all 0.3s ease;
}

footer a:hover .fa,
footer a:hover .fas {
    color: #004d99;
    transform: scale(1.15);
}

/* Социальные иконки в footer */
footer .social-icons .fa,
footer .social-icons .fab {
    font-size: 18px;
    color: #0066CC;
    margin: 0;
}

/* Иконки звёздочек рейтинга */
.rating .fa-star,
.rating .fa-star-o {
    font-size: 15px;
    transition: all 0.2s ease;
}

.rating:hover .fa-star {
    transform: scale(1.1);
}

/* Иконки удаления/отмены (красные для различимости) */
.fa-times,
.fa-times-circle,
.fa-trash,
.fa-trash-o,
.fa-remove,
.fa-close {
    color: #dc3545;
}

button[onclick*="remove"]:not(#cart button) .fa,
button[onclick*="delete"]:not(#cart button) .fa,
.btn-danger .fa,
.btn-danger .fas {
    color: #dc3545;
}

.btn-danger:hover .fa,
.btn-danger:hover .fas {
    color: #fff !important;
}

/* Иконки успеха (зелёные) */
.fa-check,
.fa-check-circle,
.btn-success .fa,
.btn-success .fas {
    color: #28a745;
}

.btn-success:hover .fa,
.btn-success:hover .fas {
    color: #fff !important;
}

/* Иконки предупреждения (оранжевые) */
.fa-exclamation-triangle,
.fa-exclamation-circle,
.btn-warning .fa,
.btn-warning .fas {
    color: #ffc107;
}

.btn-warning:hover .fa,
.btn-warning:hover .fas {
    color: #fff !important;
}

/* Иконки в алертах */
.alert .fa {
    font-size: 18px;
    margin-right: 10px;
    vertical-align: middle;
    color: #0066CC;
}

.alert-success .fa {
    color: #51a351;
}

.alert-danger .fa {
    color: #dc3545;
}

.alert-warning .fa {
    color: #f89406;
}

.alert-info .fa {
    color: #0066CC;
}

/* Иконки в dropdown меню */
.dropdown-menu li .fa,
.dropdown-menu li .fas {
    font-size: 16px;
    margin-right: 10px;
    color: #0066CC;
    width: 20px;
    text-align: center;
}

.dropdown-menu li:hover .fa,
.dropdown-menu li:hover .fas {
    color: #004d99;
}

/* Иконки поиска */
#search .btn .fa {
    font-size: 18px;
    color: #FFFFFF;
    margin: 0;
}

/* Адаптивность иконок */
@media (max-width: 991px) {
    .fa, .fas, .far, .fab {
        font-size: 18px;
    }

    .header-icons .fa,
    .header-icons .fas {
        font-size: 22px;
    }

    .btn .fa {
        font-size: 16px;
        margin-right: 6px;
    }
}

@media (max-width: 576px) {
    .fa, .fas, .far, .fab {
        font-size: 16px;
    }

    .header-icons .fa,
    .header-icons .fas {
        font-size: 20px;
    }

    #cart > .btn .fa {
        font-size: 20px;
        margin-right: 8px;
    }
}

/* Специальные эффекты для интерактивных иконок */
.icon-hover-effect {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.icon-hover-effect:hover {
    animation: iconPulse 0.6s ease;
}

@keyframes iconPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.15); }
}

/* Круглые контейнеры для иконок (если нужны) */
.icon-circle {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f5f8fc;
    color: #0066CC;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.icon-circle:hover {
    background: #0066CC;
    color: #FFFFFF;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 102, 204, 0.3);
}

.icon-circle .fa {
    margin: 0;
    font-size: 18px;
    color: #0066CC;
}

.icon-circle:hover .fa {
    color: #FFFFFF !important;
}

/* Иконки на белом фоне (обеспечиваем контраст) */
.bg-white .fa:not(.fa-star):not(.fa-star-o),
.bg-white .fas:not(.fa-star):not(.fa-star-o),
.panel-body .fa,
.panel-body .fas,
.well .fa,
.well .fas {
    color: #0066CC;
}

/* Иконки на тёмном фоне (белые для контраста) */
.bg-dark .fa,
.bg-dark .fas,
.bg-primary .fa,
.bg-primary .fas,
#menu .nav .fa,
#menu .nav .fas,
.navbar .fa,
.navbar .fas {
    color: #fff;
}

/* ========== END ICON STYLES ========== */

/* ========== BRANDS SLIDER STYLES ========== */

/* Основной контейнер слайдера брендов */
.swiper-viewport {
    margin: 40px 0 60px;
    background: #FFFFFF;
    z-index: 1;
    border: none;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    width: 100%;
    min-height: 120px;
    position: relative;
    overflow: hidden;
    padding: 30px 20px;
}

/* Контейнер swiper */
.swiper-viewport .swiper-container {
    height: 100%;
    width: 100%;
}

.swiper-viewport .swiper-wrapper {
    align-items: center;
    display: flex;
}

.swiper-viewport .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    transition: all 0.3s ease;
    border-radius: 8px;
}

/* Эффект при наведении на слайд */
.swiper-viewport .swiper-slide:hover {
    background: #f8f9fa;
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Логотипы брендов */
.swiper-viewport img {
    display: block;
    max-height: 80px;
    max-width: 160px;
    width: auto;
    height: auto;
    margin: 0 auto;
    object-fit: contain;
    opacity: 0.8;
    transition: all 0.3s ease;
    filter: grayscale(100%);
}

/* Эффект при наведении на логотип */
.swiper-viewport .swiper-slide:hover img {
    opacity: 1;
    filter: grayscale(0%);
    transform: scale(1.05);
}

/* Кнопки навигации */
.swiper-button-prev,
.swiper-button-next {
    width: 40px;
    height: 40px;
    background: #FFFFFF;
    border-radius: 50%;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    color: #0066CC;
    transition: all 0.3s ease;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
    background: #0066CC;
    color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(0, 102, 204, 0.3);
}

.swiper-button-prev::after,
.swiper-button-next::after {
    font-size: 18px;
    font-weight: 700;
}

/* Пагинация */
.swiper-pagination {
    bottom: 10px;
}

.swiper-pagination-bullet {
    background: #d1d5db !important;
    opacity: 1 !important;
    width: 8px;
    height: 8px;
    margin: 0 4px;
    transition: all 0.3s ease;
}

.swiper-pagination-bullet-active {
    background: #0066CC !important;
    width: 24px;
    border-radius: 4px;
}

/* Дополнительное оформление контейнера */
.swiper-viewport::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(to right, transparent, #0066CC, transparent);
    opacity: 0.3;
}

.swiper-viewport::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(to right, transparent, #0066CC, transparent);
    opacity: 0.3;
}

/* Заголовок над слайдером брендов (если есть) */
.brands-title {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    color: #111827;
    margin: 0 0 30px;
    position: relative;
    padding-bottom: 15px;
}

.brands-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(to right, #0066CC, #004d99);
    border-radius: 2px;
}

/* Адаптивность слайдера */
@media (max-width: 991px) {
    .swiper-viewport {
        min-height: 100px;
        padding: 20px 15px;
        margin: 30px 0 50px;
    }

    .swiper-viewport img {
        max-height: 60px;
        max-width: 120px;
    }

    .swiper-button-prev,
    .swiper-button-next {
        width: 35px;
        height: 35px;
    }

    .swiper-button-prev::after,
    .swiper-button-next::after {
        font-size: 16px;
    }

    .brands-title {
        font-size: 20px;
        margin-bottom: 20px;
    }
}

@media (max-width: 576px) {
    .swiper-viewport {
        min-height: 80px;
        padding: 15px 10px;
        margin: 20px 0 40px;
        border-radius: 8px;
    }

    .swiper-viewport img {
        max-height: 50px;
        max-width: 100px;
    }

    .swiper-viewport .swiper-slide {
        padding: 10px;
    }

    .swiper-button-prev,
    .swiper-button-next {
        width: 30px;
        height: 30px;
        display: none;
    }

    .brands-title {
        font-size: 18px;
        margin-bottom: 15px;
        padding-bottom: 10px;
    }

    .brands-title::after {
        width: 40px;
        height: 2px;
    }
}

/* Анимация появления слайдера */
@keyframes fadeInSlider {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.swiper-viewport {
    animation: fadeInSlider 0.6s ease-out;
}

/* Дополнительный стиль для контейнера брендов */
.brands-section {
    background: linear-gradient(to bottom, #ffffff 0%, #f8f9fa 100%);
    padding: 50px 0;
    margin: 40px 0;
}

.brands-section .container {
    max-width: 1280px;
}

/* ========== END BRANDS SLIDER STYLES ========== */