/* symbols */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url(../font/roboto-symbols.woff2) format('woff2');
  unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url(../font/roboto-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url(../font/roboto-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url(../font/roboto-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url(../font/roboto-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
* {
	--text-color: #333;
	--light-color: #666;
	--white-color: #fff;
	--accent-color: #621f4c;
	--alpha-accent-color: #621f4c88;
	box-sizing: border-box;
	font-family: 'Roboto', sans-serif;
	font-optical-sizing: auto;
	font-size: 16px;
	font-style: normal;
	font-variation-settings:
    	"wdth" 100;
	font-weight: normal;
	line-height: 1;
}
a {
	color: var(--accent-color);
	text-decoration: none;
}
a:active,
a:focus,
a:hover {
	text-decoration: underline;
}
body {
	align-items: center;
	background: var(--white-color);
	color: var(--text-color);
	display: flex;
	flex-flow: column nowrap;
	gap: 0;
	font-family: 'Roboto', sans-serif;
	justify-content: center;
	min-height: 100vh;
	overflow: hidden;
}
button {
	background: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
}
img {
	height: auto;
	max-width: 100%;
	width: auto;
}
.dropup .dropup-menu {
	display: none;
}
.interactive {
	align-items: stretch;
	background: #0000001A;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(204, 204, 204, 1) 100%);
	display: flex;
	flex-flow: column nowrap;
	gap: 0;
	height: 1080px;
	justify-content: center;
	overflow: hidden;
	position: relative;
	transform-origin: center top;
	width: 1920px;
	z-index: 0;
}
.interactive .wrapper {
	align-items: stretch;
	display: grid;
	gap: 0;
	grid-template-areas: 'wrapper';
	grid-template-columns: 100%;
	grid-template-rows: 100%;
	justify-content: stretch;
	height: 980px;
}
.interactive .wrapper .content {
	align-items: stretch;
	background: #0000001A;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(204, 204, 204, 1) 100%);
	display: flex;
	flex-flow: column nowrap;
	gap: 0;
	justify-content: center;
	overflow: hidden;
	position: relative;
}
.interactive .wrapper .content .content-header .h1{
	letter-spacing: -.009em;
}
.interactive .wrapper .content .content-header .h1::before {
	background: var(--accent-color);
	content: '';
	display: block;
	position: relative;
}
.interactive .wrapper .content .content-header .h1 .line {
	display: block;
	transform-origin: left center;
}
.interactive .wrapper .content .content-header .h1 .light {
	color: var(--light-color);
	font-weight: 200;
}
.interactive .wrapper .content .content-header .h1 .medium {
	color: var(--text-color);
	font-weight: 500;
}
.interactive .wrapper .content#home .content-header {
	left: 0;
	padding: 100px 140px 0;
	position: absolute;
	right: 0;
	top: 0;
}
.interactive .wrapper .content#home .content-header .h1 {
	font-size: 75px;
	line-height: 1;
	padding: 32px 40px;
}
.interactive .wrapper .content#home .content-header .h1::before {
	height: 12px;
	left: -40px;
	width: 278px;
	top: -32px;
}
.interactive .wrapper .content#home .content-main {
	background:url(../img/home-content-background.webp) scroll no-repeat bottom center;
	background-size: 100% auto;
	flex-grow: 1;
}
.interactive .wrapper .content#home .content-main #login {
	bottom: 0;
	display: block;
	height: 654px;
	left: 1126px;
	overflow: hidden;
	position: absolute;
	text-indent: -200%;
	top: auto;
	width: 457px;
}
.interactive .wrapper .content#home .content-main #login::before {
	background: url(../img/login-arrow.webp) scroll no-repeat center center;
	background-size: 100%;
	content: '';
	height: 137px;
	position: absolute;
	top: 145px;
	right: 10px;
	width: 97px;
}
.interactive .wrapper .content#home .content-main #login:active::before,
.interactive .wrapper .content#home .content-main #login:focus::before,
.interactive .wrapper .content#home .content-main #login:hover::before {
	animation: shakeX 5s ease-in-out 0s infinite normal both;
}
.interactive .wrapper .content#main .content-header,
.interactive .wrapper .content#main .content-footer {
	display: flex;
	gap: 0;
	justify-content: space-between;
	left: 0;
	position: absolute;
	right: 0;
	width: 100%;
	z-index: 1;
}
.interactive .wrapper .content#main .content-header {
	align-items: flex-start;
	height: 0;
	top: 0;
}
.interactive .wrapper .content#main .content-header .h1 {
	font-size: 28px;
	line-height: 1;
	margin: 50px 0 0 50px;
	padding: 13px 18px;
}
.interactive .wrapper .content#main .content-header .h1::before {
	height: 5px;
	left: -18px;
	width: 104px;
	top: -13px;
}
.interactive .wrapper .content#main .content-header #back {
	background: url(../img/back-arrow.webp) scroll no-repeat center center;
	background-size: 100%;
	display: block;
	height: 59px;
	margin: 25px 25px 0 0;
	overflow: hidden;
	position: relative;
	transition: transform .2s ease-in-out;
	text-indent: -200%;
	width: 58px;
}
.interactive .wrapper .content#main .content-header #back:active,
.interactive .wrapper .content#main .content-header #back:focus,
.interactive .wrapper .content#main .content-header #back:hover {
	transform: scale(.9) !important;
}
.interactive .wrapper .content#main .content-main {
	background:url(../img/main-content-background.webp) scroll no-repeat bottom center;
	background-size: 100% auto;
	flex-grow: 1;
}
.interactive .wrapper .content#main .content-main .logo {
	margin: 175px 0 0 50px;
}
.interactive .wrapper .content#main .content-footer {
	align-items: flex-end;
	bottom: 0;
	height: 0;
	overflow: visible;
	padding: 0 110px;
}
.interactive .wrapper .content#main .content-footer .dropup {
	align-items: stretch;
	background: var(--alpha-accent-color);
	background: linear-gradient(180deg, var(--alpha-accent-color) 98px, var(--accent-color) 100%);
	color: var(--white-color);
	display: flex;
	flex-flow: column nowrap;
	gap: 0;
	justify-content: flex-start;
}
.interactive .wrapper .content#main .content-footer .dropup#rutas {
	/*width: 550px;*/
	width: 440px;
}
.interactive .wrapper .content#main .content-footer .dropup#infraestructuras {
	width: 440px;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle {
	align-items: flex-start;
	color: var(--white-color);
	display: flex;
	flex-flow: row nowrap;
	font-size: 28px;
	font-weight: 500;
	gap: 0;
	justify-content: space-between;
	line-height: 1;
	min-height: 92px;
	text-align: left;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle::after,
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle::before {
	flex: auto 0 0;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle::after {
	background: url(../img/toggle-arrow.webp) scroll no-repeat center center;
	content: '';
	display: block;
	height: 18px;
	margin: 22px 22px;
	transition: transform .2s ease-out;
	width: 42px;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle:active::after,
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle:focus::after,
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle:hover::after {
	transform: scale(.9);
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle::before {
	align-items: flex-end;
	background: var(--accent-color);
	display: flex;
	flex-flow: row nowrap;
	font-size: 32px;
	height: 40px;
	justify-content: flex-end;
	padding: 5px;
	width: 40px;
}
.interactive .wrapper .content#main .content-footer .dropup#rutas .dropup-toggle::before {
	content: '1';
}
.interactive .wrapper .content#main .content-footer .dropup#infraestructuras .dropup-toggle::before {
	content: '2';
}
.interactive .wrapper .content#main .content-footer .dropup.active .dropup-toggle::after {
	transform: scale(1, -1);
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-toggle .title {
	flex: auto 1 1;
	padding: 18px 12px;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: -.009em;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item {
	align-items: center;
	display: grid;
	gap: 0 18px;
	grid-template-areas: 'counter link' 'submenu submenu';
	grid-template-rows: auto;
	justify-content: flex-start;
	padding: 0 18px 20px;
}
.interactive .wrapper .content#main .content-footer .dropup#rutas .dropup-menu .dropup-item {
	/*grid-template-columns: 110px calc(100% - 110px);*/
	grid-template-columns: 26px calc(100% - 26px);
}
.interactive .wrapper .content#main .content-footer .dropup#rutas .dropup-menu .dropup-item .counter {
	grid-area: counter;
	padding: 3px;
	width: 100%;
}
.interactive .wrapper .content#main .content-footer .dropup#infraestructuras .dropup-menu .dropup-item {
	grid-template-columns: 22px calc(100% - 22px);
}
.interactive .wrapper .content#main .content-footer .dropup#infraestructuras .dropup-menu .dropup-item::before {
	align-items: flex-end;
	background: var(--white-color);
	box-sizing: border-box;
	color: var(--accent-color);
	display: flex;
	flex: 22px 0 0;
	flex-flow: row nowrap;
	grid-area: counter;
	height: 22px;
	justify-content: flex-end;
	line-height: 16px;
	padding: 3px;
	width: 100%;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-element {
	color: var(--white-color);
	flex: auto 1 1;
	font-size: 20px;
	font-weight: 500;
	grid-area: link;
	letter-spacing: -.009em;
	max-width: calc(100% - 40px);
	text-align: left;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-element.group {
	text-transform: uppercase;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-element.navigation-link {
	transform-origin: left center;
	transition: transform .2s ease-in-out;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-element.navigation-link:active,
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-element.navigation-link:focus,
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-element.navigation-link:hover {
	transform: scale(1.05);
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-submenu {
	grid-area: submenu;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-submenu .dropup-item {
	font-size: 18px;
	font-weight: 400;
	padding: 0 0 12px 40px;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-submenu .dropup-item:last-child {
	padding-bottom: 0;
}
.interactive .wrapper .content#main .content-footer .dropup .dropup-menu .dropup-item .dropup-submenu .dropup-item .dropup-element {
	font-size: 18px;
	font-weight: 400;
}
.interactive .wrapper .content#main .content-footer .navigation#infraestructuras .navigation-menu {
	counter-reset: item;
}
.interactive .wrapper .content#main .content-footer .navigation#infraestructuras .navigation-menu .navigation-menu-item::before {
	content: counter(item, decimal);
	counter-increment: item;
}
.interactive .wrapper .content#main .content-footer .navigation#infraestructuras .navigation-menu .navigation-menu-item.submenu .navigation-submenu {
	counter-reset: subitem;
	padding-top: 9px;
}
.interactive .wrapper .content#main .content-footer .navigation#infraestructuras .navigation-menu .navigation-menu-item.submenu .navigation-submenu .navigation-submenu-item::before {
	content: counter(subitem, upper-alpha);
	counter-increment: subitem;
}
.interactive .footer {
	align-items: center;
	border-top: 9px solid var(--accent-color);
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	gap: 0;
	height: 100px;
	padding: 15px;
}
.popup {
	bottom: 0;
	display: none;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	transform-origin: center center;
	z-index: 1;
}
.popup .popup-content {
	align-items: center;
	display: flex;
	flex-flow: column nowrap;
	height: 1080px;
	justify-content: center;
	left: 50%;
	gap: 0;
	margin-left: -960px;
	margin-top: -540px;
	padding: 24px 24px 72px;
	position: absolute;
	top: 50%;
	width: 1920px;
}
.popup .popup-content::before {
	background: var(--white-color);
	bottom: 100px;
	content:'';
	left: 0;
	opacity: .5;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 0;
}
.popup .popup-content .popup-close {
	background: url(../img/close.webp) scroll no-repeat center center;
	background-size: 100%;
	display: block;
	height: 45px;
	overflow: hidden;
	transition: transform .2s ease-in-out;
	text-indent: -200%;
	width: 44px;
}
.popup .popup-content .popup-content-inner {
	align-items: flex-start;
	background-attachment: scroll;
	background-color: var(--white-color);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 9px solid var(--accent-color);
	border-radius: 45px;
	display: flex;
	flex: 100% 0 0;
	flex-flow: column nowrap;
	gap: 0;
	height: 100%;
	justify-content: stretch;
	overflow: hidden;
	position: relative;
	width: 100%;
	z-index: 1;
}
.popup .popup-content .popup-content-inner .popup-content-inner-header {
	align-items: flex-start;
	display: flex;
	flex: auto 0 0;
	flex-flow: row-reverse nowrap;
	justify-content: space-between;
	gap: 0;
	padding: 30px;
	width: 100%;
}
.popup .popup-content .popup-content-inner .popup-content-inner-header .popup-logo {
	max-height: 124px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-header .popup-close:active,
.popup .popup-content .popup-content-inner .popup-content-inner-header .popup-close:focus,
.popup .popup-content .popup-content-inner .popup-content-inner-header .popup-close:hover {
	transform: scale(.9) !important;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile {
	align-items: flex-end;
	display: flex;
	flex: auto 0 0;
	justify-content: space-between;
	gap: 30px;
	height: 782px;
	padding: 0 72px;
	width: 100%;
}
.popup.infraestructura .popup-content .popup-content-inner .popup-content-inner-main.profile {
	flex-flow: row-reverse nowrap;
}
.popup.ruta .popup-content .popup-content-inner .popup-content-inner-main.profile {
	flex-flow: row nowrap;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info {
	align-items: flex-start;
	display: flex;
	flex: auto 0 0;
	flex-flow:column nowrap;
	height: 100%;
	justify-content: stretch;
	width: 700px;
}
.popup.infraestructura .popup-content .popup-content-inner .ruta {
	display: none;
}
.popup.ruta .popup-content .popup-content-inner .infraestructura {
	display: none;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-title,
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card {
	width: 100%;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-title {
	color: var(--accent-color);
	flex: auto 0 0;
	font-size: 48px;
	font-weight: 600;
	letter-spacing: -.009em;
	line-height: 1;
	padding: 0 50px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card {
	align-items: stretch;
	background: var(--alpha-accent-color);
	background: linear-gradient(180deg, var(--alpha-accent-color) 98px, var(--accent-color) 100%);
	color: var(--white-color);
	display: flex;
	flex: auto 1 1;
	flex-flow: column nowrap;
	gap: 0;
	justify-content: flex-start;
	padding: 20px 50px 50px;
	position: relative;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-index {
	align-items: flex-end;
	background: var(--accent-color);
	display: flex;
	flex-flow: row nowrap;
	font-size: 32px;
	height: 40px;
	justify-content: flex-end;
	left: 0;
	padding: 5px;
	position: absolute;
	top: 0;
	width: 40px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-taxonomy {
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 20px;
	width: 100%;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-taxonomy .reference,
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-taxonomy .group {
	color: var(--accent-color);
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description {
	font-weight: 500;
	height: 250px;
	line-height: 24px;
	margin-bottom: 20px;
	overflow: hidden;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description p {
	margin-bottom: 30px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description ol {
	list-style: outside decimal;
	padding-left: 30px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description ul {
	list-style: outside disc;
	padding-left: 30px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description.mCustomScrollbar {
	margin-right: -30px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description.mCustomScrollbar .mCustomScrollBox > .mCSB_scrollTools {
	width: 15px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description.mCustomScrollbar .mCustomScrollBox > .mCSB_scrollTools .mCSB_buttonDown {
	background:url(../img/scrolldown-arrow.webp) scroll no-repeat center center;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description.mCustomScrollbar .mCustomScrollBox > .mCSB_scrollTools .mCSB_buttonUp {
	background:url(../img/scrollup-arrow.webp) scroll no-repeat center center;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description.mCustomScrollbar .mCustomScrollBox > .mCSB_scrollTools .mCSB_draggerContainer .mCSB_draggerRail {
	background: var(--white-color);
	border-radius: 0;
	width: 5px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-description.mCustomScrollbar .mCustomScrollBox > .mCSB_scrollTools .mCSB_draggerContainer .mCSB_dragger .mCSB_dragger_bar {
	background: var(--accent-color);
	border-radius: 0;
	width: 9px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery {
	position: relative;
	width: 100%;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-carousel {
	align-items: stretch;
	border: 6px solid var(--white-color);
	display: grid;
	gap: 0;
	grid-template-areas: 'image';
	grid-template-columns: 100%;
	grid-template-rows: 100%;
	height: 356px;
	justify-content: stretch;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-carousel .profile-gallery-slide {
	grid-area: image;
	opacity: 0;
	transition: all 1s ease-in-out;
	z-index: 0;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-carousel .profile-gallery-slide.active {
	cursor: pointer;
	opacity: 1;
	z-index: 1;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-carousel .profile-gallery-slide .profile-gallery-image {
	height: 100%;
	object-fit: cover;
	object-position: center center;
	width: 100%;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-controls {
	width: 100%;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-controls .profile-gallery-control {
	border-style: solid;
	cursor: pointer;
	height: 0;
	overflow: hidden;
	position: absolute;
	transform: rotate(0deg);
	text-indent: -200%;
	top: 50%;
	margin-top: -33px;
	width: 0;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-controls .profile-gallery-control.profile-gallery-control--prev {
	border-color: transparent var(--white-color) transparent transparent;
	border-width: 28px 24px 28px 0;
	left: -30px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-controls .profile-gallery-control.profile-gallery-control--next {
	border-color: transparent transparent transparent var(--white-color);
	border-width: 28px 0 28px 24px;
	right: -30px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-info .profile-card .profile-gallery .profile-gallery-controls .profile-gallery-control.disabled {
	cursor: not-allowed;
	opacity: .5;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-details,
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr {
	margin-bottom: 30px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-details {
	flex: 100% 1 1;
	width: 100%;
}
.popup.infraestructura .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-details {
	gap: 80px 0;
	grid-template-areas: 'qr info';
	grid-template-columns: 305px 1fr;
}
.popup.ruta .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-details {
	gap: 40px 20px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-details .profile-overview {
	margin-bottom: 10px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-details .profile-mide {
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr {
	flex: auto 0 0;
	grid-area: qr;
}
.popup.infraestructura .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr {
	display: grid;
	gap: 10px;
	grid-template-areas: 'title description' 'image description';
	grid-template-columns: 120px 1fr;
	grid-template-rows: 1fr;
	justify-content: space-between;
	width: 300px;
}
.popup.ruta .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr {
	text-align: center;
	width: 170px;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr .profile-qr-title {
	color: var(--accent-color);
	font-size: 18px;
	font-weight: 500;
}
.popup .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr .profile-qr-description {
	font-size: 12px;
	letter-spacing: -.05em;
}
.popup.infraestructura .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr .profile-qr-title {
	grid-area: title;
}
.popup.infraestructura .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr-image {
	grid-area: image;
}
.popup.infraestructura .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr .profile-qr-description {
	grid-area: description;
	text-align: center;
}
.popup.infraestructura .popup-content .popup-content-inner .popup-content-inner-main.profile .profile-qr .profile-qr-description::before {
	background:url(../img/qr.webp) scroll  no-repeat center center;
	content: '';
	display: block;
	height: 116px;
}
.popup.image {
	z-index: 2;
}
.popup.image .popup-content .popup-content-inner .popup-close {
	position: absolute;
	right: 30px;
	top: 30px;
}
.popup.image .popup-content .popup-content-inner .popup-content-image {
	height: 100%;
	object-fit: cover;
	object-position: center center;
	width: 100%;
}