/* Catalog page skin (loaded after common.css on the catalog section): cards, list header, map column, SEO blocks. Markup and JS untouched. */

#catalog_items {--c2-ink: #1D1D1F; --c2-muted: #6B7280; --c2-line: #E9EBF0; --c2-bg: #F5F6F8; --c2-red: #EB3752; background: #fff;}
#catalog_items * {box-sizing: border-box;}
#catalog_items > div:nth-of-type(1) {padding: 92px 36px 40px 48px;}
#catalog_items > div:nth-of-type(2) > div {height: calc(100vh - 64px); top: 64px; border-radius: 20px 0 0 20px; overflow: hidden;}
#catalog_items .breadcrumbs {margin-bottom: 14px; align-items: center;}
#catalog_items .breadcrumbs_sep {position: static; display: inline-flex; align-items: center; height: auto; margin: 0 8px; color: #B0B5BC;}
#catalog_items .breadcrumbs_sep_icon {position: static; font-size: 9px; line-height: 1;}
#catalog_items .breadcrumbs > div {display: inline-flex; align-items: center;}
.catalog_items_wrap > h1 {font-size: 34px; font-weight: 800; letter-spacing: -.01em; line-height: 1.15; margin: 0 0 6px; color: var(--c2-ink);}
#catalog_items > div:nth-of-type(1) > div > .title, #catalog_items_wrap > .title {font-size: 15px; font-weight: 500; color: var(--c2-muted); margin: 0 0 4px;}
#catalog_items .catalog_head_note {margin: 4px 0 0 !important;}

/* cards */
#catalog_items .catalog_items_flex {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 22px 0 28px;}
#catalog_items .catalog_items_flex > .catalog_item {width: auto; float: none; padding: 0; min-width: 0;}
#catalog_items .catalog_items_flex > .catalog_item .catalog_wrap {margin: 0 !important; height: 100%; padding: 10px 10px 16px; border: 1px solid var(--c2-line); border-radius: 18px; background: #fff; transition: box-shadow .2s, transform .2s, border-color .2s;}
#catalog_items .catalog_item:hover .catalog_wrap {border-color: #DADEE6; box-shadow: 0 12px 32px rgba(17, 24, 39, .10); transform: translateY(-2px);}
#catalog_items .catalog_photo {border-radius: 12px;}
#catalog_items .catalog_item_video {right: 10px; top: 10px; opacity: .9;}
#catalog_items .catalog_subs {margin: 12px 4px 0; align-items: center;}
#catalog_items .catalog_subway {font-size: 11px; font-weight: 600; letter-spacing: .04em; color: var(--c2-muted); padding: 3px 8px; border-radius: 6px; background: var(--c2-bg);}
#catalog_items .catalog_subs .place_rating_list {margin-left: 10px;}
#catalog_items .catalog_subs .block_rating_count i {color: #F5A623; font-size: 13px; margin-right: 4px;}
#catalog_items .catalog_subs .place_rating {font-size: 13px !important; color: var(--c2-ink) !important; font-weight: 600 !important;}
#catalog_items .catalog_item_title {display: block; margin: 8px 4px 0; font-size: 16px; font-weight: 700; line-height: 1.3; color: var(--c2-ink);}
#catalog_items .catalog_item_title:hover {color: var(--c2-red);}
#catalog_items .catalog_price {margin: 0 4px; padding: 6px 0 8px; font-size: 13px; font-weight: 500; color: var(--c2-muted);}
#catalog_items .catalog_price span {font-size: 18px; font-weight: 800; color: var(--c2-ink); letter-spacing: -.01em; margin-right: 2px;}
#catalog_items .catalog_info {margin: 0 4px; gap: 4px 14px;}
#catalog_items .catalog_info_item {margin: 0; height: auto;}
#catalog_items .catalog_info_item i {color: #9AA0A6; font-size: 14px !important; margin-right: 6px; top: 0;}
#catalog_items .catalog_info_item span {font-size: 13px; color: var(--c2-muted); line-height: 20px;}
#catalog_items .catalog_photo_button {background: rgba(255,255,255,.92); box-shadow: 0 2px 8px rgba(0,0,0,.18);}

/* more + scroll up */
#catalog_items .btn_lazyload {width: 100%; max-width: 360px; height: 52px; margin: 0 auto 36px; justify-content: center; border: 1px solid var(--c2-ink); border-radius: 14px; background: #fff; color: var(--c2-ink); font-size: 15px; font-weight: 600; text-transform: none; letter-spacing: 0;}
#catalog_items .btn_lazyload .icon {font-size: 11px; margin-right: 10px; color: var(--c2-ink);}
#catalog_items .btn_lazyload:hover {background: var(--c2-bg); color: var(--c2-ink);}
#catalog_items .scrollup-button {background: var(--c2-ink); opacity: .9; box-shadow: 0 8px 24px rgba(0,0,0,.2);}

/* lead form, seo blocks */
#catalog_items .lead_form {max-width: none; margin: 8px 0 28px; border-radius: 18px; box-shadow: none; background: var(--c2-bg); border: 0; padding: 26px 28px;}
#catalog_items .lead_form_title {font-size: 22px;}
#catalog_items .catalog_seo_links {margin: 0 0 14px; padding: 20px 22px; border-radius: 18px; background: #fff; border: 1px solid var(--c2-line);}
#catalog_items .catalog_seo_links h3 {font-size: 15px; font-weight: 700; color: var(--c2-ink); margin-bottom: 12px;}
#catalog_items .catalog_seo_links_wrap {gap: 8px;}
#catalog_items .catalog_seo_link {display: inline-block; padding: 6px 12px; border-radius: 999px; border: 1px solid var(--c2-line); background: #fff; color: var(--c2-ink); font-size: 13px; font-weight: 500; line-height: 18px; transition: border-color .15s, background .15s;}
#catalog_items .catalog_seo_link:hover {text-decoration: none; border-color: var(--c2-ink); background: var(--c2-bg);}
#catalog_items .catalog_seo {margin-top: 18px; font-size: 15px; line-height: 1.6; color: var(--c2-muted);}
#catalog_items .catalog_seo h2 {font-size: 20px; font-weight: 700; color: var(--c2-ink); margin: 20px 0 8px;}
#catalog_items .catalog_seo a {color: var(--c2-ink); text-decoration: underline; text-underline-offset: 3px;}

@media screen and (max-width: 1400px) {
	#catalog_items > div:nth-of-type(1) {padding: 92px 28px 40px 32px;}
}

@media screen and (max-width: 1100px) {
	#catalog_items > div:nth-of-type(1) {padding: 24px 16px 32px; border-radius: 24px 24px 0 0; box-shadow: 0 -8px 24px rgba(17,24,39,.08);}
	#catalog_items > div:nth-of-type(2) > div {height: 420px; top: 0; border-radius: 0;}
	.catalog_items_wrap > h1 {font-size: 28px;}
	#catalog_items .catalog_items_flex {gap: 14px; margin: 18px 0 24px;}
	#catalog_items .lead_form {padding: 22px 18px;}
}

@media screen and (max-width: 600px) {
	#catalog_items .catalog_items_flex {grid-template-columns: 1fr; gap: 14px;}
	#catalog_items .catalog_items_flex > .catalog_item .catalog_wrap {padding: 8px 8px 14px; border-radius: 18px;}
	#catalog_items .catalog_photo {border-radius: 12px;}
	#catalog_items .catalog_item_title {font-size: 17px;}
	#catalog_items .catalog_price span {font-size: 19px;}
	.catalog_items_wrap > h1 {font-size: 26px;}
	#catalog_items .catalog_seo {padding: 0; margin-top: 16px;}
	#catalog_items .catalog_seo_links {padding: 16px;}
}

@media screen and (max-width: 900px) {
	/* common.css hides the map here and the list starts under the 114px fixed header */
	#catalog_items > div:nth-of-type(1) {padding: 122px 16px 32px; border-radius: 0; box-shadow: none;}
	#catalog_items.map_open > div:nth-of-type(2) > div {border-radius: 0;}
	.map_switch {border-radius: 999px; box-shadow: 0 10px 28px rgba(0,0,0,.28); font-weight: 600;}
}

/* ---------- /catalog intro: event-type tiles ---------- */
#content > .content_wrap > .breadcrumbs {max-width: 1180px; margin: 24px auto 0; padding: 0 30px; align-items: center;}
#content > .content_wrap > .breadcrumbs .breadcrumbs_sep {position: static; display: inline-flex; align-items: center; height: auto; margin: 0 8px; color: #B0B5BC;}
#content > .content_wrap > .breadcrumbs .breadcrumbs_sep_icon {position: static; font-size: 9px; line-height: 1;}
#content > .content_wrap > .breadcrumbs > div {display: inline-flex; align-items: center;}
.catalog_all_content {padding: 0 30px 40px;}
.catalog_all_content_wrap {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 20px 0 40px;}
.catalog_all_item {float: none; width: auto; padding: 0; min-width: 0;}
.catalog_all_item:nth-of-type(n) {clear: none;}
.catalog_all_item:nth-of-type(n) .catalog_all_wrap {margin: 0; padding-bottom: 78%; border-radius: 18px; background: #1D1D1F; box-shadow: 0 2px 10px rgba(17,24,39,.06); transition: transform .25s, box-shadow .25s;}
.catalog_all_item:hover .catalog_all_wrap {transform: translateY(-3px); box-shadow: 0 16px 36px rgba(17,24,39,.18);}
.catalog_all_img {object-fit: cover; transition: transform .6s ease;}
.catalog_all_item:hover .catalog_all_img {transform: scale(1.06);}
.catalog_all_shadow {height: 70%; background: linear-gradient(to top, rgba(10,12,16,.82) 0%, rgba(10,12,16,.35) 55%, rgba(10,12,16,0) 100%);}
.catalog_all_title {left: 22px; right: 22px; bottom: 54px; padding: 0; line-height: 1.2; text-align: left; font-size: 22px; font-weight: 700; color: #fff; letter-spacing: -.01em; text-shadow: 0 1px 2px rgba(0,0,0,.3);}
.catalog_all_note {left: 22px; right: auto; bottom: 20px; padding: 3px 10px; line-height: 18px; text-align: left; font-size: 12px; font-weight: 600; color: #fff; background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.28); border-radius: 999px; backdrop-filter: blur(4px);}
.catalog_all_content > .catalog_seo {max-width: 820px; font-size: 15px; line-height: 1.65; color: #6B7280;}
.catalog_all_content > .catalog_seo ul {padding-left: 0 !important; list-style: none; display: grid; gap: 8px;}
.catalog_all_content > .catalog_seo li {position: relative; padding-left: 18px;}
.catalog_all_content > .catalog_seo li::before {content: ''; position: absolute; left: 0; top: 9px; width: 6px; height: 6px; border-radius: 50%; background: #EB3752;}
.catalog_all_content > .catalog_seo p {color: #1D1D1F; font-weight: 500;}

@media screen and (max-width: 1100px) {
	.catalog_all_content_wrap {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px;}
	.catalog_all_item:nth-of-type(n) .catalog_all_wrap {padding-bottom: 72%;}
}

@media screen and (max-width: 800px) {
	#content > .content_wrap > .breadcrumbs {margin-top: 12px; padding: 0 16px;}
	.catalog_all_content {padding: 0 16px 32px;}
	.catalog_all_content_wrap {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 14px 0 28px;}
	.catalog_all_item:nth-of-type(n) .catalog_all_wrap {padding-bottom: 100%; border-radius: 14px;}
	.catalog_all_bg {display: none;}
	.catalog_all_img {max-height: none; height: 100%;}
	.catalog_all_title {left: 12px; right: 12px; bottom: 44px; font-size: 16px;}
	.catalog_all_note {left: 12px; bottom: 14px; font-size: 11px; padding: 2px 8px;}
	.catalog_all_content > .catalog_seo {padding: 0; font-size: 14px;}
}
