body {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    color: #666;
    font-size: 14px;
    line-height: 120%;
    letter-spacing: 0%;
    width: 100%;
}
h1, h2, h3, h4, h5, h6 {
    color: #444;
}
/* default font size */
.fa {
    font-size: 14px;
}
/* Override the bootstrap defaults - минимальный размер 18px */
h1 {
    font-size: 33px;
}
h2 {
    font-size: 27px;
}
h3 {
    font-size: 21px;
}
h4 {
    font-size: 18px;
}
h5 {
    font-size: 18px;
}
h6 {
    font-size: 18px;
}
a {
    color: #23a1d1;
}
a:hover {
    text-decoration: none;
}
legend {
    font-size: 18px;
    padding: 7px 0px
}
label {
    font-size: 12px;
    font-weight: normal;
}
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 {
    font-size: 12px;
}
.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;
}
/* Fix some bootstrap issues */
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: bold;
}
/* Gradent to all drop down menus */
.dropdown-menu li > a:hover {
    text-decoration: none;
    color: #ffffff;
    background-color: #229ac8;
    background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
    background-repeat: repeat-x;
}
/* top */



/* logo */
#logo {
    margin: 0 0 10px 0;
}
/* search */
#search {
    margin-bottom: 10px;
}
#search .input-lg {
    height: 40px;
    line-height: 20px;
    padding: 0 10px;
}
#search .btn-lg {
    font-size: 15px;
    line-height: 18px;
    padding: 10px 35px;
    text-shadow: 0 1px 0 #FFF;
}
/* cart */
#cart {
    margin-bottom: 10px;
}
#cart > .btn {
    font-size: 12px;
    line-height: 18px;
    color: #FFF;
}
#cart.open > .btn {
    background-image: none;
    background-color: #FFFFFF;
    border: 1px solid #E6E6E6;
    color: #666;
    box-shadow: none;
    text-shadow: none;
}
#cart.open > .btn:hover {
    color: #444;
}
#cart .dropdown-menu {
    background: #eee;
    z-index: 1001;
}
#cart .dropdown-menu {
    min-width: 100%;
}
    @media (max-width: 478px) {
        #cart .dropdown-menu {
            width: 100%;
        }
    }
#cart .dropdown-menu table {
    margin-bottom: 10px;
}
#cart .dropdown-menu li > div {
    min-width: 427px;
    padding: 0 10px;
}
    @media (max-width: 478px) {
        #cart .dropdown-menu li > div {
            min-width: 100%;
        }
    }
#cart .dropdown-menu li p {
    margin: 20px 0;
}
/* menu */
#menu {
    background-color: #229ac8;
    background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
    background-repeat: repeat-x;
    border-color: #1f90bb #1f90bb #145e7a;
    min-height: 40px;
}
#menu .nav > li > a {
    color: #fff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    padding: 10px 15px 10px 15px;
    min-height: 15px;
    background-color: transparent;
}
#menu .nav > li > a:hover, #menu .nav > li.open > a {
    background-color: rgba(0, 0, 0, 0.1);
}
#menu .dropdown-menu {
    padding-bottom: 0;
}
#menu .dropdown-inner {
    display: table;
}
#menu .dropdown-inner ul {
    display: table-cell;
}
#menu .dropdown-inner a {
    min-width: 160px;
    display: block;
    padding: 3px 20px;
    clear: both;
    line-height: 20px;
    color: #333333;
    font-size: 12px;
}
#menu .dropdown-inner li a:hover {
    color: #FFFFFF;
}
#menu .see-all {
    display: block;
    margin-top: 0.5em;
    border-top: 1px solid #DDD;
    padding: 3px 20px;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 3px 3px;
    font-size: 12px;
}
#menu .see-all:hover, #menu .see-all:focus {
    text-decoration: none;
    color: #ffffff;
    background-color: #229ac8;
    background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
    background-repeat: repeat-x;
}
#menu #category {
    float: left;
    padding-left: 15px;
    font-size: 16px;
    font-weight: 700;
    line-height: 40px;
    color: #fff;
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}
#menu .btn-navbar {
    font-size: 15px;
    font-stretch: expanded;
    color: #FFF;
    padding: 2px 18px;
    float: right;
    background-color: #229ac8;
    background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
    background-repeat: repeat-x;
    border-color: #1f90bb #1f90bb #145e7a;
}
#menu .btn-navbar:hover, #menu .btn-navbar:focus, #menu .btn-navbar:active, #menu .btn-navbar.disabled, #menu .btn-navbar[disabled] {
    color: #ffffff;
    background-color: #229ac8;
}
@media (min-width: 768px) {
    #menu .dropdown:hover .dropdown-menu {
        display: block;
    }
}
@media (max-width: 767px) {
    #menu {
        border-radius: 4px;
    }
    #menu div.dropdown-inner > ul.list-unstyled {
        display: block;
    }
    #menu div.dropdown-menu {
        margin-left: 0 !important;
        padding-bottom: 10px;
        background-color: rgba(0, 0, 0, 0.1);
    }
    #menu .dropdown-inner {
        display: block;
    }
    #menu .dropdown-inner a {
        width: 100%;
        color: #fff;
    }
    #menu .dropdown-menu a:hover,
    #menu .dropdown-menu ul li a:hover {
        background: rgba(0, 0, 0, 0.1);
    }
    #menu .see-all {
        margin-top: 0;
        border: none;
        border-radius: 0;
        color: #fff;
    }
}
/* content */
#content {
    min-height: 600px;
}
/* footer */



/* alert */
.alert {
    padding: 8px 14px 8px 14px;
}
/* breadcrumb - Ð“Ð»Ð¾Ð±Ð°Ð»ÑŒÐ½Ñ‹Ðµ ÑÑ‚Ð¸Ð»Ð¸ */
.breadcrumb {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    font-weight: 300;
    margin: 0 0 20px 0;
    padding: 70px 25px 0 0;
    background: none;
    border: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    list-style: none;
}

.breadcrumb i {
    font-size: 14px;
    margin-right: 5px;
    font-weight: 300;
}

.breadcrumb > li {
    display: inline-flex;
    align-items: center;
    position: relative;
    color: #666;
    padding: 0;
    font-weight: 300;
}

.breadcrumb > li a {
    color: #666;
    text-decoration: none;
    transition: color 0.3s ease;
    font-weight: 300;
}

.breadcrumb > li a:hover {
    color: #F05633;
    text-decoration: none;
}

.breadcrumb > li.active {
    color: #F05633;
    font-weight: 300;
}

.breadcrumb > li + li:before {
    content: '/';
    padding: 0 8px;
    color: #ccc;
    font-weight: 300;
}

.breadcrumb > li:after {
    content: none;
    display: none;
}

.breadcrumb > li span {
    font-weight: 300;
}

.breadcrumb > li.active span {
    font-weight: 300;
}
/* ========================================
   PAGINATION - Ð“Ð»Ð¾Ð±Ð°Ð»ÑŒÐ½Ñ‹Ðµ ÑÑ‚Ð¸Ð»Ð¸
   ======================================== */

.pagination {
    margin: 0;
    display: flex;
    gap: 8px;
    padding: 0;
    list-style: none;
    justify-content: center;
}

.pagination li {
    display: inline-block;
}

.pagination li a,
.pagination li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 8px 12px;
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #666;
    text-decoration: none;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.pagination li a:hover {
    color: #fff;
    background: #F05633;
    border-color: #F05633;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(240, 86, 51, 0.3);
}

.pagination li.active span,
.pagination li.active a {
    color: #fff;
    background: #F05633;
    border-color: #F05633;
    font-weight: 600;
    box-shadow: 0 2px 4px rgba(240, 86, 51, 0.3);
}

.pagination li.disabled span,
.pagination li.disabled a {
    color: #ccc;
    background: #f8f9fa;
    border-color: #e0e0e0;
    cursor: not-allowed;
    pointer-events: none;
    opacity: 0.6;
}

/* Pagination arrows */
.pagination > li:first-child > a:before {
    content: 'â† ';
}

.pagination > li:last-child > a:after {
    content: ' â†’';
}
/* buttons */
.buttons {
    margin: 1em 0;
}
.btn {
    padding: 7.5px 12px;
    font-size: 12px;
    border-radius: 4px;
}
.btn-xs {
    font-size: 9px;
}
.btn-sm {
    font-size: 10.2px;
}
.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: #777;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    background-color: #e7e7e7;
    background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
    background-repeat: repeat-x;
    border-color: #dddddd #dddddd #b3b3b3 #b7b7b7;
}
.btn-primary {
    color: #ffffff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    background-color: #229ac8;
    background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
    background-repeat: repeat-x;
    border-color: #1f90bb #1f90bb #145e7a;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] {
    background-color: #1f90bb;
    background-position: 0 -15px;
}
.btn-warning {
    color: #ffffff;
    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: #ffffff;
    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: #ffffff;
    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: #ffffff;
    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: #23A1D1;
    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: #ffffff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    background-color: #363636;
    background-image: linear-gradient(to bottom, #444444, #222222);
    background-repeat: repeat-x;
    border-color: #222222 #222222 #000000;
}
.btn-inverse:hover, .btn-inverse:active, .btn-inverse.active, .btn-inverse.disabled, .btn-inverse[disabled] {
    background-color: #222222;
    background-image: linear-gradient(to bottom, #333333, #111111);
}
/* list group */
.list-group a {
    border: 1px solid #DDDDDD;
    color: #888888;
    padding: 8px 12px;
}
.list-group a.active, .list-group a.active:hover, .list-group a:hover {
    color: #444444;
    background: #eeeeee;
    border: 1px solid #DDDDDD;
    text-shadow: 0 1px 0 #FFF;
}
/* carousel */
.carousel-caption {
    color: #FFFFFF;
    text-shadow: 0 1px 0 #000000;
}
.carousel-control .icon-prev:before {
    content: '\f053';
    font-family: FontAwesome;
}
.carousel-control .icon-next:before {
    content: '\f054';
    font-family: FontAwesome;
}
/* product list */
.product-thumb {
    border: 1px solid #ddd;
    margin-bottom: 20px;
    overflow: auto;
}
.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-grid .product-thumb .image {
    float: none;
}
@media (min-width: 767px) {
.product-list .product-thumb .image {
    float: left;
    padding: 0 15px;
}
}
.product-thumb h4 {
    font-weight: bold;
}
.product-thumb .caption {
    padding: 0 20px;
    min-height: 180px;
}
.product-list .product-thumb .caption {
    margin-left: 230px;
}
@media (max-width: 1200px) {
.product-grid .product-thumb .caption {
    min-height: 210px;
    padding: 0 10px;
}
}
@media (max-width: 767px) {
.product-list .product-thumb .caption {
    min-height: 0;
    margin-left: 0;
    padding: 0 10px;
}
.product-grid .product-thumb .caption {
    min-height: 0;
}
}
.product-thumb .rating {
    padding-bottom: 10px;
}
.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-thumb .price {
    color: #444;
}
.product-thumb .price-new {
    font-weight: 600;
}
.product-thumb .price-old {
    color: #999;
    text-decoration: line-through;
    margin-left: 10px;
}
.product-thumb .price-tax {
    color: #999;
    font-size: 12px;
    display: block;
}
.product-thumb .button-group {
    border-top: 1px solid #ddd;
    background-color: #eee;
    overflow: auto;
}
.product-list .product-thumb .button-group {
    border-left: 1px solid #ddd;
}
@media (max-width: 768px) {
    .product-list .product-thumb .button-group {
        border-left: none;
    }
}
.product-thumb .button-group button {
    width: 60%;
    border: none;
    display: inline-block;
    float: left;
    background-color: #eee;
    color: #888;
    line-height: 38px;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
}
.product-thumb .button-group button + button {
    width: 20%;
    border-left: 1px solid #ddd;
}
.product-thumb .button-group button:hover {
    color: #444;
    background-color: #ddd;
    text-decoration: none;
    cursor: pointer;
}
@media (max-width: 1200px) {
    .product-thumb .button-group button, .product-thumb .button-group button + button {
        width: 33.33%;
    }
}
@media (max-width: 767px) {
    .product-thumb .button-group button, .product-thumb .button-group button + button {
        width: 33.33%;
    }
}
.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;
}

/* fixed colum left + content + right*/
@media (min-width: 768px) {
    #column-left  .product-layout .col-md-3 {
       width: 100%;
    }
    #column-left + #content .product-layout .col-md-3 {
       width: 50%;
    }
    #column-left + #content + #column-right .product-layout .col-md-3{
       width: 100%;
    }
    #content + #column-right .product-layout .col-md-3{
       width: 100%;
    }
}

/* ========================================
   BREADCRUMB RESPONSIVE STYLES
   ======================================== */

@media (max-width: 767px) {
    .breadcrumb {
        font-size: 12px;
        padding: 70px 25px 0 0;
        margin: 0 0 15px 0;
    }
    
    .breadcrumb > li + li:before {
        padding: 0 5px;
    }
}

@media (max-width: 480px) {
    .breadcrumb {
        font-size: 11px;
        padding: 70px 25px 0 0;
    }
    
    .breadcrumb > li + li:before {
        padding: 0 4px;
    }
    
    /* Pagination Ð½Ð° Ð¼Ð¾Ð±Ð¸Ð»ÑŒÐ½Ñ‹Ñ… */
    .pagination {
        gap: 5px;
        flex-wrap: wrap;
    }
    
    .pagination li a,
    .pagination li span {
        min-width: 36px;
        height: 36px;
        padding: 6px 10px;
        font-size: 13px;
    }
    
    .pagination > li:first-child > a:before,
    .pagination > li:last-child > a:after {
        content: '';
    }
}

/* fixed product layouts used in left and right columns */
#column-left .product-layout,
#column-right .product-layout {
    width: 100%;
}

/* fixed mobile cart quantity input */
.input-group .form-control[name^=quantity] {
    min-width: 50px;
}

/* ========================================
   CONTAINER MAX-WIDTH FOR ALL PAGES
   ======================================== */

.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1240px !important;
}

/* ========================================
   GEO CARD STYLES (for modules and pages)
   ======================================== */

.geo-grid {
    margin-top: 0;
    margin-left: -5px;
    margin-right: -5px;
}

.geo-grid > [class*="col-"] {
    padding-left: 5px;
    padding-right: 5px;
    margin-bottom: 10px;
}

.geo-grid .geo-card {
    margin-bottom: 0;
}

/* Geo modules grids */
.geo-other-countries .geo-other-grid,
.geo-current-country-cities .geo-current-cities-grid {
    margin-bottom: 24px;
    margin-left: -5px;
    margin-right: -5px;
}

.geo-other-countries .geo-other-grid > [class*="col-"],
.geo-current-country-cities .geo-current-cities-grid > [class*="col-"] {
    padding-left: 5px;
    padding-right: 5px;
    margin-bottom: 10px;
}

.geo-other-countries .geo-other-grid .geo-card,
.geo-current-country-cities .geo-current-cities-grid .geo-card {
    margin-bottom: 0;
}

.geo-card {
    position: relative;
    display: block;
    border-radius: 24px;
    overflow: hidden;
    color: #ffffff;
    text-decoration: none;
    min-height: 240px;
    background: #1c1c1c;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    margin-bottom: 24px;
    font-family: 'Montserrat', 'Open Sans', sans-serif;
}

.geo-card::after {
    content: '';
    display: block;
    padding-bottom: 68%;
}

.geo-card > * {
    position: absolute;
    inset: 0;
}

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

.geo-card__media picture,
.geo-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.geo-card:hover,
.geo-card:focus {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25);
    color: #ffffff;
    text-decoration: none;
}

.geo-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.65) 75%, rgba(0, 0, 0, 0.9) 100%);
    pointer-events: none;
}

.geo-card__content {
    position: absolute;
    inset: 24px 24px 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    z-index: 2;
}

.geo-card__title {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    text-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
    font-family: 'Montserrat', 'Open Sans', sans-serif;
}

.geo-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: auto;
}

.geo-card__counts {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.geo-card__count {
    font-size: 16px;
    font-weight: 100;
    opacity: 0.9;
    font-family: 'Montserrat', 'Open Sans', sans-serif;
    display: block;
}

.geo-card__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--accent-color);
    box-shadow: 0 12px 24px rgba(255, 90, 36, 0.35);
    transition: transform 0.3s ease;
}

.geo-card:hover .geo-card__cta,
.geo-card:focus .geo-card__cta {
    transform: scale(1.05);
}

.geo-card__cta svg {
    display: block;
}

.geo-empty {
    font-size: 18px;
    color: #666666;
    font-family: 'Montserrat', 'Open Sans', sans-serif;
}

@media (max-width: 1199px) {
    .geo-card {
        border-radius: 10px;
    }
}

@media (max-width: 767.98px) {
    .geo-card {
        border-radius: 10px;
        min-height: 200px;
    }

    .geo-card__content {
        inset: 16px 16px 16px;
    }

    .geo-card__title {
        font-size: 20px;
    }

    .geo-card__count {
        font-size: 16px;
    }

    .geo-card__cta {
        width: 34px;
        height: 34px;
    }
}

/* ========================================
   FOOTER STYLES
   ======================================== */

.site-footer {
    border-top: 1px solid #f1f1f1;
}

.footer-title {
    font-weight: 600;
    color: #333;
}

.footer-links li {
    margin-bottom: .5rem;
}

.footer-links a {
    color: #666;
    text-decoration: none;
}

.footer-links a:hover {
    color: #333;
}

/* Subscribe */
.subscribe-wrap {
    width: 100%;
}

@media (min-width: 992px) {
    .subscribe-wrap {
        width: 50%;
    }
}

.subscribe-input {
    height: 38px;
    border-radius: 9999px;
    background: #f6f6f6;
    border: 1px solid #f1f1f1;
    padding-left: 42px;
}

.subscribe-icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #9fa4ad;
}

.subscribe-btn {
    height: 38px;
    border-radius: 9999px;
    padding: 0 22px;
}

/* Contacts */
.contact-phone-link {
    font-weight: 600;
    font-size: 1.125rem;
    color: #111;
    text-decoration: none;
}

.contact-phone-link:hover {
    color: #111;
}

.contact-email-link {
    font-size: 1.125rem;
    color: #111;
    text-decoration: none;
}

.contact-email-link:hover {
    color: #111;
}

/* Socials */
.social-circle {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #F05633;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    font-size: 20px;
}

.social-circle:hover {
    opacity: .9;
}

/* Privacy */
.privacy-link {
    color: #666;
    text-decoration: none;
    border-bottom: 1px solid #bdbdbd;
}

.privacy-link:hover {
    color: #333;
}

/* Mobile tweaks */
@media (max-width: 576.98px) {
    .subscribe-input,
    .subscribe-btn {
        height: 48px;
    }
    .brand-note {
        margin-top: .5rem;
    }
}

/* ========================================
   GEO PAGES STYLES (countries, cities pages)
   ======================================== */

.geo-page {
	padding-bottom: 40px;
}

.geo-page__title {
	margin: 0 0 5px;
	font-size: 36px;
	line-height: 1.2;
	font-weight: 700;
	font-family: 'Montserrat', 'Open Sans', sans-serif;
}

@media (max-width: 991px) {
	.geo-page__title {
		font-size: 32px;
	}
}

@media (max-width: 767.98px) {
	.geo-page__title {
		font-size: 28px;
		margin-bottom: 24px;
	}
}

/* ========================================
   MODULE SECTION STYLES (from module-section.css)
   ======================================== */

.section-block {
  font-family: 'Montserrat', 'Open Sans', sans-serif;
  margin: 0 auto;
  background-color: #ffffff;
  padding: 60px 0;
}

/* Убираем верхний padding у первого .section-block на странице */
/* Используем класс, добавляемый через JavaScript */
.section-block.first-section-block {
  padding-top: 0 !important;
}

.section-inner {
  max-width: 1240px;
  margin: 0 auto;
}

.section-title {
  font-family: 'Montserrat', 'Open Sans', sans-serif;
  font-size: 36px;
  font-weight: bold;
  color: #000000;
  margin-bottom: 20px;
  text-align: left;
}

.section-header-mobile {
  margin-bottom: 30px;
}

.section-title-mobile {
  margin: 0;
  font-size: 28px;
  line-height: 1.2;
}

.section-button,
.section-button-desktop,
.section-button-mobile {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 32px;
  background-color: var(--accent-color);
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  border-radius: 8px;
  font-family: 'Montserrat', 'Open Sans', sans-serif;
  font-size: 16px;
  font-weight: 200;
  line-height: 1;
  transition: background-color 0.3s ease;
  width: 200px;
  margin: 0 auto;
}

.section-button-desktop {
  width: 160px;
  height: 38px;
  padding: 7px;
  border-radius: 20px;
  margin: 0 auto;
  background-color: var(--accent-color);
  font-weight: 200;
  line-height: 1;
}

.section-button:hover,
.section-button:focus,
.section-button-mobile:hover,
.section-button-mobile:focus {
  background-color: var(--accent-hover, #d14a28);
  text-decoration: none;
  color: #ffffff;
}

.section-button-desktop:hover,
.section-button-desktop:focus {
  background-color: var(--accent-hover, #d14a28);
  text-decoration: none;
  color: #ffffff;
}

.section-button-mobile {
  padding: 7px 15px;
  font-size: 14px;
  width: auto;
  margin: 0;
  white-space: nowrap;
}


/* Секция с карточками */
.section-cards-grid {
  margin-bottom: 40px;
}

.section-cards-grid > div {
  margin-bottom: 10px;
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.section-card {
  background: #fff;
  padding: 40px;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  cursor: pointer;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.section-card:hover {
  background: var(--accent-color);
  color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.section-card:hover .section-card__icon {
  border-color: #fff;
}

.section-card:hover .section-card__title {
  color: #fff;
}

.section-card:hover .section-card__text {
  color: #fff;
}

.section-card__icon {
  width: 60px;
  height: 60px;
  border: 2px solid #333;
  border-radius: 50%;
  margin-bottom: 20px;
  transition: all 0.3s ease;
  flex-shrink: 0;
}

.section-card__title {
  font-size: 20px;
  font-weight: bold;
  color: #333;
  margin-bottom: 15px;
  transition: all 0.3s ease;
}

.section-card__text {
  font-size: 16px;
  color: #333;
  line-height: 1.6;
  transition: all 0.3s ease;
  flex-grow: 1;
  margin-bottom: 25px;
}

.section-card__button {
  margin-top: auto;
  padding-top: 20px;
}

.section-card-btn {
  display: inline-block;
  padding: 12px 30px;
  background: var(--accent-color);
  color: #fff;
  border-radius: 20px;
  text-decoration: none;
  font-weight: 300;
  transition: all 0.3s ease;
  font-size: 16px;
  font-family: 'Montserrat', 'Open Sans', sans-serif;
}

.section-card:hover .section-card-btn {
  background: #fff;
  color: var(--accent-color);
}

@media (max-width: 767.98px) {
  .section-block {
    padding: 40px 0;
  }

  .section-block.first-section-block {
    padding: 0 !important;
  }

  .section-title {
    font-size: 28px;
  }

  .section-card {
    padding: 30px;
  }

  .section-card__title {
    font-size: 20px;
  }

  .section-card__text {
    font-size: 14px;
  }
}

/* ========================================
   РЕЖИМ СПИСКА (LIST MODE)
   ======================================== */

.geo-list-grid {
  margin-left: -5px !important;
  margin-right: -5px !important;
  margin-bottom: 0;
}

.geo-list-grid > div {
  padding-left: 5px;
  padding-right: 5px;
  margin-bottom: 10px;
}

.geo-list-card {
  display: block;
  padding: 16px 20px;
  border-radius: 8px;
  text-decoration: none;
  color: #333;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.11);
}

.geo-list-card:hover,
.geo-list-card:focus {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  text-decoration: none;
  color: #333;
  transform: translateY(-2px);
}

.geo-list-card__name {
  font-size: 18px;
  font-weight: 700;
  color: #000;
  margin-bottom: 6px;
  font-family: 'Montserrat', 'Open Sans', sans-serif;
  line-height: 1.3;
}

.geo-list-card__stats {
  font-size: 14px;
  color: #666;
  font-family: 'Montserrat', 'Open Sans', sans-serif;
  line-height: 1.4;
}

@media (max-width: 767.98px) {
  .geo-list-card {
    padding: 14px 16px;
  }
  
  .geo-list-card__name {
    font-size: 16px;
  }
  
  .geo-list-card__stats {
    font-size: 13px;
  }
}

/* Стили для режима списка - разделения между регионами */
/* Заголовок модуля в режиме списка */
.module-main-title {
  margin-bottom: 30px;
}

.section-header-mobile .module-main-title {
  margin-bottom: 20px;
}

.geo-countries-list {
  margin-bottom: 50px;
}

.geo-countries-list:last-child {
  margin-bottom: 0;
}

/* Размер заголовка региона в режиме списка */
.geo-countries-list .region-title {
  font-size: 20px;
}