/*! normalize.css v1.0.1 | MIT License | git.io/normalize */
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}
audio,canvas,video{display:inline-block;*display:inline;*zoom:1}
audio:not([controls]){display:none;height:0}
[hidden]{display:none}
html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}
html,button,input,select,textarea{font-family:'Arial', sans-serif;}
body{margin:0}
a:focus{outline:thin dotted}
a:active,a:hover{outline:0}
h1{font-size:2rem;margin:.67rem 0}
h2{font-size:1.5rem;margin:.83rem 0}
h3{font-size:1.17rem;margin:1rem 0}
h4{font-size:1rem;margin:1.33rem 0}
h5{font-size:.83rem;margin:1.67rem 0}
h6{font-size:.75rem;margin:2.33rem 0}
abbr[title]{border-bottom:1px dotted}
b,strong{font-weight:700}
blockquote{margin:1rem 0}
dfn{font-style:italic}
mark{background:#ff0;color:#000}
p,pre{margin:1rem 0}
code,kbd,pre,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1rem}
pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}
q{quotes:none}
q:before,q:after{content:'';content:none}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sup{top:-0.5rem}
sub{bottom:-0.25rem}
dl,menu,ol,ul{margin:1rem 0}
dd{margin:0 0 0 40px}
menu,ol,ul{padding:0 0 0 0}
li{margin: 0 0 10px 0;}
nav ul,nav ol{list-style:none;list-style-image:none}
img{border:0;-ms-interpolation-mode:bicubic}
svg:not(:root){overflow:hidden}
figure{margin:0}
form{margin:0}
fieldset{border:none;margin:0;padding:0}
legend{border:0;padding:0;white-space:normal;*margin-left:-7px}
button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}
button,input{line-height:normal}
button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;*overflow:visible}
button[disabled],input[disabled]{cursor:default}
input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;*height:13px;*width:13px}
input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}
input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
textarea{overflow:auto;vertical-align:top}
table{border-collapse:collapse;border-spacing:0}

/* Standard skipnav configuration */
.skip-to-content{padding: 8px 20px; position: absolute; top: -46px; left: 0px; color: white; border-right: 1px solid white; border-bottom: 1px solid white; border-bottom-right-radius: 8px; background: #BF1722; transition: top .1s ease-out; z-index: 100; z-index: 100000000}
.skip-to-content:focus{position: absolute; left: 0px; top: 0px; outline-color: transparent; transition: top .1s ease-in; }

/* Define the grid layout */
.col{min-height: 20px; padding: 0 15px;}
.col--1wide{width: calc(8.33% - 30px);}
.col--2wide{width: calc(16.66% - 30px);}
.col--3wide{width: calc(25% - 30px);}
.col--4wide{width: calc(33.33% - 30px);}
.col--5wide{width: calc(41.66% - 30px);}
.col--6wide{width: calc(50% - 30px);}
.col--7wide{width: calc(58.33% - 30px);}
.col--8wide{width: calc(66.66% - 30px);}
.col--9wide{width: calc(75% - 30px);}
.col--10wide{width: calc(83.33% - 30px);}
.col--11wide{width: calc(91.66% - 30px);}
.col--12wide{width: calc(100% - 30px);}

/* Standard hidden functionality */
.hidden {display: none !important; visibility: hidden; }
.metainfo{display: none !important;}

/* Ensure all images don't overflow their container */
img{max-width: 100%;}

/* Default iframe configuration */
iframe{width: 100%; height: auto; border: none;}

/* Reveal the page content */
.page{display: block !important;}

/* Warnings, errors and success messages */
.warning{width: calc(100% - 40px); padding: 20px; margin: 0 0 1rem 0; text-align: center; color: #FFF;}
.warning.fail{background-color: #A00; color: #FFF;}
.warning.success{background-color: #0A0; color: #FFF;}
.warning a{color: #FFF; text-decoration: underline;}

/* Mobile test element */
.mobile-test-element{display: none;}

/* Basic Table styles */
table {text-align: left; font-size: 1rem !important; border: 1px solid #1D9EDA;}
table thead tr th{background-color: #1D9EDA; color: #FFF; padding: 10px;}
table tbody tr td{background-color: #FFF; color: #000; padding: 10px; vertical-align: top;}
table tbody tr td a{text-decoration: none;}
table tbody tr:nth-child(odd) td{background-color: #EEE;}
table tbody tr:hover td{background-color: #32465C; color: #FFF;}
table tbody tr:hover td p{color: #FFF;}
table tbody tr:hover td a{color: #FFF;}

.table--fullwidth{width: 100%;}
.table--noborder{border: none;}
.table--bottom-margin{margin-bottom: 3rem;}

/* Mobile */
@media only screen and (max-width: 840px) {
	.col{padding: 0 15px;}
	.col--1wide, .col--2wide, .col--3wide, .col--4wide, .col--5wide, .col--6wide, .col--7wide, .col--8wide, .col--9wide, .col--10wide, .col--11wide, .col--12wide{width: calc(100% - 30px);}
	.mobile-test-element{display: block;}
}

.block{width: 100%; position: relative; background-color: #FFF;}

.block--topline{background-color: #0E0845; color: #FFF;}

.block--header{background-color: #FFF;}

.block--menu{background-color: #EEE;}
.block--content{background-color: #fff;}
.block--footer{background-color: #BBB;}
.block--subfooter{background-color: #AAA;}
.block--cookies{background-color: #999;}
.block--slideshow{background-color: #DDD;}

.block__wrapper{width: 100%;}

/* Cookies */
.block--cookies{position: fixed; width: 100%; height: 100%; text-align: center; top: 0; z-index: 200000; background-color: rgba(100, 100, 100, 0.9); display: none;}
.block--cookies .col--12wide{background-color: #FFF; width: 40%; min-width: 22rem; float: none; padding: 40px 10%; margin: 10% auto 0 auto;}
.block--cookies__logo{margin-bottom: 40px;}
.block--cookies .col--12wide p{width: auto; margin: 20px auto;}
.block--cookies .col--12wide p a{}

.cookies-accept-button{position: relative; }
.cookies-accept-button a{text-transform: uppercase; cursor: pointer; display: inline-block;}
.cookies-accept-button a:hover{transition: background-color 0.2s linear, color 0.2s linear;}

@media only screen and (max-width: 840px){
    .block--cookies .col--12wide{width: calc(100% - 20%); min-width: 0}
    .block--cookies .col--12wide p{width: auto;}
    .block--cookies .cookies-accept-button a{width: 100%; padding: 20px 0 !important;}
}

html{scroll-behavior: smooth;}

.fe-body{color: #000;}
h1, h2, h3, h4, h5, h6, p, li, blockquote{color: inherit;}

.grecaptcha-badge {visibility: hidden;} /* Hiding reCaptcha badge */

/* Basic Image positions */
.image--actual-size{width: auto; height: auto;}
.image--full-width{width: 100%; height: auto;}
.image--left{}
.image--centre{margin: 0 auto; display: block;}
.image--right{margin: 0 0 0 auto; display: block;}

.spec-img p{font-size: 0.8rem !important; text-align: center; font-style: italic; margin-top: 0;}

/* Standard document styling */
.spec-doc a {}

/* Standard IFrame styling */
.spec-video{width: 100%; position: relative; height: 0; padding-top: 56.25%; cursor: pointer;}
.spec-video iframe{width: 100%; height: 100%; position: absolute; top: 0; left: 0;}

blockquote {border-left:2px solid #6a6a6a; color:#6a6a6a; padding-left:20px; margin-left:20px;}



.form{}

input, select, textarea{box-sizing: border-box;}

.form__legend{display: none;}
.form__fieldset{margin: 0; padding: 0; border: none;}

/* Column layout */
.form__column{width: 100%; float: left; display: flex; flex-wrap: wrap;}
.form__column--narrow{width: 33%;}
.form__column--wide{width: 67%;}
.form__column--half{width: 48%;}
.form__column--half + .form__column--half{margin-left: 4%}
.form__column--fullpad{width: calc(100% - 40px); padding: 0 20px;}
.form__column--halfpad{width: calc(50% - 40px); padding: 0 20px;}
.form__column--halfpad-vertical{flex-direction: column;}

/* Form generic elements */
.form__label{text-align: right; width: calc(40% - 15px); line-height: 1.35rem; padding: 5px 10px 5px 5px; margin: 10px 0; display: inline-block; vertical-align: top; font-size: 1rem;}
.form__input{width: calc(60% - 16px); padding: 0 7px; height: 30px; margin: 10px 0; display: inline-block; vertical-align: top; font-size: 1rem; border: 1px solid #CCC;}
.form__select{width: 25%; padding: 0; height: 30px; margin: 10px 0;  display: inline-block; vertical-align: top; font-size: 1rem; border: 1px solid #CCC; float: right;}
.form__textarea{width: calc(60% - 16px); padding: 5px 7px; margin: 10px 0; display: inline-block; vertical-align: top; font-size: 1rem; border: 1px solid #CCC;}
.form__p{font-size: 0.85rem; line-height: 1.2rem;}
.form__p--formheading{margin-bottom: 0;}
.form__input--nomargin{margin: 0 !important;}
.form__select--nomargin{margin: 0 !important; width: auto !important;}
.form__label--leftalign{text-align: left;}

.form__label--vertical{display: block; width: calc(100% - 16px); text-align: left; padding: 0; margin-bottom: 0;}
.form__input--vertical{display: block; width: calc(100% - 16px);}
.form__select--vertical{display: block; width: 100%;}
.form__textarea--vertical{display: block; width: calc(100% - 16px);}

.form__input:required:focus:invalid, .form__select:required:invalid, .form__select:required:focus:invalid, .form__textarea:required:focus:invalid{border: 1px solid rgba(255, 0, 0, 0.4); background: #fff url("../images/exclamation.png") no-repeat 97.5% 50%;}
.form__input:required:valid, .form__input:required:focus:valid, .form__select:required:valid, .form__select:required:focus:valid, .form__textarea:required:valid, .form__textarea:required:focus:valid{border: 1px solid #29BF0D; background: #fff url("../images/tick.png") no-repeat 97.5% 50%;}
.form__select:required:invalid, .form__select:required:valid{background-position: 95% 50% !important;}

.form__select--auto-width{display: block; width: auto;}

/* Form specific elements */
/* Checkboxes */
.form__checkbox{width: 100%; position: relative; padding-bottom: 1rem; }
.form__label--checkbox{width: 95% !important; text-align: left; margin-left: 5% !important; color: #fff; padding: 0;}
.form__input--checkbox{width: calc(5% - 6px); position: absolute; top: 2px; left: 0;}
.form__multicheckbox{display: flex;}
.form__multicheckboxheading{margin-bottom: 0;}
.form__label--multicheckbox{width: calc(90% - 15px); text-align: left;}
.form__input--multicheckbox{width: calc(10% - 2px);}

/* Date selectors */
.form__label--date{}
.form__input--date{}
.form__datepicker{}
.form__label--datetimepicker{}
.form__label--datepicker{}
.form__input--datepicker{}
.form__label--daterangefrom{}
.form__input--daterangefrom{}
.form__label--daterangeto{}
.form__input--daterangeto{}
.form__datetimepicker{}

/* Date & Time picker */
.form__label--timepicker{}
.form__select--dateday{}
.form__select--datemonth{}
.form__select--dateyear{}
.form__select--timehour{}
.form__select--timeminute{}

/* Time picker */
.form__timepicker{}
.form__label--timepicker{}
.form__input--timepicker{}

/* Time */
.form__time{}
.form__label--time{}

/* HTML5 time */
.form__label--html5time{}
.form__input--html5time{}

/* File upload */
.form__label--upload{}
.form__input--upload{}

/* Hidden */
.form__input--hidden{}

/* Month */
.form__label--month{}
.form__input--month{}
.form__select--month{}
.form__select--year{}

/* Multiselect */
.form__label--multiselect{}
.form__select--multiselect{}
.form__select__tip{}

/* Password */
.form__label--password{}
.form__input--password{}

/* Radio buttons */
.form__radio{}
.form__radiooption{}
.form__input--radio{width: auto;}
.form__label--radio{}

/* Spam test field */
.form__covertlabel{display: none;}
.form__covertinput{display: none;}

/* Mobile */
@media only screen and (max-width: 900px) {
}

@media only screen and (max-width: 840px) {
	.form__select--auto-width{margin: 10px auto;}
	.form__p--formheading{text-align: left;}
	.form__multicheckboxheading{text-align: left;}
}

.home-link{cursor: pointer;}

/* Menu specific styles */
.menu{}

.menu--inline {display:inline-block}
.menu--inline li{display: inline-block; margin: 0 20px 0 0;}

.menu__mobile-control{display: none !important; width:20px; position: absolute; top: 20px; right: 20px;}


/* Mobile */
@media only screen and (max-width: 840px) {
	.menu--inline {display: block !important}
	.menu--hidden li {display: none !important;}

	.menu__mobile-control{display: block !important;}
	.menu--hidden li.menu__mobile-control{display: block !important; }
}

/* Overlay */
.overlay{width: 100%; height: 100vh; background: rgba(0, 0, 0, 0.7); position: fixed; z-index: 10000; top: 0; left: 0;}
.overlay__dialog{background:#fff; width: 700px; margin: 0 calc(50% - 350px) 0 calc(50% - 350px); position: fixed; top: 15vh; max-height: 400px; overflow-y: auto; padding: 0; box-shadow: 0 0 15px rgba(255, 255, 255, 0.1)}
.overlay__dialog--wide{width: 80%; max-height: none; left: -40%;}
.overlay__close{position: absolute; top: 10px; right: 10px; font-size: 1.2rem; font-family: 'Arial', sans-serif; color: #111; cursor: pointer;}
.overlay__dialog__header {width:100%; text-align:center; font-size:2em; color: #3F3F3F;}

@media only screen and (max-width: 840px) {
    .overlay__dialog{width: 96vw; margin: 0 2vw; top: 2vh;}
}

/* Underpinning cross site segment styles */
.segment__wrapper{width: 100%; max-width: 1248px; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between;}
.segment__wrapper--wide{width: 100%; max-width: 1600px; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between;}

.segment{padding: 65px 0;}
.segment ul, .segment ol{padding-left: 20px;}

/* Standard Image positions */
.segment img.left{float: left; margin: 0 20px 20px 0; clear: left;}
.segment img.right{float: right; margin: 0 0 20px 20px; clear: right;}
.segment img.block{float: none; margin: 20px auto;}

/* Mobile */
@media only screen and (max-width: 840px) {
	.segment__wrapper{flex-direction: column}
}

/* Slideshow specific styles */
div.blmslideshow{width: 200px; height: 200px; position: relative; overflow: hidden; margin: 0x; display: inline-block}


/* Example Sizes - SHOULD BE REPLACED OR MADE MORE SPECIFIC */
div.blmslideshow.fullwidth{width: 100%; height: 754px; margin: 0;}


div.blmslideshow div.slide{background: transparent center center no-repeat; width: 100%; height: 100%; background-size: cover; position: absolute;}
div.blmslideshow div.slide.clickable{cursor:pointer;}

/* Multiple Slides At Once */
div.blmslideshow.multi {width: 700px; height: 120px}
div.blmslideshow.multi div.slide{position: absolute; width: 20% !important; margin-right: 20px;}
div.blmslideshow.multi div.slide.pos1{left: 0% !important;}
div.blmslideshow.multi div.slide.pos2{left: 20% !important;}
div.blmslideshow.multi div.slide.pos3{left: 40% !important;}
div.blmslideshow.multi div.slide.pos4{left: 60% !important;}
div.blmslideshow.multi div.slide.pos5{left: 80% !important;}

/* Captions */
div.blmslideshow div.slide div.caption{width: calc(422px - 88px); padding: 47px 44px; position: absolute; top: 24%; left: 11.75%; color: #1f1b42; background-color: #fff;}
div.blmslideshow div.slide div.caption h3{margin: 0 0 10px 0; padding: 0; color: #1f1b42; text-transform: uppercase; font-size: 2.15rem; line-height: 2.6rem; font-weight: 600;}
div.blmslideshow div.slide div.caption p{margin: 0; padding: 0; color: #1f1b42; letter-spacing: 0.18rem; font-size: 1.2rem; text-transform: uppercase;}
div.blmslideshow div.slide div.caption .button--slideshow{}
div.blmslideshow div.slide div.caption .button--slideshow:hover{background-color: #60B53E; /*background-image: url('../images/arrow-right-blue.png');*/}

/* Arrows */
div.blmslideshow a.arrows{position: absolute; top: 50%; margin-top: -20px; z-index: 2000; font-weight: bold; color: white; cursor: pointer;}
div.blmslideshow a.arrows.previous{left: 5px;}
div.blmslideshow a.arrows.next{right: 5px;}
div.blmslideshow .arrows_previcon{height: 40px;}
div.blmslideshow .arrows_nexticon{height: 40px;}

/* Indicators */
div.blmslideshow ul.indicators{list-style-type: none; position: absolute; bottom: 20px; left: 50px; z-index: 2000; margin: 0; padding: 0;}
div.blmslideshow ul.indicators li{list-style-type: none; width: 9px; height: 9px; border-radius: 50%; display: inline-block; background: rgba(200, 200, 200, 0.2); border: 2px solid rgb(255 255 255); z-index: 2001; margin: 0 15px 0 0; box-shadow: 0 0 6px 3px rgba(74,144,226,0), 0 1px 4px 0 rgba(0,0,0,0.5);}
div.blmslideshow ul.indicators li:hover{cursor: pointer;}
div.blmslideshow ul.indicators li.selected{animation: indicators-fadein 2s; animation-fill-mode: forwards;}	
@keyframes indicators-fadein{
	100% { background: #FFF; border: 2px solid #FFF;}
}

/* Jump Arrow */
.scroll-down-container{position: absolute; left: calc(50% - 46px); bottom: 0; z-index: 10000; background-color: #1F1B42; padding: 25px 30px 19px 30px; cursor: pointer; transition: background-color 0.2s linear, color 0.2s linear;}
.scroll-down-container:hover{background-color: #60B53D;}
.scroll-down-container__arrow{display: inline-block; text-decoration: none; text-align: center;}

/* Transition into first slide */
div.blmslideshow div.slide1 {animation: slide-fadein 0.5s; opacity: 0; animation-fill-mode: forwards;}					
@keyframes slide-fadein{
	0%   { opacity: 0; }
	100% { opacity: 1; }
}

div.blmslideshow div.slide1 div.caption{animation: slide-slide1-captionanim 0.5s; animation-delay: 0.75s; animation-timing-function: linear; opacity: 0; animation-fill-mode: forwards;}
@keyframes slide-slide1-captionanim{
	0%   { opacity: 0; }
	100% { opacity: 1; }
}

div.blmslideshow div.slide2 div.caption{animation: slide-slide1-captionanim 0.5s; animation-delay: 0.75s; animation-timing-function: linear; opacity: 0; animation-fill-mode: forwards;}

/* Transition Options */
div.blmslideshow.crossfade div.slide2 {animation: slide-crossfade 2s; opacity: 0; animation-fill-mode: forwards;}					
@keyframes slide-crossfade{
	0%   { opacity: 0; }
	100% { opacity: 1; }
}
div.blmslideshow.crossfade div.slide2 div.caption{opacity: 0;}
div.blmslideshow.crossfade div.slide2 div.caption{animation: slide-crossfade-captionanim 1s; animation-delay: 2s; opacity: 0; animation-fill-mode: forwards;}					
@keyframes slide-crossfade-captionanim{
	0%   { opacity: 0; }
	100% { opacity: 1; }
}

div.blmslideshow.slidefromright div.slide2 { animation: slide-slidefromright 0.5s; animation-timing-function: linear; animation-fill-mode: forwards; right: -100%;}
@keyframes slide-slidefromright{
	0%   {right: -100%;}
	100% {right: 0%;}
}

div.blmslideshow.slidefromleft div.slide2 { animation: slide-slidefromleft 0.5s; animation-timing-function: linear; animation-fill-mode: forwards;  left: -100%;}
@keyframes slide-slidefromleft{
	0%   {left: -100%;}
	100% {left: 0%;}
}

div.blmslideshow.pop div.slide2 { animation: slide-pop 0.5s; animation-timing-function: easeInOutElastic; animation-fill-mode: forwards; left: 50%; top: 50%; width: 0%; height: 0%;}					
@keyframes slide-pop{
	0%   {left: 50%; width: 0%; height: 0%; top: 50%; color: transparent; }
	70% {left: -5%; width: 110%; height: 110%; top: -5%; color: transparent;}
	100% {left: 0%; width: 100%; height: 100%; top: 0%; color: black;}
}

/* Basic Table styles */
table {text-align: left; font-size: 1rem !important; border: 1px solid #1D9EDA;}
table thead tr th{background-color: #1D9EDA; color: #FFF; padding: 10px;}
table tbody tr td{background-color: #FFF; color: #000; padding: 10px; vertical-align: top;}
table tbody tr td a{text-decoration: none;}
table tbody tr:nth-child(odd) td{background-color: #EEE;}
table tbody tr:hover td{background-color: #32465C; color: #FFF;}
table tbody tr:hover td p{color: #FFF;}
table tbody tr:hover td a{color: #FFF;}

.table--fullwidth{width: 100%;}
.table--noborder{border: none;}
.table--bottom-margin{margin-bottom: 3rem;}

/***************** design.css *****************/
.page h1{color: inherit;}
.page h2{color: inherit; font-size: 2rem; font-weight: 400;}
.page h3{color: inherit;}
.page h4{color: #000000; margin: 0; text-transform: uppercase;}
.page h5{color: inherit;}
.page h6{color: inherit;}

.page h1, .page h2, .page h3, .page h4, .page h5, .page h6{font-family: 'Montserrat', 'Arial', sans-serif;}
.page p, .page li, .page ol, .page blockquote{font-family: 'Montserrat', 'Arial', sans-serif;}
.page a{text-decoration: none;}

.segment__wrapper{max-width: 1450px;}

.page p, .page li{line-height: 1.7rem; font-size: 1rem;}
p{color: #001F3F}

a{color: #1973CF; transition: background-color 0.25s, color 0.25s;}

.link-button{color: #fff; text-decoration: none; border: 3px solid #fff; border-radius: 32px; padding: 15px 50px; margin-top: 1rem; text-transform: uppercase; font-size: .9rem; font-weight: 600; display: inline-block;}
.link-button:hover{background-color: #FFF !important; color: #1973CF !important; cursor: pointer; transition: background-color 0.25s, color 0.25s;}

@media only screem and (max-width: 840px){
    .page h2{font-size: 1.8rem !important;}
}

blockquote {border-left:2px solid #000; padding-left:20px; margin-left:20px;}

.spec-doc a{line-height: 1.625rem; font-size: 1.125rem;}

/***************** _footer.css *****************/
.block--footer{background-color: #094797; box-shadow: 0px -1px 5px 0px #0a4797;}
.block__wrapper--footer{width: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 50px 0 100px 0;}

.block--footer__contact-details{padding: 5px; color: #000000; margin: 15px 0 35px 0; text-align: center;}
.block--footer__contact-details p{margin: 0; color: #fff;}
.block--footer__contact-details p a{text-decoration: none; color: #fff;}
.block--footer__contact-details p a:hover{color: #5586c5; transition: background-color 0.25s, color 0.25s;}

.block--footer__menus{display: flex; flex-direction: row; justify-content: center; width: 100%; text-align: center;}
.block--footer__menus h3{color: #1973CF; font-weight: 400; font-size: 1.5rem;}

.block--footer__menu li{list-style: none; margin-bottom: 0.2rem;}
.block--footer__menu li a{text-decoration: none; color: black;}
.block--footer__menu li a:hover{color: #1973CF; transition: background-color 0.25s, color 0.25s;}

.footer-box{width: calc(33.33% - 60px); padding: 0 30px;}

.block--subfooter{background-color: #FFF; text-align: center; padding-bottom: 45px;}
.block--subfooter__bluelinelink{color: #001F3F; text-decoration: none; padding-bottom: 25px;}
.block--subfooter__bluelinelink:hover{color: #1973CF;}

@media only screen and (max-width: 600px){
    .block--footer__menus{flex-direction: column; align-items: center;}
    .footer-box{width: calc(100% - 60px);}
    .block--footer__logo-box{padding: 0 15px; width: calc(100% - 30px);}
}

@media only screen and (max-width: 503px){
    .block--footer__contact-details p{text-align: center;}
}


/***************** _masthead.css *****************/
.block__wrapper--masthead{margin: 0 !important;}
.block--masthead{}
.block--masthead__logo{margin: 0 10px 0 10px;}
.block--masthead__logo img{}
.block__wrapper--masthead{width: calc(100% - 20px); margin: 0 10px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; padding: 30px 0 11px 0; flex-direction: column;}

@media only screen and (max-width: 1360px){
    .block__wrapper--masthead{justify-content: center;}
    .block--masthead__logo{margin-bottom: 20px;}
    .block--masthead__links{display: flex; justify-content: center; align-items: center; width: 100%;}
}

@media only screen and (max-width: 840px){
    .block__wrapper--masthead{justify-content: center; width: 100%;}
    .block--masthead__links{color: #FFF;}
}

button, input, select, textarea{font-family: 'Roboto', sans-serif;}

form {background-color: #1973CF; color: #FFF; padding: 34px 49px; font-family: 'Roboto', sans-serif;}

.form-container{width: 64.5%;}

.form a{background: none !important; padding: 0 !important; min-width: auto !important; line-height: unset !important; margin: 0 !important; text-transform: unset !important; font-size: inherit !important; letter-spacing: initial !important; text-decoration: none; color: #FFF;}
.form a:hover{color: #001F3F;}
.form h3{margin-bottom: 1.1rem; font-size: 1.375rem;}
.form p{line-height: 1.6rem; font-size: 1.15rem; margin-bottom: 0.5rem; color: #FFF;}

.form__column--wide label{width: calc(20% - 14px);}
.form__column--wide textarea{min-height: 226px; width: calc(80% - 8px);}
.form__column--wide .checkboxdiv label{width: calc(70% - 14px); margin-left: 19%;}

.button--remove{background-color: #F13333;}
.button--pictosicon{font-family: Pictos;}
.button--removepictosicon{background: transparent; color: #F13333;}

.form--login{}
.form--reset-password{}
.form--change-password{}

.form--contact{width: calc(100% - 98px);}
.form--contact h3{margin-bottom: 1.9rem;}


.form--register .checkboxdiv{width: 60%; margin-left: 40%}
.form--register table{margin-left: calc(40%);width:  60% !important; border-color: #EEE}
.form--register table td{width: 50%; padding: 0;}
.form--register table td label{width: 100%; text-align: left;}
.form--register table td:first-child{text-align: right; padding-right: 20px;}

.form--groups{width: 100%;}
.form--groups fieldset{width: 100%;}
.form--groups .form__column{width: 100%;}
.form--groups .table--groups-list{width: 100%;}
.form--groups .table--groups-list th:first-child{text-align: right; padding-right: calc(10% - 15px);}

.form__label{width: auto; text-align: left; padding-left: 0; margin: 0; display: inline-block;}
.form__label--checkbox--small{font-size: 0.8rem;}

.form__input{color: #000; width: 100%; text-align: left; margin: 0 0 0.5rem 0; border: none; padding: 15px; height: auto;}
.form__textarea{color: #000; width: 100%; text-align: left; margin: 0 0 0.5rem 0; height: 10rem; border: none; padding: 15px;}
.form input[type=checkbox]{text-align: right; width: auto; display: block;}
.form__button{flex-basis: fit-content; transition: 0.15s all ease-in-out; border: none; padding: 10px 19px; margin: 16px 0; display: inline-block; color: #FFF; background-color: #001F3F; text-decoration: none; text-align: center; font-size: 1.1rem; letter-spacing: 0.06rem;}
.form__button:hover{background-color: #FFF; color: #1973CF;}
.form__button--black:hover{background-color: #FFF; color: #1973CF;}
.form__button--small{padding: 10px 30px; font-size: 1rem; display: inline-block;}
.form__button--fullwidth{width: 100%;}

.form__input::placeholder{color: #000;}

.form__checkbox{padding-bottom: 1.2rem; padding-top: 0.7rem;}
.form__label--checkbox{width: calc(100% - 30px); margin-left: 30px !important; display: block; line-height: 1.05rem;}
.form__input--checkbox{top: 12px; border: 2px solid #fff; background-color: #105075; appearance: none; width: 16px !important; height: 16px;}
.form__input--checkbox:checked:after { content: '\2714'; font-size: 0.8rem; position: absolute; top: -1px; left: 1px; color: #fff;}

.form__section{margin-bottom: 40px; padding-bottom: 20px; display: flex; flex-flow: row wrap; box-shadow: -1px 5px 15px -5px #888;}
.form__section--padded{padding: 10px 20px;}
.form__section--flex{display: flex; flex-flow: row wrap;}
.form__header{color: #FFF; font-size: 1.5rem; font-weight: normal; flex-basis: 100%; background-color: #1D9EDA; padding: 10px 20px; margin: 0 0 10px 0;}
.form__para{padding: 10px 20px; margin: 0 0 10px 0;}

.form__input:required:focus:invalid, .form__select:required:invalid, .form__select:required:focus:invalid, .form__textarea:required:focus:invalid{border: none; background-image: inherit;}
.form__input:required:valid, .form__input:required:focus:valid, .form__select:required:valid, .form__select:required:focus:valid, .form__textarea:required:valid, .form__textarea:required:focus:valid{border: none; background-image: inherit;}
.form__select:required:invalid, .form__select:required:valid{background-position: 95% 50% !important;}

.input-container--zoomy{display: block; width: 100%; position: relative; padding-top: 15px;}
.input-container--zoomy label{color: #105075; font-size: 1.05rem; position: absolute; top: 24px; left: 15px; transition: transform 0.3s, font-size 0.3s; cursor: text;}
.input-container--white{display: block; width: 100%; position: relative; padding-top: 15px;}
.input-container--white label{color: #FFF;}
.input-container--zoomy label.focus{font-size: 0.9rem; color: #fff; top: 0; transform: translate3d(0, -11px, 0);}
.input-container--zoomy label.not-empty{font-size: 0.9rem; color: #fff; top: 0; transform: translate3d(0, -11px, 0);}

.form__column .form__input--hidden{display: none !important;}

.form__p--recaptcha{color: #9c9c9c !important; margin: 20px 0 10px 0; font-size: 0.8rem !important; line-height: 1.2rem !important;}
.form__a--recaptcha{color: #9c9c9c !important; font-family: 'Roboto', sans-serif !important; }

/* Change Autocomplete styles in Chrome */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {-webkit-text-fill-color: #000 !important;}

/* Responsive */

@media only screen and (max-width: 1000px) {
    .form-container{width: 88%;}
}

@media only screen and (max-width: 840px) {
    .form {width: calc(100% - 98px);}
    .form-container{width: 100%;}
    .form__button {width: 100% !important; }
}

@media only screen and (max-width: 420px) {
    .form {width: calc(100% - 30px); padding-left: 15px; padding-right: 15px;}

    .form__label--checkbox{margin-left: 0 !important; width: 100% !important; padding: 0;}
    .form__input--checkbox{position: relative; top: auto; margin-bottom: 5px;}
}


/* Mobile */
@media only screen and (max-width: 700px) {
	.results-list__result{width: 95%; margin: 0 0 80px 0;}
	
	.results-list__result--with-date-home-page {padding-left:0;}
	
	.results-list__result--with-date {padding-left:0;}
	
	.search-form .searchbutton {width:85%;}
	
	.search-form--2-fields div div {width:100%;}
	.search-form--3-fields div div {width:100%;}
	.search-form--4-fields div div {width:100%;}
	
	.results-list__result-image {width:60px; height:100px; display:none;}
	.results-list__result--with-image {padding-left:0;}

	.paging {text-align: center; padding-top: 50px; padding-left:0}
}

.menu--masthead{z-index: 1000;}
.menu--masthead li{display: inline-block; padding: 0; font-size: 1.5rem; font-weight: 500;}
.menu--masthead a{text-decoration: none; color: #282F36; display: block; padding: 0 10px;}
.menu--masthead a:hover, .menu--masthead a.selected{color: #ed6951; transition: background-color 0.25s, color 0.25s;}

#menu_map a{background: #ed6a4f; color: #fff; border-radius: 35px; padding: 20px 40px;}
#menu_map a:hover{background: #4d84c2;}

.menu__mobile-control-image--burger, .menu__mobile-control-image--cross{filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(2%) hue-rotate(221deg) brightness(101%) contrast(101%);}
.menu__mobile-control-image--burger{width: 18px; height: 14px;}

/** Sub Menu Formatting **/
.menu--masthead li ul{display: none; position: absolute; background-color: #FFF; padding-top: 10px; margin: 0; z-index: 1000;}
.menu--masthead li.haschildren:hover a{color: #1973CF;}
.menu--masthead li.haschildren:hover ul{display: block;}
.menu--masthead li.haschildren:hover ul li{margin: 0; display: block; font-size: 1rem;}
.menu--masthead li.haschildren:hover ul li a{background-color: #1973CF; color: #fff; text-align: left; min-width: 10rem; padding: 12px 20px;}
.menu--masthead li.haschildren:hover ul li a:hover{color: #FFF; background-color: #001F3F !important;}
/*.menu--masthead li.haschildren:hover:before{content: " "; min-width: 10rem; background-color: #FFF; height: 86px; display: block; position:absolute; margin-top: -78px; margin-left:-20px; top: 95%;}*/

@media only screen and (max-width: 1055px){
    .menu--masthead{text-align: center;}
    .menu--masthead li:last-child{margin-top: 40px;}
}

@media only screen and (max-width: 840px){
    .menu--hidden li.menu__mobile-control{display: inline-block !important; position: inherit;}
    .menu--hidden li.menu__mobile-control img{position: relative;}
    .menu__mobile-control{background-color: #001F3F !important; color: #ed6951;}

    .menu--masthead{width: 100%;}
    .menu--masthead a{color: #FFF;}
    .menu--masthead li{display: inline-block; border-bottom: solid 3px #FFF; width: 100%; background-color: #001F3F; margin: 0; position: inherit;}
    .menu--masthead li a{padding: 12px !important; display: block !important;}
    .menu--masthead .link-button{padding: 12px; background-color: #001F3F; font-size: 1.2rem; margin: 0; text-align: center; width: calc(100% - 24px);}
    .menu--masthead li:nth-last-child(2) a{background-color: #001F3F;}
    .menu--masthead li:last-child{margin-top: 0;}
    .menu--masthead .menu--hidden li{display: none !important;}

    #menu_map a{border-radius: unset;}

    /** Sub Menu Formatting **/
    .menu--masthead li ul{position: relative; padding: 0;}
    .menu--masthead li ul li{border: none;}
    .menu--masthead li ul li a{text-align: center !important;}
}


.paging{list-style: none;}

/** Standard paging list **/
.paging--standard{width: 100%; display: flex; flex-wrap: nowrap; flex-direction: row; justify-content: center; padding: 0 !important;}
.paging--short{width: 100%; display: flex; flex-wrap: nowrap; flex-direction: row; justify-content: center; padding: 0 !important;}

.paging__list-item{color: #333; text-align: center; border-radius: 5px; margin: 0 0.2rem}
.paging__list-item:hover{background: #555; color: #FFF !important}

.paging__list-item--standard{}
.paging__list-item--standardrange{}
.paging__list-item--standardrange--current{background: #333; color: #FFF !important}

.paging__list-item--firstpage{margin-right: 30px; position: relative;}
.paging__list-item--firstpage:after{content: "..."; display: block; position: absolute; top: 0; right: -1.4rem;}
.paging__list-item--firstpage:hover:after{color: #333 !important;}
.paging__list-item--lastpage{margin-left: 30px; position: relative;}
.paging__list-item--lastpage:after{content: "..."; display: block; position: absolute; top: 0; left: -1.4rem;}
.paging__list-item--lastpage:hover:after{color: #333 !important;}

.paging__list-item--previouspage{}
.paging__list-item--previouspage--disabled{opacity: 0.5}
.paging__list-item--previouspage--disabled:hover{background: transparent; color: #333 !important; }

.paging__list-item--nextpage{}
.paging__list-item--nextpage--disabled{background: transparent; color: #333 !important; }
.paging__list-item--nextpage--disabled{opacity: 0.5}
.paging__list-item--nextpage--disabled:hover{background: transparent; color: #333 !important; }

.paging__list-item__link{text-decoration: none; display: block; min-width: 2rem; color: inherit; padding: 0 0.5rem;}
.paging__list-item__link:hover{color: inherit;}

.paging__list-item__link--standard{}
.paging__list-item__link--standardrange{}
.paging__list-item__link--standardrange--current{}

.paging__list-item__link--previouspage{}
.paging__list-item__link--previouspage:before{content: "<"; display: inline-block; margin-right: 5px;}
.paging__list-item__link--previouspage--disabled{cursor: default}
.paging__list-item__link--previouspage--disabled:before{content: "<"; display: inline-block; margin-right: 5px;}

.paging__list-item__link--nextpage{}
.paging__list-item__link--nextpage:after{content: ">"; display: inline-block; margin-left: 5px;}
.paging__list-item__link--nextpage--disabled{cursor: default}
.paging__list-item__link--nextpage--disabled:after{content: ">"; display: inline-block; margin-left: 5px;}

/***************** segment--map-1.css *****************/
.segment--map-1 .segment__wrapper{display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 auto;}
.segment--map-1{background-color: #5686c5;}
.segment--map-1__area-1 h1{font-size: 3.2rem; color: #FFF;}
.segment--map-1__area-1 h2{font-size: 2.5rem; color: #FFF; margin-top: 50px;}
.segment--map-1__area-1{text-align: center; width: calc(75% - 30px); padding: 0 15px;}
.segment--map-1__area-1 p{color: #FFF;}
.segment--map-1__area-1 p a{color: #FFF;}
.segment--map-1__area-1 p a:hover{color: #a9a9a9;}
.segment--map-1__area-1 ul li{color: #FFF; display: block;}

/***************** segment--map-2.css *****************/
.segment--map-2{padding: 30px 0;}

.segment--map-2__area-1{padding: 15px 32px; width: calc(50% - 64px);}
.segment--map-2__area-1 h2{text-transform: uppercase;}

.segment--map-2__area-2{text-align: center; padding: 15px;}
.segment--map-2__area-2 img{border-radius: 12px; box-shadow: 2px 1px 5px 1px #bfbfbf;}

@media screen and (max-width: 840px){
    .segment--map-2__area-1{width: calc(100% - 64px);}
}


/***************** segment--map-3.css *****************/
.segment--map-3{padding: 30px 0;}

.segment--map-3__area-1{text-align: center; padding: 15px}
.segment--map-3__area-1 img{border-radius: 12px; box-shadow: 2px 1px 5px 1px #bfbfbf;}

.segment--map-3__area-2{padding: 15px 32px; width: calc(50% - 64px);}
.segment--map-3__area-2 h2{text-transform: uppercase;}
.segment--map-3__area-2 p{margin-bottom: 1.5rem; margin-top: 0;}

@media only screen and (max-width: 840px){
    .segment--map-3__area-2{margin-top: 10px; width: calc(100% - 64px);}
    .segment--map-3 .segment__wrapper{flex-direction: column-reverse;}
}

/***************** segment--map-3.css *****************/
.segment--map-4{padding: 60px 0;}
.segment--map-4__area-1{padding: 0;}

@media only screen and (max-width: 1450px){
    .segment--map-4__area-1{width: 100%;}
}

/* Testimonials */
.segment--testimonial{background-color: #60B53E; text-align: center; min-height: 340px; display: flex; align-items: center; padding: 30px 0;}
.segment__wrapper--testimonial{}
.segment--testimonial p{color: #fff; font-weight: 600; font-size: 2.2rem; line-height: 3.1rem; margin-bottom: 0; letter-spacing: 0.1rem;}

@media only screen and (max-width: 850px) {
	.segment__wrapper--testimonial{width: 90%;}
}

@media only screen and (max-width: 700px) {
	.segment--testimonial{height: auto;} 
	.segment--testimonial__wrapper{height: auto; margin-top: 0; padding-top: 20px;}
	.segment--testimonial img:first-child{clip-path: none; position: relative; max-height: 200px;}
	.segment--testimonial__text {width: 100%; padding: 0; margin: 0;}
	.segment--testimonial__text img{position: relative; bottom: auto; right: auto;}
	.segment--testimonial__text p{width: 100%;}
	.segment--testimonial-logo-holder{display: none;}
	.segment--testimonial::before{display: none;}
	.segment--testimonial::after{display: none;}
}

.paging{list-style: none;}

/** Standard paging list **/
.paging--standard{width: 100%; display: flex; flex-wrap: nowrap; flex-direction: row; justify-content: center; padding: 0 !important;}
.paging--short{width: 100%; display: flex; flex-wrap: nowrap; flex-direction: row; justify-content: center; padding: 0 !important;}

.paging__list-item{color: #333; text-align: center; border-radius: 5px; margin: 0 0.2rem}
.paging__list-item:hover{background: #555; color: #FFF !important}

.paging__list-item--standard{}
.paging__list-item--standardrange{}
.paging__list-item--standardrange--current{background: #333; color: #FFF !important}

.paging__list-item--firstpage{margin-right: 30px; position: relative;}
.paging__list-item--firstpage:after{content: "..."; display: block; position: absolute; top: 0; right: -1.4rem;}
.paging__list-item--firstpage:hover:after{color: #333 !important;}
.paging__list-item--lastpage{margin-left: 30px; position: relative;}
.paging__list-item--lastpage:after{content: "..."; display: block; position: absolute; top: 0; left: -1.4rem;}
.paging__list-item--lastpage:hover:after{color: #333 !important;}

.paging__list-item--previouspage{}
.paging__list-item--previouspage--disabled{opacity: 0.5}
.paging__list-item--previouspage--disabled:hover{background: transparent; color: #333 !important; }

.paging__list-item--nextpage{}
.paging__list-item--nextpage--disabled{background: transparent; color: #333 !important; }
.paging__list-item--nextpage--disabled{opacity: 0.5}
.paging__list-item--nextpage--disabled:hover{background: transparent; color: #333 !important; }

.paging__list-item__link{text-decoration: none; display: block; min-width: 2rem; color: inherit; padding: 0 0.5rem;}
.paging__list-item__link:hover{color: inherit;}

.paging__list-item__link--standard{}
.paging__list-item__link--standardrange{}
.paging__list-item__link--standardrange--current{}

.paging__list-item__link--previouspage{}
.paging__list-item__link--previouspage:before{content: "<"; display: inline-block; margin-right: 5px;}
.paging__list-item__link--previouspage--disabled{cursor: default}
.paging__list-item__link--previouspage--disabled:before{content: "<"; display: inline-block; margin-right: 5px;}

.paging__list-item__link--nextpage{}
.paging__list-item__link--nextpage:after{content: ">"; display: inline-block; margin-left: 5px;}
.paging__list-item__link--nextpage--disabled{cursor: default}
.paging__list-item__link--nextpage--disabled:after{content: ">"; display: inline-block; margin-left: 5px;}

.news-list__newsitem__image{height: 100px; width: 100px; background-size: cover}

/* Cookies */
.block--cookies .block__wrapper{}
.block--cookies .col--12wide {background-color: #FFF;}
.block--cookies .col--12wide p{color: #1973CF; line-height: 1.6rem}
.block--cookies .col--12wide p a{color: #1973CF;}
.block--cookies .col--12wide p a:hover{color: #001F3F;}
.block--cookies .cookies-accept-button a{background-color: #1973CF; color: #FFF !important; padding: 20px 45px; font-weight: 600;}
.block--cookies .cookies-accept-button a:hover{background-color: #001F3F !important; color: #FFF !important;}

.expandable-heading{cursor: pointer; margin-top: 0; margin-bottom: 0;}
.expandable-heading:hover{background-color: #F5F5F5;}
.expandable-heading__number{position: absolute; margin-left: -60px;}
.expandable-heading--top-border{border-top: solid 1px #e0e7f2; padding: 10px 0;}
.expandable-hidden{display: none;}
.expandable-heading + *{margin-top: 4px;}


.expandable-heading + .expandable{overflow: hidden; transition: max-height 0.25s ease-in-out, margin-bottom 0.25s ease-in-out; }
.expandable-heading + .expandable--shown{max-height: 600px;  }
.expandable-heading + .expandable--hidden{max-height: 0px; margin-bottom: 0; }

.expandable + .expandable{overflow: hidden; transition: max-height 0.25s ease-in-out, margin-bottom 0.25s ease-in-out; }
.expandable + .expandable--shown{max-height: 600px;  }
.expandable + .expandable--hidden{max-height: 0px; margin-bottom: 0; }

/* Articles Page */
.block__wrapper--articles-heading{background-repeat: no-repeat; background-size: cover; min-height: 300px; background-position: left; display: flex; flex-direction: column; justify-content: center;}
.articles-header{width: 1248px; margin: 0 auto;}
.articles-header h2{font-size: 2.875rem; line-height: 3.5rem; font-weight: 400;}

.block__wrapper--articles-content .noresults{text-align: center;}

.categories-list{background-color: #105075; list-style: none; display: flex; justify-content: center; flex-wrap: wrap; margin: 0;}
.categories-list__article__item{margin: 0 !important;}
a.categories-list__article__link{text-decoration: none; color: #F5F5F5; padding: 13px 19px 17px 19px; display: block; letter-spacing: -0.01rem; font-size: 0.95rem; font-weight: 400;}
a.categories-list__article__link:hover{color: #8CC4DF; text-decoration: underline;}
a.categories-list__article__link--selected{color: #8CC4DF; text-decoration: underline;}

.block__wrapper--articles-content{background-color: #F5F5F5; padding-bottom: 127px;}

.articles__heading{font-size: 1.875rem; font-weight: 100;}

.articles-list__category-heading-wrapper{width: 1248px; margin: 0 auto; padding: 100px 0 38px 0;}
.articles-list__category-heading{font-weight: 400;}

.articles-list{width: 1248px; margin: 0 auto; display: grid; align-items: start; gap: 98px 48px; grid-template-columns: 384px 384px 384px; grid-template-rows: auto; justify-content: space-evenly; padding: 0 0 58px 0;}
.articles-list__article{height: 100%; min-height: 592px; display: flex; flex-direction: column; cursor: pointer; text-align: left;}
.articles-list__article__image{height: 272px; width: 100%; padding: 0 0 4px 0; border-bottom: #de2238 solid 4px; background-repeat: no-repeat;}
.articles-list__article:nth-child(3n+2) .articles-list__article__image{border-bottom: #0D4DD3 solid 4px;}
.articles-list__article:nth-child(3n+3) .articles-list__article__image{border-bottom: #105075 solid 4px;}
.articles-list__article__category{margin: 1.6rem 0 0.15rem 0; letter-spacing: 0.06rem;}
.articles-list__article__headline{font-size: 1.4rem; margin: 1.3rem 0 0.8rem 0; font-weight: 400; line-height: 1.95rem; letter-spacing: 0.02rem;}
.articles-list__article__link{text-decoration: none; color: inherit !important;}
p.articles-list__article__briefdescription{margin-top: 0; line-height: 1.75rem; flex-grow: 1; font-size: 1.15rem;}
.articles-list__article__more-link{font-size: 1.2rem;}
.articles-list__article__more-link:hover{color: #105075;}

.articles-list--big-list{padding-top: 168px;}
.articles-list__category-heading-wrapper + .articles-list--big-list{padding-top: 0;}

.articles-list__article{position: relative; z-index: 10;}
.articles-list__article:hover:before{content: " "; width: calc(100% + 50px); height: calc(100% + 50px); position: absolute; top: -25px; left: -25px; background-color: #FFF; z-index: -1}
.articles-list__article:hover .articles-list__article__headline{text-decoration: underline;}
.articles-list__article:hover .articles-list__article__more-link{color: #105075;}

/* Article Page */
.block__wrapper--article-heading{background-repeat: no-repeat; background-size: cover; min-height: 200px; background-position: center center; filter: blur(25px); }

.article{width: 817px; margin: 0 auto; padding: 48px 0 119px 0;}

.article__overview-container{margin-bottom: 22px;}
.article__overview{display: flex; flex-wrap: wrap;}
.article__category{flex-basis: 100%; margin: 0;}
a.article__category__link{background-color: #5B94AD; text-decoration: none; color: #F5F5F5; padding: 6px 13px 8px 13px; letter-spacing: 0.02rem; transition: 0.2s all ease-in-out;}
a.article__category__link:hover{background-color: #105075;}
.article__date{flex-basis: 50%; margin: 1.4rem 0; font-size: 1rem; color: #001524; letter-spacing: -0.02rem;}
.article__heading{font-size: 2.8rem; margin: 0 0 3.1rem 0; line-height: 3.45rem; letter-spacing: 0.035rem;}
.article__socials{display: flex; flex-basis: 50%; justify-content: flex-end;}
.article__socials__share{display: flex; font-size: 1rem !important; margin: 22px 15px 0 0;}
ul.article__socials__list{list-style: none; margin: 22px 0 0 0 !important; padding: 0 !important;}
ul.article__socials__list--bottom{margin: -4px 0 !important;}
li.article__socials__list__item{display: inline-block; margin: 4px 2px 0 7px; padding: 0 !important;}
.article__socials__list__link{display: block; height: 100%;}

.article__socials__list__item{background-size: cover; height: 24px; width: 25px; background-color: #D8FC5C; cursor: pointer;}
.article__socials__list__item:hover{background-color: #02274f;}

.article__content h2{font-size: 1.9rem; margin: 3rem 0 1rem 0;}
.article__content p{margin-top: 0; font-size: 1.15rem; line-height: 1.67rem;}
.article__content p strong{letter-spacing: 0.028rem;}
.article__content blockquote{margin: 95px 110px 94px 56px; border-left-width: 4px; font-size: 1.6rem; padding: 1px 0 0 49px; letter-spacing: 0.027rem; line-height: 2.4rem;}
.article__content ul{padding: 0 0 0 42px; margin: 35px 0 50px 0;}
.article__content ul li{padding: 0 0 0 15px; font-size: 1.15rem; line-height: 1.58rem; margin-bottom: 13px;}
.article__content a{color: #5B94AD; letter-spacing: 0.013rem; text-underline-offset: -3px; transition: 0.15s all ease-in-out;}
.article__content a:hover{color: #105075;}
.article__content .spec-img{margin: 30px 0 76px 0; display: inline-block;}

.author-bio{background-color: #105075; margin: 48px 0; display: flex; flex-wrap: nowrap; align-items: flex-start; padding: 32px; max-width: 536px;}
.author-bio__authorimage{width: 72px; max-height: 200px}
.author-bio__container{padding: 0 0 5px 32px}
h2.author-bio__name{color: #F5F5F5; margin: 0.2rem 0 0.95rem 0; font-size: 1.4rem; letter-spacing: 0.02rem;}
p.author-bio__details{color: #F5F5F5; font-size: 0.95rem; line-height: 1.5rem; margin-bottom: 2.15rem; letter-spacing: 0.005rem;}
a.author-bio__link{color: #F5F5F5; text-underline-offset: 4px; letter-spacing: 0.005rem; line-height: 2rem; }
a.author-bio__link:hover{color: #5B94AD;}
a.author-bio__link--about{margin-right: 28px;}
a.author-bio__link--team{}

ul.article__tags{list-style: none; margin: 0 0 11px 0; padding: 0;}
li.article__tags__tagitem{padding: 0 !important; display: inline-block; font-size: 1.15rem; line-height: 1.58rem; margin: 0 15px 15px 0;}
a.article__tags__tagitem__link{background-color: #E0E7F2; color: #001524; text-decoration: none; transition: 0.2s all ease-in-out; padding: 4px 14px; display: block; font-size: 0.95rem; font-weight: 600;}
a.article__tags__tagitem__link:hover{background-color: #001524; color: #E0E7F2;}

.article__date{font-size: 1rem;}

.articles{background-color: #F5F5F5; padding: 133px 0 143px; text-align: center;}
.articles__heading{width: calc(100% - 30px); text-align: center; font-size: 1.9rem;  padding: 0 15px 50px 15px;}
.articles__list{padding: 59px 0 74px 0; text-align: left;}
a.articles__link{font-size: 1.1rem; min-width: auto; padding: 11px 21px; color: #D8FC5C !important;}

/* Author Page */
.author{width: 817px; margin: 0 auto; padding: 48px 0 119px 0;}
.author__heading{font-size: 2.8rem; margin: 0 0 3.1rem 0; line-height: 3.45rem; letter-spacing: 0.035rem;}
.author__authorimage{float: right; margin: 0 0 40px 40px;}

.author__content{display: inline-block;}
.author__content h2{font-size: 1.9rem; margin: 3rem 0 1rem 0;}
.author__content p{margin-top: 0; font-size: 1.15rem; line-height: 1.67rem;}
.author__content p strong{letter-spacing: 0.028rem;}
.author__content blockquote{margin: 95px 110px 94px 56px; border-left-width: 4px; font-size: 1.6rem; padding: 1px 0 0 49px; letter-spacing: 0.027rem; line-height: 2.4rem;}
.author__content ul{padding: 0 0 0 42px; margin: 35px 0 50px 0;}
.author__content ul li{padding: 0 0 0 15px; font-size: 1.15rem; line-height: 1.58rem; margin-bottom: 13px;}
.author__content a{color: #5B94AD; letter-spacing: 0.013rem; text-underline-offset: -3px; transition: 0.15s all ease-in-out;}
.author__content a:hover{color: #105075;}
.author__content .spec-img{margin: 30px 0 76px 0; display: inline-block;}

/* Authors Page */
.block__wrapper--authors-content .noresults{text-align: center;}

.authors-list{width: 1248px; margin: 0 auto; display: grid; align-items: start; gap: 98px 48px; grid-template-columns: 384px 384px 384px; grid-template-rows: auto; justify-content: space-evenly; padding: 168px 0 58px 0;}
.authors-list__article{height: 100%; min-height: 592px; display: flex; flex-direction: column; cursor: pointer;}
.authors-list__article__image{height: 272px; width: 100%; padding: 0 0 4px 0; border-bottom: #de2238 solid 4px; background-repeat: no-repeat; background-size: cover; background-position: center center;}
.authors-list__article:nth-child(3n+2) .authors-list__article__image{border-bottom: #0D4DD3 solid 4px;}
.authors-list__article:nth-child(3n+3) .authors-list__article__image{border-bottom: #105075 solid 4px;}
.authors-list__article__headline{font-size: 1.4rem; margin: 1.3rem 0 0.8rem 0; font-weight: 400; line-height: 1.95rem; letter-spacing: 0.02rem;}
.authors-list__article__link{text-decoration: none;}
p.authors-list__article__briefdescription{margin-top: 0; line-height: 1.75rem; flex-grow: 1; font-size: 1.15rem;}
.authors-list__article__more-link{font-size: 1.2rem;}
.authors-list__article__more-link:hover{color: #105075;}

/* Responsive Styles */
@media only screen and (max-width: 1248px){
    .articles-header{width: 95%; padding: 0 2.5%; margin: 0;}

    /* Two col grid */
    .articles-list{width: initial; grid-template-columns: 384px 384px;}

    /* This is made into a grid layout so it can line up correctly with the grid of articles below it */
    .articles-list__category-heading-wrapper{display: grid; grid-template-columns: 384px 384px; gap: 98px 48px; width: 100%; align-items: start; grid-template-rows: auto;justify-content: space-evenly;}
}

@media only screen and (max-width: 818px){
    /* One col grid */
    .articles-list{grid-template-columns: 384px;}

    /* This is made into a grid layout so it can line up correctly with the grid of articles below it */
    .articles-list__category-heading-wrapper{display: grid; grid-template-columns: 384px;}

    .article{width: calc(100% - 20px); margin: 0 10px;}
}

@media only screen and (max-width: 445px){
    .articles-list__article{min-width: auto;}
}

@media only screen and (max-width: 384px){
    /* One col grid */
    .articles-list{grid-template-columns: 100%;}
    .articles-list__article{margin: 0 15px;}

    .article__content blockquote{margin-left: 10px; margin-right: 10px; font-size: 1.2rem; padding-left: 20px; line-height: 1.9rem;}

    .article__overview{flex-direction: column;}
    .article__socials{justify-content: flex-start;}
    .article__socials__share{margin-top: 0;}
    ul.article__socials__list{margin-top: 0 !important;}
}

@media only screen and (max-width: 300px){
    .article__heading{font-size: 1.8rem; line-height: 2.6rem;}

    .author-bio{flex-direction: column; padding: 20px;}
    .author-bio__container{padding-left: 0; margin-top: 20px;}
    a.author-bio__link--about{display: block; margin-bottom: 20px;}
}


table {border: 1px solid #1973cf;}
table thead tr th{background-color: #1973cf;}
table tbody tr td{color: #001F3F;}
table tbody tr:hover td{background-color: #011f3f;}

.fault1{width: 130px;}
.fault2{}

@font-face { font-family: 'Pictos'; src: url('../styles/pictos/pictos-web.eot'); src: local('?'), url('../styles/pictos/pictos-web.woff') format('woff'), url('../styles/pictos/pictos-web.ttf') format('truetype'), url('https://www.meetcentral.co.uk/styles/pictos/pictos-web.svg#webfontIyfZbseF') format('svg'); font-weight: normal; font-style: normal; }

/***************** google map *****************/
.pictos{font-family: 'Pictos';}

.page{position: relative; height: 100%}
.page article{height: 100%; overflow: hidden;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}

.segment--map-4 h4{margin-top: 0.4em !important; padding-right: 10px !important;}
.segment--map-4 p{line-height: 1.4em !important; margin-bottom: 0.4em !important; font-size: 0.85rem !important;}

.page .map-container {position: relative; padding: 0; width: 100%; height: 800px;}
.page .map-container img{max-width: none;}

.page .map-container #mapcanvas.hidepanel{animation: mapcanvas-increase-height 0.3s; animation-fill-mode: forwards;}
@keyframes mapcanvas-increase-height{
    100% {height: 100vh;}
}

.page .map-container #mapcanvas.showpanel{animation: mapcanvas-reduce-height 0.3s; animation-fill-mode: forwards;}
@keyframes mapcanvas-reduce-height{
    0% {height: 100vh;}
}

.page .directiondetails-container {overflow-y: scroll; overflow-x: hidden; border: 1px solid #C4C4C4; position: absolute; background-color: rgba(239, 240, 242, 0.9); max-height: 86%; z-index: 100;}
.page .directiondetails-container h4 {font-weight: 700; margin: 0 0 0.2rem 0; color: #2F527D;}

.page .directiondetails-container span.togglepanel{font-size: 1.5rem; position: absolute; top: 0; right: 0; z-index: 10000; padding: 5px; display: inline-block; cursor: pointer;}
.page .directiondetails-container span.togglepanel:hover{opacity: 0.8;}
.page .directiondetails-container span.togglepanel.showpanel{transform: rotate(90deg);color: #5EBA3E; }
.page .directiondetails-container span.togglepanel.hidepanel{transform: rotate(-90deg); color: #D92C2C;}

.page .directiondetails-innercontainer{position: relative; padding: 10px 15px 32px 15px;}
.page .directiondetails-innercontainer.hidepanel{animation: routepanel-hide 0.5s; animation-fill-mode: forwards;}
@keyframes routepanel-hide{
    100% { max-height: 0px; }
}

.page .directiondetails-innercontainer.showpanel{animation: routepanel-show 0.5s; animation-fill-mode: forwards;}
@keyframes routepanel-show{
    0% { max-height: 0px; }
}

.page .directiondetails-container .formdetails-container {margin-bottom: 10px;}
.page .directiondetails-container .formdetails-container p.route-text {font-size: 0.8rem; margin: 0 0 0.2rem 0;}
.page .directiondetails-container .formdetails-container form {margin-bottom: 0; background: none; padding: 0;}
.page .directiondetails-container .formdetails-container form fieldset {margin-bottom: 0; position: relative;}
.page .directiondetails-container .formdetails-container form legend {display: none;}
.page .directiondetails-container .formdetails-container form label {color: #4D4C4C; font-weight: 300; font-size: 0.8rem; width: 18%; display: inline-block; vertical-align: top; margin-top: 3px;}
.page .directiondetails-container .formdetails-container form input {color: #2F527D; font-weight: 300; font-size: 0.85rem; padding: 1px 1%; margin-bottom: 0; width: 41%; display: inline-block; vertical-align: top;}
.page .directiondetails-container .formdetails-container form input.button {color: #fff; background-color: #5586c5; border: none; font-weight: 300; font-size: 0.85rem; padding: 4px; width: 35%;}

.page .directiondetails-container div.googlemapsdistance {position: relative; margin: 0; font-size: 0.8em; background-color: #FFF; padding: 4px 10px; margin-bottom: 15px; box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.25098);}
.page .directiondetails-container div.googlemapsdistance p.label-para{margin: 0 10px 5px 0; line-height: 1.1rem;}
.page .directiondetails-container a#googlemapslink {font-size: 0.8em; display: block;}
.page .directiondetails-container div.highlight-route {background-color: #FFFFC2;}

.page .directiondetails-container div.googlemapsdistance span.delete-route {cursor: pointer; color: #E31D1D; display: inline-block; position: absolute; top:0; right: 0; padding: 2px 2px 0 0; font-size: 1.05rem;}

.page .directiondetails-container p.single-route-warning {background-color: #A00; color: #FFF; font-size: 0.8rem; padding: 4px 10px; box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.25098);}

/* Share This Map Link */
.directiondetails-innercontainer a.share-route-map {display: block; margin-bottom: 5px;}
.directiondetails-innercontainer a.share-route-map span {font-size: 1.6rem; margin-left: 4px; color: #0262AD;}

/* Share This Buttons */
.addthis_inline_share_toolbox {max-width: 287px;}
.at-resp-share-element .at-share-btn {margin-left: 0 !important; margin-right: 3px !important;}

/* Google Places Autocomplete */
.pac-container{width: auto !important; position: relative !important; top: auto !important; left: 0 !important;}
.pac-container .pac-item{}
.pac-container .pac-item:hover{}
.pac-container .pac-item.pac-item-selected{}
.pac-container .pac-item .pac-icon{}
.pac-container .pac-item .pac-matched{}
.pac-container .pac-item .pac-item-query{}

/* Content Blocked Warning Message */
.warning-message-container{background-color: #FFF; padding: 10px; box-shadow: 1px 1px 2px 0px rgba(214, 17, 17, 0.39); display: none;}
.warning-message-container p{margin: 0; color: #D21111; font-size: 0.8rem;}

/* Map Marker Info Box */
.page .map-container .infoBox:before {position: absolute; display: inline-block; content: ''; border-right: 11px solid rgba(0, 0, 0, 0); border-left: 12px solid rgba(0, 0, 0, 0); border-bottom: 12px solid #FFF; left: 46%; top: 0px;}
.page .map-container .infoBox{}
.page .map-container .infoboxcontent{border-radius: 4px; background-color: #FFF; padding: 20px; font-size: 0.8rem; box-shadow: 3px 3px 4px 0 rgba(165, 165, 165, 0.75);}
.page .map-container .infoboxcontent h4{font-size: 1.05rem;}
.page .map-container .infoboxcontent p{font-size: 0.9rem;}

/* Footer */
.footer-container{border-top: 1px solid #C4C4C4; background: #E5E5E5 linear-gradient(#DADADA, #E8E8E8); width: 100%; position: relative; bottom: 0; padding-bottom: 5px; padding-top: 5px; margin-top: -1px;}
.footer-container .wrapper{color: #0D0D0F; width: 99%; padding: 0 0.5%; display: flex;}
.footer-container .wrapper .c8, .footer-container .wrapper .c2{padding-top: 0px; }
.footer-container .wrapper .c4{padding-top: 0px; margin-left: 15px !important;}

.footer-container .wrapper .c2, .footer-container .wrapper .c4{font-size: 0.9rem; margin-left: -1px;}
.footer-container .wrapper .c2.centercol{border-right: 1px solid #AEB0A4;}
.footer-container .wrapper .c2 p, .footer-container .wrapper .c4 p{margin: 0 20px 0 0;font-size: 0.8rem; line-height: 1.2em; font-weight: 400;}
.footer-container .wrapper .c2 p:first-child, .footer-container .wrapper .c4 p:first-child{margin-top: 10px;}
.footer-container a, .footer-container h3{color: #58584D;}
.footer-container p, .footer-container li{color: #58584D;}
.footer-container a:hover{color: #58584D;}

.footer-container .c8{border-right: 1px solid #AEB0A4; padding-right: 1%; width: 63.66%;}
.footer-container .c8 p {font-size:0.8rem; margin: 5px 0 10px 0; line-height: 1rem; color: #30527D; font-weight: 600;}

.footer-container .wrapper ul#footermenubottom {list-style-type: none; padding: 0; font-size: 0.7rem;}
.footer-container .wrapper ul#footermenubottom li {float: left; margin-right: 5px; margin-bottom: 0; font-weight: 400;}
.footer-container .wrapper ul#footermenubottom li.first {list-style-type: none;}
.footer-container .wrapper ul#footermenubottom li a{color: #1164B0; text-decoration: none}

.footer-container .wrapper ul{display: inline-block; margin: 0; padding: 0; font-size: 0.7rem;}
.footer-container .wrapper ul li{display: inline-block; list-style-type: none; padding: 0; margin: 0}
.footer-container .wrapper ul li a{display: inline-block; color: #1164B0; text-decoration: none; font-weight: 400; border-bottom: 1px solid #94AFC2;  padding: 5px 0 0 0; margin: 0 15px 4px 0; min-width: 120px;}

.footer-container div.togglepanel{font-size: 1.5rem; position: absolute; top: -24px; right: calc(50% - 20px); z-index: 10000; padding: 2px 4px; margin: 0; display: inline-block; cursor: pointer; border-radius: 6px 6px 0 0; border-left: 1px solid #C4C4C4; border-top: 1px solid #C4C4C4; border-right: 1px solid #C4C4C4; background-color: #DBDBDB;}
.footer-container div.togglepanel div{display: block; height: 19px; width: 39px; overflow: hidden;}
.footer-container div.togglepanel.showpanel div{transform: rotate(180deg); background: #5EBA3E url("../website/staticimages/panel-arrow.png") center center no-repeat;}
.footer-container div.togglepanel.hidepanel div{background: #D92C2C url("../website/staticimages/panel-arrow.png") center center no-repeat;}

.footer-container .infodetails-innercontainer{position: relative; padding: 10px 15px 24px 15px;}

.error-message{width: 100%; height: 100%; z-index: 10000000; position: absolute; background-color: rgba(192,192,192,0.8); display: flex; justify-content: center; align-items: center;}
.error-message p {font-size: 1.2rem !important; background-color: white; padding: 20px; margin: 0 20px; border-radius: 10px; box-shadow: 0 0 5px #919191; text-align: center; position: relative;}
.error-message__close{position: absolute; top: -15px; right: -15px; background: #1973CF; padding: 4px; border-radius: 18px; cursor: pointer; transition: background-color 0.2s linear;}
.error-message__close:hover{background: #cf1919;}

.map{width: 100%; height: 600px; position: relative;}

/***************** Leaflet map *****************/
.directions-itinerary{display: none;}
.directions--minimised{display: none;}

.directions__heading{margin: 0; font-size: 1rem !important;}
.directions__name{margin: 0; font-size: 0.65rem !important;}
.directions__distance{margin: 0 0 3px 0; font-size: 0.7rem !important; background-color: #5686c5; color: #fff !important; border-radius: 7px; padding: 0 10px; display: inline-block; }
.directions__roads{margin: 0; font-size: 0.6rem !important;}

/***************** Leaflet overlay *****************/
.map-overlay{position: relative; max-width: 500px; margin: 0 auto; z-index: 10000; text-align: center;}
.map-overlay__para{background:#fff; position: relative; overflow-y: auto; padding: 20px; box-shadow: 2px 2px 5px rgb(140 140 140); border-radius: 8px;}

/***************** Route Button *****************/
.map-calc-route-button{position: relative; max-width: 500px; margin: 10px auto; z-index: 10000; text-align: center;}
.map-calc-route-button__para{background-color: #ffffff; display: inline-block; padding: 2px 14px; border-radius: 8px; font-weight: 600; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); border: 2px solid #000000; margin: 0 0 1rem 0 !important;}
.map-calc-route-button__button{display: block; background-color: #1e90ff; color: #fff !important; border: none; padding: 12px 24px; font-size: 1.5rem; border-radius: 8px; transition: background-color 0.3s ease, transform 0.2s ease; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);}
.map-calc-route-button__button:hover{background-color: #0050b3;}

/***************** Share Link *****************/
.map-share-link-container{position: absolute; z-index: 10000; bottom: 44px; left: 10px; background: #fff; border-radius: 5px; border: 2px solid rgba(0, 0, 0, 0.2); background-clip: padding-box; padding: 4px 9px;}
.map-share-link-container:hover{background-color: #0a4797;}
.map-share-link-container:hover a{color: #fff;}
.map-share-link-container:hover label{color: #fff;}
.map-share-link{display: block; font-weight: 600; font-size: 1rem; transition: background-color linear 0.2s; line-height: 1rem;}

/***************** Share Link Form *****************/
.map-share-link-container__form{background: none; padding: 0; display: none;}
.map-share-link-container__form__label{color: #000; margin: 6px 0 0 0; display: block;}
.map-share-link-container__form__container{display: flex; align-items: center; padding: 5px 5px; border: 2px solid #0078A8; border-radius: 5px; background-color: #fff;}
.map-share-link-container__form__container::after{content: "Copied!"; background-color: #2ec281; display: none; padding: 4px 18px;}
.map-share-link-container__form__container__input{color: #0078A8; display: block; width: 100%; border: none;}
.map-share-link-container__form__container__input--copied{}
.map-share-link-container__form--copied{border-color: #2ec281; padding: 0 0 0 5px; }
.map-share-link-container__form--copied::after{display: inline;}

/***************** Reset Map Link *****************/
.map-reset-link-container{position: absolute; z-index: 10000; bottom: 8px; left: 10px; background: #fff; border-radius: 5px; border: 2px solid rgba(0, 0, 0, 0.2); background-clip: padding-box; padding: 4px 9px;}
.map-reset-link-container:hover{background-color: #0a4797;}
.map-reset-link-container:hover a{color: #fff;}
.map-reset-link{display: block; font-weight: 600; font-size: 1rem; transition: background-color linear 0.2s; line-height: 1rem;}

/***************** Delete Route Icon *****************/
.leaflet-routing-delete-btn{position: absolute; top: 0; right: 33px; color: #ccc; background: #fff url(../website/staticimages/delete_18dp.svg) center center no-repeat; width: 18px; height: 18px; padding: 4px; display: block; cursor: pointer;}

/***************** Close Share Route Icon *****************/
.leaflet-share-route-close-btn{position: absolute; top: 0; right: 5px; color: #ccc; background: #fff url(../website/staticimages/close-black.svg) center center no-repeat; width: 18px; height: 18px; padding: 4px; display: none; cursor: pointer;}

/***************** Google Map Link *****************/
.leaflet-routing-googlemap-link{text-align: left !important; padding: 0 6px; width: auto !important; color: #5686c5 !important; font-size: 0.6rem !important;}
.leaflet-control-container .leaflet-routing-container-hide .leaflet-routing-googlemap-link{display: none;}

/******** Override Default Leaflet Styles ***********/
.leaflet-routing-container{padding-top: 0 !important}
.leaflet-routing-alt{border-bottom: none !important; margin-top: 0 !important; margin-bottom: 0 !important;}

.leaflet-top{z-index: 100000 !important;}
.leaflet-left{z-index: 200000 !important;}

.leaflet-right{margin-left: 50px; pointer-events: initial !important; overflow-y: auto; max-height: 100%;}
.leaflet-right .leaflet-routing-container.leaflet-routing-container-hide{width: 52px;}

.leaflet-routing-collapse-btn:after{content: "" !important; background: #fff url(../website/staticimages/visibility_off_18dp.svg) center center no-repeat; width: 18px; height: 18px; padding: 4px; display: block; cursor: pointer;}
.leaflet-routing-container-hide .leaflet-routing-collapse-btn:after{display: none;}

.leaflet-right .leaflet-routing-container.leaflet-routing-container-hide{width: 80px; overflow: hidden;}
.leaflet-routing-container-hide .leaflet-routing-collapse-btn{position: absolute !important; top: 3px !important; left: auto !important; right: 8px !important; background-image: url(../website/staticimages/visibility_18dp.svg) !important; width: 21px !important; height: 18px !important;}

.leaflet-routing-container, .leaflet-routing-error{max-width: 320px;}

.leaflet-control-geocoder{display: flex; align-items: center; flex-wrap: wrap;}
.leaflet-control-geocoder-expanded{width: calc(100% - 13px) !important;}
.leaflet-touch .leaflet-control-geocoder-icon{flex-basis: 30px;}
.leaflet-control-geocoder-expanded .leaflet-control-geocoder-form{flex-basis: calc(100% - 30px);}
.leaflet-control-geocoder-form input{width: calc(100% - 10px)  !important; margin-right: 10px; font-size: 0.9rem !important; line-height: 1.4rem;}
.leaflet-control-geocoder-alternatives{flex-basis: 100%; padding-left: 0 !important;}
.leaflet-control-geocoder-alternatives li{white-space: unset !important; font-size: 0.8rem; padding: 0 8px; line-height: 1.1rem !important;}

.leaflet-routing-googlemap-link{border-radius: 0 0 8px 8px !important;}

@media only screen and (max-width: 860px){
    .leaflet-left{width: calc(100% - 10px);}
}

@media only screen and (max-width: 620px){
    /***************** Route Button *****************/
    .map-calc-route-button{margin-left: 55px; margin-right: 10px; max-width: calc(100% - 65px); width: calc(100% - 65px);}

    /***************** Route Button *****************/
    .map-overlay{margin-left: 50px; margin-right: 10px; max-width: calc(100% - 60px); width: calc(100% - 60px);}
}

@media only screen and (max-width: 240px){
    .map-calc-route-button__button{font-size: 0.8rem; padding: 5px;}
    .segment--map-4 p{font-size: 0.7rem !important; padding: 5px !important;}
}



/* required styles */

.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
	position: absolute;
	left: 0;
	top: 0;
	}
.leaflet-container {
	overflow: hidden;
	}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
	-webkit-user-select: none;
	   -moz-user-select: none;
	        user-select: none;
	  -webkit-user-drag: none;
	}
/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
	background: transparent;
}
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
	image-rendering: -webkit-optimize-contrast;
	}
/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
	width: 1600px;
	height: 1600px;
	-webkit-transform-origin: 0 0;
	}
.leaflet-marker-icon,
.leaflet-marker-shadow {
	display: block;
	}
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
	max-width: none !important;
	max-height: none !important;
	}
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
	max-width: none !important;
	max-height: none !important;
	width: auto;
	padding: 0;
	}

.leaflet-container img.leaflet-tile {
	/* See: https://bugs.chromium.org/p/chromium/issues/detail?id=600120 */
	mix-blend-mode: plus-lighter;
}

.leaflet-container.leaflet-touch-zoom {
	-ms-touch-action: pan-x pan-y;
	touch-action: pan-x pan-y;
	}
.leaflet-container.leaflet-touch-drag {
	-ms-touch-action: pinch-zoom;
	/* Fallback for FF which doesn't support pinch-zoom */
	touch-action: none;
	touch-action: pinch-zoom;
}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
	-ms-touch-action: none;
	touch-action: none;
}
.leaflet-container {
	-webkit-tap-highlight-color: transparent;
}
.leaflet-container a {
	-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}
.leaflet-tile {
	filter: inherit;
	visibility: hidden;
	}
.leaflet-tile-loaded {
	visibility: inherit;
	}
.leaflet-zoom-box {
	width: 0;
	height: 0;
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
	z-index: 800;
	}
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
	-moz-user-select: none;
	}

.leaflet-pane         { z-index: 400; }

.leaflet-tile-pane    { z-index: 200; }
.leaflet-overlay-pane { z-index: 400; }
.leaflet-shadow-pane  { z-index: 500; }
.leaflet-marker-pane  { z-index: 600; }
.leaflet-tooltip-pane   { z-index: 650; }
.leaflet-popup-pane   { z-index: 700; }

.leaflet-map-pane canvas { z-index: 100; }
.leaflet-map-pane svg    { z-index: 200; }

.leaflet-vml-shape {
	width: 1px;
	height: 1px;
	}
.lvml {
	behavior: url(#default#VML);
	display: inline-block;
	position: absolute;
	}


/* control positioning */

.leaflet-control {
	position: relative;
	z-index: 800;
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}
.leaflet-top,
.leaflet-bottom {
	position: absolute;
	z-index: 1000;
	pointer-events: none;
	}
.leaflet-top {
	top: 0;
	}
.leaflet-right {
	right: 0;
	}
.leaflet-bottom {
	bottom: 0;
	}
.leaflet-left {
	left: 0;
	}
.leaflet-control {
	float: left;
	clear: both;
	}
.leaflet-right .leaflet-control {
	float: right;
	}
.leaflet-top .leaflet-control {
	margin-top: 10px;
	}
.leaflet-bottom .leaflet-control {
	margin-bottom: 10px;
	}
.leaflet-left .leaflet-control {
	margin-left: 10px;
	}
.leaflet-right .leaflet-control {
	margin-right: 10px;
	}


/* zoom and fade animations */

.leaflet-fade-anim .leaflet-popup {
	opacity: 0;
	-webkit-transition: opacity 0.2s linear;
	   -moz-transition: opacity 0.2s linear;
	        transition: opacity 0.2s linear;
	}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
	opacity: 1;
	}
.leaflet-zoom-animated {
	-webkit-transform-origin: 0 0;
	    -ms-transform-origin: 0 0;
	        transform-origin: 0 0;
	}
svg.leaflet-zoom-animated {
	will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
	-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
	   -moz-transition:    -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
	        transition:         transform 0.25s cubic-bezier(0,0,0.25,1);
	}
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
	-webkit-transition: none;
	   -moz-transition: none;
	        transition: none;
	}

.leaflet-zoom-anim .leaflet-zoom-hide {
	visibility: hidden;
	}


/* cursors */

.leaflet-interactive {
	cursor: pointer;
	}
.leaflet-grab {
	cursor: -webkit-grab;
	cursor:    -moz-grab;
	cursor:         grab;
	}
.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
	cursor: crosshair;
	}
.leaflet-popup-pane,
.leaflet-control {
	cursor: auto;
	}
.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
	cursor: move;
	cursor: -webkit-grabbing;
	cursor:    -moz-grabbing;
	cursor:         grabbing;
	}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
	pointer-events: none;
	}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}

/* visual tweaks */

.leaflet-container {
	background: #ddd;
	outline-offset: 1px;
	}
.leaflet-container a {
	color: #0078A8;
	}
.leaflet-zoom-box {
	border: 2px dotted #38f;
	background: rgba(255,255,255,0.5);
	}


/* general typography */
.leaflet-container {
	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	}


/* general toolbar styles */

.leaflet-bar {
	box-shadow: 0 1px 5px rgba(0,0,0,0.65);
	border-radius: 4px;
	}
.leaflet-bar a {
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	width: 26px;
	height: 26px;
	line-height: 26px;
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
	}
.leaflet-bar a,
.leaflet-control-layers-toggle {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: block;
	}
.leaflet-bar a:hover,
.leaflet-bar a:focus {
	background-color: #f4f4f4;
	}
.leaflet-bar a:first-child {
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	}
.leaflet-bar a:last-child {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom: none;
	}
.leaflet-bar a.leaflet-disabled {
	cursor: default;
	background-color: #f4f4f4;
	color: #bbb;
	}

.leaflet-touch .leaflet-bar a {
	width: 30px;
	height: 30px;
	line-height: 30px;
	}
.leaflet-touch .leaflet-bar a:first-child {
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	}
.leaflet-touch .leaflet-bar a:last-child {
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
	}

/* zoom control */

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
	font: bold 18px 'Lucida Console', Monaco, monospace;
	text-indent: 1px;
	}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out  {
	font-size: 22px;
	}


/* layers control */

.leaflet-control-layers {
	box-shadow: 0 1px 5px rgba(0,0,0,0.4);
	background: #fff;
	border-radius: 5px;
	}
.leaflet-control-layers-toggle {
	background-image: url(../website/staticimages/layers.png);
	width: 36px;
	height: 36px;
	}
.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(../website/staticimages/layers-2x.png);
	background-size: 26px 26px;
	}
.leaflet-touch .leaflet-control-layers-toggle {
	width: 44px;
	height: 44px;
	}
.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
	display: none;
	}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
	display: block;
	position: relative;
	}
.leaflet-control-layers-expanded {
	padding: 6px 10px 6px 6px;
	color: #333;
	background: #fff;
	}
.leaflet-control-layers-scrollbar {
	overflow-y: scroll;
	overflow-x: hidden;
	padding-right: 5px;
	}
.leaflet-control-layers-selector {
	margin-top: 2px;
	position: relative;
	top: 1px;
	}
.leaflet-control-layers label {
	display: block;
	font-size: 13px;
	font-size: 1.08333em;
	}
.leaflet-control-layers-separator {
	height: 0;
	border-top: 1px solid #ddd;
	margin: 5px -10px 5px -6px;
	}

/* Default icon URLs */
.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */
	background-image: url(../website/staticimages/marker-icon.png);
	}


/* attribution and scale controls */

.leaflet-container .leaflet-control-attribution {
	background: #fff;
	background: rgba(255, 255, 255, 0.8);
	margin: 0;
	}
.leaflet-control-attribution,
.leaflet-control-scale-line {
	padding: 0 5px;
	color: #333;
	line-height: 1.4;
	}
.leaflet-control-attribution a {
	text-decoration: none;
	}
.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
	text-decoration: underline;
	}
.leaflet-attribution-flag {
	display: inline !important;
	vertical-align: baseline !important;
	width: 1em;
	height: 0.6669em;
	}
.leaflet-left .leaflet-control-scale {
	margin-left: 5px;
	}
.leaflet-bottom .leaflet-control-scale {
	margin-bottom: 5px;
	}
.leaflet-control-scale-line {
	border: 2px solid #777;
	border-top: none;
	line-height: 1.1;
	padding: 2px 5px 1px;
	white-space: nowrap;
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
	background: rgba(255, 255, 255, 0.8);
	text-shadow: 1px 1px #fff;
	}
.leaflet-control-scale-line:not(:first-child) {
	border-top: 2px solid #777;
	border-bottom: none;
	margin-top: -2px;
	}
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
	border-bottom: 2px solid #777;
	}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	box-shadow: none;
	}
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	border: 2px solid rgba(0,0,0,0.2);
	background-clip: padding-box;
	}


/* popup */

.leaflet-popup {
	position: absolute;
	text-align: center;
	margin-bottom: 20px;
	}
.leaflet-popup-content-wrapper {
	padding: 1px;
	text-align: left;
	border-radius: 12px;
	}
.leaflet-popup-content {
	margin: 13px 24px 13px 20px;
	line-height: 1.3;
	font-size: 13px;
	font-size: 1.08333em;
	min-height: 1px;
	}
.leaflet-popup-content p {
	margin: 17px 0;
	margin: 1.3em 0;
	}
.leaflet-popup-tip-container {
	width: 40px;
	height: 20px;
	position: absolute;
	left: 50%;
	margin-top: -1px;
	margin-left: -20px;
	overflow: hidden;
	pointer-events: none;
	}
.leaflet-popup-tip {
	width: 17px;
	height: 17px;
	padding: 1px;

	margin: -10px auto 0;
	pointer-events: auto;

	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
	background: white;
	color: #333;
	box-shadow: 0 3px 14px rgba(0,0,0,0.4);
	}
.leaflet-container a.leaflet-popup-close-button {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	text-align: center;
	width: 24px;
	height: 24px;
	font: 16px/24px Tahoma, Verdana, sans-serif;
	color: #757575;
	text-decoration: none;
	background: transparent;
	}
.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
	color: #585858;
	}
.leaflet-popup-scrolled {
	overflow: auto;
	}

.leaflet-oldie .leaflet-popup-content-wrapper {
	-ms-zoom: 1;
	}
.leaflet-oldie .leaflet-popup-tip {
	width: 24px;
	margin: 0 auto;

	-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
	filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
	}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
	border: 1px solid #999;
	}


/* div icon */

.leaflet-div-icon {
	background: #fff;
	border: 1px solid #666;
	}


/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
	position: absolute;
	padding: 6px;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 3px;
	color: #222;
	white-space: nowrap;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
	box-shadow: 0 1px 3px rgba(0,0,0,0.4);
	}
.leaflet-tooltip.leaflet-interactive {
	cursor: pointer;
	pointer-events: auto;
	}
.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	position: absolute;
	pointer-events: none;
	border: 6px solid transparent;
	background: transparent;
	content: "";
	}

/* Directions */

.leaflet-tooltip-bottom {
	margin-top: 6px;
}
.leaflet-tooltip-top {
	margin-top: -6px;
}
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
	left: 50%;
	margin-left: -6px;
	}
.leaflet-tooltip-top:before {
	bottom: 0;
	margin-bottom: -12px;
	border-top-color: #fff;
	}
.leaflet-tooltip-bottom:before {
	top: 0;
	margin-top: -12px;
	margin-left: -6px;
	border-bottom-color: #fff;
	}
.leaflet-tooltip-left {
	margin-left: -6px;
}
.leaflet-tooltip-right {
	margin-left: 6px;
}
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	top: 50%;
	margin-top: -6px;
	}
.leaflet-tooltip-left:before {
	right: 0;
	margin-right: -12px;
	border-left-color: #fff;
	}
.leaflet-tooltip-right:before {
	left: 0;
	margin-left: -12px;
	border-right-color: #fff;
	}

/* Printing */

@media print {
	/* Prevent printers from removing background-images of controls. */
	.leaflet-control {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
		}
	}


.leaflet-routing-container, .leaflet-routing-error {
    width: 320px;
    background-color: white;
    padding-top: 4px;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

.leaflet-control-container .leaflet-routing-container-hide {
    width: 32px;
    height: 32px;
}

.leaflet-routing-container h2 {
    font-size: 14px;
}

.leaflet-routing-container h3 {
    font-size: 12px;
    font-weight: normal;
}

.leaflet-routing-collapsible .leaflet-routing-geocoders {
    margin-top: 20px;
}

.leaflet-routing-alt, .leaflet-routing-geocoders, .leaflet-routing-error {
    padding: 6px;
    margin-top: 2px;
    margin-bottom: 6px;
    border-bottom: 1px solid #ccc;
    max-height: 320px;
    overflow-y: auto;
    transition: all 0.2s ease;
}

.leaflet-control-container .leaflet-routing-container-hide .leaflet-routing-alt, 
.leaflet-control-container .leaflet-routing-container-hide .leaflet-routing-geocoders {
    display: none;
}

.leaflet-bar .leaflet-routing-alt:last-child {
    border-bottom: none;
}

.leaflet-routing-alt-minimized {
    color: #888;
    max-height: 64px;
    overflow: hidden;
    cursor: pointer;
}

.leaflet-routing-alt table {
    border-collapse: collapse;
}

.leaflet-routing-alt tr:hover {
    background-color: #eee;
    cursor: pointer;
}

.leaflet-routing-alt::-webkit-scrollbar {
    width: 8px;
}

.leaflet-routing-alt::-webkit-scrollbar-track {
    border-radius: 2px;
    background-color: #eee;
}

.leaflet-routing-alt::-webkit-scrollbar-thumb {
    border-radius: 2px;
    background-color: #888;
}

.leaflet-routing-icon {
    background-image: url('../website/staticimages/leaflet.routing.icons.png');
    -webkit-background-size: 240px 20px;
    background-size: 240px 20px;
    background-repeat: no-repeat;
    margin: 0;
    content: '';
    display: inline-block;
    vertical-align: top;
    width: 20px;
    height: 20px;
}

.leaflet-routing-icon-continue         { background-position: 0 0; }
.leaflet-routing-icon-sharp-right      { background-position: -20px 0; }
.leaflet-routing-icon-turn-right       { background-position: -40px 0; }
.leaflet-routing-icon-bear-right       { background-position: -60px 0; }
.leaflet-routing-icon-u-turn           { background-position: -80px 0; }
.leaflet-routing-icon-sharp-left       { background-position: -100px 0; }
.leaflet-routing-icon-turn-left        { background-position: -120px 0; }
.leaflet-routing-icon-bear-left        { background-position: -140px 0; }
.leaflet-routing-icon-depart           { background-position: -160px 0; }
.leaflet-routing-icon-enter-roundabout { background-position: -180px 0; }
.leaflet-routing-icon-arrive           { background-position: -200px 0; }
.leaflet-routing-icon-via              { background-position: -220px 0; }

.leaflet-routing-geocoders div {
    padding: 4px 0px 4px 0px;
}

.leaflet-routing-geocoders input {
    width: 303px;
    width: calc(100% - 4px);
    line-height: 1.67;
    border: 1px solid #ccc;
}

.leaflet-routing-geocoders button {
    font: bold 18px 'Lucida Console', Monaco, monospace;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: white;
    margin: 0;
    margin-right: 3px;
    float: right;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.leaflet-routing-add-waypoint:after {
    content: '+';
}

.leaflet-routing-reverse-waypoints:after {
    font-weight: normal;
    content: '\21c5';
}

.leaflet-routing-geocoders button:hover {
    background-color: #eee;
}

.leaflet-routing-geocoders input,.leaflet-routing-remove-waypoint,.leaflet-routing-geocoder {
    position: relative;
}

.leaflet-routing-geocoder-result {
    font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
    position: absolute;
    max-height: 0;
    overflow: hidden;
    transition: all 0.5s ease;
    z-index: 1000; /* Arbitrary, but try to be above "most" things. */
}

.leaflet-routing-geocoder-result table {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 0 0 4px 4px;
    background-color: white;
    cursor: pointer;
}

.leaflet-routing-geocoder-result-open {
    max-height: 800px;
}

.leaflet-routing-geocoder-selected, .leaflet-routing-geocoder-result tr:hover {
    background-color: #eee;
}

.leaflet-routing-geocoder-no-results {
    font-style: italic;
    color: #888;
}

.leaflet-routing-remove-waypoint {
    background-color: transparent;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
}

.leaflet-routing-remove-waypoint:after {
    position: absolute;
    display: block;
    width: 15px;
    height: 1px;
    z-index: 1;
    right: 1px;
    top: 4px;
    bottom: 0;
    margin: auto;
    padding: 2px;
    font-size: 18px;
    font-weight: bold;
    content: "\00d7";
    text-align: center;
    cursor: pointer;
    color: #ccc;
    background: white;
    padding-bottom: 16px;
    margin-top: -16px;
    padding-right: 4px;
    line-height: 1;
}

.leaflet-routing-remove-waypoint:hover {
    color: black;
}

.leaflet-routing-instruction-distance {
    width: 48px;
}

.leaflet-routing-collapse-btn {
    position: absolute;
    top: 0;
    right: 6px;
    font-size: 24px;
    color: #ccc;
    font-weight: bold;
}

.leaflet-routing-collapse-btn:after {
    content: '\00d7';
}

.leaflet-routing-container-hide .leaflet-routing-collapse-btn {
    position: relative;
    left: 4px;
    top: 4px;
    display: block;
    width: 26px;
    height: 23px;
    background-image: url('../website/staticimages/routing-icon.png');
}

.leaflet-routing-container-hide .leaflet-routing-collapse-btn:after {
    content: none;
}

.leaflet-top .leaflet-routing-container.leaflet-routing-container-hide {
    margin-top: 10px !important;
}
.leaflet-right .leaflet-routing-container.leaflet-routing-container-hide {
    margin-right: 10px !important;
}
.leaflet-bottom .leaflet-routing-container.leaflet-routing-container-hide {
    margin-bottom: 10px !important;
}
.leaflet-left .leaflet-routing-container.leaflet-routing-container-hide {
    margin-left: 10px !important;
}

@media only screen and (max-width: 640px) {
    .leaflet-routing-container {
        margin: 0 !important;
        padding: 0 !important;
        width: 100%;
        height: 100%;
    }
}


.leaflet-control-geocoder{border-radius:4px;background:#fff;min-width:26px;min-height:26px}.leaflet-touch .leaflet-control-geocoder{min-width:30px;min-height:30px}.leaflet-control-geocoder a,.leaflet-control-geocoder .leaflet-control-geocoder-icon{border-bottom:none;display:inline-block}.leaflet-control-geocoder .leaflet-control-geocoder-alternatives a{width:inherit;height:inherit;line-height:inherit}.leaflet-control-geocoder a:hover,.leaflet-control-geocoder .leaflet-control-geocoder-icon:hover{border-bottom:none;display:inline-block}.leaflet-control-geocoder-form{display:none;vertical-align:middle}.leaflet-control-geocoder-expanded .leaflet-control-geocoder-form{display:inline-block}.leaflet-control-geocoder-form input{font-size:120%;border:0;background-color:transparent;width:246px}.leaflet-control-geocoder-icon{border-radius:4px;width:26px;height:26px;border:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.2 13l3.4 6.6c.6 1.1 2.5-.4 2-1.2l-4-6.2z'/%3E%3Ccircle cx='10.8' cy='8.9' r='3.9' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;cursor:pointer}.leaflet-touch .leaflet-control-geocoder-icon{width:30px;height:30px}.leaflet-control-geocoder-throbber .leaflet-control-geocoder-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' stroke='%23000' stroke-linecap='round' stroke-width='1.6' viewBox='0 0 24 24'%3E%3Cdefs/%3E%3Cg%3E%3Cpath stroke-opacity='.1' d='M14 8.4l3-5'/%3E%3Cpath stroke-opacity='.2' d='M15.6 10l5-3'/%3E%3Cpath stroke-opacity='.3' d='M16.2 12H22'/%3E%3Cpath stroke-opacity='.4' d='M15.6 14l5 3m-6.5-1.4l2.9 5'/%3E%3Cpath stroke-opacity='.5' d='M12 16.2V22m-2-6.4l-3 5'/%3E%3Cpath stroke-opacity='.6' d='M8.4 14l-5 3'/%3E%3Cpath stroke-opacity='.7' d='M7.8 12H2'/%3E%3Cpath stroke-opacity='.8' d='M8.4 10l-5-3'/%3E%3Cpath stroke-opacity='.9' d='M10 8.4l-3-5'/%3E%3Cpath d='M12 7.8V2'/%3E%3CanimateTransform attributeName='transform' calcMode='discrete' dur='1s' repeatCount='indefinite' type='rotate' values='0 12 12;30 12 12;60 12 12;90 12 12;120 12 12;150 12 12;180 12 12;210 12 12;240 12 12;270 12 12;300 12 12;330 12 12'/%3E%3C/g%3E%3C/svg%3E")}.leaflet-control-geocoder-form-no-error{display:none}.leaflet-control-geocoder-form input:focus{outline:none}.leaflet-control-geocoder-form button{display:none}.leaflet-control-geocoder-error{margin-top:8px;margin-left:8px;display:block;color:#444}.leaflet-control-geocoder-alternatives{display:block;width:272px;list-style:none;padding:0;margin:0}.leaflet-control-geocoder-alternatives-minimized{display:none;height:0}.leaflet-control-geocoder-alternatives li{white-space:nowrap;display:block;overflow:hidden;padding:5px 8px;text-overflow:ellipsis;border-bottom:1px solid #ccc;cursor:pointer}.leaflet-control-geocoder-alternatives li a,.leaflet-control-geocoder-alternatives li a:hover{width:inherit;height:inherit;line-height:inherit;background:inherit;border-radius:inherit;text-align:left}.leaflet-control-geocoder-alternatives li:last-child{border-bottom:none}.leaflet-control-geocoder-alternatives li:hover,.leaflet-control-geocoder-selected{background-color:#f5f5f5}.leaflet-control-geocoder-address-context{color:#666}


/* Product View Page */
.product{display: flex; flex-wrap: wrap; justify-content: space-between; padding-top: 30px;}
.product__wrapper{width: 60%; padding: 3rem 0 3rem 0;}
.product__breadcrumb{order: 1; font-size: 0.9rem; margin-bottom: 0;}
.product__overview-container{order: 2; display: flex; flex-wrap: wrap; justify-content: space-between}
.product__overview{order: 2; width: 48%;}
.product__images{order: 1; width: 48%;}
.product__content{order: 4; border-top: 1px solid #DDD; margin-top: 40px;}
.product__techspecs{order: 5; background-color: #f7f7f7; margin-top: 40px;}
.product__recentlyviewed{order: 6;}
.product__wrapper--recentlyviewed{}
.product__morelikethis{order: 7; width: 60%; margin: 2rem 20% 0 20%; border-top: 1px solid #DDD; padding-top: 2rem;}

.product__wrapper--recentlyviewed{width: 73%;}

.product__breadcrumb a{color: inherit; text-decoration: none;}
.product__breadcrumb a:hover{text-decoration: underline;}

.product__heading{margin-bottom: 0; font-size: 4rem; line-height: 4rem; letter-spacing: normal;}
.product__catalogue-number{margin: 0 0 1.4rem 0; font-size: 0.8rem; }
.product__price{font-size: 1.6rem; }
.product__price-special{color: #ff0000;}

.product__images__main-image{height: 400px; width: 100%; background-size: cover; background-position: center center; background-color: #111;}
.product__images__main-image--activated{cursor: pointer;}
.product__images__thumbs{display: flex; width: 100%; flex-wrap: wrap;}
.product__images__thumb{height: 100px; width: 18%; margin: 20px 0 0 10px; background-size: cover; background-position: center center;}
.product__images__thumb--activated{cursor: pointer;}
.product__images__zoom-image{width: 100%; height: 80vh; background-position: center center; background-size: cover;}

.product__content *:last-child{margin-bottom: 0;}

.product__section-heading{margin-bottom: 2rem; font-size: 2rem; line-height: 2rem; letter-spacing: normal;}

.product__techspecs-list{font-size: 1.2rem; list-style: none; margin: 0; padding: 0 !important;}
.product__techspecs-list__item {margin: 0; padding: 5px 50% 5px 10px; border-bottom: 1px solid #DDD; position: relative; font-weight: 200; color: #5d5d5d; text-align: left;}
.product__techspecs-list__item__detail {margin: 0; padding: 0 0 0 10px; border-left: 1px solid #DDD; position: absolute; right: 0; width: calc(50% - 20px);}


/* Product Listings Display */
.product-list-heading{font-size: 1.4rem; letter-spacing: normal; font-weight: 400; line-height: 2.6rem; margin-bottom: 0; }
.product-list-introduction{background: #F0F0F0; border: 5px solid #DDD; border-width: 5px 0; margin-bottom: 15px; padding: 20px}
.product-list-introduction p{font-size: 0.9rem; margin: 0; line-height: 1.4rem;}

.product-list{padding-bottom: 25px; display: grid; gap: 20px; grid-template-columns: calc(25% - 15px) calc(25% - 15px) calc(25% - 15px) calc(25% - 15px); grid-template-rows: auto;}
.product-list__product{margin-bottom: 30px; cursor: pointer; position: relative;}
.product-list__product__image{width: 100%; background-size: cover; height: 300px; background-position: center center;}
.product-list__product__title{letter-spacing: normal; padding: 15px 0 5px 0; margin: 0; border-bottom: 1px solid #DDD; font-size: 1.2rem;}
.product-list__product__briefdescription {font-size:0.95rem; line-height: 1.4rem}
.product-list__product__link{text-decoration: none}
.product-list__product__price{padding: 5px 0; margin: 0; border-bottom: 1px solid #DDD; font-size: 1rem; font-weight: 800;}
.product-list__product__price-special{color: #ff0000}


/* Product filter display */
.filter-heading{font-size: 1.4rem; letter-spacing: normal; font-weight: 400; border-bottom: 5px solid #EAEAEA;}

.form--filter__section{margin-bottom: 20px}
.form--filter__section--search-wrapper{display: none;}

.form--filter__search-tags__item{background-color: #DDD; border-radius: 5px; padding: 2px 20px 2px 5px; display: inline-block; margin-top: 5px; position: relative;}
.form--filter__search-tags__item__remove{font-size: 0.7rem; position: absolute; right: 5px; top: 0; color: #60B53E; font-weight: 600; cursor: pointer;}

.form--filter__heading{color: #60B53E; font-size: 1rem; font-weight: 600; line-height: 1.8rem; letter-spacing: normal; border-top: 1px solid #EEE; padding-top: 10px; margin-top: 10px;}
.form--filter__heading:first-of-type{border-top: none;}

.form--filter .form--filter__section .form--filter__category-item-input{display: inline-block !important; margin-right: 5px; width: 20px; height: 24px; bottom: 1px; vertical-align: middle;}
.form--filter .form--filter__section .form--filter__category-item-label{display: inline-block !important; height: 20px; font-size: 0.95rem; }

.form--filter__submit--hidden{display: none;}

/* Product filter sort by specifics */
.form--filter__section--hidden{display: none;}
.form--filter__section--sort-by-in-page{position: absolute; top: 0; right: 0;}

/* Filter update display changes*/
.product-list--refreshing{opacity: 0.5}
.form--filter--refreshing{opacity: 0.5}

/* Responsive styles */
@media only screen and (max-width: 1390px) {
    .product{margin: 0 10px;}
}

@media only screen and (max-width: 1000px) {
    .product-list{grid-template-columns: calc(100% / 3 - 40px / 3) calc(100% / 3 - 40px / 3) calc(100% / 3 - 40px / 3);}
}

@media only screen and (max-width: 840px) {
    .product__images{width: 100%; margin-bottom: 20px;}
    .product__overview{width: 100%;}

    .form--filter__section--sort-by-in-page{position: relative;}
    .form--filter__section--category-wrapper{display: flex; flex-wrap: wrap; justify-content: space-between; text-align: left;}
    .form--filter__heading{padding-top: 0; margin-top: 0;}
}

@media only screen and (max-width: 640px) {
    .product-list{grid-template-columns: calc(100% / 2 - 20px / 2) calc(100% / 2 - 20px / 2);}
}

@media only screen and (max-width: 500px) {
    .product-list{grid-template-columns: 100%;}
}

/* Add to basket form */
.add-to-basket-form{margin-top: 20px; border-top: 1px solid #DDD; margin-top: 2rem; padding-top: 1.5rem;}
.add-to-basket-form__quantity-label{display: inline-block; font-weight: 400; font-size: 1.2rem;margin-right: 1rem;}
.add-to-basket-form__quantity{display: inline-block; width: 40px;}
.add-to-basket-form__add{display: inline-block; font-size: 1.6rem; width: 100%; color: #FFF; background-color: #1F1B42; border: none; padding: 20px 0; margin-top: 20px; transition: background-color 0.2s linear, color 0.2s linear;}
.add-to-basket-form__add:hover{background-color: #4e4e4e;}

.add-to-basket-form--listing{display: none; position: absolute; top: 232px; width: 100%; background-color: rgba(100, 100, 100, 0.5); padding: 20px 0; border-top: none; margin-top: 0; text-align: center;}
.product-list__product:hover .add-to-basket-form--listing{display: block;}
.add-to-basket-form--listing .add-to-basket-form__quantity-label{display: none;}
.add-to-basket-form--listing .add-to-basket-form__add{width: 100px; height: 28px; padding: 0; margin: 0; font-size: 1rem;}

.product-out-of-stock{background-color: rgba(0, 0, 0, 0.9); padding: 20px 0;  color: #FFF; font-weight: 800; text-align: center; margin-top: 20px;}
.product-out-of-stock--listing{position: absolute; top: 232px; width: 100%; margin-top: 0;}

/* Basket Overlay */
.basket-overlay{width: 100%; height: 100vh; background: rgba(0, 0, 0, 0.7); position: fixed; z-index: 11000; top: 0; left: 0; display: none;}
.basket-overlay--reveal{display: block;}

/* Underlying basket styles */
.basket{}
.basket__heading{font-size: 2rem; text-align: center; margin: 0 0 1rem 0;}
.basket__checkout{width: 100%; background-color: #4DAF41; color: #FFF; display: block; text-align: center; text-decoration: none; padding: 10px 0; font-size: 2rem;}
.basket__checkout:hover{color: #FFF; text-decoration: underline;}
.basket__items{width: 100%; margin-bottom: 10px;}
.basket__item-total{margin: 2rem 0 1rem 0; font-size: 1.2rem; }
.basket__item-total-desc{text-align: left; display: inline-block; width: 50%;}
.basket__item-total-amount{text-align: right; display: inline-block; width: 50%}
.basket__discount{margin: 1rem 0; padding-top: 1rem; font-size: 1.2rem; border-top: 2px solid #EEE}
.basket__discount-desc{text-align: left; display: inline-block; width: 50%;}
.basket__discount-amount{text-align: right; display: inline-block; width: 50%}
.basket__discount-option-desc{font-size: 0.8rem; font-style: italic; line-height: 1.2rem; display: block;}
.basket__delivery{margin: 1rem 0; font-size: 1.2rem;}
.basket__delivery-desc{text-align: left; display: inline-block; width: 50%;}
.basket__delivery-amount{text-align: right; display: inline-block; width: 50%}
.basket__delivery-type-desc{font-size: 0.8rem; font-style: italic; line-height: 1.2rem; display: block;}
.basket__vat{margin: 1rem 0; font-size: 1.2rem;}
.basket__vat-desc{text-align: left; display: inline-block; width: 40%;}
.basket__vat-amount{text-align: right; display: inline-block; width: 60%}
.basket__total{margin: 1rem 0; font-size: 1.6rem;}
.basket__total-desc{text-align: left; display: inline-block; width: 40%;}
.basket__total-amount{text-align: right; display: inline-block; width: 60%}
.basket__checkout--error-message{font-size: 1rem; text-align: center; color: #FFF; background-color: #A00; padding: 10px; line-height: 1.5rem; }

.basket__item{}
.basket__item__image{}
.basket__item__details{}
.basket__item__description{}
.basket__item__quantity{}
.basket__item__line-price{}
.basket__item_remove{cursor: pointer;}


/* Mini basket styles */
.basket--mini{display: none; position: fixed; right: 0; top: 0; height: 100vh; z-index: 11001; width: calc(600px - 40px); background-color: #f2f2f2; padding: 0; }
.basket--mini--reveal{display: block}
.basket--mini__close{cursor: pointer; display: block; position: absolute; z-index: 11002; right: 10px; top: 10px; text-align: center; font-size: 1.2rem; color: #444; padding-top: 10px; font-weight: 400; font-family: Arial}

.basket--mini__summary{display: flex !important; flex-wrap: wrap; justify-content: space-between; margin: 0; background-color: #FFF; padding: 20px !important; border-bottom: none !important; width: calc(100% - 40px) !important;  align-items: flex-end; position: relative !important; top: 0 !important;}
.basket--mini__summary--bottom{background-color: #F2F2F2; border-top: none !important}
.basket--mini__heading{color: #111; font-size: 2rem; text-align: left; width: 100%;}
.basket--mini__checkout{width: 40%; }
.basket--mini__item-total{width: 55%; font-size: 1rem; display: flex; justify-content: space-between; align-items: stretch; align-content: center; margin: auto 0 !important; border: 1px solid #DDD; border-width: 1px 0;/*! height: 100%; */}
.basket--mini__item-total-desc{width: auto; color: #111; font-size: 0.8rem; display: block; padding: 14px 0;}
.basket--mini__item-total-amount{width: auto; text-align: right; font-weight: 600; margin: auto 0; color: #111;}

.basket--mini__items{background-color: #FFF; max-height: calc(100vh - 266px); overflow-y: auto; margin-bottom: 30px; padding: 0 20px; width: calc(100% - 40px);}
.basket--mini__item{padding-bottom: 10px; margin: 0 0 16px 0;  border-bottom: 1px solid #DDD; cursor: pointer; width: 100%;}
.basket--mini__item:last-child{margin: 0;}
.basket--mini__item__image{display: inline-block; width: 40%; min-height: 120px; background-size: cover; background-position: center center; background-color: #DDD;}
.basket--mini__item__details{display: inline-block; width: calc(60% - 20px); margin-left: 15px; vertical-align: top; position: relative; }
.basket--mini__item__description{display: block; color: #111; font-size: 1.6rem; max-width: 90%; }
.basket--mini__item__description__link{text-decoration: none; color: #111;}
.basket--mini__item__quantity{display: block; font-size: 1.2rem; margin-top: 1rem;}
.basket--mini__item__line-price{display: block; text-align: right; font-size: 1.6rem; margin-top: -1.8rem}
.basket--mini__item_remove{position: absolute; top: 0; right: 0; font-family: Arial;}

.basket--mini__totals{background-color: #FFF;}
.basket--mini__total{padding-bottom: 10px; margin: 0;}
.basket__total__details{display: flex; flex-direction: row; justify-content: space-between;}
.basket--mini__total__description{}
.basket--mini__total__line-price{}





/* Masthead basket styles */
.basket--masthead{position: absolute; top: 15px; right: 15px; z-index: 2000; cursor: pointer;}
.basket--masthead__count-icon{width: 30px; color: #fff; display: inline-block; vertical-align: middle; margin-right: 9px}
.basket--masthead__count{position: absolute; top: 0; left: 20px; min-width: 12px; text-align: center; background-color: #60b53e; border-radius: 50%; color: #fff; padding: 1px 0 0 0; font-size: 0.7rem; width: 16px; height: 15px;}
.basket--masthead__count--empty{display: none;}

/* Standard (Full page) basket styles */
.basket--standard__heading{border-bottom: 1px solid #DDD; padding-bottom: 10px; margin-bottom: 40px;}

.basket--standard__items{display: inline-block; width: 65%; vertical-align: top; margin-right: 5%; min-height: 400px;}
.basket--standard__item{padding: 20px 0; margin-bottom: 10px; border-bottom: 1px solid #DDD;}
.basket--standard__item:last-child{border-bottom: none;}
.basket--standard__item__image{display: inline-block; width: 20%; min-height: 150px; background-size: cover; background-position: center center; background-color: #DDD;}
.basket--standard__item__details{display: inline-block; min-height: 150px; width: calc(80% - 20px); margin-left: 15px; vertical-align: top; position: relative;}
.basket--standard__item__description{display: block; max-width: 80%; font-size: 1.6rem;}
.basket--standard__item__description__link{text-decoration: none;}
.basket--standard__item__quantity{display: block;}
.basket__item__quantity-wrapper{display: block; position: absolute; bottom: 0; left: 0; font-size: 1.2rem;}
.basket--standard__item__line-price{display: block; position: absolute; bottom: 0; right: 0; font-size: 1.6rem;}
.basket--standard__item_remove{position: absolute; top: 0; right: 0; text-decoration: underline;}

.basket--standard__empty{display: block; margin: 2rem 0;}

.basket_update-button{width: 100%; background-color: #4DAF41; color: #FFF; display: block; text-align: center; text-decoration: none; padding: 10px 0; font-size: 2rem; border: none;}

.basket__summary{display: inline-block; width: calc(29% - 60px); border: 1px solid #DDD; padding: 10px 30px; vertical-align: top; position: -webkit-sticky; position: sticky; top: 20px; }
.basket__summary__heading{font-size: 1.8rem;}

.basket__delivery-options{border: 1px solid #DDD; border-width: 1px 0; padding: 10px 0;}
.basket__delivery-options__label{text-align: left; display: inline-block; width: 48%; font-weight: normal; font-size: 0.9rem; color: #1F1B42;}
.basket__delivery-options__select{display: inline-block; width: 50%;}
.basket__delivery-options__button{width: 50.1%; border-radius: 0; margin: 5px 0 0 49.1%; border: none; background-color: #4DAF41; color: #FFF; padding: 5px 0; font-size: 1.2rem;}

.basket__discount-options{border: 1px solid #DDD; border-width: 1px 0; padding: 10px 0;}
.basket__discount-options__label{text-align: left; display: inline-block; width: 48%; font-weight: normal; font-size: 0.9rem; color: #1F1B42;}
.basket__discount-options__input{display: inline-block; width: 50%;}
.basket__discount-options__button{width: 50.1%; border-radius: 0; margin: 5px 0 0 49.1%; border: none; background-color: #4DAF41; color: #FFF; padding: 5px 0; font-size: 1.2rem;}


/* Added to basket styles */
.basket-added__heading{border-bottom: 1px solid #DDD; padding-bottom: 15px; margin: 20px 0; text-align: center; font-size: 1.6rem; color: #111}
.basket-added__item__image{display: inline-block; width: 40%; margin-left: 2.5%; min-height: 200px; background-size: cover; background-position: center center; background-color: #DDD;}
.basket-added__item{display: inline-block; width: 51%; margin-left: 2.5%; vertical-align: top; position: relative;  min-height: 200px;}
.basket-added__item__description{display: block; font-size: 1.6rem;}
.basket-added__item__quantity{display: block; font-size: 1.2rem; margin-top: 1rem;}
.basket-added__item__line-price{display: block; font-size: 1.6rem; text-align: right; margin-top: -1.8rem}
.basket-added__options{width: 95%; margin: 13px 2.5% 15px 2.5%; display: flex; justify-content: space-between;}
.basket-added__option{display: block; width: 31.5%; background-color: #111; color: #FFF; text-align: center; font-size: 1.5rem;  padding: 20px 0; text-decoration: none; cursor: pointer}
.basket-added__options--two-options .basket-added__option{width: 48%; margin-right: 2%;}
.basket-added__option--checkout{background-color: #4DAF41; color: #FFF;}
.basket-added__option:last-child{margin-right: 0;}
.basket-added__option:hover{text-decoration: underline; color: #FFF;}



.block--header--checkout{margin-bottom: 0;}
.block--header__12widecol--checkout{text-align: center; justify-content: center; border-bottom: 1px solid #E8E8E8; margin: 0; width: 100%;}
.segment--checkout{padding: 0;}

.checkout-wrapper{display: flex; justify-items: flex-start; flex-wrap: nowrap; height: calc(100vh - 96px)}
.checkout-col{padding-top: 20px;}
.checkout-col--left{width: calc(60% - 50px); padding-right: 50px;}
.checkout-col--right{width: calc(40% - 51px); padding-left: 50px; border-left: 1px solid #E8E8E8;}

.checkout-heading{text-align: center; letter-spacing: normal;}

.checkout-progress{display: flex; margin: 0; padding: 0 !important; list-style: none; justify-content: space-between; width: 100%; }
.checkout-progress:before{content: " "; display: block; width: 50%; border-top: 1px solid #111; height: 10px; position: absolute; margin-top: 10px;}
.checkout-progress__stage{/*! width: 300px; */ font-size: 1rem; line-height: 1rem;  margin: 0; padding: 0 20px; background-color: #FFF; z-index: 10}
.checkout-progress__stage:first-child{padding-left: 0;}
.checkout-progress__stage:last-child{padding-right: 0;}
.checkout-progress__stage__circle{display: inline-block; width: 20px; height: 16px; padding-top: 4px; font-family: Arial; border-radius: 50%; border: 1px solid #111; color: #111; background-color: #FFF; text-align: center; margin-right: 10px; font-size: 0.7rem; line-height: 0.7rem}
.checkout-progress__stage__circle--active{background-color: #111; color: #FFF; }
.checkout-progress__stage__desc{display: inline-block; line-height: 1rem; color: #666;}
.checkout-progress__stage__desc--active{color: #111;}

.checkout-condensed{margin: 2rem 0; padding: 5px 0; border: 1px dotted #A9A9A9; font-family: Arial;}
.checkout-condensed:empty{display: none}
.checkout-condensed__entry{display: flex; position: relative; color: #999; font-size: 0.8rem;}
.checkout-condensed__entry:last-child{border-bottom: none;}
.checkout-condensed__entry__title{width: calc(20% - 21px); padding: 5px 10px 10px 10px; border-right: 1px dotted #A9A9A9; text-align: right;}
.checkout-condensed__entry__desc{width: calc(70% - 20px); padding: 5px 10px 10px 10px; }
.checkout-condensed__entry__edit-wrapper{width: calc(5% - 20px); padding: 5px 10px 10px 10px; }
.checkout-condensed__entry__edit{color: #60B53E; cursor: pointer; display: inline-block; margin-left: 5px;}
.checkout-condensed__entry__edit:hover{text-decoration: underline;}

.checkout-form__section{}
.checkout-form__section--inactive{display: none;}
.checkout-form__section--active{display: block;}

.checkout-form__section{margin: 2rem 0 3rem 0; font-family: Helvetica, sans-serif !important}
.checkout-form__header{font-size: 1rem; letter-spacing: normal; font-weight: 600; color: #333; margin-bottom: 0;}
.checkout-form__intro-text{font-size: 0.8rem; line-height: 1.2rem; color: #333; letter-spacing: normal; margin: 0;}

.checkout-form__fields{margin: 1rem 0; display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap}

.checkout-form__buttons-wrapper{display: none; justify-content: space-between; align-items: flex-end}
.checkout-form__buttons-wrapper--right{justify-content: right;}
.checkout-form__section--active .checkout-form__buttons-wrapper{display: flex;}
.checkout-form__button{display: block; cursor: pointer }
.checkout-form__button--backward{color: #777; text-align: center; font-size: 0.8rem; font-weight: 600; border-bottom: 1px solid #777;}
.checkout-form__button--forward{background-color: #111; text-align: center; color: #FFF; font-weight: 600; padding: 20px 0; width: 10rem; }

.checkout-form__input-wrapper{position: relative; margin-bottom: 0.5rem;}
.checkout-form__input-wrapper--100{width: 100%;}
.checkout-form__input-wrapper--50{width: 49%;}
.checkout-form__label{font-size: 0.7rem; color: #888; position: absolute; top: 7px; left: 10px; text-transform: capitalize !important}
.checkout-form__input{padding: 25px 10px 5px 10px; border-radius: 5px; border: 1px solid #CCC; width: 100%}

.checkout-form__input-wrapper--billingsameasdelivery{padding: 1rem 0; display: none;}
.checkout-form__input-wrapper--billingsameasdelivery--active{display: block;}
.checkout-form__label--billingsameasdelivery{width: auto; display: inline-block; position: relative; top: 1px; font-size: 1rem; font-weight: 600; color: #333;}
.checkout-form__input--billingsameasdelivery{width: auto; display: inline-block; border: 1px solid #333 !important;}
.checkout-form__paragraph-billing-address{font-size: 0.8rem; line-height: 1.2rem; color: #333; letter-spacing: normal; margin: 0; margin: -10px 0 0 28px; border: 1px solid #FFEFD5; padding: 20px; width: auto; background-color: #FFFFE0; display: inline-block; min-width: 150px}

.checkout-form__input--checkbox{width: 5%; margin: 2.1rem 0 0 0; padding: 0; display: inline-block; vertical-align: top;}
.checkout-form__label--checkbox{width: 94%; margin: 2rem 0 0 0; color: #555;  text-transform: none !important; position: relative; top: auto; left: auto; display: inline-block; font-size: 0.9rem; vertical-align: top; line-height: 1.2rem}

/* Clean up the selects across all browsers */
.checkout-form__input-wrapper select{height: 55px; padding: 25px 5px 10px; border-radius: 5px; border: 1px solid #CCC; width: 100%; margin: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: url(../images/arrow-down.svg) no-repeat #EEE; background-position: 99% 100%; background-size: 4%;}
/* Remove default arrow in Internet Explorer 10 and 11, then Target Internet Explorer 9 to undo the custom arrow */
.checkout-form__input-wrapper select::-ms-expand {display: none;}
@media screen and (min-width:0\0) {
    .checkout-form__input-wrapper select {
        background: none\9;
        padding: 5px\9;
    }
}

.checkout-form__submit{border: none; background-color: #111; text-align: center; color: #FFF; font-weight: 600; padding: 20px 0; width: 10rem; float: right; text-shadow: none;}
.checkout-form__submit--inactive{display: none;}

.checkout-form__payment-buttons{display: flex; flex-wrap: wrap; margin: 1rem 0; padding: 0 !important; list-style: none; justify-content: space-between; width: 100%; font-size: 0.8rem}
.checkout-form__payment-button{display: block; background-color: #111 !important; text-align: center; color: #FFF !important; font-weight: 600; padding: 20px 0 !important; width: 10rem; cursor: pointer;}
.checkout-form__payment-button:hover{text-decoration: underline;}

.checkout-form__error-message{font-size: 1rem; color: #A00; font-weight: 600; width: 100%; margin-bottom: 1rem;}
.checkout-form__error-list{margin: 0;}
.checkout-form__error-item{margin: 0; color: #A00; font-size: 0.8rem; color: #A00; font-weight: 600; line-height: 1.4rem;}

/* Checkout - Summary */
.checkout-summary{font-family: 'Roboto', sans-serif;}
.checkout-summary__heading{font-size: 2rem; text-align: left; margin: 0 0 1rem 0;}
.checkout-summary__checkout{width: 100%; background-color: #4DAF41; color: #FFF; display: block; text-align: center; text-decoration: none; padding: 10px 0; font-size: 2rem;}
.checkout-summary__checkout:hover{color: #FFF; text-decoration: underline;}
.checkout-summary__item-total{margin: 2rem 0 1rem 0; font-size: 1.2rem; }
.checkout-summary__item-total-desc{text-align: left; display: inline-block; width: 50%;}
.checkout-summary__item-total-amount{text-align: right; display: inline-block; width: 50%}
.checkout-summary__discount{margin: 1rem 0; padding-top: 1rem; font-size: 1.2rem; border-top: 2px solid #EEE}
.checkout-summary__discount-desc{text-align: left; display: inline-block; width: 50%;}
.checkout-summary__discount-amount{text-align: right; display: inline-block; width: 50%}
.checkout-summary__discount-option-desc{font-size: 0.8rem; font-style: italic; line-height: 1.2rem; display: block;}
.checkout-summary__delivery{margin: 1rem 0; font-size: 1.2rem;}
.checkout-summary__delivery-desc{text-align: left; display: inline-block; width: 50%;}
.checkout-summary__delivery-amount{text-align: right; display: inline-block; width: 50%}
.checkout-summary__delivery-type-desc{font-size: 0.8rem; font-style: italic; line-height: 1.2rem; display: block;}
.checkout-summary__vat{margin: 1rem 0; font-size: 1.2rem;}
.checkout-summary__vat-desc{text-align: left; display: inline-block; width: 40%;}
.checkout-summary__vat-amount{text-align: right; display: inline-block; width: 60%}
.checkout-summary__total{margin: 0 0 15px 0; font-size: 1.6rem;}
.checkout-summary__total-desc{text-align: left; display: inline-block; width: 40%;}
.checkout-summary__total-amount{text-align: right; display: inline-block; width: 60%}

.checkout-summary__total__details {display:flex;}
.checkout-summary__total__description {flex: 1 1 50%;}
.checkout-summary__total__line-price {flex: 1 1 50%; text-align: right}

.checkout-summary__checkout--error-message{font-size: 1rem; text-align: center; color: #FFF; background-color: #A00; padding: 10px; line-height: 1.5rem; }
.checkout-summary__editbasketlink {font-size: 0.8rem; margin-top: -10px;}
.checkout-summary__editbasketlink a {}

.checkout-summary__items{background-color: #FFF; max-height: calc(100vh - 266px); margin-bottom: 30px; padding: 10px 0 0 0; overflow-y: auto; width: 100%;}
.checkout-summary__item{padding-bottom: 10px; margin: 0 0 16px 0;  border-bottom: 1px solid #DDD; cursor: pointer; width: 100%;}
.checkout-summary__item:last-child{margin: 0;}
.checkout-summary__item__image{position:relative;  display: inline-block; width: 20%; min-height: 80px; /* width: 40%; min-height: 120px; */ background-size: cover; background-position: center center; background-color: #DDD;}
.checkout-summary__item__details{display: inline-block; width: calc(60% - 20px); margin-left: 15px; vertical-align: top; position: relative; }
.checkout-summary__item__description{display: block; color: #111; font-size: 1.4rem; max-width: 100%; }
.checkout-summary__item__description__link{text-decoration: none; color: #111;}
.checkout-summary__item__quantity{display:block; position: absolute; top: -10px !important; right: -10px; min-width: 16px; text-align: center; background-color: #60b53e; border-radius: 50%; color: #fff; margin: 0; padding: 1px 0 0 0; font-size: 1rem; width: 21px; height: 20px;}
.checkout-summary__item__line-price{display: block; text-align: left; font-size: 1.4rem;}
.checkout-summary__item_remove{position: absolute; top: 0; right: 0; font-family: Arial;}

/* Order Complete Summary */
.order-receipt {display:flex; flex-wrap:wrap; align-content: flex-start;}
.order-receipt--cancelled {margin: 0 auto;}
.order-receipt__header {flex:0 0 100%;  height:250px; text-align: center; padding:40px 0 0 0;}
.order-receipt__header__heading {font-size:2rem; margin:0; letter-spacing: 0;}
.order-receipt__header__subheading {font-size:1.8rem; margin:0 0 20px 0; letter-spacing: 0;}
.order-receipt__header__note {padding:0; margin:0 0 10px 0;}
.order-receipt__header__links {display:flex; padding-top:50px;}
.order-receipt__header__links a {flex:0 0 50%;}

.order-receipt__header__back-link{text-align: center; display: block; margin-bottom: 15px; width: 100%;}
.order-receipt__header__back-link a{display: inline-block; text-align: center; color: #FFF; font-weight: 600; padding: 20px 0; width: 10rem; }
.order-receipt__header__back-link:last-child{margin-top: 2rem;}

.customer-summary {flex:0 0 50%; display:flex; flex-wrap:wrap; align-items: flex-start; align-content: flex-start;}
.customer-summary__heading {flex:0 0 100%; margin:0; padding:0 0 30px 0; font-weight:500; letter-spacing: normal;}
.customer-summary__subheading {font-weight:500; letter-spacing: normal;}
.customer-summary__billing {flex:0 0 50%;}
.customer-summary__delivery {flex:0 0 50%;}

.customer-summary__deliverymethod {flex:0 0 50%;}
.customer-summary__paymentmethod {flex:0 0 50%;}

.customer-summary__name p {margin:0;}

.purchase-summary{font-family: 'Roboto', sans-serif;}
.purchase-summary__heading{text-align: left; margin: 0; padding:0 0 30px 0; font-weight:500; font-family: din-condensed, sans-serif; letter-spacing: normal; font-size: 2rem; line-height: 2.6rem;}
.purchase-summary__checkout{width: 100%; background-color: #4DAF41; color: #FFF; display: block; text-align: center; text-decoration: none; padding: 10px 0; font-size: 2rem;}
.purchase-summary__checkout:hover{color: #FFF; text-decoration: underline;}
.purchase-summary__item-total{margin: 2rem 0 1rem 0; font-size: 1.2rem; }
.purchase-summary__item-total-desc{text-align: left; display: inline-block; width: 50%;}
.purchase-summary__item-total-amount{text-align: right; display: inline-block; width: 50%}
.purchase-summary__discount{margin: 1rem 0; padding-top: 1rem; font-size: 1.2rem; border-top: 2px solid #EEE}
.purchase-summary__discount-desc{text-align: left; display: inline-block; width: 50%;}
.purchase-summary__discount-amount{text-align: right; display: inline-block; width: 50%}
.purchase-summary__discount-option-desc{font-size: 0.8rem; font-style: italic; line-height: 1.2rem; display: block;}
.purchase-summary__delivery{margin: 1rem 0; font-size: 1.2rem;}
.purchase-summary__delivery-desc{text-align: left; display: inline-block; width: 50%;}
.purchase-summary__delivery-amount{text-align: right; display: inline-block; width: 50%}
.purchase-summary__delivery-type-desc{font-size: 0.8rem; font-style: italic; line-height: 1.2rem; display: block;}
.purchase-summary__vat{margin: 1rem 0; font-size: 1.2rem;}
.purchase-summary__vat-desc{text-align: left; display: inline-block; width: 40%;}
.purchase-summary__vat-amount{text-align: right; display: inline-block; width: 60%}
.purchase-summary__total{margin: 0 0 15px 0; font-size: 1.6rem;}
.purchase-summary__total-desc{text-align: left; display: inline-block; width: 40%;}
.purchase-summary__total-amount{text-align: right; display: inline-block; width: 60%}

.purchase-summary__total__details {display:flex;}
.purchase-summary__total__description {flex: 1 1 50%;}
.purchase-summary__total__line-price {flex: 1 1 50%; text-align: right}

.purchase-summary__checkout--error-message{font-size: 1rem; text-align: center; color: #FFF; background-color: #A00; padding: 10px; line-height: 1.5rem; }
.purchase-summary__editbasketlink {text-align:right; margin-top: -20px;}
.purchase-summary__editbasketlink a {text-decoration:none; text-transform: uppercase}
.purchase-summary__editbasketlink:hover a {text-decoration:underline}

.purchase-summary__items{background-color: #FFF; max-height: calc(100vh - 266px); margin-bottom: 30px; padding: 10px 0 0 0; overflow-y: auto; width: 100%;}
.purchase-summary__item{padding-bottom: 10px; margin: 0 0 16px 0;  border-bottom: 1px solid #DDD; width: 100%;}
.purchase-summary__item:last-child{margin: 0;}
.purchase-summary__item__image{position:relative;  display: inline-block; width: 20%; min-height: 80px; background-size: cover; background-position: center center; background-color: #DDD;}
.purchase-summary__item__details{display: inline-block; width: calc(60% - 20px); margin-left: 15px; vertical-align: top; position: relative; }
.purchase-summary__item__description{display: block; color: #111; font-size: 1.4rem; max-width: 100%; }
.purchase-summary__item__quantity{display:block; position: absolute; top: -10px !important; right: -10px; min-width: 16px; text-align: center; background-color: #60b53e; border-radius: 50%; color: #fff; margin: 0; padding: 1px 0 0 0; font-size: 1rem; width: 21px; height: 20px;}
.purchase-summary__item__line-price{display: block; text-align: left; font-size: 1.4rem;}
.purchase-summary__item_remove{position: absolute; top: 0; right: 0; font-family: Arial;}

.purchase-summary .payment-summary {}
.purchase-summary .payment-summary__total{margin: 0 0 15px 0; font-size: 1.6rem;}
.purchase-summary .payment-summary__total-desc{text-align: left; display: inline-block; width: 40%;}
.purchase-summary .payment-summary__total-amount{text-align: right; display: inline-block; width: 60%}

.purchase-summary .payment-summary__total__details {display:flex;}
.purchase-summary .payment-summary__total__description {flex: 0 0 50%;}
.purchase-summary .payment-summary__total__line-price {flex: 0 0 50%; text-align: right}

.order-receipt .purchase-summary {flex:0 0 50%}

/* Checkout Payment - Stripe */
.outcome {float: left; width: 100%; min-height: 20px; text-align: center;}
.error {display: none;font-size: 1rem;width: 100% ;padding: 10px 0;margin-bottom: 10px;}
.error.visible {display: block;border: none;}
.error {color: #E4584C;}

.checkoutpaymentwrapper--stripe {width:600px; margin: 40px auto 100px auto;}
.checkoutpaymentwrapper--stripe label {margin-bottom:20px; display:block;}
.checkoutpaymentwrapper--stripe label span {display:inline-block;  width:170px; margin-left:10px !important;}
.checkoutpaymentwrapper--stripe label input {width:370px}

.checkoutpayment__paymentform {height:300px; width: 400px; margin: 0 auto;}

.stripepayment__card {width:100%; margin-top: 10px; background: white; box-sizing: border-box; font-weight: 400; border: 1px solid #CFD7DF; border-radius: 20px; color: #32315E; outline: none; flex: 1; height: 48px; line-height: 48px; padding: 0 20px; cursor: text;}
.stripepayment__card::-webkit-input-placeholder {color: #CFD7DF;}
.stripepayment__card::-moz-placeholder {color: #CFD7DF;}
.stripepayment__card:focus, .stripepayment__card.StripeElement--focus {border-color: #F99A52;}

.checkoutpayment__submit--stripe {display: block; background: #666ee8; color: #fff; box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08); border-radius: 4px; border: 0; font-weight: 700; width: 100%; height: 40px; outline: none; cursor: pointer; transition: all 0.15s ease;}
.checkoutpayment__submit--stripe:focus {background: #555abf;}
.checkoutpayment__submit--stripe:hover {transform: translateY(-1px); box-shadow: 0 7px 14px 0 rgba(50, 50, 93, 0.1),0 3px 6px 0 rgba(0, 0, 0, 0.08);}
.checkoutpayment__submit--stripe:active {background: #43458b;}

.checkoutpayment__paymentform__top { height:80px;}
.checkoutpayment__paymentform__bottom {padding:10px 0; width:100%; margin:0 auto}
.checkoutpayment__paymentform__bottom button {display:block !important; float:none !important;}

p.poweredby {margin-top:10px !important; width:160px;}
p.poweredby img {width:100%;}
p.payment-terms {margin-top:20px;}

@media only screen and (max-width: 840px) {
    .checkout-wrapper {flex-wrap:wrap}
    .checkout-col {width:100%}
}

.form--filter__heading, .product-list__product__title a, .checkout-summary a, .checkout-form__label a, .checkout-condensed__entry__edit, .basket__item_remove, .basket__empty, .basket__item__description_link {color:#60B53E !important;}
.basket__discount-options__button, .basket__checkout, .basket-added__option--checkout, .checkout-summary__item__quantity {background-color: #1F1B42 !important;}

.checkout-form__button--forward {background-color: #1F1B42 !important;}
.checkout-progress__stage__circle--active {background-color: #1F1B42 !important;}
.checkout-progress__stage__circle{border-color: #1F1B42 !important;}
.checkout-form__payment-button {background-color: #1F1B42 !important;}
.order-receipt__header__back-link a {background-color: #1F1B42 !important;}

