.presidential-elections {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 15px;
	font-weight: 400;
	margin: 0 0 50px 0
}

.presidential-elections .breadcrumbs {
	display: block;
	margin: 0 0 16px 0;
	padding: 0;
	font-size: 13px;
	list-style-type: none
}

.presidential-elections .breadcrumbs li {
	display: inline
}

.presidential-elections .breadcrumbs li::after {
	content: ">";
	margin: 0 4px 0 4px;
}

.presidential-elections .breadcrumbs li:last-child::after {
	display: none
}

.presidential-elections .breadcrumbs li a {
	text-decoration: none
}

.presidential-elections .breadcrumbs li a:hover {
	text-decoration: underline;
}

.presidential-elections h1 {
	font-weight: 700;
	font-size: 30px;
	text-transform: uppercase;
	margin: 0 0 6px 0
}

.presidential-elections .subtitle {
	font-weight: 700;
	font-size: 18px;
	text-transform: uppercase;
	margin: 0 0 9px 0
}

.presidential-elections .pe-menu {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap
}

.presidential-elections .pe-menu li {
	flex-grow: 1;
	border-right: 1px solid #fff
}

@media (max-width: 639px) {
	.presidential-elections .pe-menu li {
		width: calc(50% - 1px)
	}
}

.presidential-elections .pe-menu li:last-child {
	border-right: 0
}

.presidential-elections .pe-menu li a {
	display: block;
	height: 39px;
	line-height: 39px;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	padding: 0 8px;
	text-align: center;
	-webkit-transition: all 200ms ease-in-out;
	-moz-transition: all 200ms ease-in-out;
	-ms-transition: all 200ms ease-in-out;
	-o-transition: all 200ms ease-in-out;
	transition: all 200ms ease-in-out;
}

.presidential-elections .pe-menu li a:hover {
	color: #fff;
	background-color: #005290;
}

.presidential-elections .pe-menu li a.active {
	color: #fff;
	background-color: #005290;
}

.presidential-elections .pe-menu li a.disabled {
	pointer-events: none;
	opacity: 0.4;
}

.presidential-elections .pe-menu li a {
	background-color: #f2f2f2;
}

.presidential-elections .content {
	position: relative;
	background-color: #ffffff;
	padding: 28px 0 0 0;
	border-bottom: 1px solid #fff;
}

.presidential-elections .content.loading::before {
	display: block;
	position: absolute;
	content: 'sťahujú sa nové výsledky';
	width: 100%;
	padding-top: 31px;
	padding-bottom: 10px;
	text-align: center;
	background-image: url(../../img/election/loading.svg);
	background-position: center 10px;
	background-size: 32px;
	background-repeat: no-repeat;
	background-color: #ffffffdd;
}

@media (max-width: 479px) {
	.presidential-elections .content {
		padding: 28px 0 0 0;
	}
}

.presidential-elections .content .main-btn {
	font-size: 16px;
	border: 0;
	height: 40px;
	line-height: 40px;
	background-color: #eb1c2b;
	color: #fff;
	text-transform: uppercase;
	padding: 0 15px;
	display: block;
	font-weight: bold;
	width: 240px;
	margin: 0 auto;
}

.presidential-elections .content .main-btn:hover {
	background-color: #eb1c2b;
}

.presidential-elections .autocomplete-container {
	position: relative;
	margin: 0 0 19px 0;
	width: 100%;
	overflow: visible;
}

.presidential-elections .autocomplete-container input {
	box-sizing: border-box;
	border: 1px solid #dbdbdb;
	width: 100%;
	padding: 10px;
	font-size: 14px;
	color: #000;
}

.presidential-elections .autocomplete-container input::-webkit-input-placeholder {
  color: #000;
}
.presidential-elections .autocomplete-container input::-moz-placeholder {
  color: #000;
}
.presidential-elections .autocomplete-container input:-ms-input-placeholder {
  color: #000;
}
.presidential-elections .autocomplete-container input:-moz-placeholder  {
  color: #000;
}

.presidential-elections .autocomplete-container ul {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 19;
	width: calc(100% - 4px);
	font-size: 14px;
	background-color: #fff;
	margin: 1px auto 0 auto;
	border-radius: 0;
	border: 1px solid #dfdfdf;
	list-style-type: none;
	max-height: 300px;
	overflow-y: auto;
}

.presidential-elections .autocomplete-container ul li {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	cursor: pointer;
	padding: 4px 12px 4px 12px;
}
.presidential-elections .autocomplete-container ul li:focus {
	background-color: #f2f2f2;
	color: #000;
	outline: none;
}

.presidential-elections .form-group {
	display: flex;
	justify-content: space-between;
	margin-bottom: 35px;
	gap: 20px;
}

@media (max-width: 680px) {
	.presidential-elections .form-group {
		flex-direction: column;
		align-content: center;
		flex-wrap: wrap;
	}
	.presidential-elections .form-group.wide .select {
		max-width: 100%;
		width: 100%;
	}
	.presidential-elections .autocomplete-container {
		max-width: 100%;
	}
}

.presidential-elections .select {
	position: relative;
	min-width: 200px;
	flex-grow: 1;
}
.presidential-elections .select select {
	background-color: #fff;
}
.presidential-elections .select.active select {
	font-weight: 700;
	border-color: #333;
}

.presidential-elections select[disabled] {
	opacity: 0.5;
}

.presidential-elections .select select,
.presidential-elections .filter-input {
	border: 1px solid #dbdbdb;
	font-size: 14px;
	padding: 10px 33px 10px 10px;
	width: 100%;
	border-radius: 0;
}

.presidential-elections .select::after {
	content: '';
	position: absolute;
	pointer-events: none;
	right: 2px;
	top: 5px;
	width: 32px;
	height: 30px;
	line-height: 30px;
	background-image: url("../../img/election/arrow-down.svg");
	background-size: auto 6px;
	background-repeat: no-repeat;
	background-position: center center
}

.presidential-elections .select select .button::after {
	display: none
}

.presidential-elections .region-seo {
	margin-bottom: 15px;
}

.presidential-elections .region-seo ul.region-nav {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	gap: 5px;
}

.presidential-elections ul.region-nav li {
	background-color: #f2f2f2;
	padding: 0 5px 0 5px;
}

.presidential-elections .description {
	margin: 0 0 20px 0
}

.presidential-elections small {
	opacity: 0.7;
	font-size: 12px;
	line-height: 15px;
	display: block;
	margin: 0 0 10px 0;
}

@media (max-width: 639px) {
	.presidential-elections .description {
		padding: 0
	}
}

.presidential-elections .description p {
	margin: 0;
	padding: 0;
	line-height: 1.2em
}

.presidential-elections .notification {
	color: #eb1c2b;
	border: 1px solid #eb1c2b;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	line-height: 1.3em;
	padding: 29px 10px 31px 10px;
	margin: 0 0 8px 0
}


.presidential-elections .result .result-info {
	display: flex;
	list-style-type: none;
	margin: 0 0 50px 0;
	padding: 0;
}

.presidential-elections .result .result-info .result-desc {
	display: flex;
	justify-content: space-between;
	margin: 0 0 2px 0;
}

.presidential-elections .result .result-info .result-desc .result-label {
	font-size: 14px;
	line-height: 24px;
}

.presidential-elections .result .result-info .result-desc .result-percentage {
	font-size: 18px;
	line-height: 24px;
	font-weight: bold;
}
.presidential-elections .presidential-candidate-list .masked {
	position: relative;
	padding: 0 0 20px 0;
	border-top: 1px solid #dbdbdb;
}

.presidential-elections .presidential-candidate-list .masked::after {
	content: '';
	opacity: 0.5;
	top: 0; left: 0; bottom: 0; right: 0;
	position: absolute;
	pointer-events: none;
	background: #fff;
	z-index: 9;
}

.presidential-elections .presidential-candidate-list {
	max-width: 573px;
	margin: 0 auto 40px auto;
}

.presidential-elections .presidential-candidate-list .presidential-candidate {
	display: flex;
	align-items: center;
	margin: 0 0 15px 0;
}

.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-image {
	width: 60px;
	height: 60px;
	margin: 0 13px 0 0;
}

@media (max-width: 639px) {
	.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-image {
		width: 50px;
		height: 50px;
	}
}

.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-image img {
	width: 60px;
	height: 60px;
	border-radius: 50%;
}

@media (max-width: 639px) {
	.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-image img {
		width: 50px;
		height: 50px;
	}
}

.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-result {
	width: calc(100% - 73px);
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-result .presidential-candidate-name {
	font-size: 18px;
	line-height: 30px;
}

@media (max-width: 639px) {
	.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-result .presidential-candidate-name {
		font-size: 15px;
	}
}

.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-result .presidential-candidate-percentage {
	font-size: 18px;
	font-weight: bold;
	line-height: 30px;
}

.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-result .presidential-candidate-indicator {
	width: 100%;
	height: 9px;
	background-color: #f2f2f2;
}

.presidential-elections .presidential-candidate-list .presidential-candidate .presidential-candidate-result .presidential-candidate-indicator div {
	height: 9px;
	background-color: #EB1C2B;
}

.presidential-elections .presidential-candidate-list2 {
	display: flex;
	justify-content: center;
	margin: 0 0 50px 0;
	position: relative;
}

.presidential-elections .presidential-candidate-list2::before {
	content: '';
	background-color: #005290;
	width: 52px;
	height: 35px;
	transform: skew(-20deg);
	position: absolute;
	top: calc(50% - 17px);
	left: calc(50% - 32px);
}

.presidential-elections .presidential-candidate-list2::after {
	content: "vs.";
	font-weight: bold;
	font-size: 30px;
	width: 64px;
	height: 35px;
	text-align: center;
	line-height: 35px;
	position: absolute;
	top: calc(50% - 18px);
	left: calc(50% - 34px);
	color: #fff;
}

@media (max-width: 767px) {
	.presidential-elections .presidential-candidate-list2::before {
		top: 53px;
	}

	.presidential-elections .presidential-candidate-list2::after {
		top: 53px;
	}
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate {
	display: flex;
	align-items: center;
	margin: 0 5px;
	width: calc(50% - 10px);
}

@media (max-width: 767px) {
	.presidential-elections .presidential-candidate-list2 .presidential-candidate {
		flex-wrap: wrap;
	}
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-image {
	width: 160px;
	height: 160px;
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-image img {
	width: 160px;
	height: 160px;
	border-radius: 50%;
}

@media (max-width: 767px) {
	.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-image {
		height: 140px;
		width: 100%;
	}
	.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-image img {
		width: 140px;
		height: 140px;
	}

}

.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-info .presidential-candidate-name {
	line-height: 30px;
	font-size: 20px;
	margin: 0 0 15px 0;
}

@media (max-width: 767px) {
	.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-info .presidential-candidate-name {
		font-size: 14px;
		line-height: 20px;
	}
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-info .presidential-candidate-result {
	color: #757575;
	font-size: 15px;
	line-height: 19px;
	margin: 0 0 3px 0;
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-info .presidential-candidate-percentage {
	display: inline-block;
	background-color: #EB1C2B;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	height: 27px;
	line-height: 27px;
	padding: 0 6px;
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-info .presidential-candidate-name strong {
	display: block;
	font-size: 30px;
}

@media (max-width: 767px) {
	 .presidential-elections .presidential-candidate-list2 .presidential-candidate .presidential-candidate-info .presidential-candidate-name strong {
		 font-size: 20px;
	}
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate:first-child {
	justify-content: flex-end;
}

@media (max-width: 767px) {
	.presidential-elections .presidential-candidate-list2 .presidential-candidate:first-child .presidential-candidate-image {
		order: 1;
		text-align: right;
	}

	.presidential-elections .presidential-candidate-list2 .presidential-candidate:first-child .presidential-candidate-info {
		order: 2;
	}
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate:first-child .presidential-candidate-info {
	margin-right: 25px;
	text-align: right;
}

.presidential-elections .presidential-candidate-list2 .presidential-candidate:last-child .presidential-candidate-image {
	margin-right: 25px;
}

.presidential-elections .maps {
	margin-top: 25px;
	border-top: 1px solid #ddd;
	padding-top: 15px;
}

@media (max-width: 639px) {
	.presidential-elections .result .result-info {
		padding: 0
	}
}

.presidential-elections .result .result-info li {
	width: 50%;
	margin: 0 50px;
}

@media (max-width: 639px) {
	.presidential-elections .result .result-info li {
		margin: 0 10px;
	}
}

@media (max-width: 479px) {
	.presidential-elections .result .result-info {
		display: block;
	}

	.presidential-elections .result .result-info li {
		margin: 0 0 20px 0;
		width: auto;
	}
}



@media (max-width: 639px) {
	.presidential-elections .result .result-info li span {
		display: block;
		font-size: 17px
	}
}

.presidential-elections .result .result-info li .percentage-indicator {
	height: 4px;
	background-color: #d7d7d7
}

.presidential-elections .result .result-info li .percentage-indicator div {
	background-color: #eb1c2b;
	height: 4px;
}

.presidential-candidate .candidate-popup {
	display: none;
	position: absolute;
	background-color: #fff;
	width: 372px;
	max-width: calc(100vh -(50% - 220px));
	z-index: 10;
	padding: 10px 14px 4px 11px;
	left: calc(50% - 220px);
	border-radius: 0;
	border: 1px solid #aeaeae
}

@media (max-width: 479px) {
	.presidential-candidate .candidate-popup {
		left: 0;
		max-width: calc(100% - 27px);
	}
	.presidential-candidate .candidate-popup img {
		display: none;
	}
}

.presidential-candidate:hover .candidate-popup {
	display: flex;
}


.presidential-candidate .candidate-popup::before {
	content: "";
	width: 0;
	height: 0;
	border-top: 9px solid transparent;
	border-bottom: 9px solid transparent;
	border-right: 9px solid #fff;
	position: absolute;
	top: calc(50% - 9px);
	left: -9px;
	z-index: 12;
}

.presidential-candidate .candidate-popup::after {
	content: "";
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-right: 10px solid #aeaeae;
	position: absolute;
	top: calc(50% - 10px);
	left: -10px;
	z-index: 11;
}

.presidential-candidate .candidate-popup img {
	width: 128px;
	height: 128px;
	aspect-ratio: auto;
	margin: 0 10px 10px 0;
	padding: 0;
}

.presidential-candidate .candidate-popup .candidate-popup-data {
	width: 100%;
}

.presidential-candidate .candidate-popup .candidate-popup-name {
	font-weight: 700;
	font-size: 16px;
	margin: 0 0 5px 0
}

.presidential-candidate .candidate-popup .candidate-popup-info {
	width: 100%;
	font-size: 15px;
	line-height: 20px;
	border-collapse: collapse
}

.presidential-candidate .candidate-popup .candidate-popup-info tr td {
	padding: 0 0 5px 0
}

.presidential-candidate .candidate-popup .candidate-popup-info tr td:last-child {
	text-align: right;
	color: #000;
	font-weight: bold;
}

.presidential-elections .map-content h2,
.presidential-elections .election-seats h2 {
	text-align: center;
	font-size: 18px;
	text-transform: uppercase;
	font-weight: 700;
	margin: 0 0 18px 0
}
.presidential-elections .map-content .select {
	margin: 0 auto 15px auto;
}

.presidential-elections .map-content .map {
	margin: 0 0 64px 0;
	position: relative
}

.presidential-elections .map-content .map svg {
	max-width: 100%;
	height: auto;
	display: block
}

.presidential-elections .map-content .map svg path {
	transition: fill 200ms;
	transition: filter 200ms;
	cursor: pointer;
	stroke: #aaa;
}

.presidential-elections .map-content .map svg path:hover {
	stroke: #555;
	stroke-width: 3px;
	fill-opacity: 0.5;
}
.presidential-elections .map-content .map svg path:focus {
	outline: none;
	stroke-width: 3px;
	stroke: #333;
	fill-opacity: 0.3;
}

.presidential-elections .map-content .map svg line.line {
	stroke: #fff;
	stroke-width: 3px;
}

.presidential-elections .map-content .map svg line.line-shadow {
	stroke: #aeaeae;
	stroke-width: 7px;
	stroke-linecap: round;
}

.presidential-elections .map-content .map .map-legend {
	margin: 0 auto;
	padding: 30px 0 0 0;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	max-width: 550px
}

.presidential-elections .map-content .map .map-legend li {
	width: 110px
}

.presidential-elections .map-content .map .map-legend li span {
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: middle;
	border-radius: 4px;
	margin: -3px 6px 0 0
}

.presidential-elections .map-content .map .map-tooltip {
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 90%;
	font-size: 15px;
	background-color: #fff;
	z-index: 10;
	padding: 5px 14px 9px 14px;
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	border-radius: 0;
	border: 1px solid #aeaeae;
	overflow-x: auto;
	display: none
}
@media (max-width: 600px) {
	.presidential-elections .map-content .map .map-tooltip {
		left: 0;
	}
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-top-left {
	font-weight: 700;
	font-size: 16px
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-top-right {
	font-size: 14px;
	color: #eb1c2b;
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-info {
	table-layout: fixed;
	width: 100%;
	border-collapse: collapse;
	margin: 5px 0 0 0;
	padding: 0;
	line-height: 1.2em;
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-info tr td:first-child {
	width: auto;
	max-width: 300px;
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-info tr td:first-child span {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 100%;
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-info tr td:nth-child(2) {
	width: 50px;
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-info tr td:last-child {
	width: 150px;
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-info tr td .tooltip-indicator {
	height: 16px;
}

.presidential-elections .map-content .map .map-tooltip .tooltip-content .tooltip-info tr td .tooltip-indicator div {
	height: 16px;
	border-radius: 2px;
}

.presidential-elections .map-content .map .map-tooltip.active {
	display: block
}

.presidential-elections .election-seats {
	display: flex;
	flex-direction: column;
	margin-bottom: 15px;
}
.presidential-elections .election-seats .chooser {
	display: flex;
	flex-direction: column;
	align-self: center;
}
.presidential-elections .election-seats .chooser h3 {
	text-align: center;
	margin-bottom: 15px;
}
.presidential-elections .election-seats .chooser .subjects {
	display: flex;
	max-width: 650px;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 15px;
}
.presidential-elections .election-seats .chooser .subjects label {
	display: flex;
	flex-direction: row;
	align-items: center;
	cursor: text;
	padding: 0 5px;
	height: 1.4em;
}
.presidential-elections .election-seats .chooser .subjects label input {
	appearance: none;
}
.presidential-elections .election-seats .chooser .subjects label span {
	display: inline-block;
	width: 280px;
}
.presidential-elections .election-seats .chooser .subjects label.clickable {
	cursor: pointer;
	color: #000;
	font-weight: normal;
	text-shadow: none;
}
.presidential-elections .election-seats .chooser .subjects label i {
	margin: 0 5px 0 0;
}
.presidential-elections .election-seats .chooser .subjects label.clickable:hover {
	color: #eb1c2b;
}
.presidential-elections .election-seats .chooser .subjects label.clickable i {
	position: relative;
	display: inline-block;
	border: 0;
	width: 15px;
	height: 15px;
	border: 1px solid #dfdfdf;
	vertical-align: middle;
}
.presidential-elections .election-seats .chooser .subjects label.clickable i::after {
	content: '';
	position: absolute;
	display: block;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: #fff;
}
.presidential-elections .election-seats .chooser .subjects label.active.clickable i::after {
	background-color: transparent;
	border: 2px solid #fff;
}

.presidential-elections .election-seats .graph {
	margin: 10px
}
.presidential-elections .election-seats .graph .seats {
	stroke: #00000070;
	stroke-width: 1px;
}

@media (max-width: 479px) {
	.presidential-elections .result .result-graph .result-graph-row {
		padding: 0;
	}

	.presidential-elections .result .result-graph .result-graph-row .candidate-percentage-indicator {
		width: 100%;
		padding: 0;
	}
	.presidential-elections .result .result-graph .result-graph-row .candidate-percentage-indicator .candidate-percentage {
		background: #ffffffcc;
		backdrop-filter: blur(10px);
	}
	.presidential-elections .content.loading::after {
		font-size: 20px;
	}
	.presidential-elections .election-seats .chooser .subjects {
		width: 100%;
		max-width: 0;
	}
}