/*
Theme Name: Meisterwerk 2.0
Description: Wordpress Theme
Author: Alexandr
Author URI: https://opttour.ru/author/maker1447/
Version: 2.0
Tags: two-columns, custom-background, custom-colors, featured-images, theme-options
Text Domain: https://opttour.ru
Theme URI: https://opttour.ru
License: Premium
License URI: https://opttour.ru
*/


@font-face {
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 400;
  src: local('PT Sans Italic'), local('PTSans-Italic'), url(/wp-content/themes/meisterwerk-2/fonts/PTSans/PTSansItalicCyr.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 400;
  src: local('PT Sans Italic'), local('PTSans-Italic'), url(/wp-content/themes/meisterwerk-2/fonts/PTSans/PTSansItalicLat.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}


@font-face {
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 700;
  src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(/wp-content/themes/meisterwerk-2/fonts/PTSans/PTSansBoldItalicCyr.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 700;
  src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(/wp-content/themes/meisterwerk-2/fonts/PTSans/PTSansBoldItalicLat.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}


@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: local('PT Sans'), local('PTSans-Regular'), url(/wp-content/themes/meisterwerk-2/fonts/PTSans/PTSansRegularCyr.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: local('PT Sans'), local('PTSans-Regular'), url(/wp-content/themes/meisterwerk-2/fonts/PTSans/PTSansRegularLat.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}


@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: local('PT Sans Bold'), local('PTSans-Bold'), url(/wp-content/themes/meisterwerk-2/fonts/PTSans/PTSansBoldCyr.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: local('PT Sans Bold'), local('PTSans-Bold'), url(/wp-content/themes/meisterwerk-2/fonts/PTSans/PTSansBoldLat.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}



/* Общие стили */

* {
	margin:0; 
	padding:0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html, body { 
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%; 
	z-index: -200;
	font-family: 'PT Sans', sans-serif;  
	font-size: 16px;
	background: #eee;
	position: relative;
}

body {
	overflow-y: scroll; 
	overflow-x: hidden;
	display: -webkit-flex;
	display: flex;
	min-height: 100vh;
	flex-direction: column;  
    padding-top: 105px;
}

.disable-hover, .disable-hover * {pointer-events: none !important;}

.fa, .fas, .fab {margin-right: 7px;}

a {
  color: #ff8e32;
  text-decoration: none; 
  transition: all 0.3s ease;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s ease 0s;
}

a:hover {color: #FF5722;}

a[href^="tel"] { text-decoration: none !important; cursor: default;}

img {
  max-width: 100%; 
  height: auto;
  -moz-backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

a img {border: none;}
	
h1, h2, h3, h4, h5 {clear: both; margin-bottom: 15px; position: relative; overflow: hidden;}

table {width:100%; border-collapse: collapse;}		  

iframe, embed {max-width: 100%;}

.mejs-container {max-width: 100% !important;}

ul li {list-style-type: square;}

input, textarea, select, button {font-family: 'PT Sans', sans-serif;}

*:focus, input:focus, button:focus {outline: none;}

input, button {  
  transition: color 0.3s ease, background-color 0.3s ease;
  -o-transition: color 0.3s, background-color 0.3s;
  -webkit-transition: color 0.3s ease 0s, background-color 0.3s ease 0s;
}

input, select, textarea {padding: 7px 15px; max-width: 100%; border: 1px solid #ccc;}

@media screen and (max-device-width: 1280px) { body {padding-top: 100px;} }
@media screen and (max-device-width: 1024px) { body {padding-top: 80px;} }	
@media screen and (max-device-width: 480px) { h2 {font-size: 1.2rem;} body {padding-top: 105px;} }
@media screen and (max-device-width: 375px) { body {padding-top: 105px;} }
/*@media screen and (max-device-width: 320px) { body {padding-top: 74px;} }	*/

  
/* Блочная верска */

.box {display: -webkit-flex; display: flex; position: relative; align-items: center; margin-left: -15px; margin-right: -15px;}

.box > * {padding-right: 15px; padding-left: 15px; order: 10;}
	
.block-1  {width: 8.33%;}
.block-2  {width: 16.66%;}
.block-3  {width: 25%;}
.block-4  {width: 33.33%;}
.block-5  {width: 41.66%;}
.block-6  {width: 50%;}
.block-7  {width: 58.33%;}
.block-8  {width: 66.66%;}
.block-9  {width: 75%;}
.block-10 {width: 83.33%;}
.block-11 {width: 91.66%;}
.block-12 {width: 100%;}

@media screen and (max-device-width: 800px) { .box {justify-content: space-between;} }

@media screen and (max-device-width: 480px) { 
	.box {-webkit-flex-wrap: wrap; flex-wrap: wrap; margin-left: -10px; margin-right: -10px;} 
	.box > * {padding-right: 10px; padding-left: 10px;}
}

@media screen and (max-device-width: 320px) { 
	.box {margin-left: -5px; margin-right: -5px;} 
	.box > * {padding-right: 5px; padding-left: 5px;}
}

#index-slider {margin-bottom: 15px;}
	

/* ---------- HEADER ---------- */

body > header {width: 100%; position: fixed; z-index: 99; top: 0;}

#head-order {padding-top: 10px; padding-bottom: 10px; background: #fff; box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.2);}

#head-order a {color: #111;}

#head-order a:hover {color: #111;}

#head-order p {display: inline-block;}

.fixed #head-order {padding-top: 5px; padding-bottom: 5px;} 
  
#head-order .fa { color: #ffed00; }

#header-logo {font-size: 2.3rem; font-weight: 600;}
#header-logo img {display: block; max-width: 250px;}
  
#site-menu ul li, #katalog-menu ul li {list-style: none; margin-right: 15px; display: inline-block; position: relative;}
#site-menu a:hover {color: #ff8e32;}

#header-contact {text-align: right;}  
#header-contact .phone {font-weight: bold; font-size: 1.3rem; white-space: nowrap;}

#revers-phone a {
    cursor: pointer;
    background: #eb202d;
    padding: 3px 10px;
    display: inline-block;
    border-radius: 3px;
    color: #fff !important;
    font-size: 0.7rem;
}

#revers-phone a:hover {background: #c60f1b;}

#adress {font-style: italic; font-size: 0.8rem; /* letter-spacing: 4px; */}

#header-contact .mail {font-size: 1rem;}

.mega-descript {font-size: 0.8rem; margin-bottom: 10px; text-align: center;}

#mobile-menu-button, #mobile-search-button, #mobile-catalog-button, #katalog-menu {display: none;}


@media screen and (max-device-width: 1280px) { 
	#header-logo {min-width: 200px;} 
	#site-menu {width: 46.66%;}
	#header-contact {width: 23%;}
	#site-menu ul #menu-item-116 {display: none;}
	#header-search {width: 11.66%;}
}

@media screen and (max-device-width: 1024px) {
	#header-search {display: none;}
	#mobile-search-button {display: block;}
	#searchform {
		display: none;
		position: absolute;
		width: 100%;
		left: 0;
		top: 110%;
		background: #aaa;
		padding: 15px;
	}
	
	#header-logo img {max-width: 100%;}

	#header-contact {width: 37%;}
	#site-menu {width: 20%; text-align: center;} 
	#mobile-menu-button {display: block; white-space: nowrap;}
	#site-menu > div, #katalog-menu > div {position: absolute; width: 100%; background: #ccc; left: 0; top: 110%; z-index: 99;}
	#site-menu .menu, #katalog-menu .menu {display: none; padding: 20px 20px 5px 20px; width: 100%; text-align: center;}
	#site-menu .active {transform: rotate(90deg);}  
	#site-menu ul li, #katalog-menu ul li {margin-bottom: 15px; margin-right: 30px;}
	#katalog-menu {width: 25%;}
	#mobile-catalog-button, #katalog-menu {display: block; white-space: nowrap;}
	#katalog-menu ul.sub-menu {display: none;}
	#site-menu ul #menu-item-116 {display: inline-block;}
	
	#katalog-menu ul.menu > * {margin-right: 0 !important;}
	#katalog-menu ul.menu > * a {background: #fff; padding: 5px 10px; font-size: 0.8rem; border-radius: 3px;}	
	
	#header-contact .phone {font-size: 1.1rem;}
}

@media screen and (max-device-width: 600px) {
	.mega-descript {display: none;}
	/*#head-order p {display: none;}*/
	#head-order p {font-size: 0.9rem;}
	#header-logo {width: 40%; min-width: 0;}  
	#site-menu {order: 11;}
	#head-order p {display: none;}
	#head-order .fa {color: inherit;}
	#site-menu ul li {width: 50%; margin-right: 0; font-size: 1.2rem;}
	/*#site-menu .fa {margin-right: 0;}*/
	#header-contact {width: 40%;}  
	#header-contact .phone, #header-contact .mail {width: 100%; font-size: 1rem;}
	#site-menu > div, #searchform, #katalog-menu > div {top: 114%;}
	#katalog-menu {order: 12; width: 50%; text-align: center; display: none;}
}

@media screen and (max-device-width: 480px) { 
	#header-contact .phone {font-size: 0.9rem;} 
}

@media screen and (max-device-width: 375px) {
	#head-order {padding: 12px 0 13px 0;}
	#site-menu ul li {width: 100%;} 
	#header-contact {width: 15%;}
	#header-contact .phone span {display: none;}
	#site-menu > div, #searchform, #katalog-menu > div {top: 118%;}
}

@media screen and (max-device-width: 330px) { 
	#revers-phone {display: none;} 
	#katalog-menu .menu {max-height: 80vh; overflow-x: hidden; overflow-y: scroll;}
}
	
@media screen and (max-device-width: 300px) { #header-contact .phone {font-size: 0.8rem;} }

/* Контентная часть */

main {flex: 1; position: relative;} 

.wrapper {max-width: 1400px; margin-left: auto;	margin-right: auto; position: relative;}

@media screen and (max-device-width: 1440px) { .wrapper {max-width: 1280px;} }
@media screen and (max-device-width: 1280px) { .wrapper {max-width: 1180px;} }
@media screen and (max-device-width: 1024px) { .wrapper {max-width: none; width: 100%; padding: 0 15px;} }
@media screen and (max-device-width:  330px) { .wrapper {padding: 0 7px;} }




.owl-carousel button.owl-next, .owl-carousel button.owl-prev {
    right: -50px;
    position: absolute;
    top: 50%;
	margin-top: -25px;
    opacity: 0;
    background: rgb(255 255 255 / 0.3) !important;
    border-radius: 5px;
    width: 50px;
    line-height: 50px !important;
    font-size: 1.4rem !important;
}

.owl-carousel button.owl-prev {right: unset; left: -50px;}

.owl-carousel:hover button.owl-next, .owl-carousel:hover button.owl-prev {opacity: 1;}

.owl-carousel .owl-nav button i {margin-right: 0;}

@media screen and (max-device-width: 1280px) { 
	.owl-carousel button.owl-next {right: 0; opacity: 1;}
	.owl-carousel button.owl-prev {left: 0; opacity: 1;}
}