/* стили адаптации к мобильным устройствам - основные */

/* 2048x1536 */
@media ( max-width: 2048px ){
 
}

/* Laptop 1920x1200 */
@media ( max-width: 1920px ){

}

@media ( max-width: 1860px ){
	.section, .section.intro .txt, footer::before { width:auto; margin:0 20px; }
	.section .container { padding:0 30px; }
}

/* Laptop 1680x1050, 1680x945 */
@media ( max-width: 1680px ){

}
/* Laptop 1600x1200 */
@media ( max-width: 1600px ){
	
	.main_page .intro .title_block, .main_page .intro .title_block i { font-size:80px; }
	.menu_services figure { height:235px; }
}

@media ( max-width: 1566px ){
	
	.section, .section.intro .txt, footer:before { width:auto; margin:0 15px; }
	.menu_mice figure { width:100%; height:318px; }
	.menu_mice li { width:calc(33% - 10px); }
}

/* Laptop 1400x1050, 1440x900 */
@media ( max-width: 1441px ){
	
	footer .map img { width:650px; height:377px; }
	
	.main_page header .main_menu { display:none; flex-direction:column; position:absolute; width:auto; margin:12px 50px 0 0; border:1px solid rgba(255,255,255,.5); background:#0a2541; z-index:1; }
	.main_page header .row { margin:0; justify-content:flex-end; }
	.main_page header .main_menu li { margin:0; }
		.main_page header .main_menu li a { width:100%; }
	
	.main_page.main_menu_open header .main_menu { display:flex; }
	
	.open_link.icon-burger { justify-content:center; align-items:center; width:40px; height:40px; margin:12px 0 0; border:1px solid rgba(255,255,255,.5); z-index:1; }
	.main_page header .open_link.icon-burger { display:flex; }
		.wrap .open_link.icon-burger:hover { color:inherit; border-color:#fff; }
	
	.main_menu_open .open_link.icon-burger:before { content:'\f00d'; font-size:20px; }
	
	.article figure { width:680px; height:463px; }
	.article figure + .col { width:calc(100% - 680px); }
	.article .txt { padding-left:50px; }
	.article .col .contentZone { font-size:18px; }
	.article .col .contentZone em { font-size:29px; }
	
	.menu_services figure { height:213px; }
	.menu_mice figure { height:290px; }
	.menu_mice .title_item { font-size:32px; }
	.menu_mice .btn { margin:35px 0 0; }
	
	.booking.img_on figure { width:690px; height:403px; }
	.booking.img_on [data-dir] { width:calc(100% - 710px); }
	/* .booking figure, .row.booking figure { width:690px; height:403px; }
	.booking .col, .row.booking .booking_block { width:calc(100% - 710px); } */
}

@media ( max-width: 1435px ){
	.advantages .title_block { margin:0 0 30px; }
	.advantages .title_block + div { justify-content:center; }
	.advantages .item { margin:35px 30px 0; }
}

/* iPad Pro (12) горизонтальная ориентация */
@media ( max-width: 1367px ){

	footer { padding:95px 0 55px; }
		footer .container { align-items:flex-end; }
		footer .main_menu { margin:20px 0 0 30px; }
		footer .map img { width:500px; height:290px; }
		footer .logo { margin:0; }
		footer .bottom { margin:25px 0 0; }
		footer .col.v2 { margin:0 30px 0 0; }
		
	.menu_services figure { height:201px; }
	.menu_mice figure { height:272px; }
	
	.booking.img_on figure { width:670px; height:390px; }
	.booking.img_on [data-dir] { width:calc(100% - 685px); }
}

/* Laptop, Kindle Fire XDX горизонтальная ориентация 1280x1024, 1280x800, 1280x768 */
@media ( max-width: 1281px ){
	
	footer .map { margin:0 0 0 -20px; }
		footer .map img { width:450px; height:265px; }
		
	.main_page .intro .title_block, .main_page .intro .title_block i { font-size:60px; }
	.intro .contentZone { font-size:18px; }
	
	.article figure { width:600px; height:409px; }
	.article figure + .col, .article_img_on .col { width:calc(100% - 600px); }
	.article .txt { margin:15px 30px 0; }
	
	.menu_services figure { height:185px; }
	/* .menu_services .title_item { font-size:35px; } */
	.menu_mice li { width:calc(33% - 7px); }
	
	.booking.img_on figure { width:618px; height:361px; }
	.booking.img_on [data-dir] { width:calc(100% - 625px); }
	
	.booking .form_content label { width:calc(50% - 5px); }
	input:not([type="checkbox"]):not(.mce-textbox):not([type="radio"]), textarea { padding-left:10px; }
}

@media ( max-width: 1180px ){

	footer { padding:80px 0 35px; }
	footer .container { justify-content:space-around; }
		footer .map { display:none; }
		footer .col { margin:110px 0 70px !important; }
		footer .col.v2 { justify-content:flex-end; }
		footer .logo { position:absolute; top:0; left:0; right:0; width:360px; margin:0 auto; }
		footer .bottom { flex-direction:row; flex-wrap:wrap; justify-content:center; position:absolute; left:0; right:0; bottom:0; margin:0; padding:15px 0 0; border-top:1px solid rgba(255,255,255,.4); }
			footer .bottom p, footer .bottom a { margin:10px 10px 0 !important; font-size:14px; }
		footer .social_menu { justify-content:flex-end; }
		
	.section .container { padding:0 20px; }
	.article figure { width:550px; height:375px; }
	.article figure + .col, .article_img_on .col { width:calc(100% - 550px); }
	.article .txt { padding-left:20px; }
	
	.gallery_slider { margin:0 33px 0; }
	
	.rooms .item { width:calc(100% + 20px); margin-left:-15px; }
	.rooms .txt { padding-left:10px; }
	.rooms .top { flex-direction:column; align-items:flex-end; }
	.rooms .title_item { font-size:34px; }
	.rooms .top .btn { margin:15px 0 0 15px; height:45px; }
	
	.menu_services .container > ul, .menu_services > ul { flex-wrap:wrap; width:100%; }
	.menu_services .container > ul { justify-content:space-between; }

	.menu_services .container > ul > li, .menu_services > ul > li { width:calc(33% - 7px); }
	.menu_services .container > ul > li { margin:0 0 40px; }	

	
	.menu_services figure { height:230px; }
	
	.menu_mice ul { flex-wrap:wrap; }
	.menu_mice li { width:calc(50% - 10px); margin:0 0 30px; }
	.menu_mice figure { height:360px; }
	
	.booking.img_on figure { width:480px; height:280px; }
	.booking.img_on [data-dir] { width:calc(100% - 485px); }
	/* .booking .form_content label { width:calc(50% - 5px); }
	input:not([type="checkbox"]):not(.mce-textbox):not([type="radio"]), textarea { padding-left:10px; } */
}
	
/* iPad горизонтальная ориентация, iPad Pro (12) вертикальная ориентация 1024x768 , net book 1024x600 */
@media ( max-width: 1025px ){
	
	header .main_menu { display:none; flex-direction:column; position:absolute; width:auto; margin:12px 50px 0 0; border:1px solid rgba(255,255,255,.5); background:#0a2541; z-index:1; }
	header .row {  justify-content:flex-end; margin:-30px 0; }
	header .main_menu li { margin:0; }
		header .main_menu li a { width:100%; }

	.main_menu_open header .main_menu { display:flex; }

	header .open_link.icon-burger { display:flex; }
	
	.breadcrumbs ul { padding-top:30px; }
	
	.article figure { width:490px; height:334px; }
	.article figure + .col, .article_img_on .col { width:calc(100% - 490px); }
	.article .col.v1 .contentZone { margin:0 20px 0 0; }
	.article .col .contentZone { font-size:17px; line-height:1.4; }
	.article .col .contentZone em { font-size:27px; line-height:.7; }
	.article .txt { margin:15px 20px 0; }

	
	.menu_services figure { height:203px; }
	.menu_mice figure { height:312px; }
	
	.services_table td:not(.end) { padding-left:20px; }
	table .end { padding-right:20px; }
	
	
	.title2, .article_top strong { font-size:45px; }
}

@media ( max-width: 1020px ){
	
	.rooms .item { flex-direction:column; width:100%; margin-left:0; }
	.rooms .txt { padding-left:0; }
	.room_slider { margin:0 auto; }
	.rooms .title_item { width:100%; margin:15px 0 0; }
	.rooms .top { flex-direction:row; align-items:flex-start; }
	
	.booking .container, .row.booking { flex-direction:column; align-items:center; position:relative; }
	.booking.img_on figure { width:100%; }
/* 	.booking.img_on .title_block, 
		.img_on .row.booking h2, 
		.services_page .img_on + .article .row.booking h2  */
	.booking.img_on .title_block, .booking.img_on .title_item
		{ display:flex; align-items:flex-end; position:absolute; padding:0 40px 50px; width:auto; height:280px; margin:0; font-size:50px; color:#fff; background:rgba(0,0,0,.3); z-index:1; }
	.booking.img_on .title_block { left:20px; right:20px; }
	.booking.img_on .title_item { left:0; right:0; }
	
	.services_page .img_on + .article .row.booking h2 { left:0; right:0; }
	/* .row.booking h2, .row.booking h2 span { left:0; right:0; font-size:50px; } */
	/* .booking figure + .col { margin:20px 0 0; } */
	.booking.img_on [data-dir] { width:650px; max-width:100%; }
	
	.booking.img_on figure + [data-dir]{ margin:20px 0 0; }
	
	.article .col, .article figure + .col, .article_img_on .col { order:1; width:100%; }
	.article figure { margin:0 auto; width:722px; max-height:492px; height:auto; }
	.article .col.v1 .contentZone, .article figure + .col .contentZone { margin:20px 0 0; }
}

/* Nexus 7 горизонтальная ориентация */
@media ( max-width: 961px ){
	
	header .logo, .main_page header .logo { position:absolute; top:15px; right:0; left:0; margin:0 auto; width:404px; max-width:calc(100% - 10px); }
	header .logo img { width:100%; height:auto; }
	header .top, .main_page header .top { margin:155px 0 0; padding-left:55px; border-top: 1px solid rgba(255,255,255,.5); border-bottom:0; }
	header .top [data-key] { display:none; }
	header .top > a + a { margin:0 0 0 25px; }
	header .row, .main_page header .row { justify-content:flex-start; margin:0; }
	header .main_menu, .main_page header .main_menu { margin-top:0; }
	header .open_link.icon-burger { position:absolute; margin:-52px 0 0; }
	
	.title_block { margin:0 0 40px; }
	.section.intro + .section, #metrika + .section, .breadcrumbs + .section:not(.intro) { padding-top:40px !important; border-radius:20px 20px 0 0; }
	footer:before { height:20px; border-radius:0 0 20px 20px; }
	.section.intro { margin:0 auto 40px; }
	/* .article .col { order:1; width:100%; } */
	/* .article figure { margin:0 auto; } */
	/* .article .col.v1 .contentZone, .article figure + .col .contentZone { margin:20px 0 0; } */
	.article .txt { padding-left: 0; margin:10px 50px 0; }
	
	.menu_services .container > ul > li, .menu_services > ul > li { width:calc(50% - 10px); }
	.menu_services figure { height:284px; }
	
	.menu_mice figure { height:290px; }
}	
/* 961 */

/* iPhone XR горизонтальная ориентация */
@media ( max-width: 897px ){
	
	.main_page .intro .title_block, .main_page .intro .title_block i, .intro .title_block, .title_block, 
		.title_block span, .intro .title_block i, .title_item[data-key="services_list_title"], .booking.img_off .title_item
			{ font-size:55px; }
	.intro .title_block i { line-height:55px; }
	.section.intro.v1 { min-height:360px; }
	.menu_services figure { height:265px; }
	.menu_mice figure { height:268px; }
}

/* Galaxy 9 горизонтальная ориентация */
@media ( max-width: 847px ){
	
	.menu_services figure { height:250px; }
	.menu_mice li { width:calc(50% - 7px); }
}

/* iPad Pro вертикальная ориентация */
@media ( max-width: 835px ){
	
	.menu_services figure { height:245px; }
	.menu_mice figure { height:250px; }
}

/* iPhone X/XLS горизонтальная ориентация */
@media ( max-width: 813px ){
	
	.menu_services .container > ul > li, .menu_services > ul > li { width:calc(50% - 8px); }
	.menu_services figure { height:235px; }
	.menu_mice figure { height:243px; }
}

/* Kindle Fire XDX вертикальная ориентация */
@media ( max-width: 801px ){
	.menu_mice figure { height:238px; }
	
	table .end { width:160px; }
	.services_table .btn { margin:7px 0; padding:0 30px; font-size:18px; }
	.services_table td:not(.end) { padding-left:15px; }
	table .end { padding-right:10px; }
	.modalItem .form_content label { width:calc(50% - 7px); }
	.article_top { flex-direction:column; align-items:unset; }
	.article_top strong { font-size:40px; text-align:right; }
}

/* iPad вертикальная ориентация */
@media ( max-width: 769px ){
	
	.menu_services figure { height:225px; }
	.menu_mice ul { justify-content:center; }
	.menu_mice li { width:480px; max-width:100%; margin:0 0 40px; }
		.menu_mice li:last-child { margin:0; }
	.menu_mice figure { height:320px; }
	.menu_mice .btn { margin:25px 0 0; }
	.row.booking .booking_block { max-width:100%; }
}

/* Galaxy S9/S9+ горизонтальная ориентация */
@media ( max-width: 741px ){
	
	footer .container { justify-content:space-between; }
	footer .bottom p { width:100%; text-align:center; }
	footer .col { margin:110px 0 100px !important; }
	footer .main_menu { margin:20px 0 0 0; }
	footer .col.v2 { align-items:flex-end; }
	footer .col.v2 span[data-key] { display:none; }
	
	.rooms .top { flex-direction:column; align-items:flex-end; }
	.menu_services figure { height:215px; }
	
	.services_table .table {  }
	.services_table tbody { display:flex; flex-direction:column; width:100%; }
	.services_table td[colspan] { display:flex; border-top:1px solid var(--color-border); }
	.services_table tr:not([class]) { display:flex; flex-wrap:wrap; justify-content:space-between; position:relative; padding:10px 15px 67px 0; border-top:1px solid var(--color-border); }
		.wrap .services_table tr:not([class]):hover { border-color:transparent; }
	table .end { position: absolute; right:5px; bottom:6px; }
	.services_table td h3 { font-size:32px; }
}

/* iPhone 6/7/8 Plus горизонтальная ориентация */
@media ( max-width: 737px ){
	
}

/* iPhone 6/7/8 горизонтальная ориентация */
@media ( max-width: 668px ){
	
	.menu_services figure { height:190px; }
}

/* Galaxy S5 горизонтальная ориентация */
@media ( max-width: 641px ){
	
	header .top, .main_page header .top { flex-direction:column; align-items:center; padding:15px 0 20px; }
	header .top > a + a { margin:10px 0 0; }
	header .social_menu { margin:17px 0 0; }
	header .open_link.icon-burger { margin:-60px 0 0; }
	
	.main_page .intro .title_block, .main_page .intro .title_block i, .intro .title_block, .title_block, 
		.title_block span, .title_block span, .intro .title_block i, .title_item[data-key="services_list_title"], .booking.img_off .title_item
			{ font-size:50px; }
	.intro .title_block i { line-height:50px; }
	.intro .btn { margin:30px 0 0; }
	.gallery figure, .article .gallery figure { margin:0; }
	
	.room_slider { width:100%; margin:0 0 50px; }
	.room_slider .slick-prev, .room_slider .slick-next { top:calc(100% + 35px); }
	.room_slider .slick-prev { left:0; }
	.room_slider .slick-next { right:0; }
	.rooms figure { width:100%; height:377px; }
	
	.menu_services .container > ul, .menu_services > ul { justify-content:center; }
		.menu_services .container > ul > li, .menu_services > ul > li { width:365px; }
		.menu_services .container > ul > li:last-child, .menu_services > ul > li:last-child { margin-bottom:0; }
	.menu_services figure { height:240px; }
	.menu_services .title_item { /* margin:0 0 15px; */ font-size:32px; }
	
	.booking.img_on .title_block, .img_on .row.booking h2, .booking.img_on .title_item { padding:0 20px 40px; }
	.modalItem h2 { margin:30px 0 20px 20px; font-size:40px; }
	.modalItem .title_item { font-size:28px !important; }
	
	.title2 { font-size:40px; margin:0 0 30px; }
	
}

/* Nexus 7 вертикальная ориентация */
@media ( max-width: 601px ){ 
	
	.title_block { margin:0 0 30px; }
	.article figure { width:100%; height:auto; }
	.article .txt { margin:10px 0 0; }
	.section { padding-bottom:50px; }
	.section .container { padding:0 15px; }
	.rooms figure { height:350px; }
	.booking.img_on .title_block { left:15px; right:15px; }
	.img_on .row.booking h2, .services_page .img_on + .article .row.booking h2 { left:0; right:0; }
	.booking.img_on .title_block, .img_on .row.booking h2, .booking.img_on .title_item, .booking.img_on figure { height:220px; }
	.booking figure + .col { margin:10px 0 0; }
	label, .label { margin:0 0 20px; }
	.article .col .contentZone, .article_top + .contentZone, .text .contentZone { font-size:16px; }

}

/* iPhone 5 горизонтальная ориентация */
@media ( max-width: 569px ){
	
	footer { padding:80px 0 20px; }
	footer .container { flex-direction:column; align-items:center; }
	footer .col.v1 { margin-bottom:0 !important; }
	footer .col.v2 { align-items:center; margin:35px 0 120px !important; }
	footer .bottom { flex-direction:column; align-items:center; padding:10px 0 0; }
	footer .btn + div { margin:30px 0 0; }
	footer .main_menu li + li { margin:15px 0 0; }
	
	.advantages .item { max-width:100%; margin:35px auto 0; }
	.rooms figure { height:335px; }
	
	.services_table tr:not([class]) { justify-content:flex-end; }
	.services_table tr:not([class]) td:first-child { width:100%; margin:0 0 5px; }
	.booking.img_off .title_item { margin:0 0 30px; }
	.booking [data-dir] { min-height:672px; }
	.booking .form_content label, .modalItem .form_content label { width:100%; }
	input:not([type="checkbox"]):not(.mce-textbox):not([type="radio"]), textarea { margin-top:7px; }
}
/* 569 */


@media ( max-width: 500px ){
	
	.intro .contentZone { font-size:16px; }
	.gallery.section .container { padding:0 !important; }
	.gallery figure, .article .gallery figure { height:269px; }
	.rooms figure { height:290px; }
	.menu_mice figure { height:292px; }
	
	.services_table td:not(.end) { padding-left:5px; }
	.services_table tr:not([class]) { padding-right:5px; }
	table .end { right:0; }
	.services_table td.price { padding-right:5px; }
}

@media ( max-width: 430px ){
	
	.menu_services .container > ul > li, .menu_services > ul > li { width:100%; }
}

/* iPhone 6/7/8 Plus вертикальная ориентация */

@media ( max-width: 415px ){

	.btn { height:50px; font-size:18px; }
	
	.title_block { margin:0 0 25px; }
	
	.main_page .intro .title_block, .main_page .intro .title_block i, .intro .title_block, .title_block, 
		.title_block span, .title_block span, .intro .title_block i, .title_item[data-key="services_list_title"], .booking.img_off .title_item
			{ font-size:45px; }
	.intro .title_block i { line-height:45px; }
	.intro .title_block { max-width:calc(100% - 20px); margin:0 10px 25px; }
	.intro .contentZone p { text-align:center !important; }
	
	.section, .section.intro .txt, footer:before { margin:0 10px; }
	.title_element { font-size:18px; }
	
	.section.intro + .section, #metrika + .section, .breadcrumbs + .section:not(.intro) { padding-top:30px !important; }
	.gallery_slider .slick-prev, .slick-next { top:calc(100% + 25px); }
	.gallery_slider .slick-prev { left:50px; }
	.gallery_slider .slick-next { right:50px; }
	.gallery_slider { margin: 0 15px; }
	.gallery figure, .article .gallery figure { height:250px; }
	.gallery.section { padding-bottom:60px; }
	
	.advantages figure { margin:0 15px 0 0; }
	.advantages .title_item { font-size:30px; }
	
	.rooms .item + .item { padding:16px 0 0; }
	.rooms .item .btn { width:100%; }
	.rooms figure { height:240px; }
	
	.menu_mice figure { height:243px; }
	
	.services_table .container { padding:0 10px; }
	.services_table tr:not([class]) { padding: 15px 0; }
		.services_table tr:not([class]) td:first-child { padding:0; text-align:center; }
		.services_table td.price { width:100%; padding:5px 0; text-align:center; }
	table .end { position:static; width:100%; padding:0; text-align:center; }
	.services_table td[colspan] { justify-content:center; }
	
	form { padding:10px; }
	.booking.section { padding-bottom:20px; }
		.booking.section figure { margin-top:-30px; }
		.booking.section .container { padding:0; }
	.booking.img_on .title_block, .booking.img_on .title_item  { top:-30px; padding:0 10px 40px; font-size:42px; }
	.booking.img_on .title_block { left:0; right:0; }
	.booking.img_on .title_item { top:-15px; left:-15px; right:-15px; width:auto; }
	.row.booking figure { margin:-15px 0 0 -15px; width:calc(100% + 30px); max-width:none; }
	.row.booking .booking_block { margin:10px 0 0 -15px !important; width:calc(100% + 30px); max-width:none; /* outline: 1px solid;  */}
	.booking .btn, .modalItem .btn { width:100%; }
	.booking .title_block { padding:0 10px; }
	
	.modalItem { padding:15px 5px; }
		.modalItem h2 { font-size:36px; margin-left:0; text-align:center; }
		.modalItem .title_item { font-size:26px !important; }
		a.modalClose:not(.btn) { top:5px; right:5px; }
  
	.title2, .article_top strong { font-size:38px; }
	.article_top { margin:0 0 25px; }
	
	.menu_services .title_item { font-size:30px; }
	.booking.img_off .title_item { left: -8px; /* outline: 1px solid red; */ }
	
	.map > div { margin-left:20px; }
}
/* 415 */

/* LG Optimus вертикальная ориентация */
@media ( max-width: 385px ){
	
	.section .container { padding:0 10px; }
	.gallery_slider { margin:0 10px; }
	.gallery figure, .article .gallery figure { height:230px; }
	
	.advantages figure { transform:scale(.8); margin:-7px 0 0 -10px; }
	.advantages .title_block { margin:0 0 20px; }
	.advantages .item { margin:15px auto 0; }
	.advantages .title_item { margin:30px 0 10px; font-size:28px; line-height:.8; }
	
	.rooms figure { height:225px; }
	.rooms .title_item { font-size:32px; line-height:.9; }
	
	.menu_services figure { height:225px; }
	.menu_services .title_item { font-size:28px; }
	
	.menu_mice figure { height:230px; }
	.menu_mice .title_item { font-size:30px; }
	
	.title2, .article_top strong { font-size:35px; }
	
	.booking.img_on .booking_block[data-dir] { margin:10px 0 0 -14px !important; width:calc(100% + 20px); }
	.row.booking .booking_block { margin:10px 0 0 -10px !important; width:calc(100% + 20px); }
	.booking.img_on .title_item { left:-10px; right:-10px; }
	.booking.img_off .title_item { left:-5px; }
	.article_gallery .gallery_slider { margin:0; }

}

/* iPhone 6/7/8, X/XLS вертикальная ориентация */
@media ( max-width: 376px ){
	
	.main_page .intro .title_block, .main_page .intro .title_block i, .intro .title_block, .title_block, 
		.title_block span, .title_block span.intro, .intro .title_block i, .row.booking h2 span, .title_item[data-key="services_list_title"], .booking.img_off .title_item
			{ font-size:42px; }
	.intro .title_block i { line-height:42px; }
	.gallery figure, .article .gallery figure { height:222px; }
	.rooms figure { height:220px; }
	.menu_services figure { height:218px; }
	.menu_mice figure { height:223px; }
	.menu_mice .title_item { font-size:28px; }
}

/* Galaxy S5, S9/S9+ вертикальная ориентация */
@media ( max-width: 361px ){
	
	.gallery figure, .article .gallery figure { height:213px; }
	.rooms figure { height:210px; }
	.menu_services figure { height:210px; }
	.menu_mice figure { height:213px; }
	.main_page .intro .title_block, .main_page .intro .title_block i, .intro .title_block, .title_block, 
		.title_block span, .title_block span.intro, .intro .title_block i, .row.booking h2 span, .title_item[data-key="services_list_title"], .booking.img_off .title_item
			{ font-size:40px; }
}
