.close_pop_up {
	top: 0;
	z-index: 3;
	position: sticky;
	margin: 0 0 0 auto;
}

.close_pop_up i {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	font-size: 32px;
	line-height: 32px;
	color: var(--cor1);
	transition: color 0.2s ease;
	text-shadow: 0 0 2px rgba(var(--cor6), 0.5), 0 0 4px rgba(var(--cor6), 0.5), 0 0 6px rgba(var(--cor6), 0.5);
}

.close_pop_up_sp_pd {
	padding: 12px!important;
}

.close_pop_up_sp_pd i {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	font-size: 24px;
	line-height: 24px;
	color: var(--cor1);
	transition: color 0.2s ease;
	text-shadow: 0 0 2px rgba(var(--cor6), 0.5), 0 0 4px rgba(var(--cor6), 0.5), 0 0 6px rgba(var(--cor6), 0.5);
}

.close_pop_up_sp_cl {
	margin: 0;
	padding: 0;
	display: block;
}

.close_pop_up_sp_cl i {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	font-size: 24px;
	line-height: 24px;
	color: var(--cor7);
	transition: color 0.2s ease;
}

.grid_block_section_pop_up_flex {
	gap: 12px;
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

.pop_up {
	top: 0;
	left: 0;
	gap: 32px;
	margin: 0;
	opacity: 0;
	border: none;
	outline: none;
	display: none;
	position: fixed;
	flex-wrap: nowrap;
	padding: 32px;
	z-index: 2147483646;
	align-items: center;
	box-sizing: border-box;
	justify-content: center;
	width: 100%;
	overflow-y: hidden!important;
	height: 100dvh;
	overflow-x: hidden!important;
	background-color: rgba(var(--cor10), 0.7);
}

.pop_up_inner_div {
	gap: 16px;
	margin: 0;
	opacity: 0;
	border: none;
	outline: none;
	display: flex;
	padding: 24px;
	overflow-y: auto;
	flex-wrap: nowrap;
	position: relative;
	overflow-x: hidden;
	border-radius: 16px;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	background-color: var(--cor1);
	scrollbar-width: none!important;
	max-height: 100%;
	width: clamp(0%, calc(100% - 32px), 680px);
}

.pop_up_inner_div_sp_pd {
	padding: 0!important;
}

.pop_up_inner_div::-webkit-scrollbar {
	width: 0!important;
	height: 0!important;
}

.pop_up_inner_div_sm {
	width: clamp(0%, 100%, 768px);
}

.pop_up_inner_div_xs {
	width: clamp(0%, 100%, 600px);
}

.pop_up_header {
	top: 0;
	gap: 8px;
	margin: 0;
	z-index: 2;
	border: none;
	outline: none;
	display: flex;
	position: sticky;
	flex-wrap: nowrap;
	padding: 20px 24px;
	align-items: center;
	width: calc(100% - 48px);
	background-color: var(--cor1);
	justify-content: space-between;
	border-bottom: 1px solid rgba(var(--cor4), 0.7);
}

.pop_up_inner_div_content {
	gap: 12px;
	padding: 0;
	border: none;
	outline: none;
	display: flex;
	margin: 0 24px;
	/*overflow: hidden;*/
	flex-wrap: nowrap;
	flex-direction: column;
	align-items: flex-start;
	width: calc(100% - 48px);
	justify-content: flex-start;
}

.pop_up_inner_div_content_2 {
	gap: 12px;
	margin: 0;
	border: none;
	outline: none;
	display: flex;
	flex-wrap: nowrap;
	flex-direction: column;
	align-items: flex-start;
	width: calc(100% - 32px);
	justify-content: flex-start;
	padding: 0px 16px 32px 16px;
}

.pop_up_iframe {
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	min-width: 100%;
	max-width: 100%;
	height: calc(100dvh - 181px);
}

.pop_up_footer {
	gap: 8px;
	bottom: 0;
	margin: 0;
	border: none;
	outline: none;
	display: flex;
	flex-wrap: wrap;
	position: sticky;
	padding: 20px 24px;
	align-items: center;
	width: calc(100% - 48px);
	justify-content: flex-end;
	background-color: var(--cor1);
	border-top: 1px solid rgba(var(--cor4), 0.7);
}

.pop_up_footer_btn_1 {
	margin: 0;
	border: none;
	outline: none;
	cursor: pointer;
	padding: 9px 16px;
	color: var(--cor1);
	width: fit-content;
	border-radius: 12px;
	transition: all 0.2s ease;
	background-color: var(--cor11)!important;
	font: 400 16px/24px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 16;
}

.pop_up_footer_btn_1:hover {
	background-color: var(--cor23)!important;
}

.pop_up_main_img {
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	min-height: 300px;
	object-fit: contain;
	margin: -65px 0 0 0;
	transition: all 0.2s ease;
	overflow: hidden!important;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-size: 110%;
}

.pop_up_main_img_2 {
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	min-height: 300px;
	max-height: 300px;
	object-fit: cover;
	transition: all 0.2s ease;
	overflow: hidden!important;
}

.pop_up_info_block {
	gap: 24px;
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	display: grid;
	border-radius: 8px;
	justify-content: flex-start;
	grid-template-columns: repeat(2, 1fr);
}

.pop_up_info_desc {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-align: left;
	color: var(--cor7);
	word-break: break-word;
	text-align: -webkit-left;
	transition: all 0.2s ease;
	font: 400 14px/22px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 14;
}

.pop_up_info_desc_2 {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-align: left;
	color: var(--cor7);
	word-break: break-word;
	text-align: -webkit-left;
	transition: all 0.2s ease;
	font: 400 16px/24px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 16;
}

.pop_up_info_desc_3 {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-align: left;
	color: var(--cor7);
	word-break: break-word;
	text-align: -webkit-left;
	transition: all 0.2s ease;
	font: 400 20px/28px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 20;
}

.pop_up_info_desc span {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	color: var(--cor5)!important;
	font: 400 14px/20px 'DMSans', sans-serif!important;
	font-variation-settings: 'wght' 400, 'opsz' 14!important;
}

.pop_up_info_desc_svg {
	margin: 0;
	padding: 0;
	width: auto;
	border: none;
	height: 22px;
	outline: none;
	stroke-width: 2;
	fill: transparent;
	stroke: var(--cor7);
	box-sizing: content-box;
	transition: all 0.2s ease;
}

.pop_up_info_desc_svg_fill {
	margin: 0;
	padding: 0;
	width: auto;
	border: none;
	height: 22px;
	outline: none;
	fill: var(--cor7);
	stroke: transparent;
	box-sizing: content-box;
	transition: all 0.2s ease;
}

.pop_up_info_desc_svg_fill_2 {
	margin: 0;
	padding: 0;
	width: auto;
	border: none;
	height: 22px;
	outline: none;
	fill: var(--cor7);
	stroke: transparent;
	box-sizing: content-box;
	transition: all 0.2s ease;
}

.pop_up_info_title {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-align: left;
	color: var(--cor9);
	word-break: break-word;
	text-align: -webkit-left;
	transition: all 0.2s ease;
	font: 400 14px/20px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 14;
}

.pop_up_info_title_2 {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-align: left;
	color: var(--cor9);
	word-break: break-word;
	text-align: -webkit-left;
	transition: all 0.2s ease;
	font: 400 36px/44px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 36;
}

.pop_up_info_title_3 {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-align: left;
	color: var(--cor9);
	word-break: break-word;
	text-align: -webkit-left;
	transition: all 0.2s ease;
	text-transform: uppercase;
	font: 400 12px/18px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 12;
}

.pop_up_info_title_4 {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-align: left;
	color: var(--cor9);
	word-break: break-word;
	text-align: -webkit-left;
	transition: all 0.2s ease;
	font: 600 32px/40px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 600, 'opsz' 32;
}

.pop_up_links {
	gap: 0px;
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
}

.pop_up_link_div {
	gap: 12px;
	margin: 0;
	border: none;
	outline: none;
	display: flex;
	padding: 24px;
	flex-wrap: nowrap;
	align-items: center;
	width: calc(100% - 48px);
	justify-content: space-between;
	border-top: 1px solid var(--cor5);
}

.pop_up_link_div:hover {
	background-color: var(--cor7);
}

.pop_up_link_inner_div {
	gap: 4px;
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
}

.pop_up_sp_link {
	white-space: normal!important;
}

.pop_up_svg_title {
	gap: 8px;
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
}

.pop_up_svg_title_sp {
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	row-gap: 12px;
	flex-wrap: wrap;
	column-gap: 24px;
	align-items: center;
	justify-content: flex-start;
}

.slideshow_pop_up {
	padding: 0;
	width: 100%;
	border: none;
	height: 400px;
	outline: none;
	display: flex;
	min-height: 200px;
	position: relative;
	align-items: center;
	margin: -65px 0 0 0;
	flex-direction: column;
	justify-content: center;
}

.slideshow_pop_up_media {
	top: 50%;
	left: 50%;
	margin: 0;
	padding: 0;
	z-index: 0;
	opacity: 0;
	width: 101%;
	height: 101%;
	object-fit: cover;
	position: absolute;
	transition: all 0.4s ease;
	pointer-events: none!important;
	pointer-events: auto!important;
	transform: translate(-50%, -50%);
}

.slideshow_pop_up_media.selected_media {
	opacity: 1;
	z-index: 1;
}

.slideshow_bullets {
	gap: 8px;
	border: none;
	outline: none;
	display: flex;
	margin: 0 auto;
	padding: 0px 16px;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 32px);
}

.slideshow_bullet {
	width: 8px;
	height: 8px;
	min-width: 8px;
	max-width: 8px;
	min-height: 8px;
	max-height: 8px;
	border-radius: 50%;
	cursor: pointer!important;
	transition: all 0.4s ease;
	background-color: var(--cor5);
}

.slideshow_bullet.active {
	background-color: var(--cor7);
}

.form_group {
	gap: 8px;
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
}

.form_group label {
	color: var(--cor7);
	font: 600 16px/22px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 600, 'opsz' 16;
}

.base_input {
	width: 100%;
	height: 52px;
	padding: 0 16px;
	color: var(--cor7);
	border-radius: 12px;
	box-sizing: border-box;
	border: 1px solid var(--cor3);
	background-color: var(--cor1);
	font: 400 16px/24px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 16;
}

.base_input:focus {
	outline: none;
	border-color: var(--cor11);
}

select.base_input {
	cursor: pointer;
}

.upload_box {
	z-index: 1;
	width: 100%;
	height: 150px;
	cursor: pointer;
	transition: 0.2s;
	position: relative;
	border-radius: 16px;
	border: 1px solid var(--cor3);
	background-color: var(--cor1);
}

.upload_box:hover {
	border-color: var(--cor11);
}

.upload_box_inner {
	gap: 12px;
	width: 100%;
	height: 100%;
	display: flex;
	color: var(--cor7);
	align-items: center;
	justify-content: center;
	font: 400 16px/24px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 16;
}

.upload_box_inner i {
	font-size: 22px;
}

input[type="file"]::file-selector-button {
	display: none;
}

.upload_input {
	left: 0;
	bottom: 0;
	padding: 0;
	border: none;
	margin: 12px;
	outline: none;
	display: block;
	position: absolute;
	font: 400 11px/15px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 11;
}

.pop_up_footer_btn_2 {
	margin: 0;
	outline: none;
	cursor: pointer;
	padding: 9px 18px;
	color: var(--cor7);
	border-radius: 12px;
	background: var(--cor1);
	border: 1px solid var(--cor3);
	font: 400 16px/24px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 16;
}

@media screen and (max-width: 768px) {
	.pop_up_info_block {
		grid-template-columns: repeat(1, 1fr);
	}
	.pop_up_link_div {
		flex-wrap: wrap;
	}
	.pop_up_sp_link {
		white-space: unset!important;
		word-break: break-word!important;
	}
}

/* Pop-up área empresarial */
.business_area_popup_trigger {
	cursor: pointer;
}

.company_popup_trigger {
	cursor: pointer;
}

.business_area_popup,
.company_popup,
.event_popup,
.vocational_popup {
	top: 0;
	left: 0;
	margin: 0;
	padding: 24px;
	z-index: 10000;
	width: 100%;
	height: 100%;
	border: none;
	outline: none;
	display: none;
	position: fixed;
	overflow-y: hidden;
	align-items: center;
	box-sizing: border-box;
	justify-content: center;
	background-color: rgba(var(--cor40), 0.45);
}

.business_area_popup_open {
	display: flex;
}

.company_popup_open {
	display: flex;
}

.event_popup_open {
	display: flex;
}

.vocational_popup_open {
	display: flex;
}

body.business_area_popup_body_open {
	overflow: hidden;
}

.business_area_popup_inner {
	gap: 14px;
	margin: auto;
	padding: 20px;
	width: 100%;
	max-width: 600px;
	max-height: 100%;
	border: none;
	outline: none;
	display: flex;
	position: relative;
	overflow-y: auto;
	border-radius: 12px;
	box-sizing: border-box;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	background-color: var(--cor1);
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.business_area_popup_inner::-webkit-scrollbar {
	display: none;
}

.business_area_popup_close,
.company_popup_close,
.event_popup_close,
.vocational_popup_close {
	top: 16px;
	right: 16px;
	margin: 0;
	padding: 0;
	width: 36px;
	height: 36px;
	border: none;
	outline: none;
	display: flex;
	cursor: pointer;
	position: absolute;
	border-radius: 50%;
	align-items: center;
	color: var(--cor39);
	justify-content: center;
	background-color: var(--cor1);
	transition: all 0.2s ease;
}

.business_area_popup_close:hover,
.company_popup_close:hover,
.event_popup_close:hover,
.vocational_popup_close:hover {
	color: var(--cor1);
	background-color: var(--cor11);
}

.business_area_popup_close i,
.company_popup_close i,
.event_popup_close i,
.vocational_popup_close i {
	font-size: 20px;
	line-height: 20px;
}

.business_area_popup_header {
	gap: 2px;
	margin: 0;
	padding: 0 48px 0 0;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	box-sizing: border-box;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
}

.business_area_popup_tag {
	margin: 0;
	padding: 5px 12px;
	color: var(--cor39);
	background-color: var(--cor13);
	font: 500 12px/20px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 500, 'opsz' 12;
}

.business_area_popup_title,
.business_area_popup_area,
.business_area_popup_desc,
.business_area_popup_coordinates p,
.business_area_popup_transport p {
	margin: 0;
	padding: 0;
}

.business_area_popup_title {
	color: var(--cor39);
	font: 600 22px/30px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 600, 'opsz' 22;
}

.business_area_popup_area {
	color: var(--cor39);
	font: 400 16px/24px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 16;
}

.business_area_popup_image {
	margin: 0;
	padding: 0 0 8px;
	width: 100%;
	border: none;
	outline: none;
	display: block;
	overflow: hidden;
	position: relative;
	background-color: var(--cor13);
}

.business_area_popup_image img {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 632 / 300;
	object-fit: cover;
}

.business_area_popup_line,
.business_area_popup_divider {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 8px;
	border: none;
	outline: none;
	display: block;
	fill: var(--cor11);
	background-color: var(--cor13);
}

.business_area_popup_line {
	left: 0;
	bottom: 0;
	position: absolute;
}

.business_area_popup_desc {
	color: var(--cor39);
	font: 400 16px/24px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 16;
}

.business_area_popup_coordinates {
	gap: 12px;
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.business_area_popup_coordinates > svg {
	margin: 0;
	padding: 0;
	width: 24px;
	height: 28px;
	border: none;
	outline: none;
	display: block;
	fill: var(--cor39);
	flex: 0 0 24px;
}

.business_area_popup_coordinates_title {
	color: var(--cor39);
	font: 600 16px/24px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 600, 'opsz' 16;
}

.business_area_popup_coordinates_value {
	color: var(--cor29);
	font: 400 16px/24px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 16;
}

.business_area_popup_coordinates a {
	margin: 0;
	padding: 0;
}

.company_popup_detail > svg {
	fill: transparent!important;
	stroke: var(--cor39);
	stroke-width: 2px;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.business_area_popup_transports {
	gap: 14px;
	margin: 0;
	padding: 0 6px;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	box-sizing: border-box;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
}

@media screen and (max-height: 800px) and (min-width: 601px) {
	.business_area_popup_inner {
		gap: 10px;
		padding: 16px;
	}

	.business_area_popup_image img {
		aspect-ratio: 632 / 220;
	}

	.business_area_popup_desc {
		font: 400 15px/23px 'NewKansas', sans-serif;
		font-variation-settings: 'wght' 400, 'opsz' 15;
	}

	.business_area_popup_transports {
		gap: 10px;
	}
}

.business_area_popup_transport {
	gap: 12px;
	margin: 0;
	padding: 0;
	width: 100%;
	border: none;
	outline: none;
	display: grid;
	align-items: center;
	grid-template-columns: 24px minmax(0, 1fr) auto;
}

.business_area_popup_transport_icon {
	margin: 0;
	padding: 0;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	color: var(--cor11);
	justify-content: center;
	font: 700 16px/24px 'DMSans', sans-serif;
}

.business_area_popup_transport_icon i {
	font-size: 18px;
	line-height: 18px;
}

.business_area_popup_transport_icon svg {
	margin: 0;
	padding: 0;
	width: 24px;
	height: 24px;
	border: none;
	outline: none;
	display: block;
}

.business_area_popup_transport_icon span {
	margin: 0;
	padding: 0;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	color: var(--cor11);
	justify-content: center;
	font: 800 16px/24px 'DMSans', sans-serif;
}

.business_area_popup_transport_info {
	gap: 8px;
	min-width: 0;
	display: flex;
	align-items: baseline;
	color: var(--cor39);
}

.business_area_popup_transport_info strong {
	font: 600 15px/23px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 600, 'opsz' 15;
}

.business_area_popup_transport_info span {
	color: var(--cor29);
	font: 400 14px/22px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 14;
}

.business_area_popup_transport_values {
	gap: 6px;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.business_area_popup_transport_values span {
	margin: 0;
	padding: 2px 12px;
	white-space: nowrap;
	border-radius: 16px;
	color: var(--cor39);
	font: 500 13px/21px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 500, 'opsz' 13;
}

.business_area_popup_transport_time {
	background-color: var(--cor13);
}

.business_area_popup_transport_distance {
	background-color: var(--cor47);
}

/* Pop-up empresa */
.company_popup_tags {
	margin: 0;
	padding: 0;
	width: fit-content;
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
}

.company_popup_location {
	display: flex;
	align-items: center;
}

.company_popup_area_tag {
	gap: 8px;
	margin: 0;
	padding: 5px 12px;
	display: flex;
	align-items: center;
	color: var(--cor1);
	justify-content: flex-start;
	background-color: var(--cor11);
	font: 500 12px/20px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 500, 'opsz' 12;
}

.company_popup_area_tag svg {
	margin: 0;
	padding: 0;
	width: 14px;
	height: 14px;
	border: none;
	outline: none;
	display: block;
	fill: var(--cor1);
}

.company_popup_title {
	margin-top: 8px;
}

.company_popup_image {
	margin: 0;
	padding: 16px 24px;
	width: 100%;
	min-height: 210px;
	border: none;
	outline: none;
	display: flex;
	box-sizing: border-box;
	align-items: center;
	justify-content: center;
}

.company_popup_image img {
	margin: 0;
	padding: 0;
	width: auto;
	height: auto;
	display: block;
	max-width: 100%;
	max-height: 190px;
	object-fit: contain;
}

.company_popup .business_area_popup_divider {
	background-color: var(--cor41);
}

/* Pop-up evento */
.event_popup_trigger {
	cursor: pointer;
}

.event_popup_inner {
	gap: 20px;
	max-width: 680px;
}

.event_popup_typology {
	display: block;
}

.event_popup_title {
	margin-top: 4px;
}

.business_area_popup .business_area_popup_image img,
.event_popup_image img {
	height: 350px;
	aspect-ratio: 632 / 350;
	object-position: center;
}

.business_area_popup .business_area_popup_image,
.event_popup_image {
	flex: 0 0 auto;
}

.event_popup_details {
	gap: 12px;
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.event_popup_detail {
	align-items: flex-start;
}

.event_popup_detail > svg {
	margin-top: 2px;
	fill: transparent;
	stroke: var(--cor39);
	stroke-width: 2px;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.event_popup_detail_icon {
	margin: 0;
	padding: 0;
	width: 24px;
	height: 28px;
	display: flex;
	flex: 0 0 24px;
	align-items: center;
	color: var(--cor39);
	justify-content: center;
}

.event_popup_detail_icon i {
	font-size: 20px;
	line-height: 20px;
}

.event_popup_detail a {
	display: block;
}

/* Pop-up vocação do território */
.vocational_popup_inner {
	gap: 24px;
	padding: 40px;
	max-width: 680px;
}

.vocational_popup_title {
	padding-right: 40px;
	font: 600 28px/36px 'DMSans', sans-serif;
	font-variation-settings: 'wght' 600, 'opsz' 28;
}

.vocational_popup .business_area_popup_divider {
	background-color: var(--cor41);
}

.vocational_popup_desc {
	white-space: pre-line;
	font: 400 18px/26px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 18;
}

@media screen and (max-width: 600px) {
	.business_area_popup,
	.company_popup,
	.event_popup,
	.vocational_popup {
		padding: 12px;
	}

	.business_area_popup .business_area_popup_image img,
	.event_popup_image img {
		height: auto;
		aspect-ratio: auto;
		object-fit: contain;
	}

	.business_area_popup_inner {
		gap: 20px;
		padding: 20px;
	}

	.business_area_popup_transport {
		align-items: flex-start;
		grid-template-columns: 24px minmax(0, 1fr);
	}

	.business_area_popup_transport_info {
		gap: 2px;
		align-items: flex-start;
		flex-direction: column;
	}

	.business_area_popup_transport_values {
		grid-column: 2;
		justify-content: flex-start;
	}

	.company_popup_tags {
		width: 100%;
		align-items: flex-start;
		flex-direction: column;
	}

	.company_popup_image {
		min-height: 160px;
	}

	.company_popup_image img {
		max-width: 100%;
		max-height: 140px;
	}

	.vocational_popup_inner {
		gap: 20px;
		padding: 24px;
	}

	.vocational_popup_title {
		font: 600 24px/32px 'DMSans', sans-serif;
		font-variation-settings: 'wght' 600, 'opsz' 24;
	}

	.vocational_popup_desc {
		font: 400 16px/24px 'NewKansas', sans-serif;
		font-variation-settings: 'wght' 400, 'opsz' 16;
	}
}

/* Pop-up mapa */
.map_popup {
	top: 0;
	left: 0;
	margin: 0;
	padding: 24px;
	z-index: 10000;
	width: 100%;
	height: 100%;
	border: none;
	outline: none;
	display: none;
	position: fixed;
	align-items: center;
	box-sizing: border-box;
	justify-content: center;
	background-color: rgba(var(--cor40), 0.45);
}

.map_popup_open {
	display: flex;
}

.map_popup_inner {
	margin: auto;
	padding: 0;
	width: 100%;
	height: 820px;
	max-width: 800px;
	max-height: 100%;
	border: none;
	outline: none;
	display: flex;
	overflow: hidden;
	border-radius: 12px;
	box-sizing: border-box;
	flex-direction: column;
	background-color: var(--cor1);
}

.map_popup_header {
	margin: 0;
	padding: 20px 24px;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	box-sizing: border-box;
	justify-content: space-between;
	border-bottom: 1px solid var(--cor37);
}

.map_popup_header h2 {
	margin: 0;
	padding: 0;
	color: var(--cor39);
	font: 600 24px/32px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 600, 'opsz' 24;
}

.map_popup_close {
	margin: 0;
	padding: 0;
	width: 36px;
	height: 36px;
	border: none;
	outline: none;
	display: flex;
	cursor: pointer;
	border-radius: 50%;
	align-items: center;
	color: var(--cor5);
	justify-content: center;
	background-color: transparent;
	transition: all 0.2s ease;
}

.map_popup_close:hover {
	color: var(--cor1);
	background-color: var(--cor11);
}

.map_popup_close i {
	font-size: 20px;
	line-height: 20px;
}

.interactive_map {
	margin: 0;
	padding: 24px;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	flex: 1;
	min-height: 0;
	overflow: hidden;
	position: relative;
	align-items: center;
	box-sizing: border-box;
	justify-content: center;
}

.interactive_map svg {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	max-width: 539px;
	max-height: 100%;
	border: none;
	outline: none;
	display: block;
	overflow: visible;
	box-sizing: content-box;
}

.interactive_map_path {
	outline: none;
	cursor: pointer;
	fill: var(--cor47);
	stroke: var(--cor1);
	stroke-width: 1px;
	transition: fill 0.2s ease;
}

.interactive_map_path:hover,
.interactive_map_path:focus,
.interactive_map_path_hover,
.interactive_map_path_selected {
	fill: var(--cor11);
}

.interactive_map_path:focus {
	outline: none;
}

.interactive_map_data {
	display: none;
}

.interactive_map_tooltip {
	gap: 6px;
	margin: 0;
	padding: 20px;
	z-index: 2;
	display: none;
	min-width: 180px;
	position: absolute;
	border-radius: 8px;
	align-items: center;
	box-sizing: border-box;
	flex-direction: column;
	pointer-events: none;
	background-color: var(--cor47);
	box-shadow: 0 8px 24px rgba(var(--cor40), 0.08);
}

.interactive_map_tooltip_show {
	display: flex;
}

.interactive_map_tooltip::before {
	top: 100%;
	left: 50%;
	content: '';
	width: 40px;
	height: 28px;
	position: absolute;
	transform: translateX(-50%);
}

.interactive_map_tooltip strong,
.interactive_map_tooltip span {
	margin: 0;
	padding: 0;
	color: var(--cor39);
	text-align: center;
}

.interactive_map_tooltip strong {
	font: 600 16px/24px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 600, 'opsz' 16;
}

.interactive_map_tooltip span {
	font: 400 14px/22px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 400, 'opsz' 14;
}

.map_popup_footer {
	gap: 12px;
	margin: 0;
	padding: 16px 24px;
	width: 100%;
	border: none;
	outline: none;
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	box-sizing: border-box;
	justify-content: flex-end;
}

.map_popup_cancel,
.map_popup_apply {
	margin: 0;
	padding: 12px 24px;
	border: 1px solid var(--cor39);
	outline: none;
	display: flex;
	cursor: pointer;
	min-width: 112px;
	border-radius: 111px;
	align-items: center;
	justify-content: center;
	transition: all 0.2s ease;
	font: 500 16px/24px 'NewKansas', sans-serif;
	font-variation-settings: 'wght' 500, 'opsz' 16;
}

.map_popup_cancel {
	color: var(--cor39);
	background-color: var(--cor1);
}

.map_popup_cancel:hover {
	color: var(--cor1);
	background-color: var(--cor39);
}

.map_popup_apply {
	color: var(--cor1);
	border-color: var(--cor11);
	background-color: var(--cor11);
}

.map_popup_apply:hover {
	color: var(--cor11);
	background-color: var(--cor1);
}

@media screen and (max-width: 600px) {
	.map_popup {
		padding: 12px;
	}

	.map_popup_inner {
		height: 680px;
	}

	.map_popup_header {
		padding: 16px 20px;
	}

	.map_popup_header h2 {
		font: 600 20px/28px 'NewKansas', sans-serif;
		font-variation-settings: 'wght' 600, 'opsz' 20;
	}

	.interactive_map {
		padding: 12px;
	}

	.interactive_map_tooltip {
		padding: 12px;
		min-width: 150px;
	}

	.map_popup_footer {
		padding: 12px 16px 16px;
	}

	.map_popup_cancel,
	.map_popup_apply {
		padding: 10px 18px;
		min-width: 100px;
	}
}
