/*
Theme Name: Chill Panda
Theme URI: https://www.portotheme.com/wordpress/porto
Author: P-THEMES
Author URI: https://www.portotheme.com/
Description: Porto Responsive WordPress + eCommerce Theme.
Version: 1.1
Template: porto
License: Commercial
License URI: http://themeforest.net/licenses/regular_extended
Tags: woocommerce, corporate, ecommerce, responsive, blue, black, green, white, light, dark, red, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
*/

/*************** ADD YOUR CUSTOM CSS HERE  ***************/
/* убираем дёрганье popup, прокрутка сайта остаётся */
html.pum-open.pum-open-overlay.pum-open-scrollable body > [aria-hidden],
html.pum-open.pum-open-overlay.pum-open-scrollable body>:not([aria-modal=true]){
		padding-right: 0px !important;
}
.pum-overlay {
    width: calc(100% + 15px);
}
html.pum-open.pum-open-overlay, 
html.pum-open.pum-open-overlay.pum-open-fixed .pum-overlay {
    overflow: hidden;
    padding: 0;
    overflow-y: visible;
}
.container .container,
.porto-wrap-container .container {
    padding-left: 12px;
    padding-right: 12px;
}
.font-dp{
	font-family: Din_pro_condensed_bold, sans-serif;
	font-weight: normal;
}
.font12{
	font-size: 12px;
	line-height: 1.2;
}
.font20{
	font-size: 20px;
	line-height: 1.2;
}
.font24{
	font-size: 24px;
	line-height: 1.2;
}
.font30{
	font-size: 30px;
	line-height: 1.2;
}
.font48{
	font-size: 48px;
	line-height: 1.2;
}
.lh140{
	line-height: 1.4;
}
.font300{
	font-weight: 300;
}
.font500{
	font-weight: 500;
}
.color1{
	color: #1A1A1A;
}
.text-up{
	text-transform: uppercase;
}
.mb0{
	margin-bottom: 0;
}
.mb8{
	margin-bottom: 8px;
}
.mb16{
	margin-bottom: 16px;
}
.mb20{
	margin-bottom: 20px;
}
.mb24{
	margin-bottom: 24px;
}
.mb32{
	margin-bottom: 32px;
}
.mb40{
	margin-bottom: 40px;
}
.pt16{
	padding-top: 16px;
}
.op4{
	opacity: 0.4;
}
.flex{
	display: flex;
}
.gap16{
	gap: 16px;
}
.d-ib{
	display: inline-block;
}
.d-block{
	display: block;
}
.brd16{
	border-radius: 16px;
}
.bdr32{
	border-radius: 32px;
}
.btn1{
	display: inline-block;
	background-color: #01BDDB;
	border-radius: 16px;
	font-size: 18px;
	line-height: 90px;
	font-family: Din_pro_condensed_bold, sans-serif;
	color: #ffffff;
	padding: 0 56px;
	text-align: center;
	text-transform: uppercase;
	-moz-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.btn1:hover,
a.btn1:active, 
a.btn1:focus {
    color: #ffffff;
	background-color: #00A2BC;
	color: #ffffff;
}
.btn2{
	display: inline-block;
	background-color: transparent;
	border: 1px solid #01BDDB;
	border-radius: 16px;
	font-size: 18px;
	line-height: 1;
	font-family: Din_pro_condensed_bold, sans-serif;
	color: #01BDDB;
	padding: 33px 56px;
	text-align: center;
	text-transform: uppercase;
	-moz-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.btn2:hover{
	background-color: #01BDDB;
	color: #ffffff;
}
.btn2 svg {
    vertical-align: text-top;
    margin-right: 12px;
}
.btn2:hover svg path{
	fill: #ffffff;
}
.btn2-1{
	font-size: 14px;
	padding: 14px 24px;
}
.btn2-1 svg {
    margin-right: 8px;
    width: 16px;
    height: 16px;
}
.post-slider .sort-source a{
	border: 2px solid #F3F3F3;
}
.slider-nav-top .owl-carousel.show-nav-title .owl-nav:not(.disabled) {
    display: flex !important;
    gap: 10px;
}
.slider-nav-top .owl-carousel.show-nav-title .owl-nav [class*=owl-]{
	position: relative;
	width: 60px;
	height: 44px;
	border: 1px solid #01BDDB;
	border-radius: 12px;
}
.slider-nav-top .owl-carousel.show-nav-title .owl-nav .owl-prev {
    left: auto;
}
.slider-nav-top .owl-carousel.show-nav-title .owl-nav [class*=owl-]:hover{
	background-color: #01BDDB !important;
	color: #ffffff !important;
}
/**/
.page-top .page-title{
	text-transform: uppercase;
	padding-top: 16px;
}
/* form */
span.wpcf7-spinner{
	display: none !important;
}
.form1-row {
    display: flex;
    gap: 16px;
	font-weight: 400;
	font-size: 16px;
	line-height: 1;
}
.form1-row .qty-box{
	display: flex;
    width: 100%;
    border: 2px solid #F3F3F3;
    border-radius: 16px;
    padding: 20px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;	
	font-family: Din_pro_condensed_bold, sans-serif;
}
.form1-row .qty-box>div {
    display: flex;
    align-items: center;
    gap: 12px;
}
.form1-row .qty-box .controls {
    display: flex;
    background: rgb(1 189 219 / 10%);
    height: 50px;
    align-items: center;
    padding: 0 20px;
    border-radius: 12px;
    justify-content: space-between;
}
.form1-row .qty-box .controls button {
    background: transparent;
    border: 0;
    color: #01BDDB;
}
.form1-row .qty-box .controls span {
    width: 45px;
    text-align: center;
}
.form1 input:not([type=checkbox]),
.form1 textarea{
	background-color: rgb(26 26 26 / 5%);
    color: #1A1A1A;
    border-color: transparent;
    border: 1px solid rgb(26 26 26 / 0%);
    border-radius: 16px;
    padding: 14px 24px;
    height: 90px;
    font-family: Museo-sans-cyrl, sans-serif;
    font-size: 16px;
	width: 100%;
}
.form1 input.wpcf7-not-valid,
.form1 textarea.wpcf7-not-valid{
    background: rgb(228 66 52 / 5%);
	border-color: rgb(228 66 52 / 15%)
}
span.wpcf7-not-valid-tip{
	display: none;
}
.form1 .float-field{
	width: 100%;
}
.wpcf7 form.sent .wpcf7-response-output {
    background: rgb(0 167 6 / 8%);
    color: #00A706;
    font-size: 16px;
    font-weight: 500;
    padding: 24px 32px;
    border-radius: 16px;
    border: 0;
    margin: 32px 0 0;
}
.wpcf7 form.invalid .wpcf7-response-output {
    border-color: transparent;
    background: #E4423414;
    border-radius: 8px;
    padding: 24px 32px;
    font-size: 14px;
    color: #E44234;
    font-weight: 600;
    margin: 30px 0 0;
}
/**/
/* контейнер */
.float-field {
    position: relative;
}
/* чтобы wrapper занял всю ширину */
.float-field .wpcf7-form-control-wrap {
    display: block;
}
/* плавающий текст (лейбл) */
.float-field .wpcf7-label-text {
    position: absolute;
    left: 24px;
    top: 35px;
    font-size: 16px;
    font-weight: 400;
    color: #1A1A1A;
	font-family: Din_pro_condensed_bold, sans-serif;
	text-transform: uppercase;
    pointer-events: none;
    transition: transform .18s ease, top .18s ease, font-size .18s ease, color .18s ease;
    transform-origin: left top;
	display: flex;
    align-items: center;
}
.row-date .float-field .wpcf7-label-text {
    top: 14px;
    font-size: 14px;
}
.float-field .wpcf7-label-text img{
	margin-right: 6px;
}
/* Класс, который ставит JS, когда поле в фокусе или заполнено */
.float-field.is-active .wpcf7-label-text {
    top: 10px;
    font-size: 12px;
    transform: translateY(-2px);
	opacity: 0.4;
}
.float-field.is-active .wpcf7-label-text img{
	max-width: 14px;
}
.float-field.is-active textarea {
    padding-top: 30px;
}
/**/
.form1 .form-info {
    display: flex;
    gap: 40px;
}
.form1 .form-info .fi-item {
    display: flex;
	align-items: center;
    gap: 16px;
	font-weight: 500;
}
.form-box-submit {
    display: flex;
    gap: 32px;
	align-items: center;
}
.form1 input[type=submit]{
	background-color: #01BDDB;
	padding: 34px 56px;
	border-radius: 16px;
	font-size: 18px;
	line-height: 1;
	color: #ffffff;
	font-family: Din_pro_condensed_bold, sans-serif;
	text-transform: uppercase;
}
.form1 .form-pk label span{
	display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 500;
}
.form1.form-bron .form-pk label span{
	font-size: 16px;
}
span.wpcf7-list-item {
    margin-right: 0;
}
/* popup tovar */
.booking-popup-product {
    display: flex;
    align-items: center;
    padding: 8px;
    border-radius: 16px;
    border: 2px solid #F3F3F3;
    margin-bottom: 32px;
    gap: 24px;
}
.booking-popup-image-wrap img{
	border-radius: 10px;
}
.form-bron .box-dop{
	display: flex;
	gap: 64px;
	align-items: flex-start;
	background: #F3F3F3;
	padding: 32px;
	border-radius: 15px;
	margin-bottom: 32px;
}
.form-bron .wpcf7-form-control.wpcf7-checkbox {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}
.form-bron .wpcf7-form-control.wpcf7-checkbox span.wpcf7-list-item {
    flex-grow: 1;
}
/**/
/* для элемента input c type="checkbox" */
.wpcf7-list-item input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
/* для элемента label, связанного с .custom-checkbox */
/*.wpcf7-list-item span {
  display: inline-flex;
  align-items: center;
  user-select: none;
}*/
/* создание в label псевдоэлемента before со следующими стилями */
.wpcf7-list-item span::before {
content: '';
    display: inline-block;
    width: 16px;
    min-width: 16px;
    height: 16px;
    border-radius: 5px;
    margin-right: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%;
    background-color: #ffffff;
}
.form-pk .wpcf7-list-item span::before {
  border: 1px solid #01BDDB;	
  vertical-align: top;
}
.form1.form-bron .form-pk label{
	font-size: 16px;
}
/* стили при наведении курсора на checkbox */
.wpcf7-list-item input:not(:disabled):not(:checked)+span:hover::before {
  border-color: #01BDDB;
}

/* стили для активного чекбокса (при нажатии на него) */
.wpcf7-list-item input:not(:disabled):active+span::before {
  background-color: #01BDDB;
  border-color: #01BDDB;
}

/* стили для чекбокса, находящегося в фокусе
.custom-checkbox>input:focus+span::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
 */
/* стили для чекбокса, находящегося в фокусе и не находящегося в состоянии checked */
.wpcf7-list-item input:focus:not(:checked)+span::before {
  border-color: #01BDDB;
}

/* стили для чекбокса, находящегося в состоянии checked */
.wpcf7-list-item input:checked+span::before {
  border-color: #01BDDB;
  background-color: #01BDDB;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}
.wpcf7-list-item label a{
	display: inline-block;
}
.form-file .float-field1{
	display: flex;
}
div#mfcf7_zl_multifilecontainer {
    order: 1;
	padding-left: 32px;
}
.form-file .float-field1>p {
    width: calc(50% - 8px);
    margin: 0;
}
.form-file .float-field1>p>label{
	width: 100%;
}
.form-file .float-field1 input{
	width: 100%;
    text-align: left;
	font-family: Din_pro_condensed_bold, sans-serif;
	font-size: 16px;
	line-height: 1;
	padding-left: 56px;
	background: #ffffff;
    border: 2px solid #F3F3F3;
}
.form-file .float-field1 p .wpcf7-form-control-wrap:before{
	content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    position: absolute;
    left: 24px;
    top: calc(50% - 8px);
    background-image: url(/wp-content/uploads/2026/05/ico-file-form.svg);
}
div#mfcf7_zl_multifilecontainer p {
    margin-bottom: 8px;
    display: flex;
    gap: 10px;
}
div#mfcf7_zl_multifilecontainer p .mfcf7-zl-multifile-name{
	order: 1;
}
input.wpcf7-not-valid, 
select.wpcf7-not-valid, 
textarea.wpcf7-not-valid {
    border-color: rgb(228 66 52 / 15%);
    box-shadow: none;
}
.wpcf7-form-control.wpcf7-checkbox label .wpcf7-list-item-label{
	display: flex;
    gap: 8px;
    align-items: center;
}
/**/
@media(max-width: 1767px){
	h2,
	.page-top .page-title{
		font-size: 40px;
		line-height: 1.2;
	}
	.btn2{
		font-size: 16px;
		padding: 21px 40px;
	}
	.sidebar {
        width: 260px;
    }
	.main-content.col-lg-9 {
        width: calc(100% - 260px);
    }
}
@media(max-width: 1163px){
	h2,
	.page-top .page-title{
		font-size: 36px;
	}
}
@media (max-width: 991px) {
    .container, .container-sm, .container-md, .container-lg {
        max-width: 720px;
        --porto-flick-carousel-width: 720px;
    }
	.container-fluid .container, .container-fluid .container .container, .alignfull .porto-ibanner-desc>.container, .container, .container-fluid .porto-inner-container .container, .container-fluid .vc_row .porto-map-section .container, .container-fluid .vc_row.no-padding .container, .container-fluid .vc_row.vc_row-no-padding .container, .container-fluid .vce-row-no-paddings .container, .vc_section.alignfull>.container {
        padding-left: 12px;
        padding-right: 12px;
    }
	.main-content.col-lg-9 {
        width: 100%;
    }
	.sidebar {
        display: none;
    }
	/*body{
		font-size: 14px;
		line-height: 1.2;
	}*/
	h2,
	.page-top .page-title{
		font-size: 30px;
	}
	h3{
		font-size: 24px;
	}
	.btn1 {
		font-size: 16px;
		line-height: 60px;
		padding: 0 32px;
	}
	.owl-carousel .owl-nav [class*=owl-] {
		width: 44px !important;
		height: 34px !important;
		border-radius: 10px;
	}
	.form1-row {
		gap: 8px;
		font-size: 14px;
	}
	.form1-row .qty-box {
		padding: 8px 8px 8px 22px;
		gap: 16px;
	}
	.form1-row .qty-box>div {
		gap: 8px;
	}
	.form1-row .qty-box img {
		width: 16px;
		height: 16px;
	}
	.form1-row .qty-box .controls {
		height: 40px;
		padding: 0 10px;
		border-radius: 12px;
	}
	.form1-row .qty-box .controls button {
		padding: 0 4px;
	}
	.form1-row .qty-box .controls span {
		width: 22px;
	}
	.form1 input:not([type=checkbox]), .form1 textarea {
		height: 60px;
		font-size: 14px;
	}
	.row-date .float-field .wpcf7-label-text {
		top: 6px;
		font-size: 12px;
	}
	.float-field .wpcf7-label-text {
		top: 20px;
		font-size: 14px;
	}
	.float-field .wpcf7-label-text img {
		width: 16px;
		height: 16px;
	}
	.form1 .mb40{
		margin-bottom: 24px;
	}
	.form1 .form-info .fi-item {
		gap: 12px;
	}
	.form1 .form-info .fi-item img{
		width: 26px;
		height: 26px;
	}
	.form1 .form-info .fi-item span br{
		display: none;
	}
	.form1 .form-submit input[type=submit]{
		font-size: 16px;
		padding: 22px 32px;
	}
	.form-box-submit{
		gap: 24px;
	}
	.pum-theme-380 .pum-container, .pum-theme-bron .pum-container {
		padding: 40px;
		width: 540px !important;
	}
	.pum-theme-380 .pum-content + .pum-close, .pum-theme-bron .pum-content + .pum-close{
		top: 40px;
		right: 40px;
	}
	.form-bron .box-dop {
		gap: 32px;
		padding: 24px;
		margin-bottom: 24px;
	}
	.booking-popup-product {
		margin-bottom: 24px;
	}
	.form-bron .form-h2{
		margin-bottom: 24px;
	}
	.form-bron .submit-info{
		font-size: 14px;
		line-height: 1.2;
	}
	.form1.form-bron .form-pk label span {
		font-size: 14px;
	}
	div#mfcf7_zl_multifilecontainer p .mfcf7-zl-multifile-name {
		font-size: 14px;
	}
	.wpcf7-form-control.wpcf7-checkbox label .wpcf7-list-item-label {
		font-size: 14px;
	}
	div.booking-popup-product .booking-popup-image-wrap {
		width: 80px;
		height: 64px;
	}
}
@media (max-width: 767px) {
    .container, .container-sm, .container-md, .container-lg {
        max-width: 540px;
        --porto-flick-carousel-width: 540px;
    }
	h2,
	.page-top .page-title{
		font-size: 26px;
	}
}
@media (max-width: 574px) {
    .container, .container-sm, .container-md, .container-lg {
        max-width: 320px;
        --porto-flick-carousel-width: 320px;
    }
	h2,
	.page-top .page-title{
		font-size: 24px;
	}
	.form1-row {
        flex-direction: column;
    }
	.form1 .form-info {
		gap: 16px;
		flex-direction: column;
	}
	.form-box-submit {
		flex-direction: column;
		gap: 16px;
		align-items: flex-start;
	}
	.pum-theme-380 .pum-container, .pum-theme-bron .pum-container {
        padding: 24px;
        width: 296px !important;
		border-radius: 24px;
    }
	.pum-theme-380 .pum-content + .pum-close, .pum-theme-bron .pum-content + .pum-close {
        top: 24px;
        right: 24px;
        width: 32px;
        height: 32px;
        font-size: 12px;
    }
	.form-bron h2.form-h2{
		margin-bottom: 16px;
	}
	div.booking-popup-product .booking-popup-image-wrap {
        width: 60px;
        height: 48px;
    }
	.booking-popup-info .booking-popup-category {
		font-size: 10px;
	}
	.booking-popup-info .booking-popup-title {
		font-size: 18px;
	}
	.booking-popup-product {
        margin-bottom: 16px;
    }
	.form-bron .form1-row,
	.form-bron .form-mess.mb20,
	.form-bron .form-file.mb32{
        margin-bottom: 8px;
    }
	.form-bron .box-dop .font20{
		font-size: 18px;
	}
	.form-bron .box-dop {
        gap: 16px;
        margin-bottom: 16px;
        flex-direction: column;
    }
		.form-bron .form-pk.mb32,
	.form-bron .form-pk.mb32{
		margin-bottom: 16px;
	}
	.form-bron .form-file .float-field1 {
		flex-direction: column;
	}
	.form-bron .form-file .float-field1>p {
		width: 100%;
	}
	div#mfcf7_zl_multifilecontainer {
		padding-left: 0;
	}
	.wpcf7 form.invalid .wpcf7-response-output {
		padding: 16px 24px;
	}
}