/*!
Theme: Savallos
Author: Andrey Galkin
Version: 1.0
*/

/*//////////////////////////////////////////////////////////////////
[ IMPORT FONTS ]*/

@import url(../fonts/montserrat/stylesheet.css);
@import url(../fonts/urw-classico/stylesheet.css);

/*//////////////////////////////////////////////////////////////////
[ ROOT ]*/

:root {
    --ff-main: "Montserrat", sans-serif;
    --ff-title: "URWClassicoRegular", sans-serif;
    --ff-secondary: "Montserrat", sans-serif;
    --fw-light: 300;
    --fw-regular: 400;
    --fw-medium: 500;
    --fw-semibold: 600;
    --fw-bold: 700;

    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #C6F45C;
    --bs-info: #2CCCD4;
    --bs-info-purple: #685BC6;
    --bs-warning: #FBE121;
    --bs-danger: #F94239;
    --bs-light: #f8f9fa;
    --bs-dark: #1d2d3a;
    --bs-primary-rgb: 13, 110, 253;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-success-rgb: 198, 244, 92;
    --bs-info-rgb: 44, 204, 212;
    --bs-info-purple-rgb: 104, 91, 198;
    --bs-warning-rgb: 251, 225, 33;
    --bs-danger-rgb: 249, 66, 57;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 29, 45, 58;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-font-sans-serif: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-xl-font-size: 1.125rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.4;
    --bs-body-color: #778894;
    --bs-body-bg: #fff;
    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: #cccccc;
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
    --bs-border-radius: 0.375rem;
    --bs-border-radius-sm: 0.25rem;
    --bs-border-radius-lg: 0.5rem;
    --bs-border-radius-xl: 1rem;
    --bs-border-radius-2xl: 2rem;
    --bs-border-radius-pill: 50rem;
    --bs-link-color: #778894;
    --bs-link-hover-color: #1D2D3A;
    --bs-code-color: #d63384;
    --bs-highlight-bg: #fff3cd;
}

html {
	min-height: 100vh;
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;
}

/*//////////////////////////////////////////////////////////////////
[ TYPOGRAPHY ]*/

h6,
.h6,
h5,
.h5,
h4,
.h4,
h3,
.h3,
h2,
.h2,
h1,
.h1 {
    font-weight: 400;
    line-height: 1.2;
}

h1, .h1 {
    font-size: 1.875rem;
}

@media (min-width: 1200px) {
    h1, .h1 {
        font-size: 2.5rem;
    }
}
  
h2, .h2 {
    font-size: 1.5rem;
}

@media (min-width: 1200px) {
    h2, .h2 {
        font-size: 2.25rem;
    }
}

h3, .h3 {
    font-size: 1.5rem;
}

@media (min-width: 1200px) {
    h3, .h3 {
        font-size: 1.75rem;
    }
}

h4, .h4 {
    font-size: 1rem;
}

@media (min-width: 1200px) {
    h4, .h4 {
        font-size: 1.5rem;
    }
}

h5, .h5 {
    font-size: 1.25rem;
}

@media (min-width: 1200px) {
    h5, .h5 {
        font-size: 1.25rem;
    }
}

h6, .h6 {
    font-size: 1rem;
}

@media (min-width: 1200px) {
    h6, .h6 {
        font-size: 1.25rem;
    }
}

.ff-main {
    font-family: var(--ff-main);
}

.ff-title {
    font-family: var(--ff-title);
}

.ff-secondary {
	font-family: var(--ff-secondary);
}

.fw-light,
.fw-300 {
    font-weight: 300;
}

.fw-normal,
.fw-regular,
.fw-400 {
    font-weight: 400;
}

.fw-medium,
.fw-500 {
    font-weight: 500;
}

.fw-semibold,
.fw-600 {
    font-weight: 600;
}

.fw-bold,
.fw-700 {
    font-weight: 700;
}

.fs-12 {
    font-size: 12px;
}

.fs-14 {
    font-size: 14px;
}

.fs-16 {
    font-size: 16px;
}

.fs-18 {
    font-size: 18px;
}

.fs-22 {
    font-size: 22px;
}

.fs-30 {
    font-size: 30px;
}

.fs-40 {
    font-size: 40px;
}

@media (min-width: 1200px) {

    .fs-xl-18 {
        font-size: 18px;
    }

    .fs-xl-22 {
        font-size: 22px;
    }

    .fs-xl-30 {
        font-size: 30px;
    }

    .fs-xl-40 {
        font-size: 40px;
    }
}

.text-gray {
    color: #A2A2A2;
}

.text-gray-blue {
    color: #A7B4C8;
}

.text-muted {
    color: #A2A2A2 !important;
}

/*//////////////////////////////////////////////////////////////////
[ LINKS ]*/

a {
    text-decoration: none;
}

.breadcrumb {
    --bs-breadcrumb-font-size: 12px;
    --bs-breadcrumb-margin-bottom: 0;
    --bs-breadcrumb-item-active-color: #212121;
    display: block;
}

.breadcrumb-item {
    display: inline;
}

.breadcrumb-item+.breadcrumb-item::before {
    float: inherit;
}

.breadcrumb a {
    text-decoration: none;
}

/*//////////////////////////////////////////////////////////////////
[ FORMS ]*/

input,
button,
textarea,
select {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    background-color: transparent;
    outline: none;
}

:focus,
:active {
    outline: none;
}

textarea {
    overflow: auto;
}

.form-control,
.form-select {
    border: none;
    border-radius: 0;
    background-color: transparent;
}

.form-control {
    border-bottom: 1px solid #778894;
}

.form-select {
    padding: 0.375rem 2.25rem 0.375rem 0;
}

.form-control:focus,
.form-select:focus {
    border-color: #1D2D3A;
    box-shadow: none;
    background-color: transparent;
}

.search-form .form-control {
    border-bottom: 1px solid #778894;
    box-shadow: none !important;
}

.form-check-custom {
    display: flex;
    align-items: center;
    gap: 8px;
}

.form-check-input-custom {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    background-color: #EFF1F5;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
    print-color-adjust: exact;
}

.form-check-input-custom:focus {
    box-shadow: none;
}

.form-check-input-custom[type=radio],
.form-check-input-custom[type=checkbox] {
    border-radius: 0;
}

.form-check-input-custom:checked[type=radio],
.form-check-input-custom:checked[type=checkbox] {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0H24V24H0V0Z' fill='%23EFF1F5'/%3E%3Cpath d='M6 6H18V18H6V6Z' fill='%23A7B4C8'/%3E%3C/svg%3E");
}

.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.inputfile + label {
    cursor: pointer;
}

/*//////////////////////////////////////////////////////////////////
[ BUTTONS ]*/

.btn {
    --bs-btn-padding-x: 2rem;
    --bs-btn-padding-y: 1rem;
    --bs-btn-font-family: ;
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: 500;
    --bs-btn-line-height: 1.5;
    --bs-btn-color: #778894;
    --bs-btn-bg: transparent;
    --bs-btn-border-width: 1px;
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: 0;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    --bs-btn-disabled-opacity: 0.5;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
    text-transform: uppercase;
}

.btn-primary {
    --bs-btn-color: #778894;
    --bs-btn-bg: transparent;
    --bs-btn-border-color: #A7B4C8;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #778894;
    --bs-btn-hover-border-color: #778894;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #778894;
    --bs-btn-active-bg: transparent;
    --bs-btn-active-border-color: #A7B4C8;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #A7B4C8;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #A7B4C8;
    transition: outline 0.3s ease;
}

.btn-primary:hover {
    outline: 1px solid #A7B4C8;
}

.btn-primary-blue {
    --bs-btn-color: #D4EDFC;
    --bs-btn-bg: transparent;
    --bs-btn-border-color: #D4EDFC;
    --bs-btn-hover-color: #D4EDFC;
    --bs-btn-hover-bg: rgba(212, 237, 252, 0.2);
    --bs-btn-hover-border-color: #D4EDFC;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #D4EDFC;
    --bs-btn-active-bg: transparent;
    --bs-btn-active-border-color: #D4EDFC;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #D4EDFC;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #D4EDFC;
    transition: outline 0.3s ease;
}

.btn-primary-blue:hover {
    outline: 1px solid #D4EDFC;
}

.btn-icon {
    --btn-icon-size: 3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--btn-icon-size);
    height: var(--btn-icon-size);
    padding: 0 !important;
}

.btn-wishlist {
    --btn-icon-size: 12px;
}

.btn-lg,
.btn-group-lg>.btn {
    --bs-btn-padding-x: 3rem;
    --bs-btn-padding-y: 0.5rem;
    --bs-btn-font-size: 0.875rem;
    --bs-btn-border-radius: 0.5rem;
    min-height: 49px;
    font-weight: 500;
}

.btn-sm,
.btn-group-sm>.btn {
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-padding-y: 0.25rem;
    --bs-btn-font-size: 0.875rem;
    --bs-btn-border-radius: 0.25rem;
}

/*//////////////////////////////////////////////////////////////////
[ BASE STYLES ]*/

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

.bg-img {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.bg-img-top-auto {
    background-position: 50% 0;
    background-size: auto;
}

.z-index-1 {
    z-index: 1 !important;
}

.z-index-2 {
    z-index: 2 !important;
}

.z-index-3 {
    z-index: 3 !important;
}

.z-index-4 {
    z-index: 4 !important;
}

.z-index-5 {
    z-index: 5 !important;
}

.mb-55 {
    margin-bottom: 55px !important;
}

.mb-105 {
    margin-bottom: 105px !important;
}

.ul-columns-2 {
    columns: 2;
}

li {
    margin-bottom: 1rem;
}

.list-inline-item {
    margin-bottom: 0;
}

.bg-contain {
    background-size: contain !important;
}

/*//////////////////////////////////////////////////////////////////
[ ANIMATIONS ]*/

.hover-shine:hover {
    opacity: 1;
    -webkit-animation: flash .8s;
    animation: flash .8s;
}

@keyframes flash {
    0% {
        opacity: .65;
    }

    100% {
        opacity: 1;
    }
}

.hover-opacity {
    opacity: 1;
    transition: opacity 0.3s ease;
}

.hover-opacity:hover {
    opacity: .65;
}

.hover-rotate:hover {
    transform: rotate(-15deg);
}

/*//////////////////////////////////////////////////////////////////
[ CONTENT ]*/

.dropdown-toggle::after {
    content: "";
    width: 12px;
    height: 12px;
    background: transparent url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 4.36328L6 8.72692L1 4.36328' stroke='%23212121' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px auto no-repeat;
    vertical-align: middle !important;
    border: none !important;
    margin-left: 0.5rem;
    transition: transform 0.3s ease;
}

.dropdown-toggle.show::after {
    transform: rotate(180deg);
}

.dropdown-menu {
    --bs-dropdown-zindex: 1000;
    --bs-dropdown-min-width: 12rem;
    --bs-dropdown-padding-x: 0;
    --bs-dropdown-padding-y: 0.5rem;
    --bs-dropdown-spacer: 0.25rem;
    --bs-dropdown-font-size: 0.875rem;
    --bs-dropdown-color: #212121;
    --bs-dropdown-bg: #f6f6f6;
    --bs-dropdown-border-color: #f6f6f6;
    --bs-dropdown-border-radius: 0.5rem;
    --bs-dropdown-border-width: 1px;
    --bs-dropdown-inner-border-radius: calc(0.5rem - 1px);
    --bs-dropdown-divider-bg: #e2e5f1;
    --bs-dropdown-divider-margin-y: 0.375rem;
    --bs-dropdown-box-shadow: 0 0.275rem 1.25rem rgba(11, 15, 25, 0.05), 0 0.25rem 0.5625rem rgba(11, 15, 25, 0.03);
    --bs-dropdown-link-color: #212121;
    --bs-dropdown-link-hover-color: #1D2D3A;
    --bs-dropdown-link-hover-bg: #f6f6f6;
    --bs-dropdown-link-active-color: #1D2D3A;
    --bs-dropdown-link-active-bg: #f6f6f6;
    --bs-dropdown-link-disabled-color: #adb5bd;
    --bs-dropdown-item-padding-x: 1rem;
    --bs-dropdown-item-padding-y: 0.25rem;
    --bs-dropdown-header-color: #6c757d;
    --bs-dropdown-header-padding-x: 1rem;
    --bs-dropdown-header-padding-y: 0.5rem;
}

.nav {
    --bs-nav-link-padding-x: 1rem;
    --bs-nav-link-padding-y: 0.5rem;
    --bs-nav-link-font-weight: ;
    --bs-nav-link-color: #000;
    --bs-nav-link-hover-color: #ccc;
    --bs-nav-link-disabled-color: #6c757d;
}

.nav-pills {
    --bs-nav-pills-border-radius: 2.25rem;
    --bs-nav-pills-link-active-color: #000;
    --bs-nav-pills-link-active-bg: #D9D9D9;
}

/*//////////////////////////////////////////////////////////////////
[ HEADER ]*/

.transparent-menu .page-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: inherit;
}

.transparent-menu .header {
    background-color: transparent;
}

.header {
    position: relative;
    width: 100%;
    padding: 40px 0;
    z-index: 5;
    background-color: #fff;
    transition: background-color .2s linear;
}

.logo-head {
    max-width: 127px;
}

.logo-head-m {
    max-width: 84px;
}

.navbar-brand .logo {
    width: 84px;
}

.navbar-brand .logo-white {
    display: none;
}

.navbar-brand .logo-color {
    display: block;
}

.transparent-menu .navbar-brand .logo-white {
    display: block;
}

.transparent-menu .navbar-brand .logo-color {
    display: none;
}

.header .svg-path {
    fill: #778894;
}

.header .svg-stroke {
    stroke: #778894;
}

.header a {
    color: #778894;
}

.transparent-menu .header .svg-path {
    fill: #fff;
}

.transparent-menu .header .svg-stroke {
    stroke: #fff;
}

.transparent-menu .header a {
    color: #fff;
}

.header .link-phone {
    letter-spacing: 2px;
}

.icons-inline .list-inline-item:not(:last-child) {
    margin-right: 2rem;
}

.short-menu {
    margin-top: 32px;
}

.menu-short-menu {
    list-style: none;
    text-align: right;
    margin-bottom: 0;
    padding-left: 0;
}

.menu-short-menu li {
    font-size: 18px;
    margin-bottom: 16px;
}

.menu-short-menu a {
    position: relative;
    font-family: "URWClassicoRegular", sans-serif;
    color: #778894;
    text-transform: uppercase;
}

.transparent-menu .menu-short-menu a {
    color: #fff;
}

.main-menu {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    text-align: center;
}

.main-menu>li {
    margin-bottom: 41px;
}

.main-menu>li>a {
	position: relative;
	display: block;
    font-size: 30px;
    font-family: "URWClassicoRegular", sans-serif;
    text-transform: uppercase;
    color: #fff;
}

.main-menu>li.menu-item-has-children>a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 10px;
	height: 10px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(45deg) translateY(-50%);
}

.main-menu .sub-menu {
    display: none;
    list-style: none;
    margin-top: 16px;
    margin-bottom: 0;
    padding-left: 0;
}

.main-menu .sub-menu.open {
    display: block;
}

.main-menu .sub-menu>li {
    margin-bottom: 12px;
}

.main-menu .sub-menu>li>a {
    font-size: 22px;
    color: #A7B4C8;
}

@media (min-width: 1200px) {
    .main-menu {
        text-align: left;
    }
    .main-menu>li {
        margin-bottom: 22px;
    }
    .main-menu>li>a {
        font-size: 40px;
    }
    .main-menu .sub-menu {
        padding-left: 66px;
    }
    .main-menu .sub-menu>li>a {
        font-size: 30px;
    }
}

/*//////////////////////////////////////////////////////////////////
[ FOOTER ]*/

.footer {
    position: sticky;
  	top: 100vh;
	padding: 0;
    font-size: 14px;
    color: #D4EDFC;
    background: #778894;
}

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

.footer a:hover {
    color: #fff;
}

.footer-desktop .logo {
    width: 116px;
}

.footer-mobile .logo {
    width: 84px;
}

.footer .footer-menu li {
    margin-bottom: 12px;
}

.footer .accordeon-custom-item {
    display: block;
}

.footer .widget-collapse-link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    text-align: start;
    text-transform: uppercase;
    border: 0;
    padding: 4px 0;
}

.footer .widget-collapse-link::after {
    content: "";
    display: block;
    width: 19px;
    height: 19px;
    flex-shrink: 0;
    margin-left: 30px;
    background-image: url("data:image/svg+xml,%3Csvg width='19' height='20' viewBox='0 0 19 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19 19.5L0 19.5L-1.66103e-06 0.500002L19 0.5L19 19.5Z' fill='white' fill-opacity='0.01'/%3E%3Cpath d='M2.65984 14.2344L9.49984 5.7658L16.3398 14.2344' stroke='%23D4EDFC' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.footer .widget-collapse-link.collapsed::after {
    background-image: url("data:image/svg+xml,%3Csvg width='19' height='20' viewBox='0 0 19 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0.5H19V19.5H0V0.5Z' fill='white' fill-opacity='0.01'/%3E%3Cpath d='M16.3402 5.76562L9.50016 14.2342L2.66016 5.76562' stroke='%23D4EDFC' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.menu-inline li {
    display: inline-flex;
    align-items: center;
}

.menu-inline li:not(:last-child)::after {
    content: '';
    display: inline-block;
    width: 4px;
    height: 4px;
    margin-left: 15px;
    background-image: url("data:image/svg+xml,%3Csvg width='4' height='4' viewBox='0 0 4 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='4' height='4' fill='%23A7B4C8'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.footer .column-wrap>*:not(:last-child) {
    padding-right: 4%;
}


/*------------------------------------------------------------------
[ Modal ]*/

.modal {
    --bs-modal-padding: 1rem;
    --bs-modal-header-border-width: 0;
    --bs-modal-header-padding: 1rem 1rem;
    --bs-modal-border-width: 0;
    --bs-modal-border-radius: 20px;
}

.btn-close:focus {
    box-shadow: none;
}

/*------------------------------------------------------------------
[ Offcanvas ]*/

.offcanvas-search {
    --bs-offcanvas-height: fit-content;
    --bs-offcanvas-padding-x: 0;
    --bs-offcanvas-padding-y: 0;
}

.offcanvas-main-menu {
    --bs-offcanvas-width: 100%;
    background-color: #1D2D3A;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

@media (min-width: 1200px) {
    .offcanvas-main-menu {
        background-image: url(../img/bg-menu.jpg);
    }
}

/*------------------------------------------------------------------
[ Card ]*/

.card {
    --bs-card-spacer-y: 1rem;
    --bs-card-spacer-x: 1rem;
    --bs-card-title-spacer-y: 0.5rem;
    --bs-card-border-width: 1px;
    --bs-card-border-color: transparent;
    --bs-card-border-radius: 1rem;
    --bs-card-box-shadow: ;
    --bs-card-inner-border-radius: calc(1rem - 1px);
    --bs-card-cap-padding-y: 0.5rem;
    --bs-card-cap-padding-x: 1rem;
    --bs-card-cap-bg: transparent;
    --bs-card-cap-color: ;
    --bs-card-height: ;
    --bs-card-color: ;
    --bs-card-bg: #fff;
    --bs-card-img-overlay-padding: 1rem;
    --bs-card-group-margin: 0.75rem;
    word-wrap: normal;
}

.card-title a {
    text-decoration: none;
}

/*//////////////////////////////////////////////////////////////////
[ MAIN CONTENT ]*/

.page-wrapper {
    display: flex;
    flex-direction: column;
    position: relative;
    min-width: 320px;
    min-height: 100vh;
}

.main {
    padding: 0;
}

.swiper {
    --swiper-theme-color: #212121;
    --swiper-pagination-bullet-size: 12px;
}

.swiper .btn-prev,
.swiper .btn-next {
    --btn-icon-size: 2rem;
    --bs-btn-font-size: 1.5rem;
    --bs-btn-color: #fff;
    --bs-btn-bg: #000;
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #000;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #000;
    --bs-btn-active-border-color: transparent;
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #000;
    --bs-btn-disabled-border-color: transparent;
    position: absolute;
    top: 50%;
    margin-top: calc(0px - (var(--btn-icon-size)/2));
    opacity: 1;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, opacity 0.3s ease-in-out, left 0.3s ease-in-out, right 0.3s ease-in-out;
    z-index: 10;
}

.swiper .btn-prev {
    left: 0;
    right: auto;
}

.swiper .btn-next {
    right: 0;
    left: auto;
}

.swiper .btn-prev:disabled,
.swiper .btn-prev.disabled,
.swiper .btn-next:disabled,
.swiper .btn-next.disabled {
    opacity: 0 !important;
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left,rgba(255,255,255,.75),rgba(255,255,255,.75));
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right,rgba(255,255,255,.75),rgba(255,255,255,.75));
}

.centeredSwiper img {
    width: 100%;
}

.choosesectorSwiper img {
    width: 100%;
}

.section-hero {
    padding-top: 270px;
    padding-bottom: 0;
}

.text-block-about {
    position: relative;
    background: rgba(255, 255, 255, 0.94);
    border: 2px solid #778894;
    margin: -70px 21px 0 21px;
    padding: 25px 33px 32px 28px;
    z-index: 1;
}

.section-with-slider .text-block-about {
    margin: 41px 21px 0;
}

@media (min-width: 1200px) {
    .text-block-about {
        margin: 55px -120px 0 0;
        padding: 38px 63px 44px 46px;
    }
    .section-with-slider .text-block-about {
        margin: 55px -120px 0 0;
    }
}

.grid-item .image-container {
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
}
.grid-item .image-container img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.grid-item:hover .image-container img {
    transform: scale(1.03);
}
.title-with-line {
    display: flex;
    align-items: center;
    white-space: nowrap;
}
.title-with-line::after {
    content: '';
    display: block;
    height: 1px;
    width: 100%;
    margin-left: 10px;
    background-color: #A7B4C8;
}
.products-container {
    margin-top: 88px;
}
.slider-item .image-container {
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
}
.slider-item .image-container img {
    width: 100%;
    height: 152px;
    object-fit: cover;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.slider-item:hover .image-container img {
    transform: scale(1.03);
}
.slider-counter {
    position: static;
    width: 60px;
    text-align: right;
}

.feature-col-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 60px;
}
.feature-col-wrap>* {
    flex: 0 0 auto;
    width: 100%;
    max-width: 350px;
}
.card-feature {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.features-body {
    flex: 1 1 auto;
    text-align: center;
    padding: 48px 32px;
    border: 1px solid #A7B4C8;
}
.btn-features-item {
    width: fit-content;
    margin: -2.5rem auto 0;
    padding: 16px;
    background: #fff;
    z-index: 1;
}

.section-our-projects {
    padding: 150px 0 85px;
}
.title-shade {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    height: 80px;
    margin-bottom: 110px;
}
.title-big-shade {
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translateY(-50%);
    color: #EFF1F5;
    font-family: "URWClassicoRegular", sans-serif;
    text-transform: uppercase;
    font-size: 100px;
    white-space: nowrap;
    z-index: -1;
}
.text-blocks-container>*+* {
    margin-top: 70px;
}
.text-block-left {
    position: relative;
    background: rgba(255, 255, 255, 0.94);
    border: 2px solid #778894;
    margin: -70px 21px 0 21px;
    padding: 25px 33px 32px 28px;
    z-index: 1;
}
.text-block-right {
    position: relative;
    background: rgba(255, 255, 255, 0.94);
    border: 2px solid #778894;
    margin: -70px 21px 0 21px;
    padding: 25px 33px 32px 28px;
    z-index: 1;
}
@media (min-width: 1200px) {
    .text-blocks-container>*+* {
        margin-top: 96px;
    }
    .text-block-left {
        margin: 55px -120px 0 0;
        padding: 38px 63px 44px 46px;
    }
    .text-block-right {
        margin: 55px 0 0 -120px;
        padding: 38px 63px 44px 46px;
    }
}

.section-partners {
    padding: 30px 0;
}
.partnersSwiper .partner-item {
    filter: grayscale(100%);
}
.swiper-chevron-prev,
.swiper-chevron-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    background: #fff;
    z-index: 2;
}
.swiper-chevron-prev {
    left: 0;
}
.swiper-chevron-next {
    right: 0;
}
.swiper-arrow-prev,
.swiper-arrow-next {
	transition: transform 0.3s ease;
}
.swiper-arrow-prev:hover {
	transform:translate(-8px,0)
}
.swiper-arrow-next:hover {
	transform:translate(8px,0)
}

.card-products-wrap {
    display: flex;
    flex-wrap: wrap;    
}
.card-products-col {
	flex: 0 0 auto;
	width: 100%;
	padding: 30px 0;
}
.card-product {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.product-card-header {
    position: relative;
    border: 2px solid #A7B4C8;
	height: 320px;
}
.product-card-title {
    display: inline-block;
    margin-top: -100%;
    margin-left: 1rem;
    padding: 8px;
    background-color: #fff;
}
.product-card-img {
    position: absolute;
	bottom: -3rem;
	right: 0;
	max-width: 450px;
	max-height: 320px;
	width: 100%;
	transform: scale(1);
	transition: transform 0.3s ease;
}
.card-product:hover .product-card-img {
	transform: scale(1.025);
}
.product-card-body {
    margin-top: 80px;
	flex: 1 1 auto;
}
.product-ul-grid {
    columns: 2;
    font-size: 14px;
}
.product-card-footer {
    margin-top: 33px;
}

@media (min-width: 992px) {
	.card-products-wrap {
		margin-left: -45px;
    	margin-right: -45px;
	}
    .card-products-col {
        width: 50%;
		padding: 45px;
    }
	.product-card-header {
		height: 420px;
	}
	.product-card-img {
		max-height: 420px;
	}
    .product-ul-grid {
        columns: 3;
    }
}

.services-item {
    position: relative;
}
.services-border {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 32px);
    height: calc(100% - 32px);
    margin: 16px;
    border: 1px solid #fff;
}
.services-body {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
}
.services-link {
    position: relative;
    color: #fff;
    text-decoration: underline;
}

@media (min-width: 1200px) {
    .services-link {
        top: 50px;
        opacity: 0;
        transition: top 0.3s ease, opacity 0.3s ease;
    }
    .services-item:hover .services-link {
        top: 0;
        opacity: 1;
    }
}

.section-waves {
    padding: 55px 0;
}

.breadcrumb-section {
    margin-bottom: 70px;
}
.breadcrumb ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
}
.breadcrumb ul li::after {
    content: "/";
    display: inline-block;
    font-weight: normal;
    margin-left: 5px;
    margin-right: 5px;
}
.breadcrumb ul li:last-child::after {
    display: none;
}
.breadcrumb ul li {
    color: #A7B4C8;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 0;
}

.title-404 {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    height: 80px;
}

.title-404 .title-big-shade {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.prod-char-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: all 0.3s ease;
}

.prod-char-item:hover {
    padding: 0 16px;
}

.prod-char-item span {
    position: absolute;
    left: 50%;
    bottom: -60px;
    transform: translateX(-50%);
    opacity: 0;
    transition: all 0.3s ease;
}

.prod-char-item:hover span {
    opacity: 1;
    bottom: -30px;
}

.section-gray-form {
    --bs-link-color: #3B4B58;
    --bs-link-hover-color: #000;
    color: #1D2D3A;
    padding: 70px 0;
    background: #ADB8BF;
}

.section-gray-form a {
    text-decoration: underline;
}

.prod-specification {
    overflow: hidden;
}

.catalog-card {
    display: flex;
    flex-direction: column;
    align-items: start;
}

.feedback-card {
    display: flex;
    gap: 16px;
}

.feedback-card .feedback-avatar {
    min-width: 165px;
    max-width: 220px;
}

.feedback-card .feedback-avatar img {
    width: 100%;
    margin-bottom: 22px;
}

.blog-grid .grid-item .image-container img {
    height: 230px;
}

.section-post-hero {
    padding-top: 275px;
    padding-bottom: 200px;
}

.section-post-content h1,
.section-post-content h2,
.section-post-content h3,
.section-post-content h4,
.section-post-content h5,
.section-post-content h6 {
    margin-top: 8px;
    margin-bottom: 18px;
}

.faq-collapse-link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    font-size: 30px;
    text-align: start;
    border: 0;
    padding: 14px 0;
}

.faq-collapse-link::after {
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    margin-left: 30px;
    background-image: url("data:image/svg+xml,%3Csvg width='11' height='18' viewBox='0 0 11 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 9.72656L11 8.20312L-7.86689e-07 0L-7.0884e-07 1.78125L9.40402 8.92969L-7.78495e-08 16.2188L0 18L11 9.72656Z' fill='%231D2D3A'/%3E%3C/svg%3E%0A");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.faq-collapse-link.collapsed::after {
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 7.00195H7.00195V0H8.56934V7.00195H15.5566V8.56934H8.56934V15.5713H7.00195V8.56934H0V7.00195Z' fill='%23778894'/%3E%3C/svg%3E%0A");
}

.prod-table > :not(caption) > * > * {
    padding: 2rem 0.5rem;
}

.prod-table th {
    font-weight: 400;
    text-transform: uppercase;
}

.prod-table td {
    font-weight: 600;
}

.scroll-down {
	z-index: 9;
	animation: fade_move_down 4s ease-in-out infinite;
}
@keyframes fade_move_down {
	0%   { transform: translate(0,-10px); opacity: 0; }
	50%  { opacity: 1; }
	100% { transform: translate(0,10px); opacity: 0; }
}

.request-wrap {
	position: relative;
}
.request-wrap:hover .request-arrow {
	transform: translate(10px,0);
}
.request-arrow {
	transition: transform 0.3s ease;
}


/*//////////////////////////////////////////////////////////////////
[ MEDIA ]*/

@media (min-width: 576px) {

    .modal-sm {
        --bs-modal-width: 400px;
    }
}

@media (min-width: 768px) {}

@media (min-width: 992px) {}

@media (min-width: 1200px) {

    body {
        font-size: var(--bs-body-xl-font-size);
    }

    .transparent-menu .page-header {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        z-index: inherit;
    }

    .navbar-brand .logo {
        width: 127px;
    }

    .section-hero {
        padding-top: 400px;
        padding-bottom: 95px;
    }
}

@media (min-width: 1400px) {

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

@media (min-width: 1900px) {

    .header .container {
        max-width: 1700px;
    }
}