:root{
	--wg_text:#aaa;	--wg_link:#555; 	--wg_menu:#d9e9e3;	--wg_fon:white; --wg_shd:rgba(0, 0, 0, 0.1);
	--gg_text:white;--gg_link:#958E84;	--gg_menu:#222;		--gg_fon:black; --gg_shd:rgba(0, 0, 0, 0.7);
	--wt_text:black;--wt_link:#446b9c;	--wt_menu:#eee;		--wt_fon:white; --wt_shd:rgba(0, 0, 0, 0.1);
	--f_XXXS:5px; --f_XXS:8px; --f_XS:12px; --f_S:18px; --f_M:27px; --f_L:41px; --f_XL:62px; --f_XXL:93px; --f_XXXL:142px; /*f_XXXL - для лозунгов, f_XXL - для крестиков, f_XL - для телефонов*/
	--step:20px;
}
@font-face {font-family: "GOST_Type_A"; /* Гарнитура шрифта */	src:url(/fonts/GOST_Type_A.ttf); /* Путь к файлу со шрифтом */}
@font-face {font-family: "PFDinTextCompPro-Light"; /* Гарнитура шрифта */	src:url(/fonts/PFDinTextCompPro-Light.ttf); /* Путь к файлу со шрифтом */}
@font-face {font-family: "Inter-ExtraLight"; /* Гарнитура шрифта */	src:url(/fonts/Inter-ExtraLight.otf); /* Путь к файлу со шрифтом */}
@font-face {font-family: "Roboto"; /* Гарнитура шрифта */	font-style:normal;  font-weight:100; src:url(/fonts/Roboto.ttf); /* Путь к файлу со шрифтом */}
@font-face {font-family: "DINCL"; /* Гарнитура шрифта */	src:url(/fonts/DINCondensed-Light.ttf); /* Путь к файлу со шрифтом */}
@font-face {font-family: "DINCR"; /* Гарнитура шрифта */ src:url(/fonts/DINCondensed-Regular.ttf); /* Путь к файлу со шрифтом */}
/*классы шрифтов*/
.font_family_PFDIN{font-family:"PFDinTextCompPro-Light";} 
.font_family_GOSTA{font-family:"GOST_Type_A";} 
.font_family_INTER{font-family:"Inter-ExtraLight";} 
.font_family_ROBOTO{font-family:"Roboto";} 
.font_family_DINCL{font-family:"DINCL";} 
.font_family_DINCR{font-family:"DINCR";} 
/*размеры шрифтов*/
.font_size_-2{font-size:var(--f_XXXS);}
.font_size_-1{font-size:var(--f_XXS);}
.font_size_0{font-size:var(--f_XS);}
.font_size_1{font-size:var(--f_S);}
.font_size_2{font-size:var(--f_M);}
.font_size_3{font-size:var(--f_L);}
.font_size_4{font-size:var(--f_XL);}
.font_size_5{font-size:var(--f_XXL);}
.font_size_6{font-size:var(--f_XXXL);}
html{}
body{font-size:var(--f_M); margin:auto; /*это очень важно - убирает отступы body*/}
#constructor{font-size:var(--f_M);z-index:300;}
table{border-collapse:collapse;  border-spacing:0px; /*1 - расстояние между ячейками. 2 - предотвращает задвоение рамок.*/ /*это уже не влияет, просто важно быть внутри таблицы*/}
td,th{padding:2px; vertical-align:top;}
/*div{white-space:nowrap;} form{white-space:nowrap;}*/
label{}
form{display:inline;}/* отвечает за выстраивание кнопок в ряд, а не друг под другом*/
input[type="number"]{width:55px} input[type="text"]{width:120px} input[type="url"]{width:120px} input[type="email"]{width:120px} input[type="password"]{width:120px}
input{margin:0; border:0px; border-radius:6px;  padding:2px; font-family:"PFDinTextCompPro-Light"; font-size:16px;}
button{margin:0; border:0px; border-radius:6px;  padding:2px; cursor:pointer;}
span{padding-right:6px;}

/*основные блоки*/
#menu{z-index:99; }
	#menu_logo{z-index:98;}
		#logo{height:auto; width:auto; max-height:200px; max-width:200px;}
	#menu_list{padding:20px; box-sizing:border-box;}
	/*.menu_media{} /*есть в 4х местах*/
		#menu_open{}
		#menu_user{}
			.menu_elem{padding:0.5em; white-space:nowrap;} /*делает отступы от пунктов меню*/
			.messenger{height:50px;}

/*окна*/
.window{position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); z-index:102;/*z-index:102; /*box-sizing:border-box;/* учтывает паддинг и бордер*/} 
.window2{position:absolute; right:0; width:auto !important; height:100%; z-index:201;/*z-index:103; /*box-sizing:border-box;/* учтывает паддинг и бордер*/ opacity:0.90;}
.overflow_auto{overflow:auto;}
.overflow_hidden{overflow:hidden; overflow-y:auto;}
.summary{text-align:center; padding:150px 20% 150px 20%;}
.sorter{border-radius:100px; cursor:pointer; padding:8px;}
.border_box{box-sizing:border-box;}
.order_1{order:-1}
.gap_20{gap:20px;}/* применяется в сортировке*/

/*.multimedia{scroll-snap-align: start;}*/
.close{cursor:pointer; font-size:var(--f_XXL); position:absolute; transform:translate(50%,-50%); right:30px; top:30px;}
/*слайдшоу----------------------------------------------*/
.slideshow{}
.scroll_snap{}
.slide{cursor:pointer;}
.slide_overflow{overflow:hidden;}
/*.multimedia{}*//*иначе текст вылезает*/
/*.image{}
.baguette{}*/
/*описание-----------------------------------------------------*/
.description, .inscription{}/* краткое и полное */
/*.inscription{z-index:3;}*/
.fon{padding:1em 0.5em 1em 0.5em; box-sizing:border-box; /*opacity:0.90;*/}
.arrow{width:100px; height:100px; padding-top:50px; filter:invert(100%);}
.pointer_events_none{pointer-events:none;}
.pointer_events_auto{pointer-events:auto;}
.link, .button{pointer-events:auto;}
.button:hover{opacity:0.5; transition:0.5s ease-in-out; background-color:transparent;}
/*навигация-----------------------------------------------------*/
.prev, .next{display:none; position:absolute; top: 50%; transform:translate(0%,-50%); padding:16px;/*увеличение области*/ font-weight:bold; font-size:var(--f_M); cursor:pointer; opacity:0.90;}
.next{right:0;}	
.title, .motto{text-transform: uppercase;}
/*-уникальные классы!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
/*-уникальные классы!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
/*-уникальные классы!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
/*map---------------------*/
.z_index_200{z-index:200;}
.z_index_1{z-index:0;}

/*white && green*/
body.color_body_wg{background-color:var(--wg_fon); color:var(--wg_text); scrollbar-color:var(--wg_link) var(--wg_fon);}
body.color_body_wg a:not(.button) {color:var(--wg_link); text-decoration:none;}
body.color_body_wg a:not(.button):not(.link):hover{color:var(--wg_menu);background-color:var(--wg_link);}
body.color_body_wg a.link:hover{color:var(--wg_text);}
body.color_body_wg #constructor,
/*body.color_body_wg .summary,*/
body.color_body_wg #menu_list,
body.color_body_wg #register,
body.color_body_wg #login,
body.color_body_wg #menu{background-color:var(--wg_menu);}
body.color_body_wg .gallery,
body.color_body_wg .window{background-color:var(--wg_fon)}
body.color_body_wg *{outline-color:var(--wg_text) !important;}
body.color_body_wg .close		{color:var(--wg_text);}
body.color_body_wg .close:hover	{color:var(--wg_link);}
body.color_body_wg .burger		{-webkit-filter:grayscale(40%) invert(100%);}
body.color_body_wg .logo, 
body.color_body_wg .icon, 
body.color_body_wg .messenger,
body.color_body_wg [class*="ymaps-2"][class*="-ground-pane"]{-webkit-filter:grayscale(0%) invert(80%);}
body.color_body_wg input{background-color:var(--wg_fon); color:var(--wg_link);}
body.color_body_wg button{background-color:var(--wg_link); color:var(--wg_fon);}
.color_menu_wg{background-color:var(--wg_menu);}
.color_fon_wg{background-color:var(--wg_fon);}
/*gray_gold*/
body.color_body_gg{background-color:var(--gg_fon); color:var(--gg_text); scrollbar-color:var(--gg_link) var(--gg_fon);}
body.color_body_gg a:not(.button) {color:var(--gg_link);}
body.color_body_gg a:not(.button):not(.link):hover{color:var(--gg_menu);background-color:var(--gg_link);}
body.color_body_gg a.link:hover{color:var(--gg_text);}
body.color_body_gg #constructor,
/*body.color_body_gg .summary,*/
body.color_body_gg #menu_list,
body.color_body_gg #register,
body.color_body_gg #login,
body.color_body_gg #menu{background-color:var(--gg_menu);}
body.color_body_gg .gallery,
body.color_body_gg .window{background-color:var(--gg_fon)}
body.color_body_gg *{outline-color:var(--gg_link) !important;}
body.color_body_gg .close		{color:var(--gg_text);}
body.color_body_gg .close:hover	{color:var(--gg_link);}
body.color_body_gg .burger		{-webkit-filter:grayscale(0%) invert(0%);}
body.color_body_gg .logo, 
body.color_body_gg .icon, 
body.color_body_gg .messenger,
body.color_body_gg [class*="ymaps-2"][class*="-ground-pane"]{-webkit-filter:grayscale(80%) invert(100%);}
body.color_body_gg input{background-color:var(--gg_fon); color:var(--gg_link);}
body.color_body_wg button{background-color:var(--gg_link); color:var(--gg_fon);}

.color_menu_gg{background-color:var(--gg_menu);}
.color_fon_gg{background-color:var(--gg_fon);}
/* white*/
body.color_body_wt{background-color:var(--wt_fon); color:var(--wt_text); scrollbar-color:var(--wt_link) var(--wt_fon);}
body.color_body_wt a:not(.button){color:var(--wt_link);} 
body.color_body_wt a:not(.button):not(.link):hover{color:var(--wt_menu);background-color:var(--wt_link);}
body.color_body_wt a.link:hover{color:var(--wt_text);}
body.color_body_wt #constructor,
/*body.color_body_wt .summary,*/
body.color_body_wt #menu_list,
body.color_body_wt #register,
body.color_body_wt #login,
body.color_body_wt #menu{background-color:var(--wt_menu);}
body.color_body_wt .gallery,
body.color_body_wt .window{background-color:var(--wt_fon)}
body.color_body_wt *{outline-color:var(--wt_link) !important;}
body.color_body_wt .close		{color:var(--wt_text);}
body.color_body_wt .close:hover	{color:var(--wt_link);}
body.color_body_wt .burger		{-webkit-filter:grayscale(80%) invert(100%);}
body.color_body_wt .logo, 
body.color_body_wt .icon, 
body.color_body_wt .messenger,	
body.color_body_wt [class*="ymaps-2"][class*="-ground-pane"]{-webkit-filter:grayscale(0%) invert(0%);}
body.color_body_wt input{background-color:var(--wt_fon); color:var(--wt_link);}
body.color_body_wg button{background-color:var(--wt_link); color:var(--wt_fon);}

.color_menu_wt{background-color:var(--wt_menu);}
.color_fon_wt{background-color:var(--wt_fon);}

.color_background_transparent{background-color:transparent !important;}

.a_straight_wg, .a_invert_wg:hover{color:var(--wg_link); background-color:var(--wg_menu)/*transparent*/;}
.a_invert_wg, .a_straight_wg:hover{color:var(--wg_menu) !important; background-color:var(--wg_link);}
.a_straight_gg, .a_invert_gg:hover{color:var(--gg_link); background-color:var(--gg_menu)/*transparent*/;}
.a_invert_gg, .a_straight_gg:hover{color:var(--gg_menu) !important; background-color:var(--gg_link);}
.a_straight_wt, .a_invert_wt:hover{color:var(--wt_link); background-color:var(--wt_menu)/*transparent*/;}
.a_invert_wt, .a_straight_wt:hover{color:var(--wt_menu) !important; background-color:var(--wt_link);}


.shadow_inner_wt:after{pointer-events:none; content:''; position:absolute; top:0; left:0; bottom:0; right:0; box-shadow: inset 0px 0px 20px var(--wt_shd);}
.shadow_inner_wg:after{pointer-events:none; content:''; position:absolute; top:0; left:0; bottom:0; right:0; box-shadow: inset 0px 0px 20px var(--wg_shd);}
.shadow_inner_gg:after{pointer-events:none; content:''; position:absolute; top:0; left:0; bottom:0; right:0; box-shadow: inset 0px 0px 20px var(--gg_shd);}

.shadow_outer_wt{box-shadow: 0px 0px 20px var(--wt_shd);}
.shadow_outer_wg{box-shadow: 0px 0px 20px var(--wg_shd);}
.shadow_outer_gg{box-shadow: 0px 0px 20px var(--gg_shd);}

.text_stroke{-webkit-text-stroke: 1px white;}
.text_shadow_wt{text-shadow: 0 1px 1px var(--wt_shd),0 1px 2px var(--wt_shd),0 5px 8px var(--wt_shd)}
.text_shadow_wg{text-shadow: 0 1px 1px var(--wg_shd),0 1px 2px var(--wg_shd),0 5px 8px var(--wg_shd)}
.text_shadow_gg{text-shadow: 0 1px 1px var(--gg_shd),0 1px 2px var(--gg_shd),0 5px 8px var(--gg_shd)}


.outline_triple_wide{outline-style:solid; outline-width:30px;}
.outline_double_wide{outline-style:solid;outline-width:20px;}
.outline_wide{outline-style:solid;outline-width:10px;}
.outline_thin{outline-style:solid;outline-width:1px;}

.padding20{padding:20px; box-sizing:border-box;}
.padding40{padding:40px; box-sizing:border-box;}
.padding60{padding:60px; box-sizing:border-box;}
.padding_lr20{padding-left:20px; padding-right:20px; box-sizing:border-box;}
.padding_lr40{padding-left:40px; padding-right:40px; box-sizing:border-box;}
.padding_top100{padding-top:100px; box-sizing:border-box;}
.padding_bottom100{padding-bottom:75px; box-sizing:border-box;}
.padding_left200{padding-left:5%; box-sizing:border-box;}
.padding_right200{padding-right:5%; box-sizing:border-box;}

.hidden{display:none;}
 
.flex_wrap{display:flex; flex-wrap:wrap;} /* использовалось раньше в constructor, сейчас нигде*/
.flex{display:flex;} 
.flex_size_0{flex:0.1}.flex_size_0_5{flex:0.5}.flex_size_1{flex:1}.flex_size_2{flex:2}.flex_size_3{flex:3}.flex_size_4{flex:4}.flex_size_5{flex:5}.flex_size_6{flex:6}.flex_size_7{flex:7}.flex_size_8{flex:8}.flex_size_9{flex:9}
.flex_size_100{flex:0 0 100px}.flex_size_200{flex:0 0 200px}.flex_size_300{flex:0 0 300px}.flex_size_400{flex:0 0 400px}.flex_size_500{flex:0 0 500px}.flex_size_600{flex:0 0 600px}.flex_size_700{flex:0 0 700px}.flex_size_800{flex:0 0 800px}.flex_size_900{flex:0 0 900px}
.flex_grow_1{flex-grow:1;}
.flex_center{display:flex; align-items:center;text-align:center;} 
.flex_center_center{display:flex; align-items:center; justify-content:center;text-align:center;} 
.flex_direction_column{flex-direction:column;} 
.flex_direction_row{flex-direction:row;} 
.display_none{display:none;} 
.display_block{display:block;} 
.display_flex{display:flex;} 
.align_items_flex_start{align-items:flex-start;}
.align_items_flex_end{align-items:flex-end;}
.align_items_center{align-items:center;}

.align_items_text_flex_start{align-items:flex-start;text-align:left;}
.align_items_text_flex_end{align-items:flex-end;text-align:right;}
.align_items_text_center{align-items:center;text-align:center;}
.justify_content_flex_start{justify-content:flex-start;}
.justify_content_flex_end{justify-content:flex-end;}
.justify_content_center{justify-content:center;}

.align_inner_left_top{align-items:flex-start;text-align:left;justify-content:flex-start;}
.align_inner_center_top{align-items:center;text-align:center;justify-content:flex-start;}
.align_inner_right_top{align-items:flex-end;text-align:right;justify-content:flex-start;}
.align_inner_left_middle{align-items:flex-start;text-align:left;justify-content:center;}
.align_inner_center_middle{align-items:center;text-align:center;justify-content:center;}
.align_inner_right_middle{align-items:flex-end;text-align:right;justify-content:center;}
.align_inner_left_bottom{align-items:flex-start;text-align:left;justify-content:flex-end;}
.align_inner_center_bottom{align-items:center;text-align:center;justify-content:flex-end;}
.align_inner_right_bottom{align-items:flex-end;text-align:right;justify-content:flex-end;}


.wrap{flex-wrap:wrap;} /* использовалось раньше в constructor, сейчас нигде*/
.min_width_1000px{min-width:1000px;} /* используется в прикрепляемых html, очень важно для перестройки страницы в них */

.visibility_hidden{visibility:hidden;}

.parent_visibility_hover 	   .description{opacity:0; transition:opacity 0.5s ease;} /* для анимации появления текста */
.parent_visibility_hover:hover .description{opacity:0.9;}

.scale_title 	   .title{transform:scale(2); /*opacity:0;*/   transition:0.5s ease-in-out 1s; transform-origin: left bottom;}
.scale_title:hover .title{transform:scale(1); /*opacity:0.9; transition:0.5s ease-in-out;*/}

.grayscale_animate		{filter:grayscale(1); transition:0.5s ease-in-out;}
.grayscale_animate:hover{filter:grayscale(0);}
.scale_animate		{transform:scale(1); transition:0.5s ease-in-out; }
.scale_animate:hover{transform:scale(1.05);}
/*.scale_transform		{transform:scale(1) translate(0%); transition:10s ease-in-out; }
.scale_transform:hover	{transform:scale(1.2) translate(-12%);}*/

.block_width_none{background-color:rgba(0,0,0,0);}
.block_width_auto{width:auto;height:auto;}
.height_100px{height:100px;}
.block_width_10{width:10%;}.block_width_20{width:20%;}.block_width_30{width:30%;}.block_width_40{width:40%;}.block_width_50{width:50%;}.block_width_60{width:60%;}.block_width_70{width:70%;}.block_width_80{width:80%;}.block_width_90{width:90%;}
.block_width_100{width:100%;}.block_width_200{width:200%;}.block_width_400{width:400%;}.block_height_10{height:10%;}
.block_height_20{height:20%;}.block_height_30{height:30%;}.block_height_40{height:40%;}.block_height_50{height:50%;}.block_height_60{height:60%;}.block_height_70{height:70%;}.block_height_80{height:80%;}.block_height_90{height:90%;}.block_height_100{height:100%;}
.block_width_50_100{width:50%; height:100%;}
.block_width_100_100{width:100%; height:100%;}
.block_width_200_100{width:200%; height:100%; padding-left:20px; padding-right:20px;}
.block_width_300_100{width:300%; height:100%; padding-left:20px; padding-right:20px;}
.block_width_400_100{width:400%; height:100%; padding-left:20px; padding-right:20px;}

.position_absolute{position:absolute;}
.position_absolute_0_0{position:absolute; left:0; top:0;}
.position_absolute_100_100{position:absolute; left:100; top:100;}
.position_static{position:static;}
.position_relative{position:relative;}
.position_fixed{position:fixed;}

.text_align_center:{text-align:center;}
.text_align_left:{text-align:left;}

/*яндекс карта*/
.ymaps-2-1-79-copyright{visibility:hidden;} /*условия использования*/
.ymaps-2-1-79-gototech{display:none;} /*создать свою карту*/
.ymaps-2-1-79-map-copyrights-promo{display:none;}/*открыть в яндекс картах*/
.ymaps-2-1-79-balloon-content__header{font-family: "GOST_Type_A";}/*шрифт в балуне*/

/*бургер*/
.burger{cursor:pointer; position:absolute;  z-index:101;/*должен быть меньше window*/ transform-origin:right top; right:50px; top:50px; transform:translate(50%,-50%);}
.b1, .b2, .b3{width:72px; height:8px; background-color:#fff; margin:20px 0; transition:0.3s;}
.change .b1{transform:rotate(-45deg) translate(-19.5px, 19.5px);}
.change .b3{transform:rotate(45deg) translate(-19.5px, -19.5px);}
.change .b2{opacity:0;}

/*растяжение страницы*/
/*самый средний размер*/
/*самый маленький размер*/
@media(min-width:1200px){.burger{right:30px; top:30px; transform:scale(0.5) translate(50%,-50%);} .gallery_image{height:1200px; width:auto;}}
@media(max-width:1200px){.summary{padding-left:10%; padding-right:10%;} .padding_lr40{order:2} .messenger{height:100px;} .burger{display:block;/*виден*/} /*#menu_user{flex-direction:column;} #menu_open{flex-direction:column;}*/ #gallery_container0{width:100%;} #gallery_container1{width:100%;} #gallery_container2{width:100%;} #gallery_container3{width:100%;} #gallery_container4{width:100%;} #gallery_container5{width:100%;} .close{font-size:var(--f_XXXL); right:50px; top:50px;} #logo{max-width:400px; /*height:80px; width:auto;*/} #body{flex-direction:column; font-size:var(--f_XL);} .window{width:100%; height:100%;} .window2{width:100% !important;}}

@keyframes anima{
	0%{transform:scale(1) translate(0%);} 
	100%{transform:scale(1.5) translate(-15%);} 
	/*100%{transform:scale(1) translate(0%);}*/
}
.animation{animation-name:anima; animation-duration:15s; animation-timing-function:linear; animation-iteration-count:infinite;}

