/* montserrat-regular - latin_latin-ext */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/montserrat-v30-latin_latin-ext-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-500 - latin_latin-ext */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/montserrat-v30-latin_latin-ext-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600 - latin_latin-ext */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/montserrat-v30-latin_latin-ext-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-700 - latin_latin-ext */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/montserrat-v30-latin_latin-ext-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* playfair-display-regular - latin_latin-ext */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Playfair Display';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/playfair-display-v39-latin_latin-ext-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* playfair-display-700 - latin_latin-ext */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Playfair Display';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/playfair-display-v39-latin_latin-ext-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

:root {
    --header-height: 64px;
    --pr: 0;

    --swiper-navigation-size: 44px;
}

body { position: relative; font-family: 'Montserrat', sans-serif; }

svg { display: block; width: 18px; }

.form-control { --cl-border-radius: 0; }
.form-control:focus { border-color: var(--cl-primary); box-shadow: none; }

.form-control::-webkit-input-placeholder { color: #989898; }
.form-control::-moz-placeholder { color: #989898; }
.form-control:-ms-input-placeholder { color: #989898; }
.form-control:-moz-placeholder { color: #989898; }


.btn { display: inline-flex; justify-content: center; align-items: center; text-align: center; gap: .75rem; --cl-btn-border-width:0; --cl-btn-border-radius: 0; --cl-btn-padding-x: 1.25rem; --cl-btn-padding-y: .5rem; --cl-btn-font-size: 1rem; --cl-btn-font-weight: 600; }
.btn-lg { --cl-btn-padding-x: 1.75rem; --cl-btn-padding-y: .75rem; --cl-btn-font-size: 1.875rem; }
.btn-sm { --cl-btn-padding-x: 12px; --cl-btn-padding-y: 6px; --cl-btn-font-size: 14px; gap: .325rem; }

.btn-link { --cl-btn-padding-x: 0; --cl-btn-padding-y: 0; --cl-btn-color: currentColor; }

.btn-primary { --cl-btn-color: #fff;
    --cl-btn-hover-color: var(--cl-orange-300); --cl-btn-hover-bg: var(--cl-orange-900);
    --cl-btn-active-color: var(--cl-orange-300); --cl-btn-active-bg: var(--cl-orange-900);
}
.btn-secondary { }

.btn-outline-dark { --cl-btn-border-width: 1px;
    /*
    --cl-btn-color: #7f7f7f; --cl-btn-border-color: #7f7f7f;
    --cl-btn-hover-color: #000; --cl-btn-hover-border-color: #000;
     */
}

.lang-box {}
.lang-box .btn { --cl-btn-padding-x: 6px; --cl-btn-padding-y: 4px; --cl-btn-font-size: 12px; gap: .325rem; --cl-btn-border-radius: 4px; }
.lang-box .btn svg { width: 14px; }

.main-title { font-size: 2.25rem; font-weight: 700; margin-bottom: 2rem; }
.main-title-display { font-family: 'Playfair Display', serif; font-weight: 400; margin-bottom: 2rem; }

.sub-title { font-size: 2rem; font-weight: 400; margin-bottom: 1.5rem; }
.sub-title-sm { font-size: 1.325rem; font-weight: 600; margin-bottom: 1.5rem; }

.header-primary { background-color: #fff; }
.header-primary .navbar { --cl-navbar-padding-y: 8px;
    --cl-navbar-brand-padding-y: 0;
    --cl-navbar-toggler-border-radius: 0; --cl-navbar-toggler-padding-x: 0; --cl-navbar-toggler-padding-y: 0;
}
.header-primary .navbar-toggler { display: block; --cl-border-width: 0; --cl-navbar-color: #000; }
.header-primary .navbar-toggler svg { width: 48px; }
.header-primary .navbar-toggler:focus { --cl-navbar-color: #000; box-shadow: none; }

.header-primary .navbar-toggler svg path { transition: opacity .15s ease-in-out; }
.header-primary .navbar-toggler svg .menu { opacity: 1; }
.header-primary .navbar-toggler svg .close { opacity: 0; }
.header-primary .navbar-toggler.open svg .menu { opacity: 0; }
.header-primary .navbar-toggler.open svg .close { opacity: 1; }

.modal-navigation { --cl-modal-width: 100%; --cl-modal-border-width: 0; --cl-modal-border-radius: 0; --cl-modal-box-shadow: none; --cl-modal-padding: 1rem 0;
    top: var(--header-height); background-color: #fff;
}
.modal-navigation.fade .modal-dialog { transform: none; }
.modal-navigation .modal-dialog { transform: none; width: 100%; height: calc(100% - var(--header-height)); min-height: calc(100% - var(--header-height)); margin-top: 0; margin-bottom: 0; }
.modal-navigation .modal-inner { padding-right: calc(var(--pr) / 2); }

.modal-open .modal-backdrop { top: var(--header-height); }

.nav-main-menu {}
.nav-main-menu .nav-item + .nav-item { margin-top: 4px; }
.nav-main-menu .nav-level-0 { --cl-nav-link-font-size: 1.325rem; --cl-nav-link-font-weight: 600; --cl-nav-link-padding-x: 0; --cl-nav-link-padding-y: 0; --cl-nav-link-color: #000; --cl-nav-link-hover-color: var(--cl-primary); }
.nav-main-menu .nav-level-0 > span { font-size: var(--cl-nav-link-font-size); font-weight: var(--cl-nav-link-font-weight); }
.nav-main-menu .nav-link { display: inline-block; --cl-nav-link-padding-x: 0; --cl-nav-link-padding-y: 0; --cl-nav-link-color: #000; --cl-nav-link-hover-color: var(--cl-primary); }

.nav-lg-menu .nav-link { font-family: 'Playfair Display', serif; --cl-nav-link-font-size: 2.5rem; --cl-nav-link-font-weight: 400; }

.py-clamp-150 { padding: clamp(1rem, 8.4vw, 150px) 0; }

.search-block { background: url(../images/bg-search-01.jpg) 50% 50% no-repeat scroll transparent; background-size: cover; }
.search-block .main-title-display { font-size: 4rem; color: #fff; }

.search-box .form-control { padding: 1rem 1rem }

.contact-widget { background: url(../images/bg-contact-01.jpg) 50% 50% no-repeat scroll transparent; background-size: cover; }
.contact-widget .main-title { font-size: 2.75rem; font-weight: 400; }

.block-list {}
.block-item { position: relative; display: flex; flex-direction: column; gap: 1rem; --cl-nav-link-font-weight: 600;
    --decor-size: 15px; --decor-top-offset: 4px; --decor-padding-offset: 1rem;
}
.block-image {}
.block-title { --cl-nav-link-font-size: 1rem; --cl-nav-link-hover-color: var(--cl-primary); }
.block-title span { position: relative; display: block; padding-left: calc(var(--decor-size) + var(--decor-padding-offset)) }
.block-title span:before { content: ''; position: absolute; top: var(--decor-top-offset); left: 0; width: var(--decor-size); height: var(--decor-size); background-color: var(--cl-primary); }

.block-hover { --border-offset: 12px; }
.block-hover .block-image { position: relative; z-index: 0; overflow: hidden; }
.block-hover .block-image:before,
.block-hover .block-image:after {  content: ''; position: absolute; z-index: 2; transition: opacity .15s ease-in-out; opacity: 0; }
.block-hover .block-image:before { top: var(--border-offset); right: var(--border-offset); bottom: var(--border-offset); left: var(--border-offset); border: 2px solid var(--cl-primary);  }
.block-hover .block-image:after { top: 50%; left: 50%; width: var(--decor-size); height: var(--decor-size); transform: translate(-50%, -50%); background-color: var(--cl-primary); }
.block-hover .block-image img { position: relative; z-index: 1; transition: all .15s ease-in-out; filter: brightness(100%); transform: scale(1); }
.block-hover .block-item:hover .block-image img { filter: brightness(58%); transform: scale(1.05) }
.block-hover .block-item:hover .block-image:before,
.block-hover .block-item:hover .block-image:after { opacity: 1; }

.block-news-sidebar { display: flex; flex-direction: column; gap: 1rem; }
.block-news-sidebar .block-title { display: inline-block; }

.product-list .block-title { --cl-nav-link-font-size: 1.25rem; --cl-nav-link-font-weight: 600; --cl-nav-link-color: var(--cl-primary); --cl-nav-link-hover-color: var(--cl-orange-300); }
.product-list .block-title:hover { text-decoration: underline; }

.nav-tabs { --cl-nav-tabs-border-width: 0; --cl-nav-tabs-border-radius: 0; --cl-nav-tabs-link-active-color: var(--cl-primary);
    --cl-nav-tabs-link-hover-border-color: var(--cl-primary); --cl-nav-tabs-link-active-border-color: var(--cl-primary);
}
.nav-tabs .nav-link { border-bottom: 1px solid transparent; --cl-nav-link-color: #000; --cl-nav-link-font-weight: 600; --cl-nav-link-hover-color: var(--cl-primary); }
.nav-tabs .nav-link.active {  }

.swiper-button-prev { left: 1.5rem; }
.swiper-button-next { right: 1.5rem; }
.swiper-button-next, .swiper-button-prev { width: var(--swiper-navigation-size); height: var(--swiper-navigation-size); border-radius: 100vw; border: 1px solid #000; }
.swiper-button-next:after, .swiper-button-prev:after { font-size: calc(var(--swiper-navigation-size) / 2); color: #000; }
.swiper-button-next:hover, .swiper-button-prev:hover { background-color: #000; }
.swiper-button-next:hover:after, .swiper-button-prev:hover:after { color: #fff; }

.product-view {}
.product-data { display: flex; flex-direction: column; gap: 1rem; }
.pd-item { display: flex; justify-content: space-between; gap: 1rem; /*margin-top: 1rem; padding-top: 1rem;*/ padding-top: 1rem; border-top: 2px solid #7f7f7f; }
.pd-item:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.pd-title { padding-right: .5rem; }
.pd-value { text-align: left; font-weight: 700; }

.text-widget { --padding: clamp(1.5rem, 2.62vw, 50px); position: relative; padding-top: var(--padding); }
.text-widget.text-image { padding-left: var(--padding); }
.text-widget.image-text { padding-right: var(--padding); }
.text-widget.centered { padding: var(--padding); text-align: center; }
.text-widget.bg-secondary .btn-link { --cl-btn-hover-color: #000; }
.text-widget.bg-orange-900 .btn-link { --cl-btn-hover-color: #fff; }
.text-widget.bg-orange-300 .btn-link { --cl-btn-hover-color: #fff; }
.text-widget:before { content: ''; position: absolute; top: 0; width: 15px; height: 15px; background-color: var(--cl-primary); }
.text-widget.bg-orange-300:before { background-color: var(--cl-orange-900); }
.text-widget.text-image:before { left: 0; }
.text-widget.image-text:before { right: 0; }
.text-widget.bg-white:before,
.text-widget.centered:before { content: none; }

.text-widget .main-title { margin-bottom: .5rem; }
.text-widget .sub-title { margin-bottom: .5rem; }
.text-widget .col-text { padding-bottom: var(--padding);  }
.text-widget .col-img { align-self: flex-end; }
.text-widget img { width: 100%; object-fit: cover; object-position: 50% 0; }

body.home .text-widget-container { padding-bottom: 1.5rem; }
.page-view .text-widget-container { padding: 1rem 0 2rem 0; }
/*.page-view .text-widget-container { margin-left: -1.5rem; margin-right: -1.5rem; }*/
.page-view .text-widget-container .container-lg { max-width: 100%; --cl-gutter-x: 0; }

.pagination { --cl-pagination-border-radius: 0; justify-content: center; }
.pagination .page-link { display: flex; height: 100%; }
.pagination svg { width: 12px; }

.page-contact textarea.form-control { min-height: 120px; }

.social-box svg { width: 24px; }
.social-box .nav-link { --cl-nav-link-color: #000; --cl-nav-link-hover-color: var(--cl-primary); }

.footer-primary { padding-top: 2rem; font-size: 1rem; }
.footer-primary .social-box { margin-top: 1rem; }
.footer-primary .nav-link { display: inline-block; --cl-nav-link-padding-x: 0; --cl-nav-link-padding-y: 0; --cl-nav-link-color: #000; --cl-nav-link-hover-color: var(--cl-primary); }
.footer-primary .nav-footer .nav-item + .nav-item { margin-top: 4px; }
.footer-primary .bottom { background-color: #000; font-size: 12px; color: #fff; margin-top: 2rem; }
.footer-primary .bottom a { color: #fff; text-decoration: none; }
.footer-primary .bottom a:hover { color: var(--cl-primary); }

/**/

.search {}

.filter-wrapper {  }
.filter-block {  }
.filter-title { font-size: 1.125rem; font-weight: 700; margin-bottom: .875rem; }
.filter-body {}
.filter-controls { display: flex; flex-wrap: wrap; gap: 1rem; }
.filter-control-item {  }
.filter-control-item,
.filter-control-item * { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; user-drag: none; -webkit-user-drag: none; }
.filter-control-item>input { display: none; }
.filter-control-item>label { cursor: pointer; padding: .5rem 1.25rem; border: 1px solid var(--cl-border-color); transition: all .15s ease-in-out; }
.filter-control-item>label:hover { background-color: var(--cl-light); }
.filter-control-item>input:checked+label { color: #fff; background-color: var(--cl-primary); border-color: var(--cl-primary); }
.filter-range .prices { margin-bottom: 1rem; }
.filter-controls .input-group { flex: 0 0 180px; --cl-border-radius: 0; }

.noUi-target { margin-left: 16px; margin-right: 16px; background-color: var(--cl-light); border-color: var(--cl-border-color); box-shadow: none; }
.noUi-handle { cursor: grab; box-shadow: none; }
.noUi-handle.noUi-active { cursor: grabbing; }
.noUi-connect { background-color: var(--cl-primary); }

.search-form .button-wrapper { display: flex; gap: .5rem; justify-content: space-between; align-items: center; border-top: 1px solid var(--cl-border-color); padding-top: 1.5rem; }
.search-form .button-wrapper .filter-reset { --cl-nav-link-color: var(--cl-primary); --cl-nav-link-font-size: .875rem; text-decoration: underline; }

.search-results { display: flex; gap: 1rem; padding: 1.25rem; background-color: var(--cl-light); border: 1px solid var(--cl-border-color); margin-bottom: 2rem; }
.search-result-list { flex: 1; display: flex; gap: 1rem; flex-wrap: wrap; }
.search-result-action .nav-link { --cl-nav-link-color: var(--cl-primary); --cl-nav-link-font-size: .875rem; text-decoration: underline; }
.search-result-item { display: flex; align-items: center; flex-wrap: nowrap; gap: .5rem; font-size: .875rem; }
.search-result-title { color: var(--cl-secondary-color); font-weight: 500;  }
.search-result-value { padding: .25rem .75rem; border: 1px solid var(--cl-border-color); background-color: #fff; }

@media (min-width: 576px) {
    html { font-size: 14px; }
}
@media (min-width: 768px) {
    html { font-size: 14px; }
    .text-widget img { height: 450px; }
}
@media (min-width: 992px) {
    html { font-size: 14px; }
    .gy-lg-45 { --cl-gutter-y: 2rem; }

}
@media (min-width: 1200px) {
    html { font-size: 16px; }
    .text-widget img { height: 540px; }
}
@media (min-width: 1400px) {
    html { font-size: 16px; }
}
@media (min-width: 1500px) {

}

@media (min-width: 768px) and (max-width: 991.98px) {

}
@media (min-width: 390px) and (max-width: 575.98px) {

}
@media (min-width: 576px) and (max-width: 767.98px) {

}
@media (min-width: 768px) and (max-width: 991.98px) {

}
@media (min-width: 992px) and  (max-width: 1199.98px) {

}

@media (max-width: 389.98px) {

}
@media (max-width: 575.98px) {
    html { font-size: 13px; }
    .header-primary .navbar { --cl-navbar-padding-y: 4px; }
    .header-primary .navbar-brand img { width: 120px; }
    .header-primary .navbar-toggler svg { width: 33px; }

    .nav-lg-menu .nav-link { --cl-nav-link-font-size: 1.75rem; }

}
@media (max-width: 767.98px) {

    .product-list .block-title { --cl-nav-link-font-size: 1rem; }
    .text-widget { --padding: 1rem; }
    .text-widget.text-image { padding-left: 0; }
    .text-widget.image-text { padding-right: 0; }
    .text-widget:before { width: 1rem; height: 1rem; }
    .text-widget .col-img { padding: 0 var(--padding); }
    .text-widget .col-text { padding: var(--padding); }

}
@media (max-width: 991.98px) {
    .btn { --cl-btn-padding-x: 12px; --cl-btn-padding-y: 6px; --cl-btn-font-size: 14px; gap: .5rem; }
    .btn-lg { --cl-btn-padding-x: 16px; --cl-btn-padding-y: 8px; --cl-btn-font-size: 16px; }
    .btn-sm { --cl-btn-padding-x: 8px; --cl-btn-padding-y: 4px; --cl-btn-font-size: 12px; }
    .btn-link { --cl-btn-padding-x: 0; --cl-btn-padding-y: 0; }
    .lang-box .btn { --cl-btn-padding-x: 4px; --cl-btn-padding-y: 2px; --cl-btn-font-size: 10px; gap: .25rem; }
    .lang-box .btn svg { width: 14px; }

    .main-title { font-size: 1.875rem; }
    .sub-title { font-size: 1.5rem; }

    .search-block .main-title-display { font-size: 2.5rem; filter: drop-shadow(0 0 5px #000) }

    .block-item { --decor-size: 12px; --decor-top-offset: 3px; --decor-padding-offset: .5rem; }
    .block-title { --cl-nav-link-font-size: 12px; }

    .services-block .nav-tabs {}
    .services-block .nav-tabs .nav-item { width: 100%; max-width: 100%; flex: 1 0 0%; }
    .services-block .nav-tabs .nav-link { display: block; width: 100%; text-align: center; }

}
@media (max-width: 1199.98px) {

}
@media (max-width: 1399.98px) {

}



