:root{
	/* --bs-font-size: clamp(14px, calc(13.998px + 0.157vw), 16px); */
	--bs-font-size: clamp(14px, 13.6712px + 0.0913vw, 16px);
	--bs-font-sans-serif: 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";
	--font-montserrat-regular: "Montserrat";
	--font-montserrat-medium: "MontserratMedium";
	--font-montserrat-semibold: "MontserratSemiBold";
	--font-montserrat-bold: "MontserratBold";
	--color-black: #000;
	--color-black-10: #E5E5E5;
	--color-black-50: #7F7F7F;
	--color-white: #fff;
	--color-white-200: #fff;
	--color-red: #f00;
	--color-error: #ed1c24;
	--theme-color-green: #4f684b;
	--theme-color-green-15: #E5E8E4;
	--theme-color-green-20: #D0D8D3;
	--theme-color-green-30: #CAD1C9;
	--theme-color-green-80: #72866F;
	/* --theme-color-green-20: #CFE2E0; */
	/* --theme-color-green-80: #418B82; */
	--theme-color-orange: #fda31b;
	--theme-color-yellow: #f8c62f;
	--theme-color-black: #2d1910;
	--theme-section-colored-bg: #f0f4f5;
	--theme-footer-color: #444;
	--margin-center: 0 auto;
	--header-top-left-width: 280px;
	--section-title-border: 1px solid var(--theme-color-green);
	--section-title-border-radius: 20px;
	--section-title-pd: 6px 18px;
	--section-title-mb: 55px;

}

::-webkit-input-placeholder{
	font: 12px var(--font-montserrat-regular);
	color: var(--color-black-50); 
	opacity: 1;
}
::-moz-placeholder{
	font: 12px var(--font-montserrat-regular);
	color: var(--color-black-50);
	opacity: 1;
}
:-moz-placeholder{
	font: 12px var(--font-montserrat-regular);
	color: var(--color-black-50);
	opacity: 1;
}
:-ms-input-placeholder{
	font: 12px var(--font-montserrat-regular);
	color: var(--color-black-50);
	opacity: 1;
}

textarea::placeholder {
	font: 12px var(--font-montserrat-regular);
	color: var(--color-black-50); 
	opacity: 1;
}

:focus::-webkit-input-placeholder{
	opacity: 0;
}
:focus::-moz-placeholder{
	opacity: 0;
}
:focus:-moz-placeholder{
	opacity: 0;
}
:focus:-ms-input-placeholder{
	opacity: 0;
}

*{
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}

body{
	padding: 0;
	margin: 0;
	background: var(--color-white);
	font: var(--bs-font-size) var(--font-montserrat-regular), var(--bs-font-sans-serif);
}

#htmlpage{
	position: relative;
}

form{
	margin: 0; 
	padding: 0;
}

img{
	border: none;
}

input, select, option, submit, textarea, button, a, label{
	outline: none;
}

label, a, option, input[type="submit"], button{
	cursor:pointer;
}

strong, b, .strong{
	font-family: var(--font-montserrat-semibold) !important;
}

i, em{
	font-style: italic;
}

h1, h2, h3, h4, h5, h6{
	font-weight: normal;
	margin: 0 0 10px 0;
}

a, a:active, a:focus, a:hover {
	outline: none;
}

button[type="submit"][disabled],
input[type="submit"][disabled],
input[type="button"][disabled]{
  	cursor: default;
  	background: #dcdcdc;
	color: var(--color-black);
}

.none{
	display: none;
}

.img{
	width: 100%;
	height: auto;
}

.center{
	text-align: center;
}

.right{
	text-align:right;
}

.justify{
	text-align: justify;
}

.disabled{
	pointer-events: none;
	opacity: .3;
}
.disabled-no-opacity{
	pointer-events: none;
}

.error{
	font: .9rem "Roboto Condensed",Tahoma,Arial,Verdana,sans-serif;
	color: var(--color-error);
	display: block;
}

.error-border{
	border: 1px solid var(--color-error) !important;
}

#redstar{
	color: var(--color-red);
	font-size: inherit;
}

.fix{
	overflow: hidden;
}

.invisible{
	pointer-events: none;
	opacity: 0;
}

.no-resize{
	resize: none;
}

.vertical-resize{
	resize: vertical;
}

#overlay{
	position: fixed;
	inset: 0 0 0 0;
	background: rgb(0, 0, 0, .3);
	z-index: 99;
}

.p-relative{
    position: relative;
}

.z-index-1{
	position: relative;
	z-index: 1;
}

.td-none{
	text-decoration: none;
}

.pt10{
	padding-top: 10px;
}

.pt30{
	padding-top: 30px;
}

.pt45{
	padding-top: 45px;
}

.pt65{
	padding-top: 65px;
}

.pb65{
	padding-bottom: 65px;
}

.mt50{
	margin-top: 50px;
}

.mc{
	margin: var(--margin-center);
}

.lh1-5{
	line-height: 1.5rem;
}

section{
	padding: 120px 0;
}

section:nth-child(1){
	padding: 0;
}

.container-big{
	max-width: 1890px;
	margin: var(--margin-center);
}

.container{
	max-width: 1200px;
	margin: var(--margin-center);
}

.section-colored-bg{
	background-color: var(--theme-section-colored-bg);
}

.header-top{
	background: var(--theme-color-green);
	color: var(--color-white);
}

.header-top::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 50%;
	background: var(--theme-color-orange);
	z-index: -1;
}

.header-top-wrap{
	display: flex;
	height: 55px;
	font: 16px var(--font-montserrat-medium);
}


/* .header-top-wrap>div{
	border: 1px solid red;
}
 */
.header-top-left{
	width: var(--header-top-left-width);
	display: grid;
	align-items: center;
}

.header-top-right{
	background: var(--theme-color-green);
	display: grid;
	align-items: center;
	width: calc(100% - var(--header-top-left-width));
	height: 100%;
}

.header-top-right ul{
	display: flex;
	justify-content: end;
	align-items: center;
	gap: 20px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.header-top-right ul li{
	display: flex;
	border-right: 1px solid var(--theme-color-green-80);
	padding-right: 20px;
}

.header-top-right ul li:last-child{
	border: 0;
}

.header-top-right ul li a{
	color: var(--color-white);
	white-space: nowrap;
}

.header-top-right ul li a i{
	color: var(--theme-color-orange);
	font-size: 18px !important;
	margin-right: 5px;
}

.glasses{
	height: 25px;
	width: auto;
}

.nav-wrap{
	display: grid;
	grid-template-columns: 350px 1fr;  
	grid-template-rows: 94px;
}

/*
.nav-wrap>div{
	border: 1px solid lime;
}
*/

.nav-wrap-logo{
	display: grid;
	align-items: center;
}

.logotype,
.logotype-w{
	height: 64px;
	width: auto;
}

.logotype-w{
	margin-bottom: 10px;
}

.nav-wrap-links{
	display: grid;
	align-items: center;
}

.nav-wrap-links ul{
	display: flex;
	gap: 20px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.li-close{
	display: none;
	font-size: 50px;
	position: absolute;
	right: 10px;
	top: -24px;
	cursor: pointer;
	border: 0 !important;
}

.nav-link{
	font: clamp(14px, calc(15.664px + 0.093vw), 18px) var(--font-montserrat-semibold);
	color: var(--theme-color-black);
	-webkit-transition: all .3s 0s ease;
	-khtml-transition: all .3s 0s ease;
	-moz-transition: all .3s 0s ease;
	-o-transition: all .3s 0s ease;
	transition: all .3s 0s ease;
	white-space: nowrap;
}

.nav-link-active,
.nav-link:hover{
	color: var(--theme-color-green);
}

.mobile-menu-bar{
	font-size: 36px !important;
	color: var(--theme-color-black);
	display: none;
}

.parallax-preview-img{
	min-height: 750px;
	background: transparent;
	display: flex;
	align-items: center;
}

.preview-caption{
	color: var(--color-white);
	flex: 1;
}

.preview-title{
	width: fit-content;
}

.preview-title ul{
	margin: 0;
	padding: 15px 0 0 0;
}

.preview-title ul > li{
	font: clamp(2.375rem, 2.1016rem + 1.215vw, 4rem) var(--font-montserrat-bold);
	list-style: none;
	padding-bottom: 10px;
}

.preview-title ul > li > span{
	color: var(--theme-color-orange);
}

.preview-h6{
	color: var(--theme-color-orange);
	font: clamp(30px, calc(28.991px + 0.28vw), 36px) var(--font-montserrat-bold);
	width: fit-content;
	border-bottom: 3px solid var(--theme-color-orange);
}

.section-title{
	font: 16px var(--font-montserrat-bold);
	text-transform: uppercase;
	color: var(--theme-color-green);
	width: fit-content;
	border: var(--section-title-border);
	border-radius: var(--section-title-border-radius);
	padding: var(--section-title-pd);
	background: var(--theme-color-green-20);
}

.about-wrap{
	display: grid;
	grid-template-columns: 52% calc(48% - 30px);
	gap: 30px;
}


/* .about-wrap>div{
	border: 1px solid red;
} */

.about-left{
	display: flex;
	justify-content: space-between;
	gap: 50px;
	flex-flow: row nowrap;
	background-image: url('../img/about-bg.png');
	background-position: top center;
	background-repeat: no-repeat !important;
}

.about-img1,
.about-img2{
	width: 100%;
	height: auto;
}

.about-img1{
	padding-top: 176px;
}

.about-img2{
	padding-top: 56px;
}

.about-right-content{
	width: 80%;
	margin: 90px auto 0 auto;
}

.about-call{
	display: flex;
	gap: 20px;
	border-top: 1px solid var(--color-black-10);
}

.about-call-icon{
	background: var(--theme-color-green);
	border-radius: 100%;
	width: 70px;
	height: 70px; 
	display: grid;
	place-items: center;
}

.about-call-phone{
	display: grid;
	place-items: center;
}

.about-call-phone ul{
	padding: 0;
	margin: 0;
	list-style: none;
	font: 18px var(--font-montserrat-medium);
}

.about-call-phone ul > li:first-child{
	color: var(--theme-color-orange) !important;
	margin-bottom: 5px;
}

.about-call-phone ul > li > a{
	text-decoration: none;
	color: var(--theme-color-green);
}

.section-h2{
	font: clamp(34px, 32.278px + 0.5381vw, 46px) var(--font-montserrat-semibold);
	color: var(--theme-color-black);
	width: fit-content;
}

.section-h2 span{
	background: var(--theme-color-yellow);
	border-radius: 16px;
	padding: 0 10px;
}

.lessons-bg-img{
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
}

.lessons-ul{
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-flow: wrap;
	list-style: none;
	gap: 20px;
	margin: 35px 0;
	padding: 0;
}

.lessons-ul > li{
	flex: 0 0 calc(33.33333% - 20px);
	display: grid;
	height: 50px;
	place-items: center;
	border: 1px dashed rgb(0, 0, 0, .3);
	border-radius: 30px 30px 0 30px;
	cursor: pointer;
	padding: 0 15px;
	-webkit-transition: all .3s 0s ease;
	-khtml-transition: all .3s 0s ease;
	-moz-transition: all .3s 0s ease;
	-o-transition: all .3s 0s ease;
	transition: all .3s 0s ease;
}

.lessons-ul > li:hover{
	border-color: var(--theme-color-green);
	transform: scale(1.2);
	background: var(--color-white);
}

.lessons-contacts{
	border-radius: 20px;
	background: var(--theme-color-green);
	margin: 145px 116px 0 116px;
	color: var(--color-white);
	padding: 30px 75px;
	box-shadow: 0 20px 30px #0106141a;
	display: flex;
	justify-content: space-between;
	align-items: strech;
	flex-flow: row nowrap;
	font-size: clamp(16px, calc(14.685px + 0.365vw), 24px);
}

.lessons-contacts > div:nth-child(1){
	text-align: left !important;
	border-right: 3px solid var(--color-white);
	flex-grow: 1;
}

.lessons-contacts > div:nth-child(2){
	text-align: right !important;
	flex-grow: 1;
}

.lessons-contacts > div > a{
	color: var(--color-white);
	font-family: var(--font-montserrat-bold);
	text-decoration: none;
}

.wavy-line{
	position: absolute;
	z-index: 1;
	top: -8%;
	left: 1%;
}

.photo-link{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
}

.photo-link a{
	border: 2px dashed var(--theme-color-orange);
    padding: 8px;
	margin-top: 30px;
	background-color: var(--color-white);
	width: 280px;
	height: 280px;
	overflow: hidden;
	border-radius: 30px;
	position: relative;
}

.photo-link a img{
	object-fit: cover;
	width: 100%;
	height: 100%;
	border-radius: 30px;
}

.photo-overlay{
	position: absolute;
	background: rgb(248, 198, 47, .75);
	z-index: 2;
	inset: 15px 15px 15px 15px;
	border-radius: 30px;
	display: grid;
	place-items: center;
	color: var(--color-white);
	font-size: 100px;
	opacity: 0;
	-webkit-transition: all .3s 0s ease;
	-khtml-transition: all .3s 0s ease;
	-moz-transition: all .3s 0s ease;
	-o-transition: all .3s 0s ease;
	transition: all .3s 0s ease;
}

.photo-link a:hover .photo-overlay{
	opacity: 1;
}

.footer{
	padding: 100px 0 35px 0;
	background: url('../img/footer-bg.jpg');
	background-size: cover;
}


/* .footer-area>div{
	border: 1px solid red;
}
 */

.footer-area{
	display: grid;
	/* grid-template-columns: 360px 1fr 2fr; */
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	grid-auto-rows: auto;
	gap: 30px;
}

.footer-link,
.footer-link-q{
	font-family: var(--font-montserrat-regular);
	color: var(--theme-footer-color);
}

.footer-link-q{
	border-bottom: 1px dashed var(--theme-footer-color);;
}

.footer-h6{
	font: 22px var(--font-montserrat-medium);
}

.footer ul{
	padding: 0;
	margin: 20px 0 0 0;
	list-style: none;
}

.footer ul li{
	margin-bottom: 14px;
	color: var(--theme-footer-color);
}

.footer-contact{
	display: flex;
	gap: 0 12px;
	padding: 14px 0;
	border-top: 1px solid #cdf0c8;
}

.footer-contact:last-child{
	border-bottom: 1px solid #cdf0c8;
}

.footer-contact-icon{
	color: var(--theme-color-orange);
}

.footer-contact-info > span{
	font: 14px var(--font-montserrat-semibold);
	color: var(--color-black-50);
}

.footer-widget{
	display: none;
	background: var(--color-white);
	position: absolute;
	z-index: 100;
	width: 500px;
	top: 0;
	left:calc(50% - 250px);
	border-radius: 20px;
	box-shadow: 0px 0px 20px 20px rgba(0, 0, 0, .10);
}

.footer-widget-title{
	font: 18px var(--font-montserrat-semibold);
	padding: 20px;
	background: var(--theme-color-green);
	color: var(--color-white);
	border-radius: 20px 20px 0 0;
}

.footer-widget-title > span{
	color: var(--color-white);
	font-size: 50px;
	position: absolute;
	right: 10px;
	top: 2px;
	cursor: pointer;
}

.form-group{
	position: relative;
	padding: 20px 20px 10px 20px;
}

.input,
.textarea{
	font-size: 16px;
	padding: 10px;
	display: block;
	width: 100%;
	border: 1px solid var(--theme-color-green-20);
	border-radius: 4px;
}

.textarea{
	min-height: 150px;
	max-height: 220px;
	color: var(--color-black-50); 
	resize: vertical;
}

.submit-btn{
	display: block;
	color: var(--color-white);
	background: var(--theme-color-green-80);
	border-radius: 4px;
	padding: 10px 20px;
	font: 16px var(--font-montserrat-regular);
	border: 0;
	width: 100%;
}

.feature-apprentice{
	width: fit-content;
	min-width: 350px;
}

.apprentice{
	/* max-width: 888px; */
	width: 100%;
	z-index: 2;
}

.striped-balloon{
	position: absolute;
	z-index: -1;
	top: 80px;
	right: 0;
	max-width: 553px;
	width: 100%;
	animation: spin-me-right-now 60s infinite linear;
	opacity: .8;
}

.features{
	position: absolute;
	z-index: 3;
	inset: 0 0 0 0;
	display: grid;
	grid-template-columns: repeat(2, 50%);
	grid-template-rows:  repeat(2, 50%);
}

.features > div{
	position: relative;
}

.features > div:nth-child(even){
	display: flex;
	justify-content: end;
}

.features-top-block{
	padding-top: 100px;
}

.features-down-block{
	padding-top: 60px;
}

.feature-ul{
	width: clamp(330px, 100%, 350px);
	padding: 0;
	margin: 0;
	list-style: none;
	position: relative;
}

.odd-number > li:nth-child(1),
.even-number > li:nth-child(1){
	position: absolute;
	font: 200px var(--font-montserrat-bold);
	top: -50px;
	z-index: -1;
	color: var(--theme-color-green-15);
}

.odd-number > li:nth-child(1){
	left: 0;
}

.even-number > li:nth-child(1){
	right: 0;
}

.odd-number > li:nth-child(2),
.even-number > li:nth-child(2){
	position: relative;
	top: 78px;
	z-index: 1;
}

.odd-number > li:nth-child(2){
	left: 135px;
}

.even-number > li:nth-child(2){
	right: 135px;
	text-align: right;
}

.previewtxt-area{
	background: url('../img/breadcrumb-1.jpg');
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: cover !important;
	z-index: 1;
}

.previewtxt-area::before{
	position: absolute;
	z-index: -1;
	content: '';
	inset: 0 0 0 0;
	background: var(--color-black);
	opacity: .5;
}

.breadcrumb-area{
	padding-top: 170px;
	padding-bottom: 150px;
	z-index: 1;
	display: grid;
	place-items: center;
	color: var(--color-white);
}

.page-h1{
	font: clamp(24px, 21.0411px + 0.8219vw, 42px) var(--font-montserrat-bold);
	width: fit-content;
	text-align: center;
}

.breadcrumb{
	font-size: 16px;
	padding: 0;
	margin: 0;
	display: flex;
	list-style: none;
	gap: 0 10px;
}

.breadcrumb > li > a{
	color: var(--color-white);
}

.page-text{
	margin-top: -60px !important;
	text-align: justify;
}

.icookie{
	position: fixed;
	bottom: 20px;
	left: 30px;
	width: 340px;
	background: var(--color-white);
	padding: 15px 25px;
	border-radius: 4px;
	display: flex;
	flex-flow: column wrap;
	box-shadow: 0 0 15px 8px rgba(0,0,0,.15);
	font-size: 14px;
	z-index: 6;
}

a.icookie_link:link,
a.icookie_link:visited{
	color: var(--theme-footer-color);
}

.icookie_ok_btn{
	height: 32px;
	width: 120px;
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
	align-content: center;
	border-radius:4px;
	text-decoration: none;
	text-transform: lowercase;
	background: var(--theme-color-green);
	color: var(--color-white);
	margin: 8px 0 0 0;
}

.details{
	position: relative;
	display: block;
	transition: .3s;
	overflow: hidden;
	cursor: pointer;
	border-bottom: 1px solid silver;
	padding: 20px 0;
	text-align: left;
}

.details:first-child{
	border-top: 1px solid silver;
}

.details::after {
	position: absolute;
	right: 24px;
	top: 20px;
	content: "+";
	display: block;
	width: 14px;
	height: 14px;
	transform-origin: 100% 100%;
	transition: .3s;
	z-index: -1;
	font-size: 60px;
	color: var(--theme-color-green-80);
}

.details[open]::after {
	transform: rotate(-45deg);
}

.details[open] {
	padding-bottom: 30px;
}

.details[open] .details-title {
	margin-bottom: 10px;
}

.details-title{
	list-style: none;
	font-family: var(--font-montserrat-semibold);
	font-size: 20px;
	padding-right: 50px;
}

.details-title::-webkit-details-marker {
	display: none;
}

.details-content{
	padding-top: 12px;
	line-height: 1.8rem;
}

.files-link{
	color: var(--theme-footer-color);
}

.files-link::before{
	content: '\f1c2';
	font-family: 'FontAwesome';
	font-size: 24px !important;
	padding-right: 6px;
}

.checkbox{
	width: 18px;
	height: 18px;
	padding: 3px;
	margin: 0;
	display: inline-block;
	vertical-align: middle;
	border: 1px solid var(--color-black-50);
	border-radius: 2px;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
}

.checkbox:hover{
	box-shadow:inset 0 0 2px 0 var(--color-black-10);
}

.checkbox:checked {
	background: var(--theme-color-green);
	background-clip: content-box;
	border: 1px solid var(--theme-color-green);	
}

.agree{
	font-size: 12px;
}

.callback-error{
	color: var(--color-error);
	margin: 15px 0 0 0;
}

@keyframes spin-me-right-now{
	100%{
		transform: rotate(360deg);
	}
}

