
.map__dropdown {
	position: absolute;
	top: 40px;
	left: 40px;
	display: flex;
	flex-wrap: wrap;
	background: white;
	width: 400px;
	max-height: calc(100% - 100px);
	/*height:40px;*/
}
@media(max-width:767px){
    .map__dropdown {
    	top: 0px;
    	left: 0px;
    	width: 100%;
    	border-left:1px solid #A1A4AC;
    	border-right:1px solid #A1A4AC;
    	border-top:1px solid #A1A4AC;
    	z-index:1000;
    	
    	max-height: calc(100% - 100px);
    }
    #map {
        margin-top:40px;
        height:calc(100% - 20px) !important;
    }
}
.service-active .map__dropdown {
	display:none;
}
@media(max-width:767px){
    .service-active .map__dropdown {
    	display:flex;
    }
}
.map__dropdown.active {
	/*height: 100%;*/
}
@media(max-width:767px){
    .map__dropdown.active {
        height: calc(100% - 100px);
    }
}
.map__dropdownHeader {
	width: 100%;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 13px;
	padding: 11px 18px;
	border-bottom: 1px solid #A1A4AC;
	cursor:pointer;
	flex-shrink:1;
}
.map__dropdownHeader::before {
	content: "";
	position: absolute;
	top: 10px;
	right: 19px;
	display: block;
	width: 15px;
	height: 15px;
	border-right: 1px solid black;
	border-bottom: 1px solid black;
	transform: rotate(45deg);
	transform-origin: 11px 11px;
}
.map__dropdown.active .map__dropdownHeader::before  {
	transform: rotate(225deg);
}

.map__dropdownContent {
	display: flex;
	flex-wrap: wrap;
	max-height: calc(100vh - 425px);
	overflow-y: auto;
	display:none;
	flex-grow:1;
}
@media(max-width:767px){
    .map__dropdownContent {
        height: calc(100% - 40px);
    }
}
.map__dropdown.active .map__dropdownContent {
	display:flex;
}
.map__dropdownContentItem {
	position:relative;
	color: black;
	text-decoration: none;
	font-size: 15px;
	font-weight: 700;
	padding: 10px 20px 10px 40px;
	border-bottom: 1px solid #A1A4AC;
	width: 100%;
	cursor:pointer;
}
.map__dropdownContentItem:hover {
	color:white;
}

.map__dropdownContentItem::before {
	content: "";
	display: inline-block;
	height: 11px;
	width: 11px;
	position: absolute;
	top: 15px;
	left: 19px;
}

.map__dropdownContentItem.red:before {
	background:#DA5283;
}
.map__dropdownContentItem.green:before {
	background:#ABB436;
}
.map__dropdownContentItem.amber:before {
	background:#EBA800;
}


.map__dropdownContentItem.red:hover {
	background:#DA5283;
}
.map__dropdownContentItem.green:hover {
	background:#ABB436;
}
.map__dropdownContentItem.amber:hover {
	background:#EBA800;
}


.map__dropdownContentItem.red:hover:before {
	background:#FF3636;
}
.map__dropdownContentItem.green:hover:before {
	background:#A2FF36;
}
.map__dropdownContentItem.amber:hover:before {
	background:#FFC135;
}


#map .gm-style-iw-tc {
  display: none;
}

#map .gm-ui-hover-effect {
  display: none !important;
}

#map .gm-style-iw {
    border-radius: 0px;
    box-shadow: none;
    background: rgba(0,0,0,0.5);
    padding: 20px !important;
}

#map .gm-style-iw-d {
	color: white;
	border-left: 5px solid #E1242A;
	padding-left: 5px;
	overflow: hidden !important;
}

#map .gm-style-iw-d p {
	margin: 4px 0px;
}

#map .gm-style-iw-d p:first-child {
  font-weight: bold;
  font-size: 15px;
}

#map .gm-style-iw-d p:last-child {
  font-weight: bold;
  font-size: 12px;
}





.serviceDetail__container {
    display:none;
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
}
.service-active .serviceDetail__container {
    display:block;   
}
@media(max-width:767px){
    .serviceDetail__container {
    	top: 60px;
    	left: 20px;
    	right: 20px;
    	bottom: 0px;
    }
}
.serviceDetail {
	background: rgba(0,0,0,0.5);
	display: none;
	position: absolute;
	top: 30px;
	left: 30px;
	right: 30px;
	max-height: calc(100% - 63px);
	overflow-y: auto;
}
@media(max-width:767px){
    .serviceDetail {
    	top: 60px;
    	left: 0px;
    	right: 0px;
    	bottom: 0px;
    	overflow-y: initial;
    }
}
.serviceDetail__scroll {
    overflow-y:auto;
    max-height:100%;
	padding: 30px;
	position:relative;
}
.serviceDetail * {
	color: white;
}
.serviceDetail h2, .serviceDetail .h2 {
	margin-top: 0px;
	margin-bottom: 0px;
}

.serviceDetail__row {
	display: flex;
}
@media(max-width:767px){
    .serviceDetail__row {
    	flex-wrap:wrap;
    }
}

.serviceDetail__row--header {
	justify-content: flex-start;
    align-items: flex-end;
}
.serviceDetail__row--header:first-child {
	margin-bottom: 17px;
	justify-content: space-between;
}
@media(max-width:767px){
    .serviceDetail__row--header:first-child {
        margin-top: 20px;
    }
}
.serviceDetail__row.serviceDetail__row--header .serviceDetail__pop {
	flex-grow: 1;
}
.serviceDetail__row.serviceDetail__row--header .serviceDetail__pop:first-child {
	min-width: 300px;
	flex-basis: 300px;
	flex-grow: 0;
}
@media(max-width:767px){
    .serviceDetail__row.serviceDetail__row--header .serviceDetail__pop:first-child {
        margin-bottom:15px;   
    }
}
.serviceDetail__row--footer {
	justify-content:flex-end;
}
.serviceDetail__row:not(.serviceDetail__row--header):not(.serviceDetail__row--footer) {
	margin-top: 25px;
	padding-top: 17px;
	border-top: 1px solid white;
}


.serviceDetail__controls {
	display: flex;
}
.serviceDetail__controls.mobile {
    display:none;
}
@media(max-width:767px){
    .serviceDetail__controls {
    	display:none;
    }
    .serviceDetail__controls.mobile {
    	display: flex;
    	position: absolute;
    	top: -60px;
    	left: 0px;
    	right: 0px;
    	justify-content: space-between;
    }
    .serviceDetail__date {
	    position: absolute;
    	top: 20px;
    	right: 20px;
    }
}
.serviceDetail__controls input[type="checkbox"] {
	opacity: 0;
	position: absolute;
	top: -9000em;
	left: -9000em;
}
.serviceDetail__controls input[type="checkbox"] + label {
	padding: 13px 20px;
	text-transform: uppercase;
	font-weight: 700;
	line-height: 1;
	display: inline-block;
	border: 2px solid white;
	border-radius: 50px;
	margin-right: 30px;
	padding-right: 47px;
	position: relative;
	cursor:pointer;
}
.serviceDetail__controls input[type="checkbox"] + label::after {
	content: "";
	display: block;
	position: absolute;
	top: 8px;
	right: 14px;
	border: 2px solid white;
	height: 21px;
	width: 21px;
	border-radius: 30px;
}
.serviceDetail__controls input[type="checkbox"]:checked + label::after,
.serviceDetail__controls input[type="checkbox"] + label:hover:after {
	background: #E1242A;
	border-color:#E1242A;
}
.serviceDetail__controls input[type="checkbox"] + label::before {
	content: "";
	display: block;
	height: 13px;
	width: 13px;
	position: absolute;
	top: 13px;
	right: 18px;
	display: none;
	background: url(/images/tick.png) no-repeat center center;
	z-index: 100;
}
.serviceDetail__controls input[type="checkbox"]:checked + label:before {
	display:block;
}


.serviceDetail__pop p {
	margin: 0px;
}
.serviceDetail__pop p:first-child {
	font-weight: 600;
}
.serviceDetail__pop p:last-child {
	font-size: 30px;
	font-weight: 700;
	color: #E1242A;
	line-height: 1;
}
.serviceDetail__date p {
	margin: 0px;
}

.serviceDetail__dataHeader {
	min-width: 300px;
	flex-basis: 300px;
}
.serviceDetail__data {
	flex-grow: 1;
}

.serviceDetail__lozengeList {
	font-size: 0;
}
@media(max-width:767px){
    .serviceDetail__lozengeList {
    	margin-top: 17px;
    }
}
.serviceDetail__lozengeList .btn {
	margin-right: 17px;
	font-size: 15px;
	text-transform: initial;
	font-weight: 400;
	margin-bottom: 17px;
}
@media(max-width:767px){
    .serviceDetail__lozengeList .btn {
        width:100%;
        text-align:center;
    }
    .serviceDetail__lozengeList .btn strong {
        padding-bottom:5px;
    }
    .serviceDetail__row--footer .btn.btn-white {
    	background: white;
    	color: #E1242A;
    	width: 100%;
    	text-align: center;
    	margin-top: 20px;
    }
}


.comparisonList__container {
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	
	display:none;
	z-index:100000;
}

.show-comparison .comparisonList__container {
	display:block;
}
.comparisonList table {
	width: 100%;
}
@media(max-width:767px){
    .comparisonList table,.comparisonList tbody {
    	max-width: 100%;
    	display:block;
    }
}
.comparisonList tr {
	cursor:pointer;
}
.comparisonList tr:nth-child(2n),
.comparisonList thead tr:nth-child(2n+1) {
	background:#EDF2F4;
}
.comparisonList tr:nth-child(2n+1) {
	background:#F6F9FA;
}
.comparisonList tr:hover {
	background:white !important;
}

.comparisonList th, 
.comparisonList td {
	padding-top: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	padding-left: 20px;
	padding-right: 20px;
}
.comparisonList th {
	font-weight: 600;
	vertical-align: bottom;
	text-align: left;
	color:#34373F;
	border-top:1px solid rgba(0,0,0,0.1);
}
.comparisonList td {
	color:#34373F;
	font-weight:700;
	vertical-align: top;
}
.comparisonList th:first-child, .comparisonList td:first-child {
	padding-left: 40px;
}
.comparisonList th:last-child, .comparisonList td:last-child {
	padding-right: 40px;
}

.comparisonList td.comparisonList__pop,
.comparisonList td.comparisonList__childPop{
	font-size: 15px;
	color: #000000;
}
.comparisonList td.comparisonList__privateProvider {
	min-width: 130px;
}
.comparisonList td.comparisonList__communityInterest {
	min-width: 130px;
}
.comparisonList td.comparisonList__compare {
	vertical-align: middle;
	text-align:right;
	min-width:70px;
}
.comparisonList td.comparisonList__mobileButton {
    display:none;
}
.comparisonList td strong {
    display:none;
}
@media(max-width:767px){
    
    .comparisonList thead {
        display:none;
    }
    .comparisonList td {
        display:flex !important;
        border-bottom: 1px solid white;
    }
    .comparisonList tr {
        display:block;
        position:relative;
        padding-top:50px;
        background:#EDF2F4 !important;
    }
    .comparisonList tr:nth-child(2n):hover,
    .comparisonList thead tr:nth-child(2n+1):hover {
    	background:#EDF2F4 !important;
    }
    .comparisonList tr:nth-child(2n+1):hover {
    	background:#EDF2F4 !important;
    }
    .comparisonList th:first-child, .comparisonList td:first-child {
    	padding-left: 20px;
    }
    .comparisonList th:last-child, .comparisonList td:last-child {
    	padding-right: 20px;
    }
    .comparisonList td strong {
    	display: block;
    	width: 100px;
    	min-width: 140px;
    	max-width: 140px;
    	font-weight: 600;
    	padding-right: 20px;
    	font-size: 13px;
    	color: #34373F;
    }
    .comparisonList td.comparisonList__mobileButton .btn {
        background: white;
        color: #E1242A;
        width: 100%;
        text-align: center;
        margin-top: 20px;
    }
}
.lozenge {
	background: rgba(161, 164, 172, 0.1);
	border-radius: 20px;
	font-size: 10px;
	font-weight: 600;
	margin-right: 10px;
	padding: 3px 10px;
	line-height: 1;
	display: inline-block;
	margin-bottom:3px;
}
.comparisonList__compare input {
	position: absolute;
	top: -9000em;
	left: -9000em;
	opacity: 0;
}
.comparisonList__compare input + label {
	font-size: 0;
	padding:0px;
	line-height: 1;
	display: inline-block;
	position: relative;
	height: 12px;
	cursor:pointer;
}
.comparisonList__compare input + label::after {
	content: "";
	display: block;
	position: absolute;
	top: -10px;
	right: 0px;
	border: 2px solid white;
	height: 21px;
	width: 21px;
	border-radius: 30px;
}
.comparisonList__compare input:checked + label::after,
.comparisonList__compare input + label:hover:after {
	background: #E1242A;
	border-color:#E1242A;
}
.comparisonList__compare input + label::before {
	content: "";
	display: block;
	height: 13px;
	width: 13px;
	position: absolute;
	top: -5px;
	right: 4px;
	display: none;
	background: url(/images/tick.png) no-repeat center center;
	z-index: 100;
}
.comparisonList__compare input:checked + label:before {
	display:block;
}
.comparison-remove-mouseover .comparisonList__compare input + label::after {
	background:#A1A4AC;
	border-color:#A1A4AC;
}
.comparison-remove-mouseover .comparisonList__compare input + label:hover:after {
	background: #E1242A;
	border-color:#E1242A;
}
.comparison-remove-mouseover .comparisonList__compare input + label:hover:before {
	background: url(/images/minus.png) no-repeat center center;
	top:-6px;
}

@media(max-width:767px){
    
    .comparisonList td.comparisonList__compare {
        position: absolute;
        top: 0px;
        right: 0px;
        border-bottom:0px;
    }
    .comparisonList__compare input + label {
    	font-size: 13px;
    	text-transform: uppercase;
    	color: white;
    	background: rgba(0,0,0,0.5);
    	height: 40px;
    	line-height: 40px;
    	padding: 0px 50px 0px 20px;
    	border-radius: 30px;
    }
    .comparisonList__compare input + label::before {
    	top: 13px;
    	right: 16px;
    }
    .comparisonList__compare input + label::after {
    	top: 9px;
    	right: 12px;
    }
    .comparison-remove-mouseover .comparisonList__compare input + label:hover:before {
    	top:13px;
    }
    
}

.comparisonList .sort::after {
  content: "";
  display: inline-block;
  height: 8px;
  width: 8px;
  border-right: 2px solid red;
  border-bottom: 2px solid red;
  transform: rotate(45deg);
  position: relative;
  left: 20px;
  transform-origin: 5px 5px;
}
.comparisonList .sort:not(.asc):not(.desc):after {
	border-color:#A1A4AC;
}

.comparisonList .sort.asc::after {
  transform: rotate(225deg);
}


#clickBoxArea {
	position: absolute;
	top: -4px;
	right: 10px;
	width: 490px;
	height: 160px;
	background: white;
	border: 2px dashed black;
	opacity: 0.5;
	overflow-y: scroll;
	padding-bottom: 37px;
	
	/* TO HIDE OR SHOW CLICKABLE AREA TOOL */
	display:none;
}
#clickBoxArea pre {
	white-space: break-spaces;
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 30px;
	margin: 0px;
	padding: 7px;
	overflow: scroll;
	font-size: 12px;
}
#clickBoxArea button {
	position: absolute;
	left: 6px;
	bottom: 6px;
}