@font-face { font-family: 'icons'; src: url('../woff2/iconsefaa.woff2') format('woff2'), url('../woff/iconsefaa.woff') format('woff'), url('../ttf/iconsefaa.ttf') format('truetype'); font-weight: normal; font-style: normal }

/* 1 = CORE & RESET */
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

/* = Reset
----------------------------------------------------------------------------------------------------------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, hr, a, a img, font, img, dd, dl, dt, li, ol, ul, blockquote, fieldset, form, label, legend, table, caption, tr, th, td { margin: 0; padding: 0; border: 0; font-size: 100%; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
audio, canvas, video { display: inline-block; }
html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

/* = Body
----------------------------------------------------------------------------------------------------------------- */
body { color: #162831; font-size: 16px; text-align: left; font-family: 'Raleway', sans-serif; font-weight: 400; text-rendering: optimizeLegibility; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased;  background: #fff; }

/* = ICONS (font based - paste "/assets/iconfont/config.json" file into fontello.com website to modify/edit these icons)
----------------------------------------------------------------------------------------------------------------- */
.icon:before,
.icon:after,
.btn--viewall:after,
.btn--arrow:after,
.down-to-content:before,
.scroll-to-top:before,
.lSAction > a:after,
.lSAction > .lsArrow:after,
.more-button:after,
.link-all:after,
.link-more:after,
.ftr-link-title:after,
.tick-list li:before,
.pg-nav a:after,
.form-field--dd-basic:after,
.accordion > h3:after,
.hdr-navlinks .has-children.nav-services > a:after  { font-family: "icons"; font-style: normal; font-weight: normal; speak: none; display: inline-block; text-decoration: inherit; min-width: 1em; text-align: center; font-variant: normal; text-transform: none; line-height: 1em; text-decoration: none; }

.icon--close:before { content: '\e80f'; }
.icon--ext:before { content: '\e813'; font-size: 0.75em; }
.icon--facebook:before { content: '\f09a'; }
.icon--instagram:before { content: '\e81c'; }
.icon--linkedin:before { content: '\f0e1'; }
.icon--twitter:before { content: '\f099'; }
.icon--navsearch:before { content: '\e82f'; }
.icon--chevron-section:after { content: '\f107'; font-size: 1.2em; } 
.icon--right-arrow:after { content: '\e826'; font-size: 0.425em;  vertical-align: middle; } 
.icon--tel:before { content: '\e83b'; }
.icon--mob:before { content: '\f10b';  font-size: 1.2em;}
.icon--email:before { content: '\f0e0'; font-size: .8em; }
.icon--live:before { content: '\e820'; }
.icon--timed:before { content: '\e80e'; }
.icon--resi:before { content: '\e82e'; }
.icon--comm:before { content: '\e810'; }
.icon--dev:before { content: '\e811'; }
.icon--land:before { content: '\e81d'; }
.icon--beds:before { content: '\e808'; font-size: 0.85em; }
.icon--price:before { content: '\e82d'; } 
.icon--size:before { content: '\e815'; font-size: 1.1em; } 
.icon--area:before { content: '\e800'; font-size: 1.05em; } 
.icon--type:before { content: '\e80d'; } 
.icon--btn-search:before { content: '\e82f'; padding-right: 5px; } 
.icon--map-pin:before { content: '\e821'; } 
.icon--save:before { content: '\e819'; } 
.icon--saved:before { content: '\e81a'; } 
.icon--grid-view:before { content: '\e818'; } 
.icon--map-view:before { content: '\e821'; } 
.icon--filters:before { content: '\f1de'; } 
.icon--bathrooms:before { content: '\e807'; } 
.icon--living:before { content: '\e831'; font-size: 0.8em; } 
.icon--download:before { content: '\e812'; } 
.icon--prop-images:after { content: '\e81b'; } 
.icon--prop-floorplans:after { content: '\e85c'; } 
.icon--prop-tours:after { content: '\e81e'; } 
.icon--prop-map:after { content: '\e821'; } 
.icon--view-more:after { content: '\f107'; font-size: 1.5em; } 
.icon--back:after { content: '\f104'; font-size: 1.15em;  } 
.icon--next:after { content: '\f105'; font-size: 1.15em;  } 
.icon--calendar:after { content: '\e881'; } 
.icon--clock:after { content: '\e80e'; } 
.icon--live-auctions {padding-right: 15px;}
.icon--live-auctions:after { content: '\e820'; color:#00A780; font-size: 0.8em; margin-top: -5px; vertical-align: middle;  } 
.icon--video-play:after { content: '\e82b'; font-size: 2em; }
.accordion > h3:after {content: '\e837'; } 

.btn--viewall:after,
.btn--arrow:after,
.more-button:after,
.link-all:after  { content: '\e826'; font-size: 0.425em; vertical-align: middle; padding-left: 8px; }

.link-more:after { content: '\e802'; display: block; width: 50px; padding: 10px 0 0; padding-left: 0; margin: -1px auto 10px; text-align: center; font-size: 0.425em; vertical-align: middle; }

.lSAction > .lSPrev:after { content: '\e801';  color:#fff;  }
.lSAction > .lSNext:after { content: '\e801'; -webkit-transform: rotate(180deg); transform: rotate(180deg); color:#fff; }

/* = Typography
----------------------------------------------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 { font-family: 'PT Serif', serif; font-weight: 700; margin: 0 0 25px; color: #162831; line-height: normal;  }

h1, .h1 { font-size: 50px; line-height: 1.3em; margin-bottom: 30px; }
h2, .h2, .h1-small  { font-size: 30px; }
h3, .h3 { font-size: 24px; }
h4, .h4  { font-size: 22px; }
h5, .h5  { font-size: 20px; }
h6, .h6  { font-size: 18px; }

.halfMargin {margin-bottom: 15px;}

p { margin: 0 0 25px; line-height: 1.5em; }
p:last-child {margin-bottom:0;}

.main-text > p { line-height: 1.7em;}

.leader-small { font-size: 18px; }
.leader { font-size: 20px; }
.leader-large { font-size: 22px; margin-bottom: 30px; }

.leader + h2 { margin-top:35px; }

.center {text-align: center;}
.right {text-align: right;}
.whiteText {color:#fff; }
.medium { font-weight: 500;} 
.upper {text-transform: uppercase; }
.dGreen { color: #005941; }

.upper-location {  text-transform: uppercase; font-weight: 600; letter-spacing: 0.7px; color: #00A780; font-family: 'Source Sans Pro', sans-serif;}

.raleway { font-family: 'Raleway', sans-serif; } 
.raleway--bold { font-weight: 700;}
.source-sans { font-family: 'Source Sans Pro', sans-serif; } 

strong, b { font-weight: 600;}

blockquote { margin: 40px 0; border-left: 6px solid #c7c7c7; padding-left: 35px; }
blockquote:not(.grid-blockquote) p { margin: 0; font-size: 1.4em; line-height: 1.4em; font-family: 'Raleway', sans-serif;}
blockquote cite { font-size: 1em; font-style: normal; margin-top: 15px; display: block; }
blockquote p cite { font-size: 0.75em; }
blockquote p:last-of-type { margin-bottom: 0; }

a { color: #162831; text-decoration: none; -webkit-transition: color .25s ease; transition: color .25s ease; }

a:hover,
a:focus { color: #162831; text-decoration: none; }

a.whiteText:hover,
a.whiteText:focus { color: #fff; opacity: .85; text-decoration: underline; }

img { max-width: 100%; height:auto; vertical-align: bottom; height: auto; -ms-interpolation-mode: bicubic; }

small { font-size: 0.8em; }
address { margin: 0 0 20px; line-height: 1.5em; font-style: normal; }

sub, sup { line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

pre { margin: 0; }
pre code { font-size: 1.5em; white-space: pre-wrap; }

figure { margin: 0 0 20px; }
figcaption { padding-top: 10px; color: #444; font-size: 0.85em; }

.clr { clear: both; }

@media screen and (min-width:751px) {
    .h2--slider { font-size: 32px;}
}

@media screen and (min-width:851px) {
    .h2--slider { font-size: 34px;}

    .right--851 {text-align: right;}

}

@media screen and (min-width:1201px) {
    .h2--slider { font-size: 36px;}
}

@media screen and (min-width:1301px) {
    .h2--slider { font-size: 38px;}
}

@media screen and (min-width:1501px) {
    .h2--slider { font-size: 40px;}
}

@media screen and (min-width:1601px) {
    .h2--slider { font-size: 42px;}
}

@media screen and (min-width:1701px) {
    .h2--slider { font-size: 44px;  }
    .hero-content--slider p {font-size: 20px;}
}

@media screen and (max-width:1200px) {
    h1, .h1 { font-size: 48px; }
}

@media screen and (max-width:1024px) {
    h1, .h1 { font-size: 46px; }
}

@media screen and (max-width:850px) {
    h1, .h1 { font-size: 44px; }
}

@media screen and (max-width:650px) {
    h1, .h1 { font-size: 42px; }
}

@media screen and (max-width:600px) {
    h1, .h1 { font-size: 40px; }
}

@media screen and (max-width:480px) {
    h1, .h1 { font-size: 36px; }

    .leader-small { font-size: 17px; }
    .leader { font-size: 19px; }
    .leader-large { font-size: 21px; margin-bottom: 25px; }
}

@media screen and (max-width:440px) {
    h1, .h1 { font-size: 33px; }
    .h2.raleway  { font-size: 28px; }

    .halfMargin {margin-bottom: 12px;}

    .leader { font-size: 18px; }
    .leader-large { font-size: 20px; }
}

@media screen and (max-width:400px) {
    h1, .h1 { font-size: 31px; margin-bottom: 25px; }
    h2, .h2, .h1-small  { font-size: 28px; }
    .h2.raleway  { font-size: 26px; }
}

@media screen and (max-width:360px) {
    h1, .h1 { font-size: 28px; }
    h2, .h2, .h1-small  { font-size: 26px; }
    .h2.raleway  { font-size: 24px; }
    h3, .h3 { font-size: 22px; }
    h4, .h4  { font-size: 20px; }
}

/* = Buttons
----------------------------------------------------------------------------------------------------------------- */
.btn { display: inline-block; position: relative; padding: 15px 22px; transform: perspective(0) translateZ(0);  font-size: 13px; font-weight: 600; letter-spacing: 0.6px; text-transform: uppercase; line-height: 1; margin:0; border: none; background: #00A780; color: #fff; outline: none; cursor: pointer;   -webkit-border-radius: 22px; border-radius: 22px; 
    
    -webkit-transition: color .35s ease, background-color .35s ease, border-color .35s ease; transition: color .35s ease, background-color .35s ease, border-color .35s ease; }

.btn:hover,
.btn:focus { color: #fff; background-color: #DB2763; }

.btn--blue { color:#fff; background: #162831; }

.btn--blue:hover,
.btn--blue:focus { color: #fff; background-color: #00A780; }

.btn--alt { background-color: #DB2763; }
.btn--alt:hover,
.btn--alt:focus { color: #fff; background-color: #00A780; }

.btn--viewall { padding:10px 20px; color:#162831; border:1px solid #162831; border-radius:18px; background:transparent;  }
.btn--viewall + .btn--viewall { margin-top: 10px; }

.btn--viewall:hover,
.btn--viewall:focus  { color: #fff; background-color: #00A780; border-color: #00A780; }

.btn--search-filters { color:#162831;  border: 1px solid #E4E3DE; background-color: transparent;  text-transform: none; letter-spacing: 0; }
.btn--search-filters:hover,
.btn--search-filters:focus { color: #162831;  }

.btn--download {text-transform: none; font-family: 'Source Sans Pro', sans-serif; letter-spacing: unset; }
.btn--download .icon:before { font-size: 1.2em;  padding-right: 5px; }

.btn--square { border-radius: 0;}

.btn--small { padding: 12px 16px; }
.btn--small-inline { margin: 10px 5px; }

.btn small { padding-left: 4px;  font-weight: 300;}

.more-button,
.link-all,
.link-more { text-transform: uppercase; font-weight: 600; letter-spacing: 0.7px; font-family: 'Source Sans Pro', sans-serif; -webkit-transition: color .3s ease; transition: color .3s ease; }
.link-all { color:#005941; }

.link-more--cards { display: inline-block; margin-top: 40px; } 

.more-button:hover,
.more-button:focus,
.link-all:hover,
.link-all:focus,
.link-more:hover,
.link-more:focus { color:#00A780; }

.inline-textblock { display: inline-block; margin: 0 5px 10px; }

.btns-find-office .btn {margin-right:20px; margin-bottom: 20px; }
.btns-find-office .btn:last-child { margin-right:0; }

.btns-inline-dt .btn  { margin-right: 20px; }
.btns-inline-dt .btn:last-child { margin-right:0; }

.btn--spaced { margin-bottom: 10px; margin-right: 6px; }


p + p > .btn:first-child {margin-top: 25px;}
.content-col p + p > .btn:first-child {margin-top: 0;}

@media screen and (max-width:600px), screen and (min-width:851px) and (max-width:1000px)   {
    .btns-find-office .btn { display: block; margin:25px auto 5px; max-width: 400px; text-align: center; }
}

@media screen and (max-width:480px) {
    .btns-inline-dt .btn  { width:100%; margin:20px 0 0; }
    .btns-inline-dt .btn:first-child { margin-top:0; }
    .btns-inline-dt .btn .icon {float: right;}
}

@media screen and (max-width:440px) {
    p + p > .btn:first-child {margin-top: 20px; } 
    .content-col p + p > .btn:first-child {margin-top: 0;}

    .more-button,
    .link-all { font-size: 15px; }
}

@media screen and (max-width:400px) {
    p + p > .btn:first-child {margin-top: 15px; } 
    .content-col p + p > .btn:first-child {margin-top: 0;}

    .more-button,
    .link-all { font-size: 14px; letter-spacing: 0.6px; }
}

@media screen and (max-width:360px) {
    .link-all { font-size: 13px; letter-spacing: 0.5px; }
}

/* = Lists in main text
----------------------------------------------------------------------------------------------------------------- */
.main-text ul { margin: 0 0 25px; padding-left: 25px; line-height: 1.5em; }
.main-text ul:last-child {margin-bottom: 0;}

.main-text ul li { margin: 0 0 15px; }
.main-text ul li ul { margin-top: 20px; margin-left: 30px; list-style-type: circle; }

.main-text ol { margin: 0 0 25px;  padding-left: 25px; line-height: 1.5em; }
.main-text ol li { margin: 0 0 15px; }
.main-text ol li ol { margin-top: 20px; margin-left: 30px; list-style-type: lower-latin; }

.main-text dl { margin: 0 0 25px;  line-height: 1.5em; }
.main-text dt { color: #111; font-weight: 60; }
.main-text dd { margin: 0 0 20px; }

.tick-list {list-style: none;}
.tick-list li { position: relative;}
.tick-list li:before {content:'\e829'; position: absolute; left: -26px; top:3px; font-size: 18px;}

/* = Forms
----------------------------------------------------------------------------------------------------------------- */
form { margin:40px 0;}
form:first-child {margin-top: 0;} 
form:last-child {margin-bottom: 0;} 

input.text, textarea, select, .cd-title,
input[type=text], input[type=email], input[type=password] { color:#162831; width: 100%; padding: 11px 20px; margin:0; font-weight: 500; font-family: 'Raleway', sans-serif; font-size: 1em; border: 1px solid #e4e3de; background: #fff; -webkit-border-radius: 22px; border-radius: 22px; }
input.text:focus, textarea:focus, select:focus, input[type=text]:focus, input[type=email]:focus, input[type=password]:focus, .cd-title:focus  { outline: none; border-color: #00A780;  }

.inputs-wrap { width: 100%; }

/*Cross browser & device resets*/
select, .cd-title { padding-right: 45px; cursor: pointer; outline: none; color:#162831;  background: #fff url(../svg/icon-dropdown.svg) right 20px center no-repeat; background-size: 11px auto; -moz-appearance: none; -webkit-appearance: none; -webkit-box-shadow: none; box-shadow: none; -webkit-border-radius: 22px; border-radius: 22px; }
select:-moz-focusring { color: transparent; text-shadow: 0 0 0 #2c2c2c; }
select::-ms-expand { display: none; }
select option {  color: #162831}
select option:first-child {  color: #76757B;} 
select:invalid { color: #333;}
select:valid { color: #162831;}

.checkradio-group { margin:6px 0; }
.checkbox-dropdown {width: 100%; position: relative;}
.cd-title { color: #333; position: relative; background: #fff; }
.cd-title:after { content:''; width:12px; height: 8px; position: absolute; top:calc(50% - 4px); right:20px; background: url(../svg/icon-dropdown.svg) 0 0 no-repeat; background-size: 11px auto; transition: all .25s ease; }
.cd-checkboxes { position: absolute; width:100%; height: 0; padding: 0 18px; margin:0; border: 1px solid transparent; border-width: 0 1px 1px 1px;  border-radius: 0 0 4px 4px; background: #fff; overflow: hidden; z-index: 2; } 

.on .cd-title { border-radius: 6px 6px 0 0; border-color: #11ad88;}
.on .cd-title:after { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
.on .cd-checkboxes { height: auto; padding: 18px;  border-color: #00A780; }

textarea,
input.text,
input[type="text"],
input[type="email"],
input[type=password],
input[type="button"],
input[type="submit"],
.input-checkbox { -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-border-radius: 22px;  border-radius: 22px; }

textarea { min-height:150px; min-width:100%; max-width:100%; }
textarea.text { min-width: 0; }
textarea.textarea--large { min-height:450px; }

::-webkit-input-placeholder { color: #333; opacity:1;  font-family: 'Raleway', sans-serif; }
::-moz-placeholder { color: #333; opacity:1;  font-family: 'Raleway', sans-serif; }
:-ms-input-placeholder { color: #333; opacity:1;  font-family: 'Raleway', sans-serif; }
:-moz-placeholder { color: #333;  opacity:1;  font-family: 'Raleway', sans-serif; }

.form-field--green ::-webkit-input-placeholder { color: #005941; }
.form-field--green ::-moz-placeholder { color: #005941;  }
.form-field--green :-ms-input-placeholder { color: #005941;  }
.form-field--green :-moz-placeholder { color: #005941;   }

.form-field--stretch { -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; } 

.form-field--tight { margin-bottom: 5px; }

/*Start - Custom checkbox and radio buttons*/
input[type="checkbox"],
input[type="radio"] { opacity: 0; float: left; margin: 0; top:  0;  left: 0;  height:  20px;  width:  20px;  -webkit-appearance:  none; outline:none;}

.checkradio-label { cursor: pointer; margin-bottom: 12px; padding-left: 35px; font-size: 16px; font-weight: 500; line-height: 1.55em; display: block; position: relative; outline: none; }
.checkradio-label:last-child { margin-bottom: 0;}

.checkradio-label a { text-decoration: underline;}

.checkradio-label:before, 
.checkradio-label:after { pointer-events: none; }

.checkradio-label:before { position: absolute; top:0; left:0; content: ' '; height:  22px;  width:  22px;  margin-right:  10px; border:   1px solid #B9B9B9; -webkit-border-radius: 4px; border-radius: 4px; background:  #fff;}
.checkradio-label--check:after { content: ''; position: absolute;  top: 4px;  left: 8px;   width: 5px;  height: 10px;  border: solid #00A780;  border-width: 0 3px 3px 0;  -ms-transform: rotate(45deg);  -webkit-transform: rotate(45deg) scale(0);  transform: rotate(45deg) scale(0);    -webkit-transition:  transform .3s ease; transition:  transform .3s ease; }

.checkradio-label--check--small {padding-left:28px; }
.checkradio-label--check--small:before { top:2px; height:  15px;  width:  15px;  margin-right:  8px; border-color: #E4E3DE; border-radius: 3px; }
.checkradio-label--check--small:after { top: 4px; left: 6px;  width: 3px;  height: 7px; }

.checkradio-label--radio:after { content: '';  position:  absolute; top:  6px;  left:  6px;  height:  12px;  width:  12px; -webkit-border-radius: 2px; border-radius: 2px;   background: #00A780; -webkit-transform: scale(0); transform: scale(0); -webkit-transition:  transform .3s ease; transition:  transform .3s ease; }
.checkradio-label--radio:before,
.checkradio-label--radio:after { border-radius:  50%; }

input[type="checkbox"]:focus + .checkradio-label:before,
input[type="radio"]:focus + .checkradio-label:before { box-shadow: 0 0 0 2px #1eb18f;  }

.checkradio-group input[type="radio"]:checked + .checkradio-label:after { -webkit-transform:  scale(1); transform:  scale(1);}
.checkradio-group input[type="radio"]:checked + .checkradio-label--check:after,
.checkradio-group input[type="checkbox"]:checked + .checkradio-label--check:after {  -webkit-transform: rotate(45deg) scale(1);  transform: rotate(45deg) scale(1);  } 
/*End - Custom checkbox and radio buttons*/

.form-field {margin-bottom: 20px; position: relative; display: -ms-flexbox; display: -webkit-flex; display: flex;  -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.form-field:last-child {margin-bottom:0;}
.form-field-inner { width: 100%; }

.form-field-row { width: 100%; }

.form-field > label, 
.form-field-inner > label { display: block;  margin: 0 0 8px; width:100%; font-weight: 700; }
.form-field label { color:#162831;  }
.form-field--submit {margin-bottom: 0;}
.form-field--submit .btn { min-width: 95px; margin-bottom: 5px;}
.form-field--submit-full  { width: 100%; }

.form-field--dropdown { border-radius: 22px; background-color: #fff;}
.form-field--dropdown select {padding-right: 60px;  background-color: transparent; z-index: 1;}

.form-field--full > .form-field--dropdown { position: relative; width: 100%; }

.form-field--noborder input,
.form-field--noborder select  {border-color: transparent; }

.form-field--bold input,
.form-field--bold select  {font-weight: 600;}

.form-field--green input.text, 
.form-field--green textarea, 
.form-field--green select, 
.form-field--green .cd-title, 
.form-field--green input[type=text], 
.form-field--green input[type=email], 
.form-field--green input[type=password] { color: #005941; }

.form-field--inline,
.form-label--inline  {display: inline-block; margin:0 2px; }

.form-field--dd-basic { position: relative; cursor: pointer; }
.form-field--dd-basic select { z-index: 2; position: relative; padding: 3px 30px 3px 0; background: none; border:none; border-bottom:2px solid #162831; border-radius: 0; font-family: 'Source Sans Pro', sans-serif; font-weight: 700; }
.form-field--dd-basic:after { z-index: 1; content: '\f107'; position: absolute; top:50%; right:0; transform: translateY(-50%); }  

.form-field--half { width:100%;  }
.form-field--half > input { width:100%; }

.form-field--captcha-wrap { min-height: 100px; margin: 15px 0 25px; }
.form-field--captcha-wrap-center { margin-left: auto; margin-right: auto; }

.signup-form,
form.signup-form:first-child {margin-top:25px; }
.signup-fields { margin-bottom: 25px;}
.signup-fields--flush { margin-bottom: 0;}
.signup-fields .form-field--full { margin: 0 15px 0 0; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; }
.signup-fields .form-field--full-max { width: 100%; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; }
.signup-fields .form-field--sibmit { margin: 0; }
.signup-fields .btn {margin:0; }

.signup-form .signup-consent  { margin:0 auto 30px; max-width: 670px; }
.signup-form .signup-consent:last-child {margin-bottom: 0;}
.signup-form .signup-consent label { font-size: 14px; color:#535353; font-weight: 400; } 

.form-field.form-field--nomargin-bottom {margin-bottom: 0;}

.label-inline {margin-right: 10px;}
label.label-empty,
.form-field > label.label-empty { display: none; }

.checkbox-dropdown--team {min-width: 250px;}
.checkbox-dropdown--team .cd-title {background: transparent;}

.text.has-error { border-color: #e56666; }

.error-inline { margin: 15px 0 0; }
.error-inline p { position: relative; display: inline-block; padding: 7px 19px; background: #e56666; color: #fff; border-radius: 7px; }
.error-inline p:before { content: ""; position: absolute; top: -5px; left: 15px; width: 14px; height: 14px; border-radius: 2px; background: #e56666; transform: rotate(45deg); }

.inputs-wrap { width: 100%; }
.inputs-wrap > * { margin-bottom: 10px; }

.form-field--checkradios > div { width: 100%; margin: 0 0 25px; }


@media screen and (min-width:451px) {
    .form-field-row { display: flex; }
    .form-field-row .form-field { flex: 1; margin-bottom: 0; margin-right: 10px; }
    .form-field-row .form-field:last-child { margin-right: 0; }
    .form-field--title { max-width: 90px; }
}

@media screen and (min-width:651px) {
    .form-field--half { width:calc(50% - 7.5px); margin-right: 15px; }
    .form-field--half:nth-child(even) {margin-right: 0;}
}

@media screen and (min-width:751px) {
    .checkradio-group { margin:11px 0 6px; }
    
    label.label-empty,
    .form-field > label.label-empty { display: block; }
    
    .form-field--checkradios > div { display: flex; }
    .form-field--checkradios > div > div { margin-right: 40px; }
    
    .form-field-row { width: calc(75% - 30px); }

    .form-field,
    .form-field--checkradio {margin-bottom: 25px; }
    .form-field--checkradio-tight {margin-bottom: 15px;}
    .form-field > label,
    .form-field-inner > label { width:25%;  margin: 0 30px 0 0; padding: 11px 0;}
    .form-field > input,
    .form-field > select,
    .form-field > .checkradio-group,
    .form-field > .checkbox-dropdown,
    .form-field > textarea.text,    
    .form-field > .inputs-wrap,
    .form-field-inner > input,
    .form-field-inner > select,
    .form-field-inner > .checkradio-group,
    .form-field-inner > .checkbox-dropdown,
    .form-field-inner > textarea.text,    
    .form-field-inner > .inputs-wrap { width:calc(75% - 30px); }

    .selected-checkboxes {margin-left: calc(25% + 30px);}
    .form-field--submit .btn {margin: 0;}
    
    .form-field--full > input,
    .form-field--full > select,
    .form-field--full > textarea,
    .form-field--full > textarea.text,
    .form-field--full > .checkradio-group,
    .form-field--full > .checkbox-dropdown,
    .form-field--full > .form-field-inner > input,
    .form-field--full > .form-field-inner > select,
    .form-field--full > .form-field-inner > .checkradio-group,
    .form-field--full > .form-field-inner > .checkbox-dropdown,
    .form-field--full-max > input,
    .form-field--full-max > select,
    .form-field--full-max > textarea,
    .form-field--full-max > textarea.text,
    .form-field--full-max > .checkradio-group,
    .form-field--full-max > .checkbox-dropdown,
    .form-field--half > input,
    .form-field--half > select,
    .form-field--half > .checkradio-group,
    .form-field--half > .checkbox-dropdown,
    .form-field--half > textarea.text,
    .form-field--half > .inputs-wrap,
    .form-field--half > label,
    .form-field--half .form-field-inner > input,
    .form-field--half .form-field-inner > select,
    .form-field--half .form-field-inner > .checkradio-group,
    .form-field--half .form-field-inner > .checkbox-dropdown,
    .form-field--half .form-field-inner > textarea.text,
    .form-field--half .form-field-inner > .inputs-wrap,
    .form-field--half .form-field-inner > label { width:100%; } 
    
    .form-field--tight { margin-bottom: 5px; }

    .form-field > .checkbox-dropdown--team { width:100%; }

    .cd-checkboxes { margin:0; }
    
    .inputs-wrap { display: flex; flex: 1; } 
    .inputs-wrap > * { margin-bottom: 0; margin-left: 10px; flex: 1; }
    .inputs-wrap > *:first-child { margin-left: 0; }
        
    .error-inline { margin: 15px 0 0 25%; padding-left: 30px; }
    .error-inline--full { margin-left: 0; padding-left: 0; }
}

@media screen and (max-width:750px) {
    .signup-fields .form-field--full { margin: 0 12px 0 0; }
}

@media screen and (max-width:650px) {
    .news-filters .form-field:first-child {margin-bottom: 15px; } 
}

@media screen and (max-width:600px) {
    .signup-fields { flex-wrap: wrap; }
    .signup-fields .form-field--full { width:100%; margin:0 0 14px; }
    .signup-fields .btn {min-width: 100px;}
}

/* = Object fit images
----------------------------------------------------------------------------------------------------------------- */
.ofi {  width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; }

.ofi--center {object-position: center; font-family: 'object-fit: cover; object-position: center;';  }
.ofi--abs {position: absolute; top: 0; left: 0; }
.ofi--contain { object-fit: contain; font-family: 'object-fit: contain;'; }
.ofi--scaledown { object-fit: scale-down; font-family: 'object-fit: scale-down;'; }
.ofi--bottom {object-position: bottom; font-family: 'object-fit: cover; object-position: bottom;';  }
.ofi--top {object-position: top; font-family: 'object-fit: cover; object-position: top;';  }

/* = Lazyload  images
----------------------------------------------------------------------------------------------------------------- */
.lazyload,
.lazyloading { opacity: 0; }
.lazyloaded { opacity: 1; -webkit-transition: opacity 300ms; transition: opacity 300ms; }

/* = Inline article image grids
----------------------------------------------------------------------------------------------------------------- */
.inline-image,
.inline-images  { width:100%; margin:45px 0; position: relative;}

.inline-image:first-child,
.inline-images:first-child {margin-top:5px; }

.inline-image:last-child,
.inline-images:last-child {margin-bottom:5px; }

.image-caption-wrap .inline-image:first-child,
.image-caption-wrap .inline-images:last-child {margin:0; } 

.image-caption,
.image-caption-editor { margin-top:12px; color:#1F2C31; font-size: 14px; }

p.image-caption-editor { font-weight: 400 !important; line-height: 1.5em !important; }
p + p.image-caption-editor { margin-top: -18px; }

.inline-images--x2 { display: -ms-flexbox; display: -webkit-flex; display: flex;-webkit-flex-wrap: wrap; flex-wrap: wrap; }
.inline-images--x2 > div { width:calc(50% - 20px); margin: 0  40px 0 0; }  
.inline-images--x2 > div:nth-child(even) {margin-right: 0;}

.inline-images--x2 .inline-image  {  height: 0; padding-top:66%; }
.inline-images--x2--portrait .inline-image { padding-top: 130%; }

@media screen and (max-width:750px) {
    .inline-image,
    .inline-images  { margin:40px 0; }

    .inline-images--x2 > div  { width:calc(50% - 15px); margin: 0  30px 0 0; }
}

@media screen and (max-width:600px) {
    .inline-images--x2 > div { width:calc(50% - 10px); margin: 0  20px 0 0; }

    .image-caption {font-size: 13px;}
    .image-caption.right {text-align: left;}
}

@media screen and (max-width:440px) {
    .image-caption { margin-top:10px; font-size: 12px;}

}

/* = Scroll to top button
----------------------------------------------------------------------------------------------------------------- */
.scroll-to-top { margin: 50px 0 0; width: 48px; height: 48px; border-radius: 50%; display: none; background:rgba(22, 40, 49, 0.25); position: fixed; bottom: 10px; right: 10px;
                  box-shadow: 0 4px 16px rgb(0 0 0 / 15%); z-index: 8; }
.scroll-to-top:before { position: absolute; color:#fff; top:48%; left:50%; height: 8px; content: '\e826'; font-size: 0.45em; -webkit-transform: translate(-50%, -50%) rotate(-90deg); transform: translate(-50%, -50%) rotate(-90deg); } 
.scroll-to-top:hover { background: #DB2763; }

@media screen and (max-width:600px) {
    .scroll-to-top {  width: 50px; height: 50px; }
    .scroll-to-top:before { font-size: 0.4em; height: 7px; }
}

@media screen and (max-width:440px) {
    .scroll-to-top {  width: 40px; height: 40px; }
    .scroll-to-top:before { font-size: 0.325em; height: auto; }
}

/* = Screen Messages
----------------------------------------------------------------------------------------------------------------- */
.msg { margin: 30px 0; padding: 20px; border-radius: 12px; background: #f5f5f5; position: relative; }
.webForm .msg {margin:30px 0;}
.msg--center { margin-left: auto; margin-right: auto; }

.cookiebot-msg { display: none; }

.msg:first-child,
.webForm .msg:first-child { margin-top:0;}

.msg:last-child,
.webForm .msg:last-child  {margin-bottom: 5px;}

.msg--slimMargin {margin:20px 0;}
.msg:first-child {margin-top: 0;} 
.msg:last-child {margin-bottom: 0;} 
.msg p { margin-bottom: 15px; line-height: 1.5em; }
.msg p:last-child {margin-bottom: 0;}
.msg ul {  margin-bottom: 0; padding-left: 22px; }
.msg ul li { margin-bottom: 5px; }
.msg ul li:last-child {margin-bottom: 0;}

.msgImp,
.msgError { color: #fff; background: #454D50; padding-left: 30px; }
.msgError { color: #fff; background: #e40040; }

.msgSuccess { padding-left: 75px; background: #fff; border: 3px solid #00A780;  }
.msgSuccess:before { font-family: 'icons'; content:'\e839';  font-size: 1.6em; position: absolute;  left:25px; top:50%; transform: translateY(-50%);  color:#00A780; }
.msgSuccess h3 { color: #454D50; margin: 0 0 10px; }

.msgAssist { background-color: #ecf7c1; }

.msgImp a,
.msgError a,
.msgSuccess a { color: #fff; font-weight: normal; text-decoration: underline; }

.msg--err { background: #e56666; color: #fff; }
.msg--in-form { margin-top: 0; }


@media screen and (max-width: 650px) {
    .msg p,
    .msg ul {font-size: 16px; }
}

@media screen and (max-width: 480px) {
    .msgImp,
    .msgError  { padding-left: 55px; }

    .msgSuccess { padding-left: 65px; }
    .msgSuccess:before { left: 22px; font-size: 1.5em; }

    .msg p,
    .msg ul {font-size: 15px;  line-height: 1.45em;}
}

@media screen and (max-width: 400px) {
    .msg,
    .webForm .msg {margin:25px 0; }
}

@media screen and (max-width: 350px) {
    .msg p,
    .msg ul {font-size: 14px;}
}

/* = YouTube Container
----------------------------------------------------------------------------------------------------------------- */
.youtube-container { position: relative; margin: 30px 0; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.youtube-container iframe, .youtube-container object, .youtube-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.youtube-container:first-child { margin-top: 0; }
.youtube-container:last-child { margin-bottom: 15px; }
.modal .youtube-container:last-child {margin-bottom: 0;}

/* = Embed video
----------------------------------------------------------------------------------------------------------------- */
.embed-container,
.embeditem { margin:45px 0; position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } 
.embed-container iframe, .embed-container object, .embed-container embed,
.embeditem iframe, .embeditem object, .embeditem embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.embed-wrapper--tweet { display: flex; justify-content: center; }

@media screen and (max-width:440px) {
    .embed-container,
    .embeditem { margin:40px 0; }
}


/* = Simple custom scrollbar
----------------------------------------------------------------------------------------------------------------- */
.ss-wrapper { overflow: hidden; width: 100%; height: 100%;  position: relative;  z-index: 1; float: left; }
.ss-content { height: 100%;  width: calc(100% + 18px);  padding: 0 0 0 0; padding-right: 25px; position: relative;  overflow-x: auto;  overflow-y: scroll;  box-sizing: border-box; }
.ss-content.rtl { width: calc(100% + 18px);  right: auto; }
.ss-scroll { position: relative;  background: rgba(0, 0, 0, 0.1); width: 9px;  border-radius: 4px; top: 0; z-index: 2; cursor: pointer;  transition: opacity 0.25s linear; }
.ss-hidden { display: none; }
.ss-container:hover .ss-scroll,
.ss-container:active .ss-scroll { opacity: 1; }
.ss-grabbed {  -o-user-select: none; -ms-user-select: none;  -moz-user-select: none;  -webkit-user-select: none; user-select: none; }

/* = Flex
----------------------------------------------------------------------------------------------------------------- */
.flx { display: -ms-flexbox; display: -webkit-flex; display: flex; }
.flx-inl { display: -ms-inline-flexbox; display: -webkit-inline-flex; display: inline-flex; }
.flx--col { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; }
.flx--jc { -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
.flx--jc-sb { -webkit-justify-content: space-between; -ms-flex-pack: justify;  justify-content: space-between; }
.flx--jc-sa { -webkit-justify-content: space-around;-ms-flex-pack: distribute; justify-content: space-around; }
.flx--jc-end { -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; }
.flx--ac { -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; }
.flx--ai { -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
.flx--ai-end { -webkit-align-items: flex-end; -ms-flex-align: end;  align-items: flex-end;  }
.flx--wr { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.flx--noSh { -webkit-flex: 0 0 auto; -ms-flex: 0 0 auto; flex: 0 0 auto; }

/* = Containers
----------------------------------------------------------------------------------------------------------------- */
.row  { padding:50px 0; background: #fff; position: relative; }
.row--light-grey { background:#f5f5f5; }
.row--medium-grey { background:#edefef; }
.row--blue { background:#162831; }
.row--pink { background:#DB2763; }
.row--bg-image { padding:70px 0; background-size: cover; background-position: center; background-repeat: no-repeat; background-attachment: fixed;}
.row--border-top { border-top: 1px solid #E4E3DE; }

.row.row--nopad {padding:0 }
.row.row--nopad-top {padding-top:0; }
.row.row--nopad-bottom {padding-bottom:0; }

.row.row--pad-top-tilde-above {padding-top:20px; }
.row.row--slimpad-top {padding-top:10px; }

.row--white + .row--white {padding-top:0; }

.tilde-bottom-white { padding-bottom: 12.29%; } 
.tilde-bottom-white:after { content:''; position: absolute; bottom:-1px; width: 100%; height: 0; padding-top: 12.29%; background:url(../svg/tilde_white.svg) center no-repeat; background-size: cover; }

.tilde-bottom-blue { padding-bottom: 12.29%; } 
.tilde-bottom-blue:after { content:''; position: absolute; bottom:-1px; width: 100%; height: 0; padding-top: 12.29%; background:url(../svg/tilde_blue.svg) center no-repeat; background-size: cover; }

.tilde-top-white{ padding-top:  12.29%; } 
.tilde-top-white:before { content:''; position: absolute; top:-1px; width: 100%; height: 0; padding-top:  12.29%; background:url(../svg/tilde_white.svg) center no-repeat; background-size: cover; }

.tilde-top-blue {margin-top: -12.29%; padding-top: 12.29%; position: relative; z-index: 1; } 
.tilde-top-blue:before { content:''; position: absolute; top:1px; width: 100%; height: 0; padding-top: 12.29%; background:url(../svg/tilde_blue.svg) center no-repeat; background-size: cover; }

.tilde-top-grey { padding-top: 11.46%; } 
.tilde-top-grey:before { content:''; position: absolute; top:-1px; width: 100%; height: 0; padding-top: 11.46%; background:url(../svg/tilde_grey_top.svg) center no-repeat; background-size: cover; }

.tilde-top-medium-grey { padding-top: 11.53%; } 
.tilde-top-medium-grey:after { content:''; position: absolute; top:-1px; width: 100%; height: 0; padding-top: 11.53%; background:url(../svg/tilde_medium_grey_top.svg) center no-repeat; background-size: cover; }

.tilde-bottom-medium-grey { padding-top: 11.53%; } 
.tilde-bottom-medium-grey:before { content:''; position: absolute; bottom:-1px;  width: 100%; height: 0; padding-top: 11.53%; background:url(../svg/tilde_medium_grey_top.svg) center no-repeat; background-size: cover; }

.tilde-home { padding-top: 12.64%; position: relative; margin-top:-1px; margin-bottom: -1px; } 
.tilde-home:after { content:''; position: absolute; top:-1px; width: 100%; height: 0; padding-top: 12.64%; background:url(../svg/tilde_home.svg) center no-repeat; background-size: cover; }

.tilde-background-half-grey { background:url(../svg/tilde_dgrey_bg_bottom.svg) bottom -1px center no-repeat; background-size: 120% auto; } 
.tilde-background-half-medium-grey { background:url(../svg/tilde_grey_bg_bottom.svg) bottom -1px center no-repeat; background-size: 120% auto; } 
.tilde-background-half-grey_tall { background:url(../png/tilde_dgrey_bg_bottom_tall.png) bottom -1px center no-repeat; background-size: 120% auto; } 

.row--home-map {padding-bottom: 50px; }

.container { max-width: 1260px; padding:0 40px; margin:0 auto; } 
.container--1320 { max-width: 1320px; }
.container--medium { max-width: 1460px; }
.container--large { max-width: 1600px; }
.container--lgrey { background: #f5f5f5;}
.container--propsearch { position: relative; }

.hide { display: none; }
.hidden-el { visibility: hidden; }

.inner { max-width: 900px; margin: 50px auto;} 
.inner--300 {max-width: 300px;}
.inner--400 {max-width: 400px;}
.inner--500 {max-width: 500px;}
.inner--600 {max-width: 600px;}
.inner--650 {max-width: 650px;}
.inner--700 {max-width: 700px;}
.inner--800 {max-width: 800px;}
.inner--850 {max-width: 850px;}
.inner--960 {max-width: 960px;}
.inner--1024 {max-width: 1024px;}
.inner:first-child {margin-top:0; }
.inner:last-child {margin-bottom:0; }

.inner.inner--dropdown { margin-top:25px; }

.inner.inner--dropdown-cat {margin:0 0 30px auto; }

hr { margin: 50px 0; height: 1px; border: 0; border-top: 1px solid #E4E3DE; }
hr:first-child {margin-top:10px; }
hr.hr--tight { margin: 30px 0; }

@media screen and (min-width:751px) {
    .container--slider-full { max-width: 100%; padding:0;  }
}

@media screen and (min-width:1201px) {
    .row--bg-image { padding:80px 0; }

    .row.row--overlap-below {padding-bottom: 150px;}

    .overlap-top {  max-width: 860px; margin:-125px auto 0; padding:60px 0; background:#fff; }  
    .overlap-top:last-child  {padding-bottom: 0;}
}

@media screen and (min-width:1301px) {
    .row  { padding:60px 0; }
    .row--bg-image { padding:90px 0; }

    .row.row--overlap-below {padding-bottom: 160px;}

    hr { margin: 60px 0; }
}

@media screen and (min-width:1401px) {
    .row  { padding:70px 0; }
    .row--bg-image { padding:100px 0; }

    hr { margin: 70px 0; }
}

@media screen and (min-width:1501px) {
    .row--bg-image { padding:110px 0; }
}

@media screen and (max-width:1200px) {
    .row--bg-image {  background-attachment: unset; }

    .tilde-background-half-grey,
    .tilde-background-half-medium-grey,
    .tilde-background-half-grey_tall { background-size: 150% auto; } 
}

@media screen and (max-width:750px) {
    .row  { padding:45px 0; }
    .row.row--bg-image { padding:60px 0; }

    hr { margin: 45px 0; }

    .container { padding:0 35px; }  
    .inner {  margin: 45px auto;} 

    .tilde-background-half-grey,
    .tilde-background-half-medium-grey,
    .tilde-background-half-grey_tall { background-size: 200% auto; } 
}


@media screen and (max-width:650px) {
.inner.inner--dropdown-cat { max-width: 100%; margin:0 0 30px; }
}

@media screen and (max-width:600px) {
    .row.row--bg-image { padding:50px 0; }

    .container { padding:0 30px; }

    .tilde-background-half-grey,
    .tilde-background-half-medium-grey,
    .tilde-background-half-grey_tall { background-size: 250% auto; } 
}

@media screen and (max-width:480px) {
    .container { padding:0 25px; } 

    .tilde-background-half-grey,
    .tilde-background-half-medium-grey,
    .tilde-background-half-grey_tall { background-size: 275% auto; } 

    .inner.inner--dropdown-cat { display: block;}
    .inner.inner--dropdown-cat .label-inline { display: block; width:100%; margin: 0 0 10px; }
}

@media screen and (max-width:400px) {
    .row  { padding:42px 0; }
    .row.row--bg-image { padding:45px 0; }

    .row--nopad-bottom-mobile { padding-bottom: 0; }

    .container { padding:0 22px; }
    .inner {  margin: 40px auto;} 
}


/* = Loading panes
----------------------------------------------------------------------------------------------------------------- */
.loading-pane { min-height: 100px; position: relative; }
.loading-pane:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(255,255,255,0.85) url(../gif/loading.gif) center 4% no-repeat; 
                      transition: background 0.3s ease-in; }
.loading-pane--grey:after { top: -20px; left: -20px; bottom: -20px; right: -20px; border-radius: 20px; background-color: rgba(245,245,245,0.85); background-position: center 80px; }
.loading-pane--blue:after { background: rgba(22,40,49,0.85) url(../gif/loading-blue.gif) center 4% no-repeat; }
.loading-pane--center:after { background-position: center center; }
.loading-pane--no-img:after { background-image: none; }


@media screen and (max-width: 400px) {
    .panel-service-items.loading-pane:after { left: -22px; right: -22px; }
}


/* = Umbraco Grid Columns
----------------------------------------------------------------------------------------------------------------- */
.content-col { width: 100%; margin: 0 0 40px; }
.content-col:last-child { margin: 0; }

.main-text.content-col p a:not(.btn,.card) {text-decoration: underline}
.main-text.content-col p a:not(.btn,.card):hover {text-decoration: none}

.content-cols + .content-cols { margin-top: 40px; }
.content-cols:last-child { margin-bottom: 40px; }

.content-cols + .content-cols--inner {  margin-top: 0; }
.content-cols--inner:last-child {  margin-bottom: 0; }


@media screen and (min-width: 400px) {
    .content-cols + .content-cols { margin-top: 45px; }
    .content-cols + .content-cols--inner {  margin-top: 0; }
    .content-col { margin-bottom: 45px; }
}

@media screen and (min-width: 763px) {

    .content-cols { display: flex; }

    .content-col--1-12, 
    .content-col--2-12, 
    .content-col--1-4, 
    .content-col--3-12, 
    .content-col--1-3, 
    .content-col--4-12, 
    .content-col--5-12, 
    .content-col--1-2, 
    .content-col--2-4, 
    .content-col--6-12, 
    .content-col--7-12, 
    .content-col--2-3, 
    .content-col--8-12, 
    .content-col--3-4, 
    .content-col--9-12, 
    .content-col--10-12, 
    .content-col--11-12 { width: 50%; }

    .content-col--1-3:last-child, 
    .content-col--4-12:last-child { width: 100%; }
    
    .content-cols { margin-left: -20px; margin-right: -20px; }
    .content-col { padding: 0 20px; }

    .content-cols + .content-cols { margin-top: 50px; }
    .content-cols + .content-cols--inner {  margin-top: 0; }
    .content-col { margin-bottom: 50px; }
}

@media screen and (min-width: 980px) {

    .content-col--1-3-fix { width: 33.333333%; }


    .content-cols { margin: 0 -40px; }
    .content-col { padding: 0 40px; }

    .content-cols + .content-cols { margin-top: 50px; }
    .content-cols + .content-cols--inner {  margin-top: 0; }

}

@media screen and (min-width: 1080px) {

    .content-col--1-12 { width: 8.333333%; }
    .content-col--2-12 { width: 16.666666%; }
    .content-col--1-4, 
    .content-col--3-12 { width: 25%; }
    .content-col--1-3, 
    .content-col--4-12 { width: 33.333333%; }
    .content-col--1-3:last-child, 
    .content-col--4-12:last-child { width: 33.333333%; }
    .content-col--5-12 { width: 41.666666%; }
    .content-col--1-2, 
    .content-col--2-4, 
    .content-col--6-12 { width: 50%; }
    .content-col--7-12 { width: 58.333333%; }
    .content-col--2-3, 
    .content-col--8-12 { width: 66.666666%; }
    .content-col--3-4, 
    .content-col--9-12 { width: 75%; }
    .content-col--10-12 { width: 83.333333%; }
    .content-col--11-12 { width: 91.666666%; }
}

.content_grid-img--p5 { padding: 5px; }
.content_grid-img--p10 { padding: 10px; }
.content_grid-img--p15 { padding: 15px; }
.content_grid-img--p20 { padding: 20px; }
.content_grid-img--p25 { padding: 25px; }
.content_grid-img--p30 { padding: 30px; }
.content_grid-img--p35 { padding: 35px; }
.content_grid-img--p40 { padding: 40px; }
.content_grid-img--p45 { padding: 45px; }
.content_grid-img--p50 { padding: 50px; }

/* = Generic grid control related styles
----------------------------------------------------------------------------------------------------------------- */
.content-spacer { height: 20px; }
.content-spacer-large { height: 50px; }


/* = Google Captcha
----------------------------------------------------------------------------------------------------------------- */
.g-recaptcha-wrap { max-width: 100%; overflow: hidden; text-align: center; }
.g-recaptcha { display: inline-block; }


/* = Columns
----------------------------------------------------------------------------------------------------------------- */
.cols { margin:45px 0; }
.cols:first-child { margin-top:0; }
.cols:last-child { margin-bottom:0; }

.cols .col { margin: 0 0 45px;}
.cols .col:last-child { margin-bottom: 0; }

.cols--in-numbers {max-width: 740px; margin-left: auto; margin-right: auto; }

.cols--valuation .col:first-child p { font-weight: 500;}

.cols.cols--home-map { margin:0;  }
.cols--home-map .col { position: relative ;}
.cols--home-map .col img { width: 100%; }

@media screen and (min-width:851px) {
    .cols {  display: -ms-flexbox; display: -webkit-flex; display: flex; }
    .cols--home-map { display: block;}

    .cols--half .col { float:left; width: calc(50% - 25px); margin:50px 50px 0 0; }
    .cols--half .col:nth-child(2n+2) { margin-right: 0; }
    .cols--half .col:nth-child(-n+2) { margin-top: 0; }

    .cols--twoThirds .col { float:left; width: calc(66% - 20px); margin:40px 40px 0 0; }
    .cols--twoThirds .col:nth-child(2n+2) { width: calc(34% - 20px); margin-right: 0; }
    .cols--twoThirds .col:nth-child(-n+2) { margin-top: 0; }

    .cols--twoThirdsAlt .col { float:left; width: calc(34% - 20px); margin:40px 40px 0 0; }
    .cols--twoThirdsAlt .col:nth-child(2n+2) { width: calc(66% - 20px); margin-right: 0; }
    .cols--twoThirdsAlt .col:nth-child(-n+2) { margin-top: 0; }

    .cols--in-numbers .col { float:left; width: calc(40% - 25px); margin:50px 50px 0 0; }
    .cols--in-numbers .col:nth-child(2n+2) { width: calc(60% - 25px);  margin-right: 0; }
    .cols--in-numbers .col:nth-child(-n+2) { margin-top: 0; }

    .cols--property-view .col--main { width: calc(100% - 300px); margin: 0; }
    .cols--property-view .col--aside { margin-left:30px; width:270px; }
    .cols--property-view .col--aside h6:first-child {margin-top:10px;}

    .cols--portfolio-view .col--main { width: calc(100% - 300px); margin: 0; }
    .cols--portfolio-view .col--aside { margin-left:30px; width:270px; }
    .cols--portfolio-view .col--aside h6:first-child {margin-top:10px;}

    .cols--valuation .col { float:left; width: calc(44% - 15px); margin:40px 30px 0 0; }
    .cols--valuation .col:first-child {padding: 35px 25px; }
    .cols--valuation .col:nth-child(2n+2) { width: calc(56% - 15px); margin-right: 0; }
    .cols--valuation .col:nth-child(-n+2) { margin-top: 0; }


    .cols--expert .col { float:left; width: calc(100% - 250px); margin:40px 50px 0 0; }
    .cols--expert .col:nth-child(2n+2) { width: 200px; margin-right: 0; }
    .cols--expert .col:nth-child(-n+2) { margin-top: 0; }
}

@media screen and (min-width:1025px) {
    .cols--half .col { width: calc(50% - 30px); margin:60px 60px 0 0; }

    .cols--property-view .col--main { width: calc(100% - 330px); margin: 0; }
    .cols--property-view .col--aside { margin-left:30px; width:300px; }

    .cols--portfolio-view .col--main { width: calc(100% - 340px); margin: 0; }
    .cols--portfolio-view .col--aside { margin-left:40px; width:300px; }

    .cols--valuation .col:first-child  {padding: 35px 40px; }

    .cols--home-map {  display: -ms-flexbox; display: -webkit-flex; display: flex; }
    .cols--home-map .col { margin:0; }
    .cols--home-map .col:nth-child(1) { width:55%; margin-right: 20px;} 
    .cols--home-map .col:nth-child(2) { width:calc(45% - 20px); } 
}

@media screen and (min-width:1341px) {
    .cols--half .col { width: calc(50% - 40px); margin:80px 80px 0 0; }
}

@media screen and (max-width:850px) {
    .cols--in-numbers { display: block; max-width: 400px; margin-left: auto; margin-right: auto; } 
    .cols--in-numbers .col {text-align: center;}
}

@media screen and (max-width:480px) {
    .cols .col { margin: 0 0 40px;}
}

/* = Accordion
----------------------------------------------------------------------------------------------------------------- */
.accordion { margin: 50px 0; padding: 0; list-style: none; }
.accordion:first-child { margin-top: 0; }
.accordion:last-child { margin-bottom: 0; }

.accordion > h3 { display: block;  outline: none;  margin: 0 0 25px; padding: 14px 65px 14px 24px; font-size: 20px;  background: #f4f4f4;  border-radius: 4px;  cursor: pointer; position: relative;   -webkit-transition:  color 0.3s, background-color 0.3s; transition: color 0.3s, background-color 0.3s; }
.accordion > h3:last-of-type {margin-bottom: 0;} 
.accordion > h3:after {  right:20px; top:50%; transform: translateY(-50%); font-size: 1.5em; position: absolute;  color:#162831; -webkit-transition:  color 0.3s; transition: color 0.3s; }
.accordion > h3.on { margin: 0;  }
.accordion > h3.on:after  { content:'\e838'; }
.accordion p { line-height: 1.6em;}

.accordion .acc-content { display: none; padding: 30px 24px 40px; }
.accordion .acc-content:last-of-type {padding-bottom: 0;}
.accordion .acc-content.open { display: block; margin: 0; }

@media all and (min-width: 1201px) {
    .accordion > h3:hover,
    .accordion > h3:focus { color:#fff; background-color: #00A780;} 

    .accordion > h3:hover:after,
    .accordion > h3:focus:after  { color:#fff;} 
}

@media all and (max-width: 750px) {
    .accordion .acc-content { padding: 30px 0 40px; }
}

@media all and (max-width: 440px) {
    .accordion { margin: 45px 0; }
    .accordion > h3 {  margin: 0 0 20px;  padding: 12px 50px 12px 20px; font-size: 18px; }
    .accordion > h3:after {  font-size: 1.4em; right:16px;  }
}

@media all and (max-width: 400px) {
    .accordion { margin: 35px 0; }
}

@media all and (max-width: 360px) {
    .accordion > h3 {  padding: 10px 45px 10px 15px; font-size: 17px; }
    .accordion > h3:after {   font-size: 1.35em; right:12px;  }
    .accordion .acc-content { padding: 25px 0 35px; }
}


/* = Tabs - Defaults
----------------------------------------------------------------------------------------------------------------- */
.tabs { margin: 40px 0; }
.tabs:first-child {margin-top:0;}
.tabs:last-child {margin-bottom:0;}
.tab-links { margin: 0; padding: 0; list-style: none; }
.tab-links li { display: inline-block; margin: 0 20px 0 0; }
.tab-links li a { display: inline-block;  position: relative; font-weight: 700; }
.tab-links li a:hover { color: #666; }
.tab-links li a.on { color: #00A780; }
.tab-links li a.on:after  {content:''; position: absolute; bottom:-1px; left:0; width:100%; height: 2px; background:#00A780; }
.tabs .tab-panel { margin: 20px 0 0; }

/* = Tabs - Property Search
----------------------------------------------------------------------------------------------------------------- */
.tabs--property-search { background: #f5f5f5; }
.tabs--property-search .tab-panel { margin:0;  padding:60px 60px 45px; background: #f5f5f5; }
.tabs--property-search .tab-links li { border-right: 1px solid #f5f5f5; margin:0; text-align: center; -webkit-flex: 1 1 auto;  -ms-flex: 1 1 auto; flex: 1 1 auto;   }
.tabs--property-search .tab-links li:last-child {border:none; }
.tabs--property-search .tab-links li a { padding:18px 15px; display: block; color:#fff; letter-spacing: 0.4px; background: #4F5D63; -webkit-transition: all .3s ease; transition: all .3s ease; }

.tabs--property-search .tab-links li a:hover,
.tabs--property-search .tab-links li a:focus { background-color: #00a780;}

.tabs--property-search .tab-links li a.on { color:#00A780; background: #f5f5f5;}
.tabs--property-search .tab-links li a.on:after { content:none; }
.tabs--property-search .tab-label {padding-left: 8px;}

@media screen and (max-width:850px) {
    .tabs--property-search .tab-panel {   padding:50px 50px 40px; }
    .tabs--property-search .tab-links li a { font-size: 15px; }
}

@media screen and (max-width:750px) {
    .tabs--property-search .tab-panel {  padding:50px 40px 40px; }
    .tabs--property-search .tab-links li a { font-size: 1.8vw;}
    .tabs--property-search .tab-label {padding-left: 6px;}
}

@media screen and (max-width:600px) {
    .tabs--property-search .tab-panel {padding:40px; }
    .tabs--property-search .tab-links li {width: 25%;}
    .tabs--property-search .tab-label { display: none;}
    .tabs--property-search .tab-links .icon { font-size: 24px;}
}

@media screen and (max-width:440px) {
    .tabs--property-search .tab-panel {padding:40px 30px; }
    .tabs--property-search .tab-links .icon { font-size: 22px;}
}

@media screen and (max-width:400px) {
    .tabs--property-search .tab-panel {padding:35px 25px; }
    .tabs--property-search .tab-links li a { padding:15px; }
}

/* = Tabs - Valuations
----------------------------------------------------------------------------------------------------------------- */
.tabs--valuations .tab-links li { width:33.333%; margin: 0; text-align: center; }
.tabs--valuations .tab-links li a { display: block; border-bottom: 11px solid #fff; }
.tabs--valuations .tab-links li a:after {content:''; position: absolute; bottom: -35px;left:calc(50% - 28px); width: 0; height: 0; border: 0 solid transparent; border-left-width: 28px; border-right-width: 28px; border-top: 28px solid transparent;background: none;}
.tabs--valuations .tab-links li a.on { color:#162831; border-color: #162831; }
.tabs--valuations .tab-links li a.on:after {border-top: 28px solid #162831;}

.tabs--valuations .tab-label {font-size: 20px;}

.tabs--valuations .tab-title-image { margin: 20px 0 0;  height: 0; padding-top:60%; position: relative; }
.tabs--valuations .tab-title-image img { opacity: 0.3; }
.tabs--valuations a.on .tab-title-image {box-shadow: 0px 1px #162831; } 
.tabs--valuations a.on .tab-title-image img { opacity: 1; }
.tabs--valuations .tab-panel {margin-top: 50px;}

@media screen and (max-width:850px) {
    .tabs--valuations .tab-label {font-size: 18px;}
}

@media screen and (max-width:650px) {
    .tabs--valuations .tab-links { display: block;}
    .tabs--valuations .tab-links li { width:100%; display: block;}
    .tabs--valuations .tab-links li a { display: -webkit-flex; display: flex; width: 100%; border:none;}
    .tabs--valuations .tab-links li a.on { color:#fff; background: #162831;}
    .tabs--valuations .tab-links li a:after { content:none; }

    .tabs--valuations .tab-title-image { margin:0; width: 35%;  padding-top:22%; order:1; box-shadow: 6px 0 0 0 transparent; background: #fff; position: relative; }
    .tabs--valuations .tab-title-image:after {content:''; position: absolute; top:calc(50% - 16px); right: -20px; width: 0; height: 0; border: 0 solid transparent;  border-bottom-width: 16px;  border-top-width: 16px; border-left: 16px solid transparent; }
    .tabs--valuations a.on .tab-title-image {box-shadow: none;  box-shadow: 6px 0 0 0 #fff; }
    .tabs--valuations a.on .tab-title-image:after {border-left: 16px solid #fff; } 

   
    .tabs--valuations .tab-label {   order:2;  width: 65%; padding:20px 40px; background: #f4f4f4; box-shadow: 0 -1px #d2d2d2; text-align: left;   display: -webkit-flex; display: flex;  -webkit-align-items: center; align-items: center;  }
    .tabs--valuations .tab-links li a.on .tab-label   {color:#fff; background: #162831; }
    .tabs--valuations .tab-links li:first-child  .tab-label {box-shadow: none;}
}

@media screen and (max-width:480px) {
    .tabs--valuations .tab-panel {margin-top:40px;}
    .tabs--valuations .tab-label {padding:20px 20px 20px 38px; font-size: 17px; }
}

@media screen and (max-width:440px) {
    .tabs--valuations .tab-panel {margin-top:35px;}
    .tabs--valuations .tab-label { padding:20px 20px 20px 34px; font-size: 16px; }
}

@media screen and (max-width:400px) {
    .tabs--valuations .tab-panel {margin-top:30px;}
    .tabs--valuations .tab-title-image {width: 32%; }
    .tabs--valuations .tab-label {padding:20px 15px 20px 32px; width: 68%;   }

    .tabs--valuations .tab-title-image:after { right: -18px; }
}

@media screen and (max-width:360px) {
    .tabs--valuations .tab-label { padding:15px 15px 15px 30px; font-size: 15px;   }
}

@media screen and (max-width:340px) {
    .tabs--valuations .tab-label {  padding:15px 15px 15px 26px; font-size: 14px;   }
    .tabs--valuations .tab-title-image:after { right: -16px; }
}


/* = Grid-Tabs (Umbraco content)
----------------------------------------------------------------------------------------------------------------- */

.grid-tabs { padding: 0 0 50px; }
.grid-tabs_nav { margin: 0 0 20px; padding: 0; border-bottom: solid 2px #ccc; }

.grid-tabs_trigger { display: inline-block; padding: 10px 25px 15px; margin: 0 3px 0 0; text-decoration: none; font-size: 1.125rem; font-weight: 700; color: #162831; cursor: pointer; opacity: .4; }
.grid-tabs_trigger:hover { opacity: .9; }
.grid-tabs_trigger.is-on { color: #162831; opacity: 1; }

.grid-tabs_tabs { width: 100%; overflow: hidden; }
.grid-tabs_tab { display: none; }
.grid-tabs_tab.is-on { display: block; }
.grid-tabs::after { content: ""; display: none; width: 100%; height: 150px; background: url(../loader.html) center center no-repeat; }
.grid-tabs.is-loading::after { display: block; }


/* = Grid Blockquote
----------------------------------------------------------------------------------------------------------------- */

.grid-blockquote { position: relative; width:100%; max-width: 600px; margin:50px auto; padding:1.2em 30px 1.2em 75px; border-left:8px solid #78C0A8; 
                   font-style:italic;  line-height:1.5; font-size: 1.125rem; background:#f4f4f4; }

.grid-blockquote cite { font-size: 1rem; }

.grid-blockquote::before{ content: "\201C"; position: absolute; left: 10px; top:-10px; color:#78C0A8; font-size:4em; font-family:Arial; }
.grid-blockquote::after{ content: ''; }

.grid-blockquote span{ display:block; color:#333333; font-style: normal; font-weight: bold; margin-top:1em; }

@media screen and (min-width:850px) {
    .grid-blockquote { font-size: 1.275rem; }
}


/* = Image gallery
----------------------------------------------------------------------------------------------------------------- */
.gallery-images-wrap { margin: 45px 0; }
.gallery-images-wrap:first-child {margin-top: 0;}
.gallery-images-wrap:last-child {margin-bottom: 0;}
.gallery-images { max-width: 1080px;  margin: 0 auto; position: relative;}
.gallery-wrap { max-width: 960px; margin:0 auto; padding: 35px 35px 27px; border-radius: 6px;  background: #fff;  overflow: hidden; box-shadow: 0 3px 30px rgba(0, 0, 0, 0.06);} 

.gallery-images-wrap .lSSlideOuter .lSPager.lSpg { padding-top: 10px; }
.gallery-images-wrap .lSSlideOuter .lSPager.lSpg > li a { background: #ddd; }
.gallery-images-wrap .lSSlideOuter .lSPager.lSpg > li.active a { background: #162831; }

.gallery-slider { overflow: hidden;}

.gallery-img { display: block; height: 0; padding-top:56%; border-radius: 6px; position: relative; background:  url(../gif/loading-2.gif) center no-repeat; background-size: 26px; }
.gallery-img  img {position: absolute; top:0; left: 50%; border-radius: 6px; transform: translateX(-50%); }
.gallery-img .ofi { width: auto; max-width: 100%; }

.gallery-img-link { display: block; position: relative; width: 100%; height: 100%; }
.gallery-img-caption { position: absolute; bottom: 0; left: 50%; background: #fff; padding: 10px 20px 5px; transform: translateX(-50%); }

.gallery-images .next-image,
.gallery-images .prev-image { position: absolute; cursor: pointer; top:calc(50% - 18.5px); width: 37px; height: 37px; line-height: 37px; border-radius: 6px; text-align: center; color:#fff; background: #00A780; box-shadow: 0 3px 12px rgba(0, 0, 0, 0.1); z-index: 1;  }
 
.gallery-images .prev-image { left: 50%; margin-left: 0; right: auto; left: -18px; text-indent: 0; }
.gallery-images .next-image { right: 50%; margin-right: 0; right: -18px; text-indent: 0; }

.gallery-images .prev-image:before,
.gallery-images .next-image:before { display: block; line-height: 42px; font-size: 20px; } 

@media screen and (max-width:650px) {
    .gallery-wrap { padding: 0;  box-shadow: none;}
}


/* = Boxes - Shared
----------------------------------------------------------------------------------------------------------------- */
.box {padding:60px; }
.box--margin {margin: 40px 0; }
.box--margin:last-child {margin-bottom: 0;} 
.box--lgrey { background:#f5f5f5;}
.box--navy { background: #162831;}
.box--plain { padding: 0; margin: 30px 0; background: transparent; }

.boxes { margin:50px 0;  position: relative; }
.boxes:first-child { margin-top:10px; }
/*
.boxes:last-child { margin-bottom:10px; }
*/

.boxes .box { margin: 30px 0; } 
.boxes .box:not(.box--plain):first-child { margin-top: 0; }
.boxes .box:not(.box--plain):last-child { margin-bottom: 0; }

.find-office-image { position: relative; height: 0; padding-top: 64%; background: url(../gif/loading-blue.gif) center no-repeat; }

@media screen and (max-width:750px) {
    .box {  padding: 50px;  }
    .box--plain { padding: 0; margin:  25px 0; } 
}

@media screen and (max-width:600px) {
    .box {  padding: 45px 40px;  }
    .box--plain { padding: 0; margin:  25px 0; } 
}

@media screen and (max-width:440px) {
    .box { padding: 45px 30px; }
    .box--plain { padding: 0; margin:  45px 0; } 
    .box--margin {margin: 25px 0; }
}

@media screen and (max-width:400px) {
    .box { padding: 40px 25px; }
    .box--plain { padding: 0; margin:  40px 0; } 
    .box--margin {margin: 20px 0; }
}

/* = Search box - Single wrap
----------------------------------------------------------------------------------------------------------------- */
.search-box-wrap { padding:50px 60px ; background: #f5f5f5; } 

@media screen and (max-width:850px) {
    .search-box-wrap { padding:50px; }
}

@media screen and (max-width:750px) {
    .search-box-wrap { padding: 45px; }
}

@media screen and (max-width:600px) {
    .search-box-wrap { padding:40px; }
}

@media screen and (max-width:440px) {
    .search-box-wrap {padding:40px 30px; }
    .search-box-wrap .h3 { font-size: 22px;}
}

@media screen and (max-width:400px) {
    .search-box-wrap {padding:35px 25px; }
    .search-box-wrap .h3 { font-size: 20px;}
}

/* = Search boxes - Main
----------------------------------------------------------------------------------------------------------------- */
.search-box {max-width: 900px; margin:0 auto; }
.search-box .sb-filters-wrap {margin-top:25px; text-align: center;}
.search-box .sb-main input.text { border-radius: 22px 0 0 22px; border-right-width: 0; }
.search-box .sb-main .btn {margin-left: 12px; min-width:140px;}
.search-box .sb-main .checkradio-group  { padding: 2px 16px;  margin:0; white-space: nowrap; background: #eaecec; border:1px solid #e4e3de; border-left-width: 0; border-radius: 0 22px 22px 0; } 
.search-box .sb-main .checkradio-item { margin-right: 12px; display: inline-block; position: relative;}
.search-box .sb-main .checkradio-item:last-child {margin:0; }
.search-box .sb-main .checkradio-item input { position: absolute; top:0; left:0; } 
.search-box .sb-main .checkradio-item .checkradio-label {font-size: 13px; padding-left: 23px; font-weight: 700;  }

.search-box .sb-main .checkradio-label:before {width:16px; height: 16px;}
.search-box .sb-main .checkradio-group input[type="radio"]:checked + .checkradio-label:before { border-color: #00A780; }
.search-box .sb-main .checkradio-label--radio:after {  top: 4px; left: 4px;  height: 10px; width: 10px; }

.search-box .sbf-button { display: none;}
.search-box .sbf-item { display: inline-block; margin:0 12px; font-weight: 600; letter-spacing: 0.4px; }
.search-box .sbf-item .icon { padding-right: 3px; min-width: 0; color:#00A780; }

.search-box .sbf-item:hover .sbf-label,
.search-box .sbf-item:focus .sbf-label { color:#DB2763;  }

.search-box--no-radio .sb-main input.text { border-radius: 22px; border-width: 1px; }

@media screen and (max-width:750px) {
    .search-box .sb-main .btn {min-width:120px;}
    .search-box .sbf-item {  font-size: 14px; }
}

@media screen and (max-width:650px) {
    .search-box .sbf-filters { columns:2;  text-align: left; }
    .search-box .sbf-item { display: block; margin: 0 0 16px;  }
}

@media screen and (max-width:600px) {
    .search-box .sbf-button { display: block;}

    .sb-main-inner { flex-wrap: wrap;}

    .search-box .sb-main .checkradio-group { order:1; padding:0; margin:0 auto 20px; border:none;  background: none; }
    .search-box .sb-main input.text { order:2; border: 1px solid #e4e3de; border-radius: 22px; }
    .search-box .sb-main .btn {order:3; margin:15px 0 0; width: 100%;  }
    .search-box .btn--search-filters { width:100%; text-decoration: underline; }

    .search-box .sb-filters-wrap {margin-top: 15px;}

    .search-box .sb-main .checkradio-item { margin-right: 16px;}
    .search-box .sb-main .checkradio-item .checkradio-label {font-size: 14px;   line-height: 18px;}

    .search-box .sbf-filters { display: none; margin-top:25px;  }
    .search-box .sbf-filters.on {display: block;}
    .search-box .sbf-item:last-child {margin:0; }
}

@media screen and (max-width:360px) {
    .search-box .sbf-filters { columns:1;  }
}

/* = Search boxes - Extra Filters (in modal)
----------------------------------------------------------------------------------------------------------------- */
.search-extra-filters { position: relative; }
.sef-item { display: none; margin: 0 0 12px;  padding: 25px 30px;  background:#f4f4f4; border-radius: 6px;}
.sef-item.active {display: block;}
.sef-item:last-of-type {margin-bottom: 25px;}
.sef-title { margin-bottom:12px; font-weight: 600;}
.sef-title .icon {color:#00A780; padding-right: 5px;}

.sef-fields .form-field label {font-weight: 600; color:#005941; }
.sef-fields .form-field select,
.sef-fields .form-field input.text { border-radius: 3px; }

.sef-fields--minmax .form-field { margin:0; width:50%; }
.sef-fields--minmax .form-field label {width:auto; padding:11px 0; margin:0 15px 0 0; }
.sef-fields--minmax .form-field .filter-select { -webkit-flex: 1 1 auto;  -ms-flex: 1 1 auto;  -ms-flex: 1 1 auto; flex: 1 1 auto; } 
.sef-fields--minmax .form-field select { width:auto;  max-width: 140px; -webkit-flex: 1 1 auto;  -ms-flex: 1 1 auto;  -ms-flex: 1 1 auto; flex: 1 1 auto;  }

@media screen and (max-width:600px) {
    .sef-fields--minmax .form-field select { max-width: 120px; }

    .sef-fields--break-mob { flex-wrap: wrap; }
    .sef-fields--break-mob .form-field { margin:0 0 12px; width:100%; justify-content: space-between; }
    .sef-fields--break-mob .form-field:last-child {margin:0; }
    .sef-fields--break-mob .form-field select { max-width: 250px; margin-left: auto;}
}

@media screen and (max-width:480px) {
    .sef-fields--minmax .form-field label { margin:0 12px 0 0; }
    .sef-fields--minmax .form-field select { max-width: 110px; }
    .sef-fields--break-mob .form-field select { max-width: 200px;}
}

@media screen and (max-width:440px) {
    .sef-item { padding:25px; }
    .sef-fields--minmax .form-field select { max-width: 90px; }
    .sef-fields--break-mob .form-field select { max-width: 175px;}
}

@media screen and (max-width:400px) {
    .sef-item { padding:25px 22px; }
    .sef-fields--minmax .form-field select { max-width: 80px; }
    .sef-fields--break-mob .form-field select { max-width: 150px;}

    .sef-fields .form-field label, 
    .sef-fields .form-field select,
    .sef-fields .form-field input.text  {font-size: 15px;}
}

@media screen and (max-width:360px) {
    .sef-fields .form-field label, 
    .sef-fields .form-field select,
    .sef-fields .form-field input.text  {font-size: 14px;}

    .sef-fields--minmax .form-field label { margin:0 8px 0 0; }
}


/* = Header content
----------------------------------------------------------------------------------------------------------------- */
header {position: relative;}
.hdr-topbar { padding:12px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.3); background: #162831; }

.hdr-main { padding:20px 0; background: #162831; }
.hdr-logos a {display: inline-block; vertical-align: middle;  }
.hdr-logo { margin-right: 35px; width:255px; }

.hdr-section,
.hdr-topnav { color:#fff; font-size: 14px;}

.hdr-toplinks { list-style: none; margin:0; padding:0; display: inline-block; display: inline-flex;   line-height: 1;  }
.hdr-toplinks li { position: relative; margin:0; padding:0 12px; border-right: 1px solid #fff; display: inline-block; line-height: 1; }
.hdr-toplinks li:first-child {padding-left: 0;}
.hdr-toplinks li:last-child {border:none;}
.hdr-toplinks li a { font-size: 14px; color:#fff; position: relative;}
.hdr-toplinks li.on a:after { content:''; position: absolute; bottom:-12px; left:0; width:100%; height:4px; background:#fff; }

.hdr-toplinks li a:hover,
.hdr-toplinks li a:focus {color:#00A780; }

.hdr-toplinks__item--has-children { position: relative; cursor: pointer; z-index: 5; }
.hdr-toplinks__item-children { display: none; position: absolute; top: calc(100% + 16px); left: calc(50% + 5px); padding: 20px; background: #f4f4f4; transform: translateX(-50%); z-index: 2;  }
.hdr-toplinks__item-children li { display: block; margin: 0 0 17px; padding: 0; }
.hdr-toplinks__item-children li:last-child { margin-bottom: 5px; }
.hdr-toplinks__item-children li a { color: #162831; font-family: 'Source Sans Pro', sans-serif; white-space: nowrap; font-weight: 400; font-size: 16px; }

.hdr-toplinks__item--has-children:before { content: ''; position: absolute; top: calc(100% - 1px); left: 0; width: 100%; height: 20px; z-index: 2; }
.hdr-toplinks__item--has-children:hover:after,
.hdr-toplinks__item--has-children.on:after { content: ''; position: absolute; top: calc(100% + 8px); left: calc(50% - 22px); display: block; width: 0; height: 0;
    border-style: solid; border-width: 0 22px 22px 22px; border-color: transparent transparent #f4f4f4 transparent; transition: all .4s ease; z-index: 1; }
.hdr-toplinks__item--has-children:hover .hdr-toplinks__item-children { display: block; }



.hdr-social { list-style: none; margin:0 0 0 5px; padding:0; display: inline-block; display: inline-flex; line-height: 1; }
.hdr-social li { padding:0 8px; margin:0; display: inline-block; line-height: 1; position: relative;  }
.hdr-social li:last-child {padding-right: 0;}
.hdr-social li a { font-size: 12px; color:#fff;}
.hdr-social li span { cursor: pointer; }
.hdr-social li span:hover { color: #00A780; }
.hdr-social ul { display: none; padding-top: 34px; position: absolute; right: -30px; top: 100%; width: 225px; z-index: 2; }
.hdr-social ul li { background: #f4f4f4; display: block; padding: 11px 35px; }
.hdr-social ul li:first-child { border-bottom: 1px solid #E4E3DE; color: #162831; font-weight: 700; padding: 22px 35px; }
.hdr-social ul li:nth-child(2) { padding-top: 22px; }
.hdr-social ul li:last-child { padding-bottom: 22px; }
.hdr-social ul li a { color: #162831; font-weight: 600; line-height: 36px; text-decoration: underline; }
.hdr-social ul li a img { border-radius: 50%; margin-right: 11px; width: 36px; }

.hdr-social li a:hover,
.hdr-social li a:focus { color:#00A780; }

.hdr-main-nav .icon--navsearch { margin-left: 20px; font-size: 18px; color:#fff; position: relative; }

.hdr-main-nav .icon--navsearch:hover,
.hdr-main-nav .icon--navsearch:focus { color:#DB2763;}
.hdr-main-nav .icon--navsearch.on { color:#00A780; }
.hdr-main-nav .icon--navsearch.on:after { content: ''; position: absolute; min-width: 0; top: calc(100% + 12px);  left: calc(50% - 24px); display: block; width: 0; height: 0; border-style: solid; border-width: 0 22px 22px 22px; border-color: transparent transparent #f4f4f4 transparent; -webkit-transition: all .4s ease; transition: all .4s ease;  z-index: 1;}

.hdr-main-nav .btn {margin-left:35px;}

@media screen and (min-width: 1351px) {
    .hdr-social li.hasMultipleSocial:hover::after { border-color: transparent transparent #f4f4f4 transparent; border-style: solid; border-width: 0 22px 22px 22px; content: ''; display: block; height: 0; left: 50%; position: absolute; top: calc(100% + 15px); -ms-transform: translateX(-22px); -webkit-transform: translateX(-22px); transform: translateX(-22px); width: 0; z-index: 1; }
    .hdr-social li.hasMultipleSocial:last-child:hover::after { left: 15px; }
    .hdr-social li:hover ul { display: block; }
}

@media screen and (max-width:1350px) {
    .nav-on header {position: -webkit-sticky; position: sticky; top:0; z-index: 10;}
    .hdr-main-nav .icon--navsearch { vertical-align: middle; }
    .hdr-social li.hasMultipleSocial.socialActive::after { border-color: transparent transparent #f4f4f4 transparent; border-style: solid; border-width: 0 22px 22px 22px; content: ''; display: block; height: 0; left: 50%; position: absolute; top: calc(100% + 15px); -ms-transform: translateX(-22px); -webkit-transform: translateX(-22px); transform: translateX(-22px); width: 0; z-index: 1; }
    .hdr-social li.hasMultipleSocial:last-child.socialActive::after { left: 15px; }
    .hdr-social li.socialActive ul { display: block; }
}

@media screen and (max-width:1024px) {
    .hdr-section { display: none;}
    .hdr-topbar-wrap { -webkit-justify-content: flex-end;  -ms-flex-pack: end; justify-content: flex-end; }
}

@media screen and (max-width:900px) {
    .hdr-logo { margin-right: 30px; width:230px; }
    .cert-logo { width: 60px; }

    .hdr-toplinks li a { font-size: 13px; }
    .hdr-main-nav .btn {font-size: 12px; padding:12px 20px; margin-left: 30px;}
    .hdr-main-nav .icon--navsearch {font-size: 17px;}

    .hdr-toplinks__item-children li a { font-size: 17px; }
}

@media screen and (max-width:800px) {
    .hdr-logo { width:220px; }
    .cert-logo { width: 55px; }
    .hdr-toplinks li {padding:0 9px;}
    .hdr-toplinks li a { font-size: 12px; }
    .hdr-main-nav .btn { margin-left: 25px;}

    .hdr-social li { padding:0 7px; }
    .hdr-social li.hasMultipleSocial:last-child.socialActive::after { left: 14px; }

    .hdr-toplinks__item-children li { padding: 0; }
    .hdr-toplinks__item-children li a { font-size: 16px; }

    header {position: -webkit-sticky; position: sticky; top:0;  z-index: 5;}

    .hdr-main {padding:22px 0;}
    .hdr-topbar {display: none;}
    .hdr-main-nav .btn {display: none;}
}

@media screen and (max-width: 520px) {
    .hdr-logo { margin-right: 20px; }
}

@media screen and (max-width:440px) {
    .hdr-logo { width:200px;  max-width: 55%; }
    .cert-logo { width: 50px; }
    .hdr-main-nav .icon--navsearch { margin-left: 15px; font-size: 16px; }
}

@media screen and (max-width:400px) {
    .hdr-logo { width:190px;  max-width: 54%; }
    .cert-logo { width: 45px; }
}

@media screen and (max-width:380px) {
    .hdr-logos { flex: 0; }
    .hdr-logo { width:175px; max-width: 53%; }
    .cert-logo { width: 40px; }
    .hdr-main-nav .icon--navsearch { font-size: 15px; }
}

@media screen and (max-width:360px) {
    .hdr-main .container {padding: 0 20px; }
}

/* = Nav Hamburger
----------------------------------------------------------------------------------------------------------------- */
.hdr-burger { margin:0 0 0 25px; display: none; vertical-align: middle; overflow: hidden;cursor: pointer;user-select: none;-webkit-tap-highlight-color: transparent;z-index: 1;}
.hamburger {position: relative; display: inline-block; vertical-align: middle; margin: 0;padding: 0;width: 22px;height: 23px;cursor: pointer;-webkit-transition: background 0.3s ease;transition: background 0.3s ease;overflow: hidden;}
.hamburger:focus { outline: none; }
.hamburger span {display: block;position: absolute;top: calc(50% - 1px);margin-top: 0px;left: 0;right: 0;height: 2px;background: #fff;-webkit-transition: background 0.3s ease;transition: background 0.3s ease;}
.hamburger span:before,
.hamburger span:after {content: "";position: absolute;display: block;left: 0;width: 100%;height: 2px;background-color: #fff;-webkit-transition: 0.3s ease;transition: 0.3s ease;}
.hamburger span:before {top: -8px;}
.hamburger span:after {bottom: -8px;width:60%;}
.nav-on .hamburger span { background: none; }
.nav-on .hamburger span:before { top: 0; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.nav-on .hamburger span:after { bottom: 0; -webkit-transform: rotate(-45deg); transform: rotate(-45deg);  width:100%; }

.burger-label { display: inline-block; vertical-align: middle; text-transform: uppercase; letter-spacing: 0.6px; color:#fff; font-size: 14px; font-weight: 600;}
.burger-label span { display: inline-block; min-width: 60px; padding-right: 8px; text-align: right;}
.burger-label .bl-close { display: none;}

@media screen and (min-width: 651px) {
    .nav-on .burger-label .bl-close { display: block;}
    .nav-on .burger-label .bl-menu { display: none;}
}

@media screen and (max-width: 1350px) {
    .hdr-burger { display: inline-block; }
}

@media screen and (max-width:850px) {
    .hdr-burger { margin:0 0 0 20px; }
}

@media screen and (max-width:600px) {
    .burger-label .bl-menu { display: none; }
}

@media screen and (max-width: 520px) {
    .hdr-burger { margin: 0 0 0 10px; }
}

@media screen and (max-width:440px) {
    .hdr-burger { margin:0 0 0 12px; }
    .burger-label span { padding-right: 6px; }
}

@media screen and (max-width:400px) {
    .hdr-burger { margin:0 0 0 10px; }
}
@media screen and (max-width:360px) {
    .burger-label { font-size: 13px; }
    .burger-label span { min-width: 55px; }
}

@media screen and (max-width:340px) {
    .burger-label span { min-width: 52px; }
}

/* = Header - Main Nav
----------------------------------------------------------------------------------------------------------------- */
.hdr-navlinks { list-style: none; margin:0; padding:0; display: inline-block; display: inline-flex;   line-height: 1;}
.hdr-navlinks li { margin:0 22px; padding:0; display: inline-block;  line-height: 1; position: relative; }
.hdr-navlinks li a { font-size: 18px; color:#fff; font-weight: 600; position: relative;}
.hdr-navlinks li a:hover,
.hdr-navlinks li a:focus { color:#00A780; }

.hdr-navlinks li ul { display: none; position: absolute; top: calc(100% + 34px);  left: 50%; -webkit-transform: translateX(-50%);  transform: translateX(-50%);  padding:35px; background: #f4f4f4; z-index: 2; }

.hdr-navlinks .has-children:hover > ul { display: block; }

.hdr-navlinks li ul li {display: block; margin:0 0 22px;}
.hdr-navlinks li ul li:last-child {margin:0; }
.hdr-navlinks li ul li a { color:#162831; font-family: 'Source Sans Pro', sans-serif; white-space: nowrap; font-weight: 400; }

.hdr-navlinks li ul li a:hover,
.hdr-navlinks li ul li a:focus {text-decoration: underline; color:#00A780; }

.hdr-navlinks .has-children:before { content: '';  position: absolute; top: calc(100% - 1px);  left: 0;  width: 100%; height: 37px; z-index: 2; }
.hdr-navlinks .has-children > a:after { content: ''; display: inline-block; margin-left:10px; width: 0;  height: 0; border-style: solid; border-width: 7px 5px 0 5px; border-color: #fff transparent transparent transparent;}
.hdr-navlinks .has-children.nav-services > a:after { content: '\e837'; border:none; min-width: 0; width: auto; height: auto; transform: translateY(1px); }
.hdr-navlinks .nav-services.on > a:after { transform: rotate(45deg) translateY(1px);}


.hdr-navlinks .has-children:not(.nav-services):hover:after,
.hdr-navlinks .has-children.on:after { content: ''; position: absolute; top: calc(100% + 15px);  left: calc(50% - 28px); display: block; width: 0; height: 0; border-style: solid; border-width: 0 22px 22px 22px; border-color: transparent transparent #f4f4f4 transparent; -webkit-transition: all .4s ease; transition: all .4s ease;  z-index: 1;}

@media screen and (max-width:1350px) {
    .hdr-navlinks { display:none; }
}

/* @media screen and (min-width:1201px) and (max-width:1300px) {
    .hdr-navlinks li { margin:0 20px; } 
} */

/* = Header - Mega menu
----------------------------------------------------------------------------------------------------------------- */
.mega-menu { display: none; position: absolute; top:100%; left:0; width:100%; padding:80px; background:#f4f4f4; z-index: 5; }
.mega-menu.on {display: block;}

.mm-inner { max-width: 1380px; margin:0 auto; }
.mm-group {width: calc(25% - 45px); margin: 60px 60px 0 0;}
.mm-group:nth-child(4n+4) { margin-right: 0;}
.mm-group:nth-child(-n+4) { margin-top:0; }

.mm-group ul {margin:0 0 27px; padding:0; list-style: none;}
.mm-group ul li {margin-bottom: 10px; font-family: 'Source Sans Pro', sans-serif;}

.mm-group ul li a:hover,
.mm-group ul li a:focus {text-decoration: underline; color:#00A780;}

.mm-g-title { display: block; text-decoration: underline; line-height: 1.25em; }
.mm-g-title:hover,
.mm-g-title:focus {text-decoration: underline; color:#00A780; }

@media screen and (max-width:1200px) {
    .mega-menu,
    .mega-menu.on  {display:none; }
}

@media screen and (min-width:1201px) and (max-width:1350px) {
    .mega-menu  {padding:60px; }

    .mm-group {width: calc(25% - 37.5px); margin: 50px 50px 0 0;}
}

@media screen and (min-width:1301px) and (max-width:1500px) {
    .mega-menu  {padding:70px; }
}

@media screen and (min-width:1301px) {
    .mm-group ul li a { font-size: 17px;}
}

@media screen and (min-width:1401px) {
    .mm-group ul li a { font-size: 18px;}
}

/* =  Site search box
----------------------------------------------------------------------------------------------------------------- */
.search-site { display: none; position: absolute; top:100%; left:0; width:100%; padding:80px; background:#f4f4f4; z-index: 6; }
.search-site.on {display: block;}
.search-site .h4 {margin-bottom: 15px;}

.search-bar { margin:0; }
.search-bar .form-field {margin:0; }
.search-bar .form-field .btn {margin:0; }
.search-bar .form-field--full { margin-right: 20px; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; }

.search-close {position: absolute; top:25px; right:25px; }

.search-bar--team {margin:40px 0; }
.search-bar--team:first-child {margin-top: 10px;}
.search-bar--team:last-child {margin-bottom: 10px;}
.search-bar--team .text { background:#F5F5F5; border-color: #f5f5f5; }
.search-bar .form-field--full { margin-right: 12px;}

@media screen and (max-width:1500px) {
    .search-site  {padding:70px; }
}

@media screen and (max-width:1300px) {
    .search-site {padding:60px; }
}

@media screen and (max-width:650px) {
    .search-site {padding:50px; }
    .search-close { display: none;}
}

@media screen and (max-width:600px) {
    .search-site {padding:40px; }
}

@media screen and (max-width:480px) {
    .search-site {padding:40px 30px; }
}

@media screen and (max-width:440px) {
    .search-site {padding:35px 25px; }
    .search-site .h4 {line-height: 1; margin-bottom: 12px;}
    .search-bar .form-field--full {margin-right: 15px;}

    .search-bar--team { flex-wrap: wrap;}
    .search-bar--team .form-field { width:100%; }
    .search-bar--team .form-field--full { margin:0 0 15px;}
    .search-bar--team .form-field .btn {width:100%; }
    .search-bar--team .text { text-align: center;}
}

@media screen and (max-width:400px) {
    .search-site {padding:35px 20px; }
}

/* = Header - Mobile & Tablet Menu
----------------------------------------------------------------------------------------------------------------- */
.book-valuation-mob { display: none; position: absolute; top:0; left:0; padding:12px; text-align: center;  width:100%; font-size: 14px; letter-spacing: 0.8px; font-weight: 600; text-transform: uppercase; color:#fff;  background: #00A780;}
.book-valuation-mob:hover,
.book-valuation-mob:focus {color:#fff;}

.nav-close { display: none; top: 65px; right: 40px; position: absolute; }

.mobile-toplinks,
.mobile-social { display: none;}

/* TABLET > */
@media screen and (min-width:801px)  {
    .hdr-mobile-nav { display: none; padding: 45px 0;  height: calc(100% - 118px); top:118px; position: fixed; width: 100%; background: #E4E3DE; z-index: 5; }
    .hdr-mobile-nav:before {content:''; position: absolute; top:0; left:36%; width: 64%; height: 100%; background: #f4f4f4; }

    .mobile-menu-wrap { height: 100%; }
    .mobile-menu  {position: relative;height: 100%;margin: 0 auto;list-style: none;}
    .mobile-menu > li {width: 36%; }
    .mobile-menu > li > a {padding: 22px 40px 22px;font-size: 18px;font-weight: 700;display: block;max-width: 285px;margin: 0 0 0 auto;}
    .mobile-menu > li > ul { display: none; position: absolute;top:0;left: 36%; width:64%; height: 100%; overflow: auto; list-style: none; margin: 0 auto ;padding:0; }
    .mobile-menu > li > ul > li {padding:18px 45px; max-width: 600px; margin: 0 auto;}
    .mobile-menu > li > ul > li a { font-family: 'PT Serif', serif; font-size: 20px; font-weight: 700; text-decoration: underline;}

    .mobile-menu > li > ul > li a:hover,
    .mobile-menu > li > ul > li a:focus {color:#00A780; }

    .mobile-menu > li.on > a,
    .mobile-menu > li.first-on-tablet > a {background: #f4f4f4;}

    .mobile-menu > li.on > ul,
    .mobile-menu > li.first-on-tablet > ul { display: block; }

    .mobile-menu .has-children > a:after {  content: '';  display: inline-block;  margin-left: 11px;  width: 0; height: 0; border-style: solid; border-width: 5px 0 5px 7px;  border-color: transparent transparent transparent #162831; }
}

@media screen and (min-width:801px) and (max-width:1350px)  {
    body.nav-on { width:100%; position: fixed; overflow-y: scroll; }
}

@media screen and (min-width:801px) {
    .mobile-menu > li > ul > li a { font-size: 21px; }
}

@media screen and (min-width:800px) and (max-width:850px) {
    .hdr-mobile-nav { height: calc(100% - 120px); top:120px }
}

@media screen and (min-width:801px) {
    .hdr-mobile-nav { height: calc(100% - 124px); top:124px; }
}

@media screen and (max-width:1350px) {
    .nav-on .hdr-mobile-nav { display: block; }
}

/* MOBILE > */
@media screen and (max-width:800px) {
    .book-valuation-mob,
    .nav-close,
    .mobile-toplinks,
    .mobile-social { display: block;}

    .hdr-mobile-nav { position: fixed; top:0; left:0; width:100%; height: 100%; padding: 115px 40px 40px; background: #f4f4f4; z-index: 10; }

    .hdr-mobile-nav { -ms-transform: translate3d(-100%, 0, 0); -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); -webkit-transition: -webkit-transform 400ms ease; -moz-transition: -moz-transform 400ms ease; transition: transform 400ms ease; }
    .nav-on .hdr-mobile-nav { -ms-transform: translate3d(0, 0, 0); -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

    .mobile-menu  {position: relative; list-style: none; margin:0; padding:0; }
    .mobile-menu > li { border-bottom: 1px solid #E4E3DE;}
    .mobile-menu > li:first-child {border-top: 1px solid #E4E3DE; }
    .mobile-menu > li > a {padding: 16px 0; font-size: 16px; font-weight: 700; display: block; text-transform: uppercase; letter-spacing: 0.8px; position: relative; }
    .mobile-menu > li > ul { display: none;  list-style: none; margin: 5px 0 25px; padding:0; }
    .mobile-menu > li.mob-on > ul {display: block;}
    .mobile-menu > li > ul > li {margin:22px 0; }
    .mobile-menu > li > ul > li:first-child {margin-top:0; }
    .mobile-menu > li > ul > li a { font-size: 17px; display: block; font-weight: 500;}

    .mobile-menu .has-children > a:before { content: ''; position: absolute; top: 4px; right: 48px;  height: calc(100% - 8px); width: 1px; background: #eae9e6; }
    .mobile-menu .has-children > a:after { content: ''; position: absolute; right: 21px; top: calc(50% - 3px);  width: 0;  height: 0; border-style: solid; border-width: 7px 4px 0 4px; border-color: #162831 transparent transparent transparent;}
    .mobile-menu .has-children.mob-on > a:after { -webkit-transform: rotate(180deg); transform: rotate(180deg); }

    .mobile-toplinks {list-style: none; margin: 15px 0 25px; padding:0; } /* -webkit-flex: 1 1 auto; flex: 1 1 auto; */
    .mobile-toplinks li {margin:22px 0; }
    .mobile-toplinks a {  font-size: 17px; display: block; font-weight: 500; }

    .mobile-social {list-style: none; margin: 10px 0 0; padding: 0; text-align: center; }
    .mobile-social li { position: relative; padding: 0 15px; margin: 0; display: inline-block; cursor: pointer; }
    .mobile-social li:first-child { padding-left: 0; }
    .mobile-social li.hasMultipleSocial::before { bottom: calc(100% - 1px); content: ''; height: 37px; left: 0; position: absolute; width: 100%; z-index: 2; }
    .mobile-social li a { font-size: 18px;}
    .mobile-social ul { bottom: calc(100% + 34px); display: none; left: -30px; position: absolute; width: 225px; z-index: 2; }
    .mobile-social li:last-child ul { left: auto; right: -30px; }
    .mobile-social ul li { background: #162831; display: block; padding: 11px 35px; text-align: left; }
    .mobile-social ul li:first-child { border-bottom: 1px solid #E4E3DE; color: #fff; font-weight: 700; padding: 22px 35px; }
    .mobile-social ul li:nth-child(2) { padding-top: 22px; }
    .mobile-social ul li:last-child { padding-bottom: 22px; }
    .mobile-social ul li a { color: #fff; font-size: 12px; font-weight: 600; line-height: 36px; text-decoration: underline; }
    .mobile-social ul li a img { border-radius: 50%; margin-right: 11px; width: 36px; }

    .mobile-social li.hasMultipleSocial.socialActive::after { border-color: #162831 transparent transparent transparent; border-style: solid; border-width: 22px 22px 0 22px; bottom: calc(100% + 15px); content: ''; display: block; height: 0; left: 50%; position: absolute; -ms-transform: translateX(-22px); -webkit-transform: translateX(-22px); transform: translateX(-22px); width: 0; z-index: 1; }
    .mobile-social li.hasMultipleSocial:first-child.socialActive::after { left: 8px; }
    .mobile-social li.socialActive ul { display: block; }

    .mobile-menu-wrap { height: 100%; overflow: auto; display: flex; flex-direction: column;  }
}

@media screen and (max-width:400px) {
    .nav-close { right: 30px;  }
    .hdr-mobile-nav {  padding: 110px 30px 30px; }

    .mobile-menu > li > a { font-size: 15px; padding:15px 0; }
    .mobile-menu > li > ul > li a,
    .mobile-toplinks a { font-size: 16px; }

    .mobile-social li a { font-size: 17px;}
}

@media screen and (max-width:340px) {
    .nav-close { right: 25px;  }
    .hdr-mobile-nav {  padding: 110px 25px 25px; }
}

/* = SUBNAV - Greedy nav
----------------------------------------------------------------------------------------------------------------- */
.greedy-nav { position: relative; min-width: 250px; max-width: 1380px; margin: 0 auto; }
.greedy-nav--sub {width: 100%;}
.greedy-nav a { display: block; padding: 18px 0 17px; white-space: nowrap; font-weight:600; text-transform: uppercase; font-size: 14px;     letter-spacing: 0.6px; -webkit-transition: color .25s ease; transition: color .25s ease;   }

.greedy-nav a:hover,
.greedy-nav a:focus { color: #00A780; }

.greedy-nav .more { display: inline-block;padding: 1px 30px 0 15px;margin-right: 12px;border: 0;cursor: pointer;outline: none;position: relative;line-height: 48px;text-transform: uppercase;font-weight: 600;font-size: 14px;-webkit-transition: color .3s ease;transition: color .3s ease;}
.greedy-nav .more:hover,
.greedy-nav .more:focus { color:#00A780; }

.greedy-nav .more:after { content: '';  position: absolute; right: 15px;  top: calc(50% - 3px);  width: 0;  height: 0; border-style: solid; border-width: 7px 4px 0 4px; border-color: #162831 transparent transparent transparent;}
.greedy-nav .more.on { background: #f4f4f2;}

.greedy-nav .moreburger { position: relative; width: 32px; height: 4px; background: #fff; margin: auto; }
.greedy-nav .moreburger:before,
.greedy-nav .moreburger:after { content: ''; position: absolute; left: 0; width: 32px; height: 4px; background: #fff; }
.greedy-nav .moreburger:before { top: -8px; }
.greedy-nav .moreburger:after { bottom: -8px; }

.greedy-nav ul { list-style: none; margin: 0; padding:0; line-height: 1; }
.greedy-nav ul li { margin: 0; }

.greedy-nav > ul:not(.hidden-links) { display: inline-table; margin: 0; }
.greedy-nav > ul:not(.hidden-links) > li { padding:0 15px; display: table-cell; position: relative; }
.greedy-nav > ul:not(.hidden-links) > li.on { background-color: #f4f4f2;}
.greedy-nav > ul:not(.hidden-links) > li.has-children > a:after { content: '';  margin: 0 0 2px 8px; display: inline-block; vertical-align: middle;   width: 0;  height: 0; border-style: solid; border-width: 7px 4px 0 4px; border-color: #162831 transparent transparent transparent;}

.greedy-nav .hidden-links { position: absolute;  min-width: 250px; padding: 20px 40px; right: 0px; top: 100%; text-align: left; background: #fff; box-shadow: 0 15px 20px rgba(0, 0, 0, 0.125); z-index: 3;  }
.greedy-nav .hidden-links a { padding: 4px 0; text-transform: none; font-size: 16px; letter-spacing: normal; }
.greedy-nav .hidden-links li { display: block; margin: 20px 0; position: relative; }
.greedy-nav .hidden-links li li { margin: 10px 0; }
.greedy-nav .hidden-links li li a:before { content: " - "; margin: 0 5px; }
.greedy-nav .hidden-links li.on > a { color: #00A780; }

.greedy-nav .hidden-links .has-children > ul { display: none; }
.greedy-nav .hidden-links .has-children:hover > ul { display: block; }
.greedy-nav .hidden-links .has-children > ul {position: absolute;right: calc(100% + 40px);top: -40px;padding: 20px 40px;min-width: 200px;background: #fff;box-shadow: 0 15px 20px rgba(0, 0, 0, 0.125);}

.greedy-nav .hidden-links .has-children > a:after { content: '';  margin: 0 0 1px 8px; display: inline-block; vertical-align: middle;   width: 0;  height: 0; border-style: solid; border-width: 6px 4px 0 4px; border-color: #162831 transparent transparent transparent;}
.greedy-nav .hidden-links .has-children > a:before { content: ''; position: absolute;  top: 0; right: calc(100% - 10px); width: 75px; height: 100%;  }

.greedy-nav .hidden { visibility: hidden;  display: none;}
.greedy-nav ul li a.on { text-decoration: underline; }

.greedy-nav > ul:not(.hidden-links) li ul { min-width: 180px; background: #fff; box-shadow: 0 15px 20px rgba(0, 0, 0, 0.125); }

.greedy-nav > ul:not(.hidden-links) > li > ul { position: absolute; top: 100%;  padding: 20px 40px; left: 50%; transform: translate(-50%, -20px); min-width: 180px; background-color: #fff;  visibility: hidden; opacity: 0; -webkit-transition: opacity 200ms, transform 200ms; transition: opacity 200ms, transform 200ms; z-index: 8; }
.greedy-nav > ul:not(.hidden-links) > li:hover > ul { visibility: visible; opacity: 1; transform: translate(-50%, 0); }
.greedy-nav > ul:not(.hidden-links) > li:hover > ul li.on a { color: #00A780; }

.greedy-nav > ul:not(.hidden-links) li ul li { margin:20px 0; width: 100%; position: relative;  }
.greedy-nav > ul:not(.hidden-links) li ul li a { padding: 4px 0; text-transform: none; font-size: 16px; font-weight: 600; }
.greedy-nav > ul:not(.hidden-links) li ul li ul { display: none; position: absolute; left: 100%; top: 0; padding: 5px 0; }
.greedy-nav > ul:not(.hidden-links) li ul li:hover ul { display: block; }
.greedy-nav > ul:not(.hidden-links) li ul li ul li { font-weight: normal; margin: 0; }
.greedy-nav > ul:not(.hidden-links) li ul li ul li a { font-weight: normal; }

@media screen and (max-width: 1200px) {
    .greedy-nav a { font-size: 13px;}
    .greedy-nav .more {font-size: 13px;}
    .greedy-nav .hidden-links a,
    .greedy-nav > ul:not(.hidden-links) li ul li a {font-size: 15px;}
}

@media screen and (max-width: 800px) {
    .greedy-nav .more { line-height: 47px;}
}

@media screen and (max-width: 650px) {
    .greedy-nav { visibility: hidden; height: 1px; margin-top:-1px; border: none; min-width: 150px; }
    .greedy-nav > ul:not(.hidden-links) > li > ul  {display: none;}
}

/* = SUBNAV - Container, Title (mobile only) & In this section
----------------------------------------------------------------------------------------------------------------- */
.hdr-subnav { background: #E4E3DE; } 
.mobi-section-title  {display: none; padding: 14px 14px 15px;  text-align: center; color: #fff; font-weight: 500; background: #162831; border-top: 1px solid #304955; }

.in-this-section { display: none; position: relative;}
.in-section-title { padding:20px 0; display: block; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; font-weight: 500; }

.in-section-nav { display: none; position: absolute; padding: 20px 35px; top:100%; left:0; width:100%; background: #fff; box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1); z-index: 2; }
.in-section-nav ul { list-style: none; margin:0; padding:0; }
.in-this-section.on .in-section-nav  { display: block; }

.in-section-nav > ul > li {margin:15px 0; }
.in-section-nav > ul > li > a { display: block; padding:4px 0; font-weight: 600; }
.in-section-nav > ul > li.on > a { color: #00A780; } 
.in-section-nav > ul > li.has-children > a:after { content: '';  margin: 0 0 2px 10px; display: inline-block; vertical-align: middle;  width: 0; height: 0; border-style: solid; border-width: 7px 4px 0 4px; border-color: #162831 transparent transparent transparent;}

.in-section-nav ul li ul { margin: 15px 0 30px; display: block;}
.in-section-nav ul .has-children.on ul {display: block;}
.in-section-nav ul .has-children.on > a {color:#00A780; }
.in-section-nav ul li ul li {margin:10px 0; }
.in-section-nav ul li ul li a {  font-weight: 500; }
.in-section-nav ul li ul li a:before { content: " - "; }
.in-section-nav ul li ul li.on > a { color:#00A780; }

@media screen and (max-width:650px) {
    .mobi-subnav-wrap { width: 100%; }
    .mobi-section-title  {display: block; }

    .in-this-section {display: flex; align-items: stretch; padding:0 35px; } 
    .in-section-title { padding:15px 0; }

    .in-this-section.on .icon:after  { -webkit-transform: rotate(180deg); transform: rotate(180deg);}
}

@media screen and (max-width:600px) {
    .in-this-section { padding:0 30px; }
    .in-section-title { padding:14px 0; }

    .in-section-nav {  padding: 20px 30px; }
}

@media screen and (max-width:480px) {
    .in-this-section { padding:0 25px; }
    .in-section-nav {  padding: 18px 25px; }
}

@media screen and (max-width:400px) {
    .in-this-section { padding:0 22px; }
    .in-section-nav {  padding: 18px 22px; }   
}

@media screen and (max-width:340px) {
    .in-section-nav > ul > li > a {  font-size: 15px; }
}

/* = Breadcrumbs
----------------------------------------------------------------------------------------------------------------- */
.breadcrumbs { list-style: none; margin:20px 0 0; padding:0 0 10px; border-bottom: 1px solid #E4E3DE; }
.breadcrumbs li { display: inline-block; vertical-align: middle; font-size: 0.875em; font-weight: 500;}

.breadcrumbs a:hover,
.breadcrumbs a:focus { text-decoration: underline;}

.breadcrumbs li:not(:last-child):after {content:'/'; display: inline-block;   margin: 0 5px; color:#B9B9B9; font-weight: 300; }
.breadcrumbs li.active,
.breadcrumbs li.active a {color:#00A780;}

@media screen and (max-width:1200px) {
    .breadcrumbs li { font-size: 0.813em; }
}

@media screen and (max-width:800px) {
    .breadcrumbs { margin:15px 0 0; }
    .breadcrumbs li { font-size: 0.75em; }
    .breadcrumbs li:not(:last-child):after { margin: 0 3px; }
}

@media screen and (max-width:650px) {
    .container--breadcrumbs {display: none;}
}

/* = Pagination
----------------------------------------------------------------------------------------------------------------- */
.paging {margin:45px 0 20px; text-align: center; }
.paging ul {list-style: none; margin:0; padding:0; }
.paging ul li { margin:0 3px; display: inline-block; vertical-align: top; }
.paging ul li a { display: block; width:22px; height: 22px; font-weight: 600; transition: all .2s ease; transition: all .2s ease; }
.paging ul li a.on { color:#fff; background: #00A780;}

.paging ul .pg-nav a { color:#fff; background: #B9BFC1;} 
.paging ul .pg-nav a:after { vertical-align: middle; font-size: 0.6em; }

.paging ul li a:not(.on):hover,
.paging ul li a:not(.on):focus { color:#fff; background: #162831;}

.paging ul .pg-prev { margin-right: 20px; }
.paging ul .pg-prev a:after { content: '\e824'; padding-right: 1px;}

.paging ul .pg-next { margin-left: 20px; }
.paging ul .pg-next a:after { content: '\e809'; padding-left: 1px; }

@media screen and (min-width:651px) {
    .paging ul li a { width:24px; height: 24px; font-size: 18px;}
}

/* = Hero banners
----------------------------------------------------------------------------------------------------------------- */
.hero { background: #444; position: relative; }
.hero--full { min-height: calc(100vh - 173px); z-index: 1; }

.hero--slim { height: 350px; overflow:hidden; } 
.hero--staff,
.hero--office { height: 425px; background: #3a3a3a; } 

.hero-image { position: absolute; top:0; left:0; width:100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; background: #333; }
.hero-image:after { content:'';  position: absolute; top:0; left:0; width:100%; height: 100%;  background: linear-gradient(180deg, rgba(22, 40, 49, 0.82) 0%, rgba(128, 128, 128, 0) 100%); mix-blend-mode: multiply;  opacity: 1; }

.hero--staff .hero-image,
.hero--office .hero-image { left: 50%; max-width: 1920px; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.hero--staff .hero-image:after { display: none; }
.hero--office .hero-image:after { opacity: 0.5; }

.hero-content { max-width: 880px; padding: 100px 30px;  margin:0 auto; text-align: center; position: relative; z-index: 1; }
.hero-content p {max-width: 650px; margin-left:auto; margin-right: auto; font-weight: 500;}
.hero-content h1:last-child {margin-bottom: 5px;}
.hero-content .btn { }
.hero-content .btn + .btn { margin-left: 10px; }

.hero-logo { max-width: 230px; }

.hero-meta {margin-bottom: 16px;}
.hero-meta div { display: inline-block; margin-right: 12px; color:#fff; }
.hero-meta .hm-cat-pill {padding: 5px 12px;border-radius: 20px; font-size: 0.75em;text-transform: uppercase;font-weight: 600;letter-spacing: 0.7px; background: #DB2763;}

.down-to-content { margin: 50px 0 0; width: 60px; height: 60px; border-radius: 50%; display: inline-block; background:rgba(255, 255, 255, 0.25); position: relative; transition: background-color .3s ease; }
.down-to-content:before { position: absolute; color:#fff; top:48%; left:50%; content: '\e826'; font-size: 0.45em; -webkit-transform: translate(-50%, -50%) rotate(90deg); transform: translate(-50%, -50%) rotate(90deg); } 

.down-to-content:hover,
.down-to-content:focus { background: #DB2763; }

.hero-buttons-inline .btn {min-width: 122px; text-align: center;}
.hero-buttons-inline .btn + .btn { margin-left:20px; }

@media screen and (min-width:1201px) {
    .hero-content h1 {font-size: 32px;}
}

@media screen and (min-width:1301px) {
    .hero--slim { height: 400px; } 

    .hero-content h1 {font-size: 33px;}
}

@media screen and (min-width:1401px) {
    .hero-content h1 {font-size: 34px;}

    .hero--staff,
    .hero--office { height: 450px; } 
}

@media screen and (min-width:1601px) {
    .hero--staff,
    .hero--office { height: 475px; } 
}

@media screen and (max-width:1200px) {
    .hero--slim { height: 325px;} 

    .hero--staff,
    .hero--office { height: 400px; }

    .hero-content { padding: 90px 30px; }
}

@media screen and (max-width:800px) {
    .hero--slim { height: 300px;} 
   
    .hero--staff,
    .hero--office { height: 350px; }
}

@media screen and (max-width:750px) {
    .hero--full { min-height: calc(100vh - 166px); }
    .hero--slim,
    .hero--staff,
    .hero--office  { min-height: 275px; height: auto;} 

    .hero-content { padding: 80px 30px; }

}

@media screen and (max-width:650px) {
    .hero--full {  min-height: calc(100vh - 130px); }
}

@media screen and (max-width:600px) {
    .hero--full {  min-height: calc(100vh - 125px); }
    .hero--slim,
    .hero--staff,
    .hero--office { min-height: 250px; height: auto;} 

    .hero-content { padding: 75px 30px; }
    .hero-meta {font-size: 15px;}
}

@media screen and (max-width:480px) {
    .hero-content { padding: 70px 30px; }
    
    .down-to-content { margin: 40px 0 0; width: 54px; height: 54px; }
    .down-to-content:before { font-size: 0.4em;  }

    .hero-meta {font-size: 14px;}
}

@media screen and (max-width:400px) {
    .hero--full {  min-height: calc(100vh - 120px); }

    .hero-content { padding: 60px 25px; }
    .down-to-content { margin: 35px 0 0;}

    .hero-meta {font-size: 13px;}
    .hero-logo { max-width: 200px; } 
}

@media screen and (max-width:340px) {
    .hero-content { padding: 55px 22px; }
    .hero-logo { max-width: 190px; } 
}

/* = Hero home slider
----------------------------------------------------------------------------------------------------------------- */
.hero--slider .lSSlideOuter .lSPager.lSpg { position: absolute;  top: 45px;  right: 50%; margin-right: -570px;  }
.hero--slider[data-items-count="1"] .lSSlideOuter .lSPager { display: none; }

.hero--slider .home-slide { visibility: hidden; }
.hero--slider .home-slide.is-first,
.hero--slider .lSSlideOuter .home-slide { visibility: visible; }

.home-slider .hero-image { position: relative; height: 0; padding-top: 50%;}
.home-slider .hc-wrap { position: absolute; top:0; left:0; width: 100%; height: 100%;  display: -webkit-flex; display: flex; -webkit-flex-direction: column;  flex-direction: column; }

.hero-content--slider { width:100%; max-width: 1260px; padding-left:60px; padding-right: 60px; padding-bottom: 300px; text-align: left; margin-right: auto; }
.hero-content--slider .h2 { max-width: 710px; line-height: 1.1; }
.hero-content--slider p { margin-left:0; }
.hero-content--slider p .btn:first-child {margin-top:5px; }

.hero--slider .down-to-content-wrap { position: absolute; left:0; bottom: 25%; width:100%;  z-index: 2; }
.hero--slider .down-to-content-wrap--base { bottom: 25%; }

.hero-quicklinks { position: absolute; left: 50%; margin-left: -570px;  bottom: 35%;  width: auto;  z-index: 2; }
.hero-quicklinks p { margin-bottom: 25px;}

@media screen and (min-width:1601px) {
    .hero-content--slider .h2 { max-width: 750px;}
}

@media screen and (min-width:1701px) {
    .hero-content--slider .h2 { max-width: 780px;}
}

@media screen and (max-width:1950px) {
    .home-slide { display: block; }
    .home-slider .hc-wrap { position: relative;}
    .home-slider .hero-image { position: absolute;}

    .home-slide  { min-height: 100%; display: table; } 

    .home-slider .hc-wrap {  -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start;  } 
    .home-slider .hero-image { height: 100%;   padding: 0;  min-height: 100%;   display: table-cell; background-size: cover;  background-repeat: no-repeat; background-position: center;   }
    .home-slider .hero-image img { opacity: 0; position: relative;}

    .hero-content--slider {  padding-bottom: 450px; } 

    .hero-quicklinks { bottom:300px; }
    .hero--slider .down-to-content-wrap {bottom: 220px; }
    .hero--slider .down-to-content-wrap--base { bottom: 50px; }
    .hero--slider .down-to-content { margin:0 60px 0 0; }
}


@media screen and (max-width:1260px) {
    .hero--slider .lSSlideOuter .lSPager.lSpg { right: 60px; margin:0;  }

    .hero-quicklinks {  left: 0; margin-left: 0;  padding-left: 60px;  padding-right: 60px; }
}

@media screen and (max-width:1200px) {
    .hero-content--slider { padding-top:80px; padding-left:60px; padding-right: 60px; padding-bottom: 400px; }

    .hero-quicklinks { bottom:250px; }
    .hero--slider .down-to-content-wrap {bottom: 190px; }
    .hero--slider .down-to-content-wrap--base { bottom: 50px; }
    .hero--slider .down-to-content { margin:0 60px 0 0; }
}

@media screen and (max-width:1024px) {
    .hero--slider .down-to-content-wrap { text-align: right; bottom: 240px;}
    .hero--slider .down-to-content-wrap--base { bottom: 50px; }
}

@media screen and (max-width:750px) {
    .hero--slider .lSSlideOuter .lSPager.lSpg { right: 50px; }

    .hero-content--slider { padding-top:75px; padding-left:50px; padding-right: 50px;     padding-bottom: 350px; }

    .hero-quicklinks {padding-left: 50px; padding-right: 50px; bottom:175px; }
    .hero--slider .down-to-content-wrap {bottom: 180px; }
    .hero--slider .down-to-content-wrap--base { bottom: 50px; }
}

@media screen and (max-width:650px) {
    .hero--slider .lSSlideOuter .lSPager.lSpg {right:auto; left:50px; }
    .hero--slider .down-to-content-wrap { display: none;} 

    .hero-content--slider { padding-top:95px;   padding-bottom: 325px; }
    .hero-content--slider p:last-of-type {margin-bottom: 0;}
}

@media screen and (max-width:600px) {
    .hero--slider .lSSlideOuter .lSPager.lSpg { left:40px; }

    .hero-content--slider { padding-top:90px;  padding-left:40px; padding-right: 40px;  padding-bottom: 280px; }

    .hero-quicklinks {padding-left: 40px; padding-right: 40px; bottom:120px; }
}

@media screen and (max-width:480px) {
    .hero--slider .lSSlideOuter .lSPager.lSpg { left:30px;  top: 30px;  }

    .hero-content--slider { padding-top:75px; padding-left:30px; padding-right: 30px; padding-bottom: 250px; }

    .hero-quicklinks {padding-left: 30px; padding-right: 30px; width: 100%; }
}

@media screen and (max-width:400px) {
    .hero--slider .lSSlideOuter .lSPager.lSpg { left:25px; top: 25px; }

    .hero-content--slider { padding-top:75px; padding-left:25px; padding-right: 25px; padding-bottom: 220px;  }

    .hero-quicklinks {padding-left: 25px; padding-right: 25px; bottom:90px; }
    .hero-quicklinks p { margin-bottom: 20px;}
}

/* = Title strip
----------------------------------------------------------------------------------------------------------------- */
.title-strip  { padding:35px 0; text-align: center;  color:#fff;  background: #2A3D46;} 
.title-strip * { color:#fff; }
.title-strip *:last-child {margin-bottom: 0;}

@media screen and (max-width:750px) {
    .title-strip  { padding:30px 0;}
}

@media screen and (max-width:440px) {
    .title-strip  { padding:25px 0;}
}

@media screen and (max-width:400px) {
    .title-strip  { padding:22px 0;}
}

/* = Skip to content
----------------------------------------------------------------------------------------------------------------- */
.skip-to-content { position: fixed;  top:0;  left:0; padding: 10px 20px; font-size: 14px;  color:#fff;  background: #162831; border:4px solid #00A780; outline: none; -webkit-transform: translateY(-101%); transform: translateY(-101%);-webkit-transition: transform 0.3s ease; transition: transform 0.3s ease; z-index: 10; }
.skip-to-content:active,
.skip-to-content:hover,
.skip-to-content:focus { color:#fff; -webkit-transform: translateY(0%); transform: translateY(0%);}

/* = Slider - Defaults
----------------------------------------------------------------------------------------------------------------- */
.slider-wrap { margin:45px 0; }
.slider-wrap:first-child {margin-top:0; }
.slider-wrap:last-child {margin-bottom:5px; }

.slider-wrap.is-loading { position: relative; }
.slider-wrap.is-loading:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: url(../gif/loading.gif) center no-repeat rgba(255, 255, 255, .9); z-index: 2; }
.row--light-grey .slider-wrap.is-loading:after { background-color: rgba(245, 245, 245, .9); }

.lSSlideOuter { overflow: hidden; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none }
.lightSlider:before, .lightSlider:after { content: " "; display: table; }
.lightSlider { overflow: hidden; margin: 0; }
.lSSlideWrapper { max-width: 100%; overflow: hidden; position: relative; }
.lSSlideWrapper > .lightSlider:after { clear: both; }
.lSSlideWrapper .lSSlide { -webkit-transform: translate(0px, 0px); -ms-transform: translate(0px, 0px); transform: translate(0px, 0px); -webkit-transition: all 1s; -webkit-transition-property: -webkit-transform,height; -moz-transition-property: -moz-transform,height; transition-property: transform,height; -webkit-transition-duration: inherit !important; transition-duration: inherit !important; -webkit-transition-timing-function: inherit !important; transition-timing-function: inherit !important; }
.lSSlideWrapper .lSFade { position: relative; }
.lSSlideWrapper .lSFade > * { position: absolute !important; top: 0; left: 0; z-index: 0; margin-right: 0; width: 100%; }
.lSSlideWrapper.usingCss .lSFade > * { opacity: 0; -webkit-transition-delay: 0s; transition-delay: 0s; -webkit-transition-duration: inherit !important; transition-duration: inherit !important; -webkit-transition-property: opacity; transition-property: opacity; -webkit-transition-timing-function: inherit !important; transition-timing-function: inherit !important; }
.lSSlideWrapper .lSFade > *.active { z-index: 1; }
.lSSlideWrapper.usingCss .lSFade > *.active { opacity: 1; }

/* Slider Pager */
.lSSlideOuter .lSPager.lSpg { margin: 10px 0 0; padding: 0; text-align: center;}
.lSSlideOuter .lSPager.lSpg > li { cursor: pointer; display: inline-block;   padding: 0 5px;}
.lSSlideOuter .lSPager.lSpg > li:first-child {padding-left: 0;}
.lSSlideOuter .lSPager.lSpg > li:last-child {padding-right: 0;}
.lSSlideOuter .lSPager.lSpg > li a { background-color: #fff; border-radius: 12px; display: inline-block; width: 19px; height: 6px; overflow: hidden; text-indent: -999em;   position: relative; -webkit-transition: all 0.4s linear 0s; transition: all 0.4s linear 0s;  z-index: 1;}
 
.lSSlideOuter .lSPager.lSpg > li.active a { background-color: #00A780;}

/* Slider Gallery */
.lSSlideOuter .lSPager.lSGallery { list-style: none outside none; padding-left: 0;   margin: 0; overflow: hidden;  transform: translate3d(0px, 0px, 0px); -moz-transform: translate3d(0px, 0px, 0px);  -ms-transform: translate3d(0px, 0px, 0px);-webkit-transform: translate3d(0px, 0px, 0px); -o-transform: translate3d(0px, 0px, 0px);  -webkit-transition-property: -webkit-transform; -moz-transition-property: -moz-transform; -webkit-touch-callout: none; -webkit-user-select: none; -ms-user-select: none;  user-select: none;}
.lSSlideOuter .lSPager.lSGallery li { overflow: hidden;-webkit-transition: border-radius 0.12s linear 0s 0.35s linear 0s;  transition: border-radius 0.12s linear 0s 0.35s linear 0s;}
.lSSlideOuter .lSPager.lSGallery li.active, .lSSlideOuter .lSPager.lSGallery li:hover { border-radius: 5px;}
.lSSlideOuter .lSPager.lSGallery img { display: block; height: auto; max-width: 100%;}
.lSSlideOuter .lSPager.lSGallery:before, .lSSlideOuter .lSPager.lSGallery:after {  content: " "; display: table;}
.lSSlideOuter .lSPager.lSGallery:after { clear: both;}

/* Slider actions */
.lSAction > a,
.lSAction > .lsArrow {  width: 44px;  height: 44px; line-height: 44px; text-align: center; display: block; top: calc(50% - 22px);  background:#162831; cursor: pointer;position: absolute;  -webkit-transition:  background-color 0.35s linear 0s; transition: background-color 0.35s linear 0s; z-index: 1;   box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15); }
.lSAction > .lSPrev { left: 0; }
.lSAction > .lSNext { right: 0; }
.lSAction > a.disabled,
.lSAction > .lsArrow.disabled { pointer-events: none; }
.cS-hidden { height: 1px; opacity: 0; overflow: hidden;}

.lSAction > a:hover,
.lSAction > .lsArrow:hover,
.lSAction > a:hover,
.lSAction > .lsArrow:hover { background-color: #00A780;}

.row--blue .lSAction > a { color:#162831; background: #fff; }
.row--blue .lSAction > a:after {color:#162831;  }

/* Rtl */
.lSSlideOuter.lSrtl { direction: rtl; }
.lSSlideOuter .lightSlider, .lSSlideOuter .lSPager { padding-left: 0; list-style: none outside none; }
.lSSlideOuter.lSrtl .lightSlider, .lSSlideOuter.lSrtl .lSPager { padding-right: 0; }
.lSSlideOuter .lightSlider > *, .lSSlideOuter .lSGallery li { float: left; }
.lSSlideOuter.lSrtl .lightSlider > *, .lSSlideOuter.lSrtl .lSGallery li { float: right !important; }

@-webkit-keyframes rightEnd {
    0% { left: 0; }
    50% { left: -15px; }
    100% { left: 0; }
}

@keyframes rightEnd {
    0% { left: 0; }
    50% { left: -15px; }
    100% { left: 0; }
}

@-webkit-keyframes leftEnd {
    0% { left: 0; }
    50% { left: 15px; }
    100% { left: 0; }
}

@keyframes leftEnd {
    0% { left: 0; }
    50% { left: 15px; }
    100% { left: 0; }
}

.lSSlideOuter .rightEnd { -webkit-animation: rightEnd 0.3s; animation: rightEnd 0.3s; position: relative; }
.lSSlideOuter .leftEnd { -webkit-animation: leftEnd 0.3s; animation: leftEnd 0.3s; position: relative; }
.lSSlideOuter.lSrtl .rightEnd { -webkit-animation: leftEnd 0.3s; animation: leftEnd 0.3s; position: relative; }
.lSSlideOuter.lSrtl .leftEnd { -webkit-animation: rightEnd 0.3s; animation: rightEnd 0.3s; position: relative; }

@media screen and (max-width:750px) {
    .lSSlideOuter .lSPager.lSpg > li a {  width: 16px; height: 5px;}
}

@media screen and (max-width:600px) {
    .slider-wrap { margin:40px 0; }

    .lSAction > a,
    .lSAction > .lsArrow {  width: 40px;  height: 40px; line-height: 40px;  top: calc(50% - 20px); }
}

@media screen and (max-width:440px) {
    .slider-wrap { margin:35px 0; }
}

@media screen and (max-width:400px) {
    /* .slider-wrap { margin:40px 0; }  */
    .lSAction > a,
    .lSAction > .lsArrow {  width: 38px;  height: 38px; line-height: 38px;  top: calc(50% - 19px); font-size: 15px; }

    .lSSlideOuter .lSPager.lSpg > li a {  width: 14px; height: 4px;}
}

/* = Slider - Cards & Services
----------------------------------------------------------------------------------------------------------------- */
.slider-wrap--cards .lSSlideOuter  { position: relative;}
.slider-wrap--cards .lSSlideWrapper  { position:static; margin: 0 60px; }

.slider-wrap--services .lSAction > a { top: calc(50% - 65px); }

@media screen and (max-width:600px) {
    .slider-wrap--cards .lSSlideWrapper { margin: 0 50px; }
}

@media screen and (max-width:480px) {
    .slider-wrap--cards .lSSlideWrapper  { margin: 0 20px; }
}

@media screen and (max-width:440px) {
    .slider-wrap--services .lSAction > a { top: calc(50% - 55px); }
}

@media screen and (max-width:400px) {
    .slider-wrap--cards {margin-left:-10px; margin-right: -10px;}
    .slider-wrap--cards .lSSlideWrapper  { margin: 0 15px; }
}

/* = Slider - Updates
----------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:751px) {
    .slider-wrap--updates .lSSlideWrapper  { overflow: visible; max-width: 600px; margin:0 auto; }

    .slider-wrap--updates .card--update { opacity: 0.3; -webkit-transform:scale(0.85); transform:scale(0.85); -webkit-transform-origin: center 0; transform-origin: center 0;  -webkit-transition:all .4s ease; transition:all .4s ease; }
    .slider-wrap--updates .card--update.active { opacity: 1; -webkit-transform:scale(1); transform:scale(1); }

    .slider-wrap--updates .card--update .card-content {opacity: 0;  -webkit-transition:all .4s ease; transition:all .4s ease;}
    .slider-wrap--updates .card--update.active  .card-content { opacity: 1; }

    .slider-wrap--updates .lSAction { position: absolute; width: 44px; top:0; right:-60px; display: flex; flex-wrap: wrap;  }
    .slider-wrap--updates .lSAction > a { position: relative; right:auto; display: block; width: 100%; order:2 }
    .slider-wrap--updates .lSAction .lSNext { order:1; margin-bottom: 10px; }
}

@media screen and (max-width:750px) {
    .slider-wrap--updates .lSSlideOuter  { position: relative;}
    .slider-wrap--updates .lSSlideWrapper  { position:static; margin: 0 30px; }
    .slider-wrap--updates .lSAction > a { top: calc(42% - 65px); }
}

@media screen and (max-width:600px) {
    .slider-wrap--updates { margin-left:-10px; margin-right: -10px;}
    .slider-wrap--updates .lSSlideWrapper  { margin: 0 20px; }
}

@media screen and (max-width:480px) {
    .slider-wrap--updates .lSSlideWrapper  { margin: 0 15px; }
    .slider-wrap--updates .lSAction > a { top: calc(38% - 65px); }
}

@media screen and (max-width:440px) {
    .slider-wrap--updates .lSAction > a { top: calc(33% - 55px); }
}

@media screen and (max-width:400px) {
    .slider-wrap--updates .lSAction > a { top: calc(32% - 55px); }
}

/* = Slider - Portfolio featured
----------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:1001px) {
    .slider-wrap-portfolio .lSAction { position: absolute; width: 52px; top:52px; left: 78.25%; display: flex; flex-wrap: wrap;  }
    .slider-wrap-portfolio .lSAction > a { position: relative; right:auto; display: block; width: 52px; height: 52px; line-height: 52px; order:2 }
    .slider-wrap-portfolio .lSAction > a:after {font-size: 1.3em;}
    .slider-wrap-portfolio .lSAction .lSNext { order:1; margin-bottom: 10px; }

    .slider-wrap-portfolio--view .lSAction { top:25px; }
}

@media screen and (min-width:1201px) {
    .slider-wrap-portfolio .lSAction { left: 78.75%; width: 60px; top:60px; }
    .slider-wrap-portfolio .lSAction > a {  width: 60px; height: 60px; line-height: 60px; }

    .slider-wrap-portfolio--view .lSAction { top:25px; }
}

/* = Cards
----------------------------------------------------------------------------------------------------------------- */
.card-image { height: 0; padding-top: 56%; position: relative; background: #333; }

/* Different background for no image for any svg fallbacks */
.card-image--none { background: #eee; }

.card--service .card-image { padding-top: 66.33%; overflow: hidden; }

.card--service .card-image img { -webkit-backface-visibility: hidden; -webkit-transform: translateZ(0) scale(1.0, 1.0); transform: translateZ(0); -webkit-transition: transform .3s ease; transition: transform .3s ease; }
.card--service:hover .card-image img,
.card--service:focus .card-image img { -webkit-transform: scale(1.06); transform: scale(1.06); }

.card--service .card-content {margin-top:25px; }
.card--service h3 {margin-bottom: 20px;}

.card--service:hover h3,
.card--service:focus h3 { text-decoration: underline; }

.card-date { margin-bottom: 10px; font-size: 15px; letter-spacing: 0.6px; text-transform: uppercase; color: #00A780; font-family: 'Source Sans Pro', sans-serif; font-weight: 600; }

.card--news { display: block; width:100%; margin:0 0 40px; background: #f5f5f5; }
.card--news:last-child {margin-bottom: 5px;} 
.card--news .card-image { padding-top: 66.33%; overflow: hidden; }

.card--news .card-image img { -webkit-backface-visibility: hidden; -webkit-transform: translateZ(0) scale(1.0, 1.0); transform: translateZ(0); -webkit-transition: transform .3s ease; transition: transform .3s ease; }
.card--news:hover .card-image img,
.card--news:focus .card-image img { -webkit-transform: scale(1.06); transform: scale(1.06); }

.card--news .card-content { padding:25px 30px; background: #f5f5f5; }
.card--news .card-title  {margin-bottom: 15px;}

.card--news:hover .card-title,
.card--news:focus .card-title  { text-decoration: underline;}

.card--news .cc-inner {position: relative;}
.card--news .icon--right-arrow {position: absolute; top:0; right:0; }

.card--contact {width:100%; margin:0 0 40px; }
.card--contact:last-child {margin-bottom: 5px;} 
.card--contact .card-content {margin-top:20px; }
.card--contact .card-image {padding-top:100%; position: relative; background: #333 url(../gif/loader-card.gif) center no-repeat; }
.card--contact .card-image--none { background-image: none; }
.card--contact .card-image > a {position: absolute; top:0; left:0; width:100%; height: 100%;}
.card--contact .contact-name { margin-bottom: 8px;} 
.card--contact .contact-name > a:hover {text-decoration: underline;}
.card--contact .contact-job {margin-bottom: 15px;}
.card--contact .contact-location { text-transform: uppercase; font-weight: 600; letter-spacing: 0.7px; color: #00A780; font-family: 'Source Sans Pro', sans-serif;}

.contact-contact { margin-top:15px; }
.contact-contact:first-child { margin-top:0; }
.contact-contact + .contact-contact { margin-top: 30px;}
.contact-contact .contact-icon {width:26px; height: 26px;  text-align: center; margin:0 11px 0 0; color:#fff; background: #162831;  display: inline-block;vertical-align: top; border-radius: 50%; position: relative;}
.contact-contact .contact-icon:before {  position: absolute;  top: 50%; left: 50%;  -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);  }
.contact-contact .icon--map-pin:before { font-size: 0.875em;}
.contact-contact > p {position: relative;}
.contact-contact > p:not(:last-child) {margin-bottom: 18px;}
.contact-contact > p .contact-icon { position: absolute; top:0; left:0; }
.contact-contact .contact-label {padding-left: 35px; display: inline-block; font-size: 17px; }
.contact-contact a.contact-label {font-weight: 700;}
.contact-contact a.contact-label--location {font-weight: 500;}
.contact-contact--white {margin:30px 0 35px;}
.contact-contact--white:last-child {margin-bottom: 0;}
.contact-contact--white .contact-icon {  color:#162831; background: #fff; }
.contact-contact--white .contact-label  {color: #fff; }
.contact-contact .contact-icon--green { background: #00A780; }

.cards--contact--x2 {margin-top:30px;}

.card.card--contact--single { float:none; width:100%; margin:35px 0; }
.card.card--contact--single:last-child {margin-bottom: 5px;}
h6 + .card.card--contact--aside {margin-top:40px;}
.card--contact--boxed .card-content { margin:0; padding:30px 25px; background: #f5f5f5;} 

.card--auction { display: block; width:100%; margin:0 0 42px;}
.card--auction:last-child {margin-bottom: 5px;} 
.card--auction .card-image {padding-top:42%; background: #333 url(../gif/loader-card.gif) center no-repeat; overflow: hidden; }

.card--auction .card-image img { -webkit-backface-visibility: hidden; -webkit-transform: translateZ(0) scale(1.0, 1.0); transform: translateZ(0); -webkit-transition: transform .3s ease; transition: transform .3s ease; }
.card--auction:hover .card-image img,
.card--auction:focus .card-image img { -webkit-transform: scale(1.05); transform: scale(1.05); }

.card--auction .card-content {margin-top:25px; }
.card--auction .auction-name > a:hover {text-decoration: underline;}
.card--auction-alt .auction-date,
.card--auction .auction-date { position: absolute; top:20px; right:20px; padding:10px 10px 12px; min-width: 70px; text-align: center;  color:#fff; border:1px solid #fff; background: #162831; font-family: 'Source Sans Pro', sans-serif; }
.card--auction-alt .auction-date .ad-day,
.card--auction .auction-date .ad-day {font-size: 36px; line-height: 1; font-weight: 600;}
.card--auction-alt .auction-date .ad-month-year,
.card--auction .auction-date .ad-month-year { font-size: 14px; text-transform: uppercase; font-weight: 600;} 
.card--auction .auction-type { position: absolute; bottom:20px; right:20px;  font-size: 18px; color:#fff; font-weight: 600;  font-family: 'Source Sans Pro', sans-serif;  }
.card--auction .auction-type .icon {padding-right: 6px;}
.card--auction .auction-type .icon--clock {font-size: 1.2em;}
.card--auction .auction-keyinfo { position: relative;}
.card--auction .h5 { line-height: 1.3em;}
.card--auction .aki {margin: 15px 0 0;}
.card--auction .aki .icon { padding-right: 8px; }
.card--auction .aki:not(.aki-location) {font-size: 18px;}
.card--auction .aki:first-child {margin:0; }
.card--auction .aki-location {position: absolute; top:2px; right: 0; text-transform: uppercase; letter-spacing: 0.3px; color:#7ED2BD; max-width: 50%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.card--auction .aki-catalogue { text-decoration: underline; position: absolute; right: 0;  bottom: 0; }

.slider-wrap .card--auction { margin-top:0;}

.card--auction-live-property .card-content { margin-top:30px; }
.card--auction-live-property .auction-keyinfo,
.card--auction-live-property .h5 { color:#fff; }
.card--auction.card--auction-live-property .card-image {padding-top:60%;}

.card--auction-listing .card-image { padding-top: 60%; }
.card--auction-listing .aki-location { color: #777; }
.card--auction-listing .card-content { padding: 0 25px 30px; }
.card--auction-eig .card-date { padding-right: 50px; }

.card--image-cta { display: block; width:100%; margin:0 0 42px; position: relative; }
.card--image-cta:last-child {margin-bottom: 10px;} 

.card--image-cta .card-title { position: absolute; margin:0; padding:24px 30px;  left:0; bottom:0; width:100%; color:#fff; background: rgba(22, 40, 49, 0.75); -webkit-transition:all .3s ease; transition:all .3s ease; }

.card--image-cta:hover .card-title,
.card--image-cta:focus .card-title  { background-color: #00A780; }

.card--image-cta .card-title .icon:after {font-size: 7px; padding-left: 5px;}

.card--update .card-image { padding-top: 65%; margin-bottom: 30px; background: #333 url(../gif/loader-card.gif) center no-repeat; }
.card--update .card-title { padding-right: 65px; position: relative;}

.card--update:hover .card-title,
.card--update:hover .card-title { text-decoration: underline;} 

.card--update .card-title .icon {position: absolute; right:0; top:0; }
.card--update .card-title .icon:after {font-size: 7px;}
.card--update .card-desc { color:#707070; font-weight: 500; }  
.card--update .card-pill-cat { top:12px; left:12px; margin-right: 12px; position: absolute; padding:5px 10px; border-radius: 12px; font-size: 12px; text-transform: uppercase; letter-spacing: 0.6px; font-family: 'Source Sans Pro', sans-serif; font-weight: 500; color:#fff; background: #162831; } 

.card--update-main {margin:40px 0 0;  width: 100%; background: #f5f5f5; }
.card--update-main:first-child {margin: 0;}
.card--update.card--update-main .card-image { margin:0; padding-top: 60%;}
.card--update-main .card-content { padding:30px; background: #f5f5f5; }
.card--update-main .card-title  { padding: 0; } 
.card--update-main .card-title:last-child {margin-bottom: 0;}
.card--update-main .card-date { letter-spacing: 0.4px; padding-right: 65px; position: relative;}
.card--update-main .card-date .icon {position: absolute; right:0; top:0; color:#162831; }
.card--update-main .card-date .icon:after {font-size: 7px;}

.cards--news-listing .card { background: #f5f5f5;}

.card--cta-blue { display: block; width:100%; margin:0 0 40px; background: #162831; }
.card--cta-blue:last-child {margin-bottom: 5px;} 
.card--cta-blue .card-content { padding: 35px 25px; }
.card--cta-blue .card-image { padding-top: 65%; overflow: hidden; background: #333 url(../gif/loader-card.gif) center no-repeat; }

.card--cta-blue .card-image img { -webkit-backface-visibility: hidden; -webkit-transform: translateZ(0) scale(1.0, 1.0); transform: translateZ(0); -webkit-transition: transform .3s ease; transition: transform .3s ease; }
.card--cta-blue:hover .card-image img,
.card--cta-blue:focus .card-image img { -webkit-transform: scale(1.06); transform: scale(1.06); }

.card--cta-blue .h3, 
.card--cta-blue p { color:#fff; }
.card--cta-blue .card-title { margin-bottom: 20px;}
.card--cta-blue .card-subtitle { line-height: 1.35em; color:#7ED2BD; }
.card--cta-blue .card-desc { margin:30px 0; color:#fafafa; }

.card--property { display: block; width:100%; margin:0 0 40px; background: #f5f5f5; }
.card--property:last-child { margin-bottom: 5px; } 

.card--property .card-image {  padding-top: 62%; overflow: hidden; background: #333 url(../gif/loader-card.gif) center no-repeat;  }

.card--property .card-content { padding:35px 25px; background: #f5f5f5; position: relative; }
.card--property .cc-inner {position: relative;}
.card--property .cp-price { margin-bottom: 10px; color:#00A780; font-family: 'Source Sans Pro', sans-serif; }
.card--property .cp-price-meta { margin-left: 4px; font-size: 0.55em; font-weight: 600; color:#005941; text-transform: uppercase; } 
.card--property .cp-desc {  margin-bottom:40px; font-weight: 700; }
.card--property .cp-loc  { margin-bottom: 5px; font-size: 14px; font-weight: 500; }
.card--property .cp-loc .icon { color:#00A780; }
.card--property .cp-status { padding:8px 12px; font-size: 14px; display: inline-block; position: absolute; top:0; left:0; color:#fff; background: #162831; letter-spacing: 0.4px; font-family: 'Source Sans Pro', sans-serif; text-transform: uppercase;  z-index: 1;} 
.card--property .cp-status--new { background: #00A780;}
.card--property .cp-status--sold {background: #ED174C;  }
.card--property .cp-key-bullets {     margin: 25px 0 2px;  padding-top: 25px; border-top:1px solid #E4E3DE; }
.card--property .cp-key-bullets ul {padding-left: 20px; font-size: 14px; margin-bottom: 25px;}
.card--property .cp-key-bullets p {  font-size: 14px;}
.card--property .cp-key-bullets ul:last-child {margin-bottom: 0;}
.card--property .cp-key-bullets ul li:not(:last-child) { margin-bottom: 12px; }
.card--property .cp-link { position: absolute; top:0; left:0; width:100%; height: 100%; z-index: 0;}
.card--property .card-image .cp-link { z-index: 1;}
.card--property .cp-save { font-size: 13px; position: absolute; cursor: pointer; top:-15px; right:-10px; padding: 10px; letter-spacing: 0.8px; font-weight: 700; text-transform: uppercase;  z-index: 1; }
.card--property .cp-save .icon {padding-left:5px; color:#00A780; }
.card--property .cp-key-info { position: absolute; bottom:0; left:0; width:100%; padding:10px 25px; background: #162831;     background: rgba(22, 40, 49, 0.55); }
.card--property .cp-key-item {display: inline-block; vertical-align: top; margin-right: 16px; color:#fff; font-family: 'Source Sans Pro', sans-serif;}
.card--property .cp-key-item .icon { padding-right: 8px; color:#BFFFEF; }
.card--property .cp-long-address { margin-bottom:15px; padding-right: 10px; line-height: 1.3em; font-weight: 700;}
.card--property .cp-price-fees { padding-left: 4px; font-size: 0.75em; font-weight: 300;}
.card--property .cp-min-bid { font-size: 14px; }
.card--property .cp-min-bid span {font-weight: 500;}
.card--property .cp-auction-logo {position: absolute; top: 0; right: 0; width: 140px; background: rgba(0,0,0,0.25); padding: 7px 10px 10px;}
.card--property .cp-auction-logo img {max-width: 100%;}
.card--property.card--auction-alt .cp-auction-logo { top: auto; right: auto; left: 0; bottom: 40px; }

@media screen and (max-width: 400px) {
    .card--property.card--auction-alt .cp-auction-logo { bottom: 35px; }
}

.card--property .card-image .lSSlideOuter,
.card--property .card-image .lSSlideWrapper  { position: absolute; top:0; left:0; width:100%; height: 100%;} 
.card--property .lSAction > a,
.card--property .lSAction > .lsArrow {  width: 36px;  height: 36px; line-height: 36px; top: calc(50% - 18px); font-size: 0.85em; }
.card--property .lSAction > .lSPrev { left:15px; }
.card--property .lSAction > .lSNext { right:15px; }

.card--property-auction .cp-price-meta {margin:0 0 3px; font-size: 13px;}

.card--property-listing .cp-desc { margin-bottom: 20px;}
.card--property-listing { display: -webkit-flex; display: flex;  -webkit-flex-direction: column; flex-direction: column;  }
.card--property-listing .card-content { -webkit-flex: 1 1 auto;  flex: 1 1 auto;   }

.card--property-listing .pv-single-slider,
.card--property-listing .pv-slider { height: 100% !important; }
.card--property-listing .pv-slide,
.card--property-listing .pv-image { height: 100%; }
.card--property-listing .pv-image { text-align: center; }
.card--property-listing .pv-image img { position: relative; top: 50%; transform: translateY(-50%); }
.card--property-listing .cc-inner { word-break: break-word; }

.card--work { margin:40px 0; width:100%;  min-height: 470px; background: #162831; position: relative; }
.card--work:last-child {margin-bottom: 10px;}
.card--work .cw-image { width:50%; position: relative; overflow: hidden; background: #333 url(../gif/loader-card.gif) center no-repeat;  }

.card--work .cw-image img { -webkit-backface-visibility: hidden; -webkit-transform: translateZ(0) scale(1.0, 1.0); transform: translateZ(0); -webkit-transition: transform .3s ease; transition: transform .3s ease; }
.card--work:hover .cw-image img,
.card--work:focus .cw-image img { -webkit-transform: scale(1.04); transform: scale(1.04); }

.card--work .cw-content { padding:50px; color:#fff; width: 50%; }
.card--work .cw-content * {color:#fff; }
.card--work .cwc-bottom {margin-top:15%; }
.card--work .cwc-bottom p {line-height: 1.6em; color: #fafafa; }
.card--work .cwc-details  { list-style: none;   }
.card--work .cwc-details li { margin-bottom: 10px; color:#bdbdbd;} 
.card--work .cwc-details span { color:#fff; }
.card--work .card-title .icon {font-size: 0.875em; padding-left:10px; }

.card--work:hover .card-title,
.card--work:focus .ard-title { color:#00A780; text-decoration: underline;}

.card--work:hover .card-title .icon,
.card--work:focus .card-title .icon { color:#00A780; }

.card--portfolio-list { margin:40px 0 0; width:100%; }
.card--portfolio-list:first-child {margin:0; }
.card--portfolio-list .h5 { margin: 16px 0 0; }

.card--download { margin:30px 0 0; padding:40px; background: #f5f5f5;  display: -ms-flexbox;  display: -webkit-flex;  display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap;flex-wrap: wrap; -webkit-align-items: flex-start;  -ms-flex-align: start; align-items: flex-start;  }
.card--download:first-child {margin:0; }
.card--download .card-image-wrap { width:calc(45% - 30px); margin-right: 30px; box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);  } 
.card--download .card-image { padding-top:146%; background: #333 url(../gif/loader-card.gif) center no-repeat;  }
.card--download .card-content { width:55%; }

.card--office { background: #f5f5f5;}
.card--office .card-image {padding-top: 60%; background: #333 url(../gif/loader-card.gif) center no-repeat; }
.card--office .card-content { padding: 30px 30px 40px; background: #f5f5f5;}

.cards-title-link { position: relative;}
.cards-title-link .link-all {position: absolute; bottom:0; right:0; margin-bottom: 5px; }

.cards-dropdown-link { position: relative;}
.cards-dropdown-link .link-all {position: absolute; bottom:0; right:0; top:50%; -webkit-transform: translateY(-48%); transform: translateY(-48%); }
.cards-dropdown-link .inner {margin-left:0;}

.card--portfolio-list .card-image { background: #333 url(../gif/loader-card.gif) center no-repeat; }


.cards--contact--4only-more .card:nth-child(1n+5) { display: none; } 



.card--image-ctas-single .card { float: none; margin-left: auto; margin-right: auto; }
.card--image-ctas-sml .card { width: 400px; max-width: 100%; }
.card--image-ctas-mid .card { width: 600px; max-width: 100%; }
.card--image-ctas-mt { margin-top: 50px; }
.card--image-ctas-mb { margin-bottom: 50px; }



.view-all { margin-bottom: 10px; text-align: center;}
.cards--all-link-below { margin-bottom: 30px; }

@media screen and (min-width:441px) and (max-width:850px) {
    .card--contact {float:left; width:calc(50% - 10px); margin: 35px 20px 0 0; }
    .card--contact:nth-child(even) {margin-right: 0;}
    .card--contact:nth-child(-n+2) { margin-top: 0; }
}

@media screen and (min-width:481px) and (max-width:650px), screen and (min-width:901px)  {
    .card--property .cp-key-bullets ul { column-count: 2; column-gap: 30px; }

    .card--property .cp-status { padding: 10px 15px; font-size: 15px;}
}

@media screen and (min-width:651px) {
    .cards--news-latest .card--news {float:left; width:calc(50% - 15px); margin: 40px 30px 0 0; }
    .cards--news-latest .card--news:nth-child(even) {margin-right: 0;}
    .cards--news-latest .card--news:nth-child(-n+2) { margin-top: 0; }

    .cards--all-link-below { margin-bottom: 35px; }

    .cards--x2 .card { float:left; width:calc(50% - 15px); margin:30px 30px 0 0;}
    .cards--x2 .card:nth-child(even) {margin-right: 0;}
    .cards--x2 .card:nth-child(-n+2) { margin-top: 0; }

    .cards--x2 .card.card--download { float:left; width:calc(50% - 7.5px); margin:15px 15px 0 0;}
    .cards--x2 .card.card--download:nth-child(even) {margin-right: 0;}
    .cards--x2 .card.card--download:nth-child(-n+2) { margin-top: 0; }

    .cards--contact--x2 .card--contact--landscape { display: -webkit-flex; display: flex; width: 100%; max-width: 650px;  margin: 40px auto 0; background: #fff;  box-shadow: 0px 8px 30px #00000017; }
    .cards--contact--x2 .card--contact--landscape:first-child {margin-top:0;}
    .cards--contact--x2 .card--contact--landscape:nth-child(n+2) {margin-top:40px; }
    .cards--contact--x2 .card--contact--landscape .card-content  { margin:0; padding:40px; }
    .cards--contact--x2 .card--contact--landscape .card-image { min-width: 275px; width:275px; padding-top:275px; background: #f0f0f0; }
}

@media screen and (min-width:651px) and (max-width:1200px)  {
    .cards--news-listing .card {float:left; width:calc(50% - 15px); margin: 40px 30px 0 0; }
    .cards--news-listing .card:nth-child(even) { margin-right: 0; }
    .cards--news-listing .card:nth-child(-n+2) { margin-top: 0; }

    .cards .card--office { float:left; width:calc(50% - 15px); margin:30px 30px 0 0;}
    .cards .card--office:nth-child(even) {margin-right: 0;}
    .cards .card--office:nth-child(-n+2) { margin-top: 0; }
}

@media screen and (min-width:601px) and (max-width:850px) {
    .card--contact { width:calc(50% - 15px); margin: 40px 30px 0 0; }
}

@media screen and (min-width:801px) {
    .cards-title,
    .cards-title-link  {margin-bottom: 30px;}
    .cards-title-link h2 {text-align: center; }

    .cards-dropdown-link .inner {margin-left:auto;}
}

@media screen and (min-width:851px) {
    .cards--image-ctas .card { float:left; width:calc(50% - 15px); margin: 40px 30px 0 0; } 
    .cards--image-ctas .card:nth-child(even) {margin-right: 0;}
    .cards--image-ctas .card:nth-child(-n+2) { margin-top: 0; }
}

@media screen and (min-width:851px) and (max-width:1200px) {
    .card--contact {float:left; width:calc(33.333% - 20px); margin: 40px 30px 0 0; }
    .card--contact:nth-child(3n+3) {margin-right: 0;}
    .card--contact:nth-child(-n+3) { margin-top: 0; }

    .cards--contact--4only  {max-width: 850px; margin-left:auto; margin-right: auto; }
    .cards--contact--4only .card--contact {float:left; width:calc(50% - 15px); margin: 35px 30px 0 0; }
    .cards--contact--4only .card--contact:nth-child(even) {margin-right: 0;}
    .cards--contact--4only .card--contact:nth-child(-n+2) { margin-top: 0; }

    .cards-dropdown-link--limitMobWidth,
    .cards-title-link--limitMobWidth  {max-width: 850px; margin-left:auto; margin-right: auto; }

    .card--image-cta .card-title { padding:2vw 2.5vw; font-size: 2vw;}
}

@media screen and (min-width:1001px) {
    .card--cta-blue {float:left; width:calc(33.333% - 20px); margin: 40px 30px 0 0; }
    .card--cta-blue:nth-child(3n+3) {margin-right: 0;}
    .card--cta-blue:nth-child(-n+3) { margin-top: 0; }

    .cards--x2 .card { width:calc(50% - 20px); margin:40px 40px 0 0;}

    .card--property-listing .cp-price { font-size: 26px;}

    .card--work:nth-child(even) .cw-image { order:2; }
    .card--work:nth-child(even) .cw-content { order: 1; }
}

@media screen and (min-width:1001px) and (max-width:1200px) {
    .container--medium .cards--contact--4only {max-width:100%;}
    .container--medium .cards--contact--4only .card--contact {float:left; width:calc(25% - 22.5px); margin: 40px 30px 0 0; }
    .container--medium .cards--contact--4only .card--contact:nth-child(4n+4) {margin-right: 0;}
    .container--medium .cards--contact--4only .card--contact:nth-child(-n+4) { margin-top: 0; }
}

@media screen and (min-width:1201px) {
    .cards--news-listing .card {float:left; width:calc(33.333% - 20px); margin: 40px 30px 0 0;}
    .cards--news-listing .card:nth-child(3n+3) { margin-right: 0; }
    .cards--news-listing .card:nth-child(-n+3) { margin-top: 0; }

    .card--contact {float:left; width:calc(25% - 22.5px); margin: 40px 30px 0 0; }
    .card--contact:nth-child(4n+4) {margin-right: 0;}
    .card--contact:nth-child(-n+4) { margin-top: 0; }
    .card--contact .contact-job {margin-bottom: 20px;}

    .cards--contact--x2 .card--contact--landscape { width: calc(50% - 20px);  margin: 40px 40px 0 0;  }
    .cards--contact--x2 .card--contact--landscape:nth-child(even) {margin-right: 0;} 
    .cards--contact--x2 .card--contact--landscape:nth-child(-n+2) {margin-top:0; }

    .cards--contact--3only .card--contact {float:left; width:calc(33.333% - 20px); margin: 40px 30px 0 0; }
    .cards--contact--3only .card--contact:nth-child(3n+3) {margin-right: 0;}
    .cards--contact--3only .card--contact:nth-child(-n+3) { margin-top: 0; }

    .card--auction {float:left; width:calc(33.333% - 20px); margin: 40px 30px 0 0; }
    .card--auction:nth-child(3n+3) {margin-right: 0;}
    .card--auction:nth-child(-n+3) { margin-top: 0; }

    .card--cta-blue { width:calc(33.333% - 26.666px); margin: 40px 40px 0 0; }
    .card--cta-blue .card-content { padding:35px 35px 40px; }
    .card--cta-blue .card-desc  { margin:40px 0; }

    .cards .card--office { float:left;  width:calc(33.333% - 20px); margin: 30px 30px 0 0;}
    .cards .card--office:nth-child(3n+3) {margin-right: 0;}
    .cards .card--office:nth-child(-n+3) { margin-top: 0; }

    .cards-title,
    .cards-title-link  {margin-bottom: 35px;}
    .cards--all-link-below { margin-bottom: 40px; }

    .cards--x2 .card { width:calc(50% - 25px); margin:50px 50px 0 0;}

    .card--property-listing .cp-price { font-size: 28px;}
    .card--property-listing .cp-desc {font-size: 18px;}

    .card--property .cp-key-bullets ul,
    .card--property .cp-key-bullets p { font-size: 15px;}

    .card--work .cwc-details  {  column-count: 2; column-gap: 25px; }
}

@media screen and (min-width:651px) and (max-width:1400px) {
    .card--auction .card-image {padding-top:45%; }
    .card--auction-alt .auction-date,
    .card--auction .auction-date {  top:15px; right:15px; min-width: 65px; }
    .card--auction-alt .auction-date .ad-day,
    .card--auction .auction-date .ad-day {font-size: 32px;}
    .card--auction-alt .auction-date .ad-month-year,
    .card--auction .auction-date .ad-month-year { font-size: 12px; } 
}

@media screen and (min-width:651px) and (max-width:800px)  {
    .cards--x4 .card { float:left; width:calc(50% - 15px); margin:30px 30px 0 0;}
    .cards--x4 .card:nth-child(even) {margin-right: 0;}
    .cards--x4 .card:nth-child(-n+2) { margin-top: 0; }

    .card--property .card-content {  padding: 30px 22px; }
    .card--property .cp-desc {margin-bottom: 30px;}
    .card--property .cp-key-info {padding: 8px 24px; }
    .card--property .cp-key-item {font-size: 14px; margin-right: 14px;}

    .card--update-main .card-title {font-size: 18px;}
    .card--update-main .card-date {font-size: 14px;}
}

@media screen and (min-width:801px) and (max-width:1024px)  {
    .cards--x4 .card { float:left; width:calc(50% - 20px); margin:40px 40px 0 0;}
    .cards--x4 .card:nth-child(even) {margin-right: 0;}
    .cards--x4 .card:nth-child(-n+2) { margin-top: 0; }
}

@media screen and (min-width:1025px) and (max-width:1300px)  {
    .cards--x4 .card { float:left; width:calc(33.333% - 20px); margin:40px 30px 0 0;}
    .cards--x4 .card:nth-child(3n+3) {margin-right: 0;}
    .cards--x4 .card:nth-child(-n+3) { margin-top: 0; }

    .cards--x4-only {max-width: 980px; margin-left:auto; margin-right: auto;}
    .cards--x4-only .card { float:left; width:calc(50% - 20px); margin:40px 40px 0 0;}
    .cards--x4-only .card:nth-child(odd) { margin:40px 40px 0 0; }  
    .cards--x4-only .card:nth-child(even) {margin-right: 0;}
    .cards--x4-only .card:nth-child(-n+2) { margin-top: 0; }
}

@media screen and (min-width:1301px) {
    .cards--all-link-below { margin-bottom: 50px; }

    .card--cta-blue .card-title {font-size: 26px;}

    .cards--x4 .card { float:left; width:calc(25% - 15px); margin:40px 20px 0 0;}
    .cards--x4 .card:nth-child(4n+4) {margin-right: 0;}
    .cards--x4 .card:nth-child(-n+4) { margin-top: 0; }

    .cards--x2 .card { width:calc(50% - 30px); margin:60px 60px 0 0;}
    .cards--x2 .card--portfolio-list { width:calc(50% - 25px); margin:50px 50px 0 0;}

    .card--property-listing .cp-price { font-size: 30px;}
    .card--property-listing .cp-desc {font-size: 20px;}

    .card--download { padding:50px; }

    .card--office .contact-contact .contact-label { font-size: 18px;}
}

@media screen and (min-width:1501px) {
    .cards--x2 .card { width:calc(50% - 35px); margin:70px 70px 0 0;}
    .cards--x2 .card--portfolio-list { width:calc(50% - 25px); margin:50px 50px 0 0;}

    .card--property .cp-status { font-size: 16px;}
}

@media screen and (max-width:1200px) {
    .cards--auctions { max-width: 850px; margin-left:auto; margin-right: auto; }
}

@media screen and (max-width:1000px) {
    .card--cta-blue { max-width: 600px; margin-left:auto; margin-right: auto; }
    .card--cta-blue .card-image { padding-top:60%; }
    .card--cta-blue .card-content { padding:40px 35px; }
    .card--cta-blue .card-desc  { display: none; margin:40px 0; }
    .card--cta-blue .card-title {  margin-bottom: 16px; }

    .card--property .cp-save {font-size: 12px;}

    .card--work { max-width: 600px; margin: 40px auto 0; }
    .card--work:first-child {margin-top:30px; }
    .card--work .cw-image { height: 0; padding-top:65%; width: 100%; }
    .card--work .cw-content { width: 100%; }

}

@media screen and (max-width:850px) {
    .cards--image-ctas { max-width: 650px; margin-left:auto; margin-right: auto;}

    .cards--contact--3only .card--contact {float:left; width:calc(33.333% - 20px); margin: 40px 30px 0 0; }
    .cards--contact--3only .card--contact:nth-child(3n+3) {margin-right: 0;}
    .cards--contact--3only .card--contact:nth-child(-n+3) { margin-top: 0; }

}

@media screen and (max-width:800px) {
    .cards-title-link h2 {padding-right: 130px;}

    .card--property .cp-save { top: -20px; font-size: 11px; letter-spacing: 0.6px;}
    .card--property .cp-save .icon {padding-left: 3px;}
}

@media screen and (max-width:650px) {
    .cards .card--office { float:none; width:100%; margin:30px 0 0;  }
    .cards .card--office:first-child { margin-top: 0; }
}

@media screen and (max-width:600px) {

    .cards--contact--3only .card--contact {float:none; width:100% ; max-width: 400px; margin: 40px auto 0; }
    .cards--contact--3only .card--contact:nth-child(n+2) {margin: 40px auto 0;}
    .cards--contact--3only .card--contact:nth-child(1) { margin-top: 10px; }

    .cards-dropdown-link .inner { max-width: calc(100% - 140px); } 

    .cards-title-link.cards-title-link--long h2 {padding:0; }
    .cards-title-link.cards-title-link--long .link-all {position: relative; display: block; margin: -10px 0 30px; }
    
    .card--auction-alt .auction-date,
    .card--auction .auction-date {  top:15px; right:15px;  }
    .card--auction-alt .auction-date .ad-day,
    .card--auction .auction-date .ad-day {font-size: 32px;}
    .card--auction-alt .auction-date .ad-month-year,
    .card--auction .auction-date .ad-month-year { font-size: 12px; } 
    .card--auction .auction-type { bottom:15px; right:15px;}

    .card--image-cta .card-title { padding:3.25vw 4.25vw; font-size: 4vw;}
    .card--image-cta .card-title .icon:after {font-size: 0.3em;}

    .card--work .cw-content {padding: 45px;} 
}


@media screen and (max-width:480px), screen and (min-width:651px) and (max-width:950px) {
    .card--property .lSAction > a,
    .card--property .lSAction > .lsArrow  {  width: 30px;  height: 30px; line-height: 30px; top: calc(50% - 15px); font-size: 0.8em; }
    .card--property .lSAction > .lSPrev { left: 10px; }
    .card--property .lSAction > .lSNext { right:10px; }

    .card--download .card-image-wrap { width:100%; margin: 0 0 30px;  } 
    .card--download .card-content { width:100%; }
}

@media screen and (max-width:440px) {
    .card--service .card-content {margin-top:20px; }
    .card--service h3 {margin-bottom: 16px;}

    .cards-title-link h2 {padding-right: 120px;}

    .cards-dropdown-link .inner { max-width: calc(100% - 125px); } 

    .card--auction .card-image {padding-top:45%; }
    .card--auction-alt .auction-date,
    .card--auction .auction-date {padding:8px 8px 10px;  min-width: 60px; }
    .card--auction-alt .auction-date .ad-day,
    .card--auction .auction-date .ad-day {font-size: 28px;}
    .card--auction-alt .auction-date .ad-month-year,
    .card--auction .auction-date .ad-month-year { font-size: 11px; } 
    .card--auction .auction-type { font-size: 16px;}

    .card--image-cta {margin-bottom: 35px;}
    .card--update .card-pill-cat {font-size: 11px;}

    .card--cta-blue .card-content { padding: 35px 30px; }
    .card--cta-blue .card-title { margin-bottom: 12px; }
    .card--cta-blue .card-subtitle { font-size: 17px;margin-bottom: 20px; }

    .card--property .cp-key-item {font-size: 15px;}

    .card--work .cw-content {padding: 40px 35px;} 
    .card--work .cwc-bottom { margin-top: 12%; }

    .card--auction .aki-location { font-size: 15px; }
    .card--auction .aki:not(.aki-location) { font-size: 17px; }
}

@media screen and (max-width:400px) {
    .cards--image-ctas {margin-left:-22px; margin-right: -22px;}
    .card--image-cta {margin-bottom: 30px;}
    .card--image-cta .card-title {  padding: 3.5vw 4.25vw; font-size: 4.25vw;  }

    .card--update .card-image { margin-bottom: 25px; }
    .card--update .card-title { font-size: 22px; margin-bottom: 20px;}

    .card--update-main .card-content { padding:25px; }
    .card--update-main .card-title {font-size: 18px;}
    .card--update-main .card-date {font-size: 14px;}

    .cards--cta-blue {margin-left: -22px; margin-right: -22px;}
    .card--cta-blue {margin:0; }
    .card--cta-blue:last-child {margin-bottom: 0;} 

    .card--property .card-content { padding:30px 25px; }

    .card--property .lSAction > a,
    .card--property .lSAction > .lsArrow  {  width: 28px;  height: 28px; line-height: 28px; top: calc(50% - 14px);  }

    .card--property .cp-save { top: -25px; right:-20px;  }
    .card--property .cp-status {font-size: 13px;}
    .card--property-listing .cp-desc { font-size: 15px;}
    .card--property .cp-loc {font-size: 13px;}

    .card--property .cp-key-info {padding: 8px 24px; }
    .card--property .cp-key-item {font-size: 14px; margin-right: 15px;}

    .card--work .cw-content {padding: 40px 30px;} 
    .card--work .cwc-bottom { margin-top: 10%; }

    .card--download {padding:35px; }

     .card--office .card-content {padding:30px 25px; }
    .card--office .contact-contact .contact-label { font-size: 16px;}
}

@media screen and (max-width:360px) {
    .card-date { font-size: 14px; }

    .card--news .card-content { padding:25px; }
    .card--news .card-title  {font-size: 18px;}

    .cards-title-link h2 {padding-right: 115px;}
    .cards-title-link .link-all {margin-bottom: 3px; }

    .cards-dropdown-link .inner { max-width: calc(100% - 110px); } 
    
    .card--auction-alt .auction-date,
    .card--auction .auction-date {padding:7px 7px 9px; top:12px; right:12px; }
    .card--auction-alt .auction-date .ad-day,
    .card--auction .auction-date .ad-day {font-size: 27px;}
    .card--auction-alt .auction-date .ad-month-year,
    .card--auction .auction-date .ad-month-year { font-size: 10px; } 
    .card--auction .auction-type { font-size: 15px;}

    .card--cta-blue .card-subtitle {font-size: 16px;}

    .card--work .cw-content {padding: 40px 25px;} 

    .card--download {padding:35px 30px; }
}

@media screen and (max-width:340px) {
    .auction-actions .btn  { font-size: 12px;}
    .auction-actions .more-button  { font-size:13px; }
    .card--property .cp-save {  font-size: 10px; }

    .card--work .cw-content {padding: 35px 25px;} 
}


@media screen and (min-width:600px) {
    .card--image-ctas-sml .card-title { font-size: 20px; padding-top: 15px; padding-bottom: 15px; }
}
@media screen and (max-width:599px) {
    .card--image-ctas-single .card-title { font-size: 20px; padding-top: 15px; padding-bottom: 15px; }
}



/* = Dark row alt styles
----------------------------------------------------------------------------------------------------------------- */

.row--blue .card--property-listing { margin-bottom: 20px; background: transparent; color: #fff; }
.row--blue .card--property-listing .card-content { background: transparent; padding: 25px 0; }
.row--blue .card--property-listing .cp-price { font-size: 20px; color: #fff; }
.row--blue .card--property-listing .cp-price-meta { color: #ddd; }
.row--blue .card--property-listing .cp-desc { font-size: 15px; }
.row--blue .card--property-listing .cp-save { top: -4px; }

@media screen and (min-width:1001px) {
    .row--blue .card--property-listing .cp-price { font-size: 22px; }
    .row--blue .card--property-listing .cp-desc { font-size: 16px; }
}



/* = News featured item
----------------------------------------------------------------------------------------------------------------- */
.news-featured { position: relative; background: #162831;}
.nf-image-wrap  { width:50%; }
.nf-image { height: 100%; min-height: 400px;  position: relative;}
.nf-content { padding:7% 5%; width: 50%;}
.nf-content * { color:#fff; }
.nf-content-inner {max-width: 600px; margin:0 auto; width: 100%; }
.nf-date { margin-bottom: 20px; font-size: 18px;  letter-spacing: 0.5px;  text-transform: uppercase;  color: #7ED2BD; font-family: 'Source Sans Pro', sans-serif; font-weight: 600;}
.nf-desc {line-height: 1.6em;}
.nf-cat { margin-bottom: 25px; }
.nf-pill { display: inline-block; padding: 5px 12px;  border-radius: 12px;font-size: 12px;   text-transform: uppercase;   letter-spacing: 0.6px; font-family: 'Source Sans Pro', sans-serif;   font-weight: 500;  color: #fff; background: #DB2763;}

@media screen and (min-width:1501px) {
    .nf-image {min-height: 480px;}
}

@media screen and (min-width:2001px) {
    .nf-image  {min-height: 600px; padding:0; }
}

@media screen and (max-width:850px) {
    .nf-image-wrap { width:100%; }
    .nf-image  {height: 0; padding-top:50%; min-height: 0; }
    .nf-content { padding:60px; width: 100%;}
}

@media screen and (max-width:600px) {
     .nf-content { padding:60px 50px; }
}

@media screen and (max-width:480px) {
    .nf-content { padding:50px 40px; }
}

@media screen and (max-width:440px) {
    .nf-image  { padding-top:55%;  }
    .nf-content { padding:45px 35px; }
    .nf-content .nf-title {font-size: 28px;}
}

@media screen and (max-width:400px) {
    .nf-content { padding:40px 30px; }
    .nf-content .nf-title {font-size: 26px;}
    .nf-date {font-size: 16px;}
}

@media screen and (max-width:360px) {
    .nf-content { padding:40px 25px; }
    .nf-content .nf-title {font-size: 24px;}
    .nf-date {font-size: 15px;}
    .nf-pill { font-size: 11px;  }
}

/* = News view + images
----------------------------------------------------------------------------------------------------------------- */
.main-text--news h2,
.main-text--news h3,
.main-text--news h4,
.main-text--news h5,
.main-text--news h6 { font-family: 'Raleway', sans-serif; } 

.main-text--news p { font-weight: 500; }

.article-image {margin:45px 0;  position: relative; border-radius: 4px; }
.article-image  img { border-radius: 4px;}
.article-image:first-child {margin-top: 5px;}
.article-image:last-child {margin-bottom: 5px;}
.article-image .image-caption { display: block; margin: 10px 0; }

.article-pill { margin: 8px 7px 8px 0; padding:5px 14px; font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px; display: inline-block; border:1px solid #707070;  border-radius: 16px; font-weight: 600;  font-family: 'Source Sans Pro', sans-serif;  }

.main-text--news .nf-pill { margin: 8px 7px 8px 0; }

@media screen and (max-width:480px) {
    .article-pill,
    .main-text--news .nf-pill { margin: 7px 5px 7px 0; }
}

@media screen and (max-width:360px) {
    .article-pill { margin: 6px 3px 6px 0; padding:4px 12px; font-size: 11px; border-color: #BABFC1; }
    .main-text--news .nf-pill { margin: 6px 3px 4px 0; }
}


/* = Downloads
----------------------------------------------------------------------------------------------------------------- */
.main-text + .download-categories { margin-top: 40px; }
.download-categories_item { padding-left: 20px; }
.download-categories_item > label { display: block; margin: 0 0 10px; }

@media screen and (max-width: 699px) {
    .download-categories_item { margin-bottom: 20px; } 
    .download-categories_item .checkbox-dropdown--team { min-width: 80px; }
}


/* = Staff
----------------------------------------------------------------------------------------------------------------- */
.staff-categories { }

@media screen and (max-width: 699px) {
    .staff-categories { display: block; } 
    .staff-categories .download-categories_item { padding-left: 0; }
    .staff-categories .checkbox-dropdown.on { z-index: 3; }
}



/* = Services
----------------------------------------------------------------------------------------------------------------- */
.services-block h3 { font-size: 20px; }
.services-block a { text-decoration: none; }
.services-block .more-button { font-size: 14px; }
.services-block .form-field--dropdown { border: solid 1px #c1c1c1; }
.services-block .inner.inner--dropdown { margin-bottom: 0; }


/* = CTAs
----------------------------------------------------------------------------------------------------------------- */
.cta-grid-row { width:100%;}
.cta-grid-col {width:50%; padding:10% 8%; background: #162831; }
.cta-grid-col * {color:#fff; }
.cta-grid-col--image { padding:0; background: #111; position: relative;}
.grid-col-inner {max-width: 500px;}

.cta-grid-col:first-child .grid-col-inner {margin-left:auto; }

.cta-aside { padding: 30px 25px; position: relative; color:#fff; }
.cta-aside .cta-image:after { content:''; position: absolute; top:0; left:0; width:100%; height: 100%;  background: linear-gradient(180deg, rgba(0, 52, 38, 0) 0%, rgba(11, 51, 39, 0.9) 61%, #123327 100%);} 
.cta-aside .cta-content  { padding-top:60%; position: relative;}
.cta-aside .cta-content * {color:#fff; }

.cta--download-aside { padding:35px 40px; text-align: center; background: #f4f4f4; }
.cta--download-aside img { max-width: 180px; margin:0 auto 30px; display: block; }
.cta--download-aside .btn { width: 100%; max-width: 220px; }

.cta--video { display: block; height: 0; margin:45px 0;  padding-bottom: 60%; position: relative; overflow: hidden; }
.cta--video:first-child {margin-top:0; } 
.cards-title + .cta { margin-top:10px;  } 
.cta--video:last-child {margin-bottom:10px; } 
.cta--video:after { content:''; position: absolute; top:0; left:0; width:100%; height: 100%; background: #162831; opacity: 0.35; z-index: 0;}
.cta--video .icon--video-play { display: inline-block; left:50%; top:50%;  width:80px; height: 80px; -webkit-transform:translate(-50%, -50%); transform:translate(-50%, -50%); text-align: center; color:#fff; border-radius: 50%; border:2px solid #fff; z-index: 1; position: absolute;}
.cta--video .icon--video-play:after { font-size: 4em; line-height: 80px;}


@media screen and (max-width:1024px) {
    .cta-grid-col { padding:7%; }
}

@media screen and (max-width:650px) {
   
    .cta-grid-col { padding:9% 7%;  width:100%; order:1; }
    .cta-grid-col.cta-grid-col--image {padding-top:42%; order:0;  }

    .grid-col-inner {margin-left:auto; margin-right: auto;}

    .cta--video .icon--video-play {  width:60px; height: 60px;}
    .cta--video .icon--video-play:after { font-size: 3.5em; line-height: 60px;}
}

@media screen and (max-width:440px) {
    .cta-grid-col { padding:10% 7%;  }

    .cta--download-aside { padding:35px; } 
    .cta--video { padding-bottom: 70%; }
}

/* = In Numbers - Homepage
----------------------------------------------------------------------------------------------------------------- */
.in-numbers { max-width: 380px; margin: 0 auto; position: relative;} 
.in-circle {  float:left; width:calc(50% - 15px); margin:30px 30px 0 0; border-radius: 50%; }
.in-circle:nth-child(2n+2) {margin-right: 0;}
.in-circle:nth-child(-n+2) { margin-top: 0; }

.in-inner { width:100%; height: 0; padding-top:100%; background: #2A3D46; border-radius: 50%; position: relative;}
.in-content {position: absolute; top:0; left:0; width:100%; height: 100%; color:#fff; }
.in-content .in-number { margin-bottom: 10px; font-size: 50px; font-family: 'PT Serif', serif; line-height: 1; }
.in-content .in-text { margin-bottom: 4px; font-size: 18px; }

@media screen and (max-width:440px) {
    .in-numbers {margin:0 15px; }
    .in-circle {  width:calc(50% - 12.5px); margin:25px 25px 0 0;  }
    .in-content .in-number {font-size: 11vw;  margin-bottom: 2vw;}
    .in-content .in-text { font-size: 16px; }
}

@media screen and (max-width:400px) {
    .in-numbers {margin:0 10px; }
    .in-circle { width:calc(50% - 10px); margin:20px 20px 0 0;  }
    .in-content .in-text { font-size: 15px; }
}

/* = Map - Homepage
----------------------------------------------------------------------------------------------------------------- */
.home-map-text {  padding: 12%; max-width: 650px; margin: 0 auto;  }

.home-map-uk { position: relative; }
.pin-uk { position: absolute; top:0; right:0; width: 3%; height: 4.68%; background: transparent url(../svg/pin.svg) 0 0 no-repeat; background-size: 100% auto; }

.pin-uk:hover,
.pin-uk:focus { background-position: 0 100%; z-index: 1; }

.pin-uk span { display: none;  position: absolute; padding: 6px 12px 7px;  top: calc(100% + 20px); left: 50%; transform: translate(-50%, -50%);  white-space: nowrap; color: #fff;  background: #00a780; border-radius: 16px;  font-size: 14px; font-weight: 500;  }

.pin-uk:hover span,
.pin-uk:focus span { display: block;}

.pin--banbury { top: 66%; right: 50.5%; }
.pin--bury { top: 59.5%;right: 19.75%; }
.pin--holt { top: 39%; right: 12%;}
.pin--humber { top: 7.65%; right: 43%; }
.pin--kingslynn { top: 44.5%; right: 25%; }
.pin--leicester { top: 49%; right: 50.5%; }
.pin--lincoln { top: 28%; right: 44.5%; }
.pin--lincoln-city { top: 26%; right: 41%; }
.pin--norwich { top: 45.5%; right: 9%; }
.pin--retford { top: 22%;right: 48%;  }
.pin--stneots { top: 60.5%; right: 33.5%;  }

.home-map-world { position: relative;}

.pin-world { position: absolute; top:0; right:0; width: 3.7%; height: 11.7%;  background: transparent url(../svg/pin-world.svg) 0 0 no-repeat; background-size: 100% auto; }
.pin-world:hover { background-position: 0 100%;}
.pin--caribbean { top: 44.5%; right: 69.5%; }
.pin--poland { top: 7%; right: 47%; }
.pin--romania { top: 12%; right: 45%; }

@media screen and (max-width:1024px) {
    .col--map-uk,
    .col--map-world img { display: none;} 

    .home-map-text { max-width: 700px; padding:50px 40px calc(50px + 8%); text-align: center; }
}

@media screen and (max-width:750px) {
    .home-map-text { padding:45px 35px calc(45px + 8%);  }
}

@media screen and (max-width:600px) {
    .home-map-text { padding:45px 30px calc(45px + 6%);  }
}

@media screen and (max-width:480px) {
    .home-map-text { padding:45px 25px calc(45px + 4%);  }
}

@media screen and (max-width:400px) {
    .home-map-text { padding:42px 22px calc(42px + 2%);  }
}

/* = Trending - Articles
----------------------------------------------------------------------------------------------------------------- */
.trending-articles {position: relative;}
.trending-articles .article-date { margin-bottom: 10px;  font-size: 15px;  letter-spacing: 0.4px; font-family: 'Source Sans Pro', sans-serif; text-transform: uppercase;  color: #00A780;  font-weight: 600;}
.trending-articles .article-title { margin-bottom: 10px;}
.trending-articles .article-author { font-size: 14px;}

.trending-item:hover .article-title  { text-decoration: underline;}

@media screen and (min-width:701px) and (max-width:1000px) {
    .trending-articles {margin-top:35px; }
    .trending-articles .trending-item { float:left; width: calc(50% - 30px); margin: 40px 60px 0 0; }
    .trending-articles .trending-item:nth-child(even) {margin-right: 0;}
    .trending-articles .trending-item:nth-child(-n+2) { margin-top: 0; }
    .trending-articles .trending-item:nth-last-child(-n+2) { display: none; }

    .trending-articles:before { content:''; position: absolute; top:0; left: 50%; width: 1px; height: 100%; background:#c7c7c7; }
}

@media screen and (min-width:1001px) {
    .trending-articles {margin-top:40px; }
    .trending-articles .trending-item { float:left; width: calc(33.333% - 40px); margin: 40px 60px 0 0; }
    .trending-articles .trending-item:nth-child(3n+3) {margin-right: 0;}
    .trending-articles .trending-item:nth-child(-n+3) { margin-top: 0; }

    .trending-articles:before { content:''; position: absolute; top:0; left: calc(33.333% - 10px); width: 1px; height: 100%; background:#c7c7c7; }
    .trending-articles:after { content:''; position: absolute; top:0; right: calc(33.333% - 10px); width: 1px; height: 100%; background:#c7c7c7; }
}

@media screen and (max-width:700px) {
    .trending-articles .trending-item { display: block; margin: 0 0 20px; padding-bottom: 20px; border-bottom: 1px solid #c7c7c7; }
    .trending-articles .trending-item:last-child,
    .trending-articles .trending-item:nth-child(3) {margin:0; padding:0; border:none;}
    .trending-articles .trending-item:nth-last-child(-n+3) { display: none; }
}

/* = Trending pills
----------------------------------------------------------------------------------------------------------------- */
.trending-topics { margin-top:50px; text-align: center; }
.trending-pill { margin:8px 5px;  padding:5px 14px; font-size: 14px; text-transform: uppercase; letter-spacing: 0.5px; display: inline-block; border:1px solid #707070;  border-radius: 16px; font-weight: 600;  font-family: 'Source Sans Pro', sans-serif;  }
.trending-pill:hover,
.trending-pill:focus { color:#fff; border-color: #00A780; background:#00A780; }

@media screen and (max-width:600px) {
    .trending-pill { font-size: 13px; }
}

@media screen and (max-width:480px) {
    .trending-topics { margin-top:40px;}
    .trending-pill { margin: 7px 3px; font-size: 12px; }
}

@media screen and (max-width:440px) {
    .trending-topics { margin-top:30px;  text-align: left;}
    .trending-pill { margin: 6px 2px; padding:4px 12px;  font-size: 11px; border-color: #BABFC1; }
}

@media screen and (max-width:340px) {
    .trending-pill { margin: 5px 2px; font-size: 10px; letter-spacing: 0.4px;}
}


/* = Saved properties button
----------------------------------------------------------------------------------------------------------------- */
.saved-props-button { position:fixed; bottom: 0; left: 45px; padding: 0 0 13px 20px; z-index: 10; }
.saved-props-button .btn { box-shadow: 0px 1px 15px rgb(0 0 0 / 10%); }


/* = Properties - Search & filter bar
----------------------------------------------------------------------------------------------------------------- */
.property-search-box { margin: 40px 0; padding:40px; background: #f4f4f4;}

.psb-toggle { display: inline-block; background: #fff; position: relative; z-index: 0; border-radius: 40px; overflow: hidden; }
.psbt-btn { display: inline-block; padding: 12px; position: relative; text-align: center; font-weight: 600; -webkit-transition: background 600ms ease, color 600ms ease; transition: background 600ms ease, color 600ms ease; user-select: none; -webkit-tap-highlight-color: rgba(255, 255, 255, 0); }
.psbt-radio { display: none; -webkit-tap-highlight-color: rgba(255, 255, 255, 0); }
.psbt-radio + .psbt-btn { cursor: pointer; min-width: 80px; }
.psbt-radio + .psbt-btn:hover { background: none; color: #00A780; }
.psbt-radio + .psbt-btn:after { color:#fff; background: #162831; content: ""; height: 100%; position: absolute; top: 0; transition: left 200ms cubic-bezier(0.77, 0, 0.175, 1); width: 100%; z-index: -1; border-radius: 40px; }
.psbt-radio.toggle-left + .psbt-btn { border-right: 0; }
.psbt-radio.toggle-left + .psbt-btn:after { left: 100%; }
.psbt-radio.toggle-right + .psbt-btn { margin-left: -5px; }
.psbt-radio.toggle-right + .psbt-btn:after { left: -100%; }
.psbt-radio:checked + .psbt-btn { cursor: default; color: #fff; transition: color 200ms; }
.psbt-radio:checked + .psbt-btn:after { left: 0; }

.psb-filters { margin:5px 0 0; position: relative; }

.psb-toggle-filters { display: none;  margin: 20px 0 5px; font-weight: 500; text-align: center; cursor: pointer; }
.psb-toggle-filters .icon { font-size: 1.1em; padding-right: 2px; color:#00A780; }

.psbf-group {margin-top:20px;}
.psbf-group--third { width:calc(33.333% - 13.333px); margin-right: 20px; } 
.psbf-group--full { width:100%; }
.psbf-group--distance { width:calc(33.333% - 15px); } 
.psbf-group--beds { width:calc(28% - 15px);  margin-right: 20px; } 
.psbf-group--include { width:calc(20% - 15px);  margin-right: 20px; } 
.psbf-group--submit { width:calc(18.666% - 15px); } 

.psbf-group label {display: block; font-weight: 600; margin-bottom: 8px; color:#005941; }

.psbf-group .checkradio-group {margin:6px 0; }
.psbf-group .checkradio-group:last-child {margin-bottom: 0;}
.psbf-group .checkradio-label { font-size: 14px; padding-left: 28px; } 
.psbf-group .checkradio-label:not(.checkradio-label--radio):before { height: 18px; width: 18px;  border: 1px solid #e4e3de; border-radius: 2px; }
.psbf-group .checkradio-label--check:after { top: 3px;  left: 7px;  width: 3px; height: 9px;}

.psbf-group .form-field {margin:0;  -webkit-flex: 1 1 auto;-ms-flex: 1 1 auto; flex: 1 1 auto;  }
.psbf-group .form-field input,
.psbf-group .form-field select { padding: 11px 15px; border-radius: 2px; }
.psbf-group .form-field--submit .btn { width:100%; max-width: 250px; margin: 0 auto; } 

.psbf-group .form-field select { padding-right: 44px; background-position: right 15px center;} 
.psbf-group .form-field--select:after { content:''; position: absolute; top:1px; right:41px; height: calc(100% - 2px); border-right:1px solid #e4e3de;}

.psbf-group-options .checkradio-group,
.psbf-group-options .checkradio-group:last-child { margin: 0 0 8px 20px; }
.psbf-group-options .checkradio-item { margin-top: -3px; }

.ff-to { margin:0 10px; color:#005941; font-weight: 500;}

.psbt-less { display: none; }

@media screen and (min-width:951px) {
    .psbf-group:nth-child(3) {margin-right: 0;}
}

@media screen and (max-width:1024px) {
    .property-search-box {  padding:35px; }
    .psb-filters { margin: 0;  }

    .psbf-group--beds { width:calc(30% - 15px);   } 
    .psbf-group--submit { width:calc(16.666% - 15px); } 
}

@media screen and (max-width:950px) {
    .psbf-group { width:calc(50% - 10px); }

    .psbf-group:nth-child(2),
    .psbf-group:nth-child(4) {margin-right: 0;}

    .psbf-group--beds { width:calc(41% - 13.333px);  margin-right: 20px; } 
    .psbf-group--include { width:calc(30% - 13.333px);  margin-right: 20px; } 
    .psbf-group--submit { width:calc(29% - 13.333px); margin-right: 0; } 
}

@media screen and (max-width:650px) {
    .psb-toggle-wrap {text-align: center;}
    .psbf-group--beds { width:calc(62% - 13.333px);  margin-right: 20px; } 
    .psbf-group--include { width:calc(38% - 13.333px);  margin-right: 0; } 
    .psbf-group--submit { width:100%; margin: 30px 0 0; } 

    .psb-toggle-filters { display: block;  }
    .psb-filters .psbf-group--extra {display: none;}
    .psb-filters.on  .psbf-group--extra {display: block;}

    .psb-toggle-filters.on .psbt-less { display: inline; }
    .psb-toggle-filters.on .psbt-more { display: none;}
}

@media screen and (max-width:600px) {
    .psbf-group--location,
    .psbf-group--price,
    .psbf-group--beds,
    .psbf-group--price,
    .psbf-group--include { width:100%; margin-right: 0;}

    .psbf-group--include {display: block; text-align: center;}
    .psbf-group .checkradio-group {display: inline-block; margin: 0 10px;}
    .psbf-group-options .checkradio-group {display: flex; margin: 0 0 8px 20px;}

    .psb-toggle-filters {margin:20px 0 0; }
}

@media screen and (max-width:440px) {
    .property-search-box {  margin: 35px 0; padding:35px 30px; }
    
    .psbf-group label {margin-bottom: 5px; font-size: 15px;}
    .psbf-group .form-field input, .psbf-group .form-field select, .psb-toggle-filters, .ff-to { font-size: 15px;}
    .psbf-group .checkradio-label { font-size: 13px; }
    .psbf-group .checkradio-group:first-child {margin-left:0; }
    .psbf-group .checkradio-group:last-child {margin-right:0; }
}

@media screen and (max-width:400px) {
    .property-search-box { margin: 25px 0 30px; padding:35px 25px; }

    .psbf-group { margin-top: 15px; }
    .psbf-group--submit {margin-top:25px; }
    .psbf-group--include {margin-top:20px;}
   
    .psbf-group label { font-size: 14px;}
    .psbf-group .form-field input, .psbf-group .form-field select, .psb-toggle-filters, .ff-to  { font-size: 14px;}

    .psbf-group .form-field input { padding: 11px 12px;  }
    .psbf-group .form-field select { padding: 11px 44px 11px 12px;  background-position: right 13px center; background-size: 10px auto; }
    .psbf-group .form-field--select:after { right:36px; }
    
    .psbf-group-options .checkradio-group {display: inline-block; margin: 0 10px;}
    .psbf-group-options .checkradio-item { margin: 0 0 10px; }
}

@media screen and (max-width:360px) {
      .psbf-group .checkradio-group { display: block; margin: 0 0 12px; text-align: left; } 
}


/* = Property search
----------------------------------------------------------------------------------------------------------------- */
.sbf-sels { margin: 15px 0; font-size: 14px; color: #999; }
.sbf-sel-item { margin: 0 0 0 10px; }
.sbf-sel-item:after { content: "\2022"; padding-left: 10px; }
.sbf-sel-item:last-child:after { content: none; padding-left: 0; }

.tabs--property-search.is-loading,
.search-box-wrap.is-loading { position: relative; }
.tabs--property-search.is-loading:after,
.search-box-wrap.is-loading:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(255, 255, 255, .7) url(../gif/loading.gif) center no-repeat; }



/* = Properties - Results sort bar
----------------------------------------------------------------------------------------------------------------- */
.results-sort { width: 100%; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid #E4E3DE; }
.results-sort .rs-sort { margin:0 0 0 30px; -webkit-flex: 1 1 auto;  flex: 1 1 auto; }
.results-sort .rs-sort .form-field { margin:0; }
.results-sort .rs-views a { display: inline-block; padding: 12px 20px; margin:0 0 0 15px; border-radius: 2px; font-size: 15px; font-weight: 600; background: #f4f4f4; -webkit-transition:all .3s ease; transition:all .3s ease; }

.results-sort .rs-views a:hover,
.results-sort .rs-views a:focus { color:#fff; background-color: #00A780; }

.results-sort .rs-views a.on { font-weight: 500; color:#fff; background: #162831; } 
.results-sort .rs-views .icon { padding-right: 3px; min-width: 0; display: inline-block; vertical-align: middle; }
.results-sort .rs-views .text { letter-spacing: 0.2px; display: inline-block; vertical-align: middle; }
.results-sort .rs-views .icon--grid-view { padding-right: 10px;}

@media screen and (min-width:1201px) {
    .results-sort .rs-views .icon {font-size: 17px; }
}

@media screen and (max-width:900px) {
    .results-sort { display: block;}
    .results-sort .rs-sort {margin:25px 0 0; }
    .results-sort .rs-views a {font-size: 15px;}
}

@media screen and (max-width:650px) {
    .results-sort .rs-views .text {display: none;}
    .results-sort .rs-views .icon {padding:0;     vertical-align: top; }
    .results-sort .rs-views a {padding: 13px 16px;  }
}

@media screen and (max-width:480px) { 
    .results-sort .rs-views a {padding: 12px 14px; margin: 0 0 0 13px; }
}

@media screen and (max-width:400px) { 
    .results-sort .rs-sort .form-field { max-width: calc(100% - 120px);}
    .results-sort .rs-views a {margin: 0 0 0 5px; }
}


/* = Property map
----------------------------------------------------------------------------------------------------------------- */

.prop-map { position: relative; height: calc(100vh - 80px); min-height: 450px; width: 100%; max-width: 100%; border: 1px solid #eee; background: #eee url(../gif/loading.gif) center no-repeat; }
.prop-map-wrap { width: 100%; height: 100%; }
.prop-map-loadingpane { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: #eee url(../gif/loading.gif) center no-repeat; z-index: 2; }    
.prop-map-loadingpane--side { display: none; background-color: rgba(255, 255, 255, .4); }
#map { width: 100%; height: 100%; }

a.card-property_close { display: none; }
a.card-property_close,
a.card-property_close:hover,
a.card-property_close:focus { position: absolute; top: 0; right: 0; background: #00A780; color: #fff; padding: 9px; z-index: 2; }

.map-popover { position: fixed; top: 0; left: 0; bottom: 0; width: 100%; max-width: 400px; transform: translateX(calc(-100% - 50px)); overflow-y: auto; -webkit-transition: transform .3s ease-out; transition: transform .3s ease-out; }
.map-popover.on { transform: translateX(0); }

.map-popover { z-index: 10; }
.map-popover.on { box-shadow: 0px 20px 40px rgb(0 0 0 / 20%) }
.map-popover .card { min-height: 100%; margin: 0; overflow-y: auto; }
.map-popover a.card-property_close { display: block; }



/* = Properties - View
----------------------------------------------------------------------------------------------------------------- */
.container--propview {padding:0 75px; position: relative;}

.card--property--view { overflow: hidden; }
.card--property--view:last-child {margin-bottom: 0;}
.card--property--view .card-image { padding-top:66.6%; }
.card--property--view .card-content {  padding:0; background: #fff; z-index: 1; } 
.card--property--view .cc-inner { padding: 50px; } 
.card--property--view .cp-price { font-size: 32px;} 
.card--property--view .cp-key-bullets { border:none; margin:0; padding:0; }
.card--property--view .cp-key-bullets .ss-container {height: 100%;}
.card--property--view .cp-key-bullets ul { font-size: 16px; column-count: 1; font-weight: 500;}
.card--property--view .cp-key-bullets p {font-size: 16px;  font-weight: 500;}
.card--property--view .cp-desc {   margin: 15px 0 35px;}

.card--property--view .btn--viewing {border-radius: 0;  width: 100%; display: block; padding: 18px 22px; font-size: 1em; text-align: center; }
.card--property--view .cp-brochure-download { padding: 16px 22px;text-align: center; border-top:1px solid #E4E3DE;  }
.card--property--view .cp-brochure-download a {font-weight: 700;}
.card--property--view .cp-brochure-download a small { padding-left: 4px; font-weight: 300;}
.card--property--view .cp-brochure-download .icon:before { font-size: 1.3em; padding-right: 5px;}

.card--property--view .cp-guide-price { margin:0 0 5px; }
.card--property--view .cp-guide-price span { display: inline-block; font-size: 13px; color:#005941; text-transform: uppercase; font-weight: 600; padding:5px 10px; background: #F5F5F5;  }
.card--property--view .cp-status { padding: 10px 15px; font-size: 15px; } 
.card--property--view .cp-slide-count { position: absolute; top:0; right:0; padding: 10px 15px; font-size: 15px;  background: #162831; color:#fff; }

.card--property--view .cp-key-info { padding: 14px 20px; } 
.card--property--view .cp-loc .icon { padding-right: 4px; color:#BFFFEF; } 
.card--property--view .cp-loc--in-key { margin:0 10px 0 0; font-size: 16px; font-family: 'Source Sans Pro', sans-serif; color: #fff; } 
.card--property--view .cp-key-item {font-size: 16px; } 

.card--property--view .card-stage-wrap { position: relative; transition: transform .5s ease;  }
.card--property--view .card-stage-wrap[data-stage-index="1"] { transform: translateY(-100%);  }
.card--property--view .card-stage-wrap[data-stage-index="2"] { transform: translateY(-200%);  }
.card--property--view .card-stage-wrap[data-stage-index="3"] { transform: translateY(-300%);  }

.card--property--view .card-stage-item { position: absolute; height: 100%; width: 100%; top: 0; left: 0; padding-top: 0; }
.card--property--view .card-stage-item[data-stage-index="1"] { top: 100%; }
.card--property--view .card-stage-item[data-stage-index="2"] { top: 200%; }
.card--property--view .card-stage-item[data-stage-index="3"] { top: 300%; }
        
.card-stage-sizer { padding-top:66.6%; position: relative; }

.card-tours,
.card-map {  background: #333 url(../gif/loading-card.gif) center no-repeat; }

.card-map .map-outer { width: 100%; height: 100%; }

.pv-slider--main .pv-image { padding-bottom:66.6%; height: 0; position: relative; }

.pv-toggle-wrap { position: absolute; top:0; left:0; }
.pv-toggle { display: block; width:75px; height: 75px; background: #fff; color:#00A780; margin:0 0 2px; font-size: 1.75em; text-align: center; line-height: 75px; }
.pv-toggle.on { color:#fff; background: #00A780;  }

.pv-about { line-height: 1.5; }

.pv-more-toggle { display: none;}
.pv-more-toggle a { display: block; width:40px; height: 40px; line-height: 40px; text-align: center; margin:20px auto;  color:#fff; background: #00A780; border-radius: 50%; box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.18); } 
.pv-more-toggle a:after { margin-top:9px;}

.pv-auction-logo {background: #f5f5f5; padding: 20px; margin: 35px 0; }
.pv-auction-logo img { max-width: 100%; }

.pv-save { font-size: 13px; cursor: pointer; margin: 20px 0; padding: 10px 0; letter-spacing: 0.8px; font-weight: 700; text-transform: uppercase; }
.pv-save .icon {padding-left:5px; color:#00A780; }

.pv-regbid-desk { display: none; }
.pv-regbid-mob { margin-top: 1px; }


h6 + .pv-aside {margin-top:40px;}

.back-bar { padding:15px 0; background: #fff;}
.back-bar a { font-size: 14px; font-weight: 500;}
.back-bar .bb-next {float: right;}

.back-bar--portfolio a { font-weight: 600; }

@media screen and (min-width:401px) { 
    .card--property--view .cp-price { font-size: 34px;} 
}

@media screen and (min-width:601px) { 
    .card--property--view .cp-price { font-size: 40px;} 
    .card--property--view .cp-desc { font-size: 18px; }

    .card--property--view  .lSAction > a, 
    .card--property .lSAction > .lsArrow { width: 44px;  height: 44px;  line-height: 44px;  top: calc(50% - 22px);font-size: 1em;  }
}

@media screen and (min-width:1201px) { 
    .card--property--view { display:-webkit-flex; display: flex; }
    .card--property--view .card-content { padding: 0; width:375px; background: #fff; display: -webkit-flex; display: flex;   -webkit-flex-direction: column; flex-direction: column;   } 
    .card--property--view .card-stage-wrap { width:calc(100% - 375px); background: #162831;  display: flex; flex-direction: column; justify-content: center;  }
    .card--property--view .cc-inner  { padding:40px;  -webkit-flex: 1 1 auto;  flex: 1 1 auto;  }
    .card--property--view .cp-key-bullets { height: 185px; }
    .card--property--view .cp-key-bullets--no-download { height: 250px; }

    .back-bar--portfolio a {font-size: 15px;}
    
    .pv-regbid-desk { display: block; }
    .card--property--view .btn--viewing.pv-regbid-mob { display: none; }
}

@media screen and (max-width:1320px) and (min-width:1201px) { 
    .card--property--view .card-stage-wrap { width:calc(100% - 350px); }
    .card--property--view .card-content {  width:350px; }
    .card--property--view .cp-key-bullets { height: 140px; }
    .card--property--view .cp-key-bullets--no-download { height: 200px; }
    .card--property--view .cc-inner  { padding:35px; }
    .card--property--view .cp-desc {  margin: 10px 0 30px; }
}

@media screen and (min-width:1401px) { 
    .card--property--view .cp-key-bullets { height: 200px; }
    .card--property--view .cp-key-bullets--no-download { height: 275px; }

    .card--property--view .cp-status,
    .card--property--view .cp-slide-count {font-size: 16px; padding: 12px 16px; }
}

@media screen and (min-width:1501px) { 
    .card--property--view .cp-key-bullets { height: 240px; }
    .card--property--view .cp-key-bullets--no-download { height: 330px; }
}

@media screen and (max-width:1200px) { 
    .container--propview { max-width: 1024px;}
}

@media screen and (max-width:850px) and (min-width:601px)  { 
    .pv-aside { display: flex;  gap: 30px; }
    .pv-aside  > *,
    .pv-aside  > .card.card--contact--single  { width:50%;   margin-bottom: 0; }
    .pv-aside  > .cta-aside {display: flex; align-items: flex-end; } 
}

@media screen and (max-width:800px) {  
    .card--property--view .cp-status,
    .card--property--view .cp-slide-count { padding: 8px 12px; font-size: 14px; } 

    .container--propview {padding:0 60px;  }
    .pv-toggle { width:60px; height: 60px;  font-size: 1.4em;  line-height: 60px; }

    .card--property--view .cp-loc--in-key,
    .card--property--view .cp-key-item {font-size: 15px; } 
}

@media screen and (max-width:750px) {  
    .container--propview {padding:0 50px;  }
    .pv-toggle { width:50px; height: 50px;  font-size: 1.25em;  line-height: 50px; }

    .card--property--view .cp-loc--in-key,
    .card--property--view .cp-key-item {font-size: 14px; } 
}

@media screen and (max-width:650px) {  
    .container--propview {padding:0; }
    .pv-toggle-wrap { display: -webkit-flex; display: flex;  position: relative; background: #fff; }
    .pv-toggle { margin:0; border-right: 1px solid #e4e3de;}
    .pv-toggle.on {border-color: #00A780;}

    .pv-more-toggle {display: block;}
    .pv-more-toggle .on { -webkit-transform:rotate(180deg); transform:rotate(180deg);  box-shadow: 0px -4px 6px rgba(0, 0, 0, 0.18); }
    .pv-about {max-height: 340px; overflow: hidden; position: relative; }
    .pv-about.on { max-height: unset;}
    .pv-about:not(.on):after { content:''; position: absolute; bottom:0; left:0; width:100%; height: 75px; background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 100%); }


    .back-bar { position: absolute; top:0; right:0; margin-right: 20px; z-index: 1; }

    .back-bar--portfolio { position: relative; margin:0; }
}

@media screen and (max-width:600px) {  
    .card--property--view .cp-key-info {  padding: 12px 18px; flex-wrap: wrap; }
    
    .card--property--view .cp-loc--in-key {  font-size: 13px; } 
}

@media screen and (max-width:480px) {  
    .pv-toggle { width:44px; height: 44px; line-height: 44px; font-size: 1em; }

    .card--property--view .cc-inner {padding:40px; }

    .card--property--view .cp-status,
    .card--property--view .cp-slide-count { padding: 8px 12px; font-size: 13px; } 

    .card--property--view .cp-loc--in-key { width:100%;  order:1; }
    .card--property--view .cp-key-items-wrap { width:100%; order:0;  margin-bottom: 10px;} 

    .back-bar  {  padding:12px 0; }
    .back-bar a { font-size: 13px;}
}

@media screen and (max-width:440px) {  
    .card--property--view .cc-inner {padding:40px 30px; } 
}

@media screen and (max-width:400px) {  
    .pv-toggle { width:40px; height: 40px;  line-height: 40px; }

    .card--property--view .card-image { padding-top: 70%; }
    .pv-slider--main .pv-image {padding-bottom: 70%;}

    .card--property--view .cc-inner {padding:35px 25px; } 
    

    .card--property--view .cp-guide-price span { font-size: 12px;}
    .card--property--view .cp-desc { margin: 10px 0 30px; } 

    .card--property--view .cp-status,
    .card--property--view .cp-slide-count { padding: 6px 10px; font-size: 12px; } 

    .card--property--view .cp-key-items-wrap {  margin-bottom: 6px;} 

    .card--property--view .cp-key-bullets ul,
    .card--property--view .cp-key-bullets p {font-size: 15px; }

    .back-bar  {  padding:10px 0;     margin-right: 15px; }
    .back-bar a { font-size: 12px;}
}


/* = Auctions
----------------------------------------------------------------------------------------------------------------- */
.auction-lot-view .contact-contact .icon--live:before { font-size: 12px; }
.auction-lot-view .contact-contact .icon:after { font-size: 14px; }
.auction-lot-view .contact-contact .contact-icon:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.auction-lot-view .pv-about h3 { margin-top: 25px; }
.auction-lot-view .pv-about { line-height: 1.5em; }


/* = Portfolio - Featured Sliders
----------------------------------------------------------------------------------------------------------------- */
.portfolio-hero { overflow: hidden; position: relative; }
.portfolio-hero .slider-wrap-portfolio  { max-width: 2000px; margin: 0 auto;  } 
.portfolio-hero .lSSlideWrapper,
.portfolio-hero .lSSlideOuter {overflow: visible;}

.portfolio-hero--featured {margin-top:30px; }

.portfolio-hero .ph-content { padding: 40px; background: #162831; }
.portfolio-hero .ph-content * {color:#fff; }
.portfolio-hero .ph-content .h2 {margin-bottom: 20px;}
.portfolio-hero .ph-content .h3 {margin-bottom: 15px;}
.portfolio-hero .ph-content .phc-loc  { font-size: 18px; color:#efefef;} 
.portfolio-hero .ph-content .icon { padding-right: 5px; color:#00A780;}
.portfolio-hero .phc-tab { top: 25px; left: 0; padding: 12px 14px; font-size: 15px;  display: inline-block;position: absolute;  color: #fff; background: #00A780;  letter-spacing: 0.4px; font-family: 'Source Sans Pro', sans-serif; text-transform: uppercase;}


.portfolio-hero .ph-details  { list-style: none;   }
.portfolio-hero .ph-details li { margin-bottom: 15px; color:#bdbdbd;     -webkit-column-break-inside: avoid;  page-break-inside: avoid;  break-inside: avoid;  } 
.portfolio-hero .ph-details li:last-child {margin-bottom: 0;}
.portfolio-hero .ph-details span { color:#fff; display: block; margin-top: 4px;  }

.portfolio-slider .ps-image { padding-top: 62.75%; height: 0; position: relative; }
.portfolio-slider .ps-slide { opacity: 0.4; -webkit-transition: all .4s ease; transition: all .4s ease; }
.portfolio-slider .ps-slide.active { opacity: 1;}

@media screen and (min-width:1001px) {  
    .portfolio-hero--featured .ph-content { position: absolute; top:0; left:50px; padding: 95px 40px 40px; min-width: 350px; background: #162831; }

    .portfolio-hero--view .ph-details {column-count: 2; column-gap: 30px;  }
    .portfolio-hero--view .ph-content  { position: absolute; bottom:0; right:0; padding: 35px; min-width: 400px; background: #162831; }
}

@media screen and (min-width:1201px) { 
    .portfolio-hero--view .ph-details {column-count: 1; column-gap: 0;  }
    .portfolio-hero--view .ph-content  { position: absolute; top:185px; padding: 40px; bottom:auto; min-width: 21.25%;  }
}

@media screen and (max-width:1000px) { 
    .portfolio-hero--view .ph-details {column-count: 2; column-gap: 30px;  }
    .portfolio-hero--view .ph-content .h2 {display: none;}

    .portfolio-hero .ph-details li {margin-bottom: 12px;}
    .portfolio-hero .ph-details span { display: inline-block; margin:0; }
}

@media screen and (max-width:650px) {  
    .portfolio-hero--featured { margin-top:0; }
}

@media screen and (max-width:600px) {  
    .portfolio-hero--featured .phc-tab {  top: 20px; padding: 10px 12px; font-size: 14px; }

    .portfolio-hero--view .ph-details {column-count: 1; column-gap: 0;  }

    .portfolio-hero .lSAction > a,
    .portfolio-hero .lSAction > .lsArrow {  width: 36px;  height: 36px; line-height: 36px; top: calc(50% - 18px); font-size: 0.85em; }
    .portfolio-hero .lSAction > .lSPrev { left:15px; }
    .portfolio-hero .lSAction > .lSNext { right:15px; }
}

@media screen and (max-width:480px) {
    .portfolio-hero .lSAction > a,
    .portfolio-hero .lSAction > .lsArrow  {  width: 30px;  height: 30px; line-height: 30px; top: calc(50% - 15px); font-size: 0.8em; }
    .portfolio-hero .lSAction > .lSPrev { left: 10px; }
    .portfolio-hero .lSAction > .lSNext { right:10px; }
}

@media screen and (max-width:440px) {  
    .portfolio-hero .ph-content { padding: 35px;  } 
    .portfolio-hero .phc-tab {  font-size: 13px; }
}

@media screen and (max-width:400px) {  
    .portfolio-hero .ph-content { padding: 35px 30px;  } 
    .portfolio-hero .phc-tab { top: 15px; padding: 8px 10px; font-size: 12px; }
    .portfolio-hero .ph-content .phc-loc { font-size: 16px; }
}

/* = Team List - Main
----------------------------------------------------------------------------------------------------------------- */
.team-group { margin:50px 0; }
.team-group:first-child,
.team-group.is-first { margin-top: 0;}
.team-group:last-child { margin-bottom: 20px;}

.tg-title { margin-bottom: 30px; border-bottom: 1px solid #162831; }
.tg-title span { margin-bottom: -1px;padding:14px 24px; letter-spacing: 0.75px; text-transform: uppercase; font-weight: 600; display: inline-block; vertical-align: bottom; color:#fff; background: #162831; }

.card--contact-link .card-image:before { opacity: 0; content:''; position: absolute; top:0; left: 0; width:100%; height: 100%; background: #162831; -webkit-transition: opacity .3s ease; transition: opacity .3s ease; z-index: 1; }
.card--contact-link .card-image:after { opacity: 0; content:'More details \2192'; white-space: nowrap; color:#fff; font-weight: 600; letter-spacing: 0.75px; text-transform: uppercase; position: absolute; top:50%; left: 50%; transform: translate(-50%, -50%);   -webkit-transition: opacity .3s ease; transition: opacity .3s ease; z-index: 1; }

.card--contact-link:hover .card-image:before,
.card--contact-link:focus .card-image:before  { opacity: 0.9;}
.card--contact-link:hover .card-image:after,
.card--contact-link:focus .card-image:after  { opacity: 1;}

@media screen and (min-width:801px) {  
    .team-group { margin:60px 0; }
    .tg-title span { padding:14px 28px;  font-size: 18px;  }
}

@media screen and (min-width:1201px) { 
    .team-group { margin:75px 0; }
}

@media screen and (min-width:1301px) { 
    .team-group { margin:80px 0; }
    .team-group:last-child { margin-bottom: 30px;}
}

@media screen and (min-width:1401px) { 
    .team-group { margin:90px 0; }
    .team-group:last-child { margin-bottom: 40px;}
}

@media screen and (max-width:600px) {  
    .tg-title span { padding:12px 20px; font-size: 14px; letter-spacing: 0.5px; }

    
    .card--contact-link .card-image:before { opacity: 0.5; top:auto; bottom:0; height: 50px;  }
    .card--contact-link .card-image:after { font-size: 15px; opacity: 1;  letter-spacing: 0.5px; top:auto; bottom:15px; left: 0; width: 100%; text-align: center; transform: translate(0, 0); }
}

@media screen and (max-width:480px) {  
    .card--contact-link .card-image:before {  height: 42px;  }
    .card--contact-link .card-image:after { bottom:12px;  font-size: 14px; letter-spacing: 0.4px; top:auto; }

}

/* = Expert view
----------------------------------------------------------------------------------------------------------------- */
.main-text .expert-specialisms {margin-top:40px; }

@media screen and (min-width:651px) {  
    .main-text .expert-specialisms {margin-top:50px; }
    .expert-specialisms {  column-count:2; column-gap: 50px; }
}

@media screen and (min-width:1025px) {  
    .expert-specialisms {  column-count:3; column-gap: 50px; }
}

/* = Job listing
----------------------------------------------------------------------------------------------------------------- */
.job-panel { margin:25px 0;  padding:30px; border:1px solid #E4E3DE; }
.job-panel:first-child {margin-top:0; }
.job-panel:last-child {margin-bottom:0; }
.job-panel .accordion > h3 { font-size: 18px; font-family: 'Raleway', sans-serif; font-weight: 500; color: #162831; background: #f4f4f4; } 
.job-panel .accordion > h3:focus { box-shadow: 0 0 0 2px #1eb18f;} 
.job-panel .accordion > h3:hover:after, 
.job-panel .accordion > h3:focus:after { color: #162831; } 

.jp-header { margin-bottom: 25px; }
.jp-header div {margin:0; }
.jp-header .jp-apply {margin-left: 25px;}
.jp-header .jp-location { min-width:230px; }
.jp-header .jp-location .icon { margin-right:8px; width: 24px; height: 24px; line-height: 24px;  display: inline-block;  text-align: center; font-size: 0.8em; border-radius: 50%; color:#fff; background: #2A3D46;}
.jp-header .jp-title { margin-right: 25px; -webkit-flex: 1 1 auto;flex: 1 1 auto; }

.job-filters select,
.job-filters .cd-title  { border-radius: 2px; }

.job-filters .form-field { width: 100%;}
.job-filters .form-field > label { float:none; width: 100%;  margin:0 0 15px; padding: 0; color:#005941; }
.job-filters .form-field .checkbox-dropdown,
.job-filters .form-field > select { width: 100%; }
.job-filters .form-field--submit { width: 100%; margin: 15px 0 0; }
.job-filters .form-field--submit .btn { width:100%; min-width: 200px; margin:0 auto; }

.jp-view-description { padding: 10px 30px 25px; }

.box  + .job-listing {margin-top: 25px;}

@media screen and (min-width:651px) {  
    .job-filters .form-field:not(.form-field--submit) { width: calc(50% - 15px); margin: 0 30px 0 0; margin-right: 30px; }
    .job-filters .form-field:nth-child(2){margin: 0;} 
    .job-filters .form-field--submit {  margin: 35px 0 0; }
    .job-filters .form-field--submit .btn { width: auto; }
}

@media screen and (max-width:850px) {  
    .jp-header { flex-wrap: wrap;}
    .jp-header .jp-title { width: 100%; margin:0 0 20px; }
}

@media screen and (max-width:480px) {  
    .jp-header .jp-location { min-width: 0; font-size: 14px; letter-spacing: 0.5px;}
    .jp-header .jp-location .icon { margin-right:6px; width: 20px; height: 20px; line-height: 20px;font-size: 0.75em; }
}

@media screen and (max-width:440px) {  
    .jp-header .jp-location { width: 100%;}
    .jp-header .jp-apply { margin:25px 0 0; }

    .job-panel .accordion > h3 { font-size: 16px; }
}

@media screen and (max-width:400px) {  
    .job-panel {padding:25px; }
    .job-panel .accordion p { font-size: 15px; }
}

/* = Search listing
----------------------------------------------------------------------------------------------------------------- */
.search-results { list-style: none; margin:0; padding:0; }
.search-item { margin:0 0 40px; padding:0 0 40px; border-bottom: 1px solid #E4E3DE; }
.search-item:first-child {padding-top:40px; border-top: 1px solid #E4E3DE; }
.search-item:last-child {margin-bottom: 10px;}
.search-item a { width: 100%;}

.search-item a:hover .si-title,
.search-item a:focus .si-title { text-decoration: underline;} 

.si-image { width:200px; margin-top:8px; margin-right: 40px; text-align: center; }
.si-content { -webkit-flex: 1 1 0; flex: 1 1 0; }
.si-type { font-size: .9em;  margin-bottom: 20px;  text-transform: uppercase; color: #00A780; letter-spacing: 0.7px; font-weight: 700;}
.si-url { font-size: .9em; margin-bottom: 20px;      font-weight: 600;}

@media screen and (max-width:750px) {  
    .si-image { width:175px; margin-right: 30px; }
}

@media screen and (max-width:600px) {  
    .si-image { width:150px;  }
    .si-title {  font-size: 28px; margin: 0 0 20px; }
}

@media screen and (max-width:480px) {  
    .search-item a { display: block;}
    .si-image { width:100%; text-align: center; margin:0 0 25px; padding-top:5px; }
}

@media screen and (max-width:440px) {  
    .si-title {  font-size: 26px;  }
    .si-type { font-size: .8em;  }
}

@media screen and (max-width:400px) {  
    .si-title {  font-size: 24px;  }
}

/* = Footer
----------------------------------------------------------------------------------------------------------------- */
footer { border-top:1px solid #cfcfcf; background: #edefef; }

.ftr-link-col { float:left;  width: 30%; }
.ftr-link-col--offices { width:40%; }

.ftr-link-title { margin-bottom: 30px; text-transform: uppercase; color:#00A780; letter-spacing: 0.7px; font-weight: 700; }
.ftr-link-title a { color: #00A780; }
.ftr-link-title > span { display: none; }
.ftr-link-group ul { list-style: none; margin:0; padding:0; font-weight: 500; }
.ftr-link-group li { margin-bottom: 12px; }

.ftr-link-group li a:hover,
.ftr-link-group li a:focus { color:#00A780; text-decoration: underline; }

.ftr-link-group .ftr-link-subhead { margin-bottom: 18px; font-weight: 700;}
.ftr-link-group .ftr-link-subhead:not(:first-child) {margin-top:30px; }
.ftr-link-col--offices .ftr-link-group ul { columns: 2;} 

.ftr-social { position: relative; margin:30px 0 40px; }
.ftr-social ul {list-style: none; margin:0; padding:0;}
.ftr-social ul li {display: inline-block; margin:0; padding: 0 13px 0 12px; position: relative; }
.ftr-social ul li:first-child {padding-left: 0;}
.ftr-social ul li:last-child {padding-right: 0;}
.ftr-social li.hasMultipleSocial::before { bottom: calc(100% - 1px); content: ''; height: 37px; left: 0; position: absolute; width: 100%; z-index: 2; }
.ftr-social ul li a { font-size: 20px;}
.ftr-social ul li a::before {min-width: none;}
.ftr-social ul ul { bottom: 100%; display: none; left: -30px; padding-bottom: 34px; position: absolute; width: 225px; z-index: 2; }
.ftr-social ul ul li { background: #f4f4f4; display: block; padding: 11px 35px; }
.ftr-social ul ul li:first-child { border-bottom: 1px solid #E4E3DE; color: #162831; font-weight: 700; padding: 22px 35px; }
.ftr-social ul ul li:nth-child(2) { padding-top: 22px; }
.ftr-social ul ul li:last-child { padding-bottom: 22px; }
.ftr-social ul ul li a { color: #162831; font-size: 12px; font-weight: 600; line-height: 36px; text-decoration: underline; }
.ftr-social ul ul li a img { border-radius: 50%; margin-right: 11px; width: 36px; }

.ftr-social ul li a:hover,
.ftr-social ul li a:focus { color:#00A780; }
.ftr-social ul li span:hover { color: #00A780; cursor: pointer; }

.ftr-copy-logos { padding-top:20px; border-top:1px solid #cfcfcf; }
.ftr-copyright { color:#737368; }

.ftr-logos, .ftr-cert { align-items: center; display: flex; flex-wrap: wrap; justify-content: flex-end; }
.ftr-logos img { margin-bottom: 24px; margin-left: 25px; vertical-align: top; }
.ftr-cert img, .ftr-cert figure { display: inline-block; margin-bottom: 24px; margin-left: 25px; vertical-align: top; }
.ftr-cert img { max-width: 140px; }
.ftr-cert figure img { margin-bottom: 0; margin-left: 0; }
.ftr-cert figure figcaption { text-align: center; }
.ftr-l-iso-9001, .ftr-l-iso-14001 { mix-blend-mode: multiply; }



@media screen and (min-width: 1201px) {
    .ftr-social li.hasMultipleSocial:hover::after { border-color: #f4f4f4 transparent transparent transparent; border-style: solid; border-width: 22px 22px 0 22px; bottom: calc(100% + 15px); content: ''; display: block; height: 0; left: 50%; position: absolute; -ms-transform: translateX(-22px); -webkit-transform: translateX(-22px); transform: translateX(-22px); width: 0; z-index: 1; }
    .ftr-social li.hasMultipleSocial:first-child:hover::after { left: 8px; }
    .ftr-social li.hasMultipleSocial:last-child:hover::after { left: 20px; }
    .ftr-social li:hover ul { display: block; }
}

@media screen and (max-width:1280px) {
    .ftr-copyright span {display: block;}
}

@media screen and (max-width:1200px) {
    .ftr-link-col { width: 28%; }
    .ftr-link-col--offices { width:44%; }

    .ftr-copyright {font-size: 14px;}

    .ftr-social li.hasMultipleSocial.socialActive::after { border-color: #f4f4f4 transparent transparent transparent; border-style: solid; border-width: 22px 22px 0 22px; bottom: calc(100% + 15px); content: ''; display: block; height: 0; left: 50%; position: absolute; -ms-transform: translateX(-22px); -webkit-transform: translateX(-22px); transform: translateX(-22px); width: 0; z-index: 1; }
    .ftr-social li.hasMultipleSocial:first-child.socialActive::after { left: 8px; }
    .ftr-social li.hasMultipleSocial:last-child.socialActive::after { left: 20px; }
    .ftr-social li.socialActive ul { display: block; }
}

@media screen and (max-width:1120px) {
    .ftr-copy-logos .flx { display: block; }
    .ftr-copyright {text-align: center;}
    .ftr-copyright span {display: inline;}

    .ftr-logos, .ftr-cert { justify-content: center; margin: 10px auto 0; max-width: 92%; }
    .ftr-logos img, .ftr-cert img, .ftr-cert figure { margin:12px; }
    .ftr-cert figure img { margin: 0; }
}

@media screen and (max-width:1024px) {
    .ftr-link-group ul {font-size: 15px;}

    .ftr-logos img, .ftr-cert img, .ftr-img figure {margin-left: 22px; }
    .ftr-cert figure img { margin-left: 0; }
}

@media screen and (max-width:850px) {
    .ftr-link-title { margin-bottom: 25px; }
    .ftr-link-col {  width: 50%; }
    .ftr-link-col--offices {width:100%; margin-top:40px; }
}

@media screen and (max-width:480px) {
    .ftr-link-col { float:none;  width: 100%;  margin:25px 0 0; }
    .ftr-link-col:first-child {margin:0; }
    .ftr-link-col--offices .ftr-link-group ul {columns: unset;}

    .ftr-link-group {display: none; margin-bottom: 30px;}
    .ftr-link-group.on {display: block;}
    .ftr-link-title {font-size: 14px; position: relative; cursor: pointer;}
    .ftr-link-title:after {  content: '\e81f';  position: absolute; right: 0;   font-size: .9em; }
    .ftr-link-title.on:after { -webkit-transform:rotate(180deg); transform:rotate(180deg); }
    .ftr-link-title > span { display: inline; }

    .ftr-social {margin:20px 0 30px; text-align: center; }

    .ftr-social ul ul { text-align: left; }
    .ftr-social ul li:last-child ul { left: auto; right: -30px; }

    .ftr-copy-logos {text-align: center;}

}

@media screen and (max-width:440px) {
    .ftr-logos, .ftr-cert { max-width: 98%; }
    .ftr-logos img { width: auto; max-width: 100px; }

    .ftr-l-caav {min-width: 36px;}
    .ftr-l-rtpi {min-width: 115px;}
}

@media screen and (max-width:400px) {
    .ftr-logos, .ftr-cert { max-width: 100%; }
    .ftr-logos img, .ftr-cert img { margin: 10px; }
}

@media screen and (max-width:380px) {
    .ftr-l-caav {min-width: 34px;}
    .ftr-l-rtpi {min-width: 110px;}
}



/* = Feefo
----------------------------------------------------------------------------------------------------------------- */
.ftr-feefo-logo { display: block; position: absolute; top: -20px; right: 0; }
.ftr-feefo { position: relative; width: 100%; padding: 20px 0; border-top: solid 1px #cfcfcf; background: #fff; }
.ftr-feefo_inner { width: 100%; max-width: 770px; overflow-x: auto; margin: 0 auto; min-height: 130px; background: url(../gif/loading.gif) center no-repeat; }
.ftr-feefo .msg { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 600px; margin: 0; }

.search-box-wrap + .ftr-feefo { margin-top: 70px; }

@media screen and (max-width:1400px) {
    .search-box-wrap + .ftr-feefo { margin-top: 60px; }
}
@media screen and (max-width:1300px) {
    .search-box-wrap + .ftr-feefo { margin-top: 50px; }
}
@media screen and (max-width:750px) {
    .search-box-wrap + .ftr-feefo { margin-top: 45px; }
}

@media screen and (max-width:850px) {
    .ftr-feefo-logo { top: -10px; }
}

@media screen and (max-width:480px) {
    .ftr-feefo { display: none; }
    .ftr-feefo-logo { display: inline-block; position: relative; margin: 30px 0 0; }
}


/* Feefo Link on search page */
@media screen and (min-width:850px) {
    .lnk-feefo { position: absolute; top: 0; right: 40px; }
}


/* = Modals
----------------------------------------------------------------------------------------------------------------- */
.modal { display: none; background: rgba(0, 0, 0, 0.5); position: fixed; top: 0; left: 0; height: 100%; width: 100%; z-index: 9999; }
.modal.on { display: block; }
.modal .modal-inner { max-width: 840px; width: 90%; max-height: 90%; left: 50%; top: 45%; padding: 40px; margin: 0 auto; background: #fff; border-radius: 6px; display: block; float: none; position: absolute; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); overflow: auto; -webkit-transition: top .3s ease-in-out; transition: top .3s ease-in-out; }
.modal.on .modal-inner { top: 50%; }
.modalClose { cursor: pointer; text-decoration: none; top: 0; right: 0; width: 50px; height: 50px; line-height: 50px; color: #162831;  overflow: hidden; position: absolute; text-align: center;  z-index: 1; }
.modalClose:hover,
.modalClose:focus { color:#00A780; }
.modalClose:after { line-height: 50px; font-size: 0.889em; text-align: center; }
.modal-content p:last-child { margin-bottom: 5px; }

.modal--search-filters .modal-inner {max-width: 580px;}

.modal--form .form-field > label { display: none; }

.modal--youtube .modal-inner {max-width: 900px;}

@media screen and (min-width:751px) {
    .modal--form .form-field > input,
    .modal--form .form-field > select,
    .modal--form .form-field > .checkradio-group,
    .modal--form .form-field > .checkbox-dropdown,
    .modal--form .form-field > textarea.text,    
    .modal--form .form-field > .inputs-wrap { width: 100%; }
    .modal--form .error-inline { padding-left: 0; margin-left: 0; }
}


@media screen and (max-width: 600px) {
    .modal .modal-inner { top: -100%; left: 0; padding: 40px 30px 30px; width: 100%; height: 100%; max-height: 100%; transform: none;  border-radius: 0; }
    .modal.on .modal-inner { top: 0; }

    .modal--search-filters .modal-inner  { border-radius: 0; max-width: 100%;}

    .modal--youtube .modal-inner { padding:20px 0;  display: flex; align-items: center;}
    .modal--youtube .modal-content { width:100%; }
}

@media screen and (max-width: 480px) {
    .modal .modal-inner { padding: 45px 25px 25px; }
    .modalClose { position: fixed; width: 46px; height: 46px; line-height: 46px; opacity: 0.8; }
    .modalClose:after { line-height: 46px; }
}

/* = Tables
----------------------------------------------------------------------------------------------------------------- */
.tableWrap { margin: 40px 0; overflow: auto; }
.tableWrap:first-child { margin-top: 0;}
.tableWrap:last-child { margin-bottom: 0;}

table { width: 100%; margin: 0; border-spacing: 0; border-collapse: collapse; color: #666; }
th { text-align: left; font-size: 0.8em; padding: 12px 10px; color: #fff; border: 1px solid #00A780; font-weight: 600; font-family: 'Raleway', sans-serif; background: #00A780; }

tr:nth-child(even) td { background: #f6f6f6; }

td { text-align: left;  font-size: 0.8em; padding: 10px; border: 1px solid #e5e5e5; background: #fff; }

tr.hasRowSpan td:first-child,
tr td.pink {
    background-color: #DB2763;
    color: #fff;
    border-left-color:  #DB2763;
}


@media screen and (max-width: 480px) {
    td, th { font-size: 0.75em; }
}

@media screen and (max-width: 360px) {
    td, th { font-size: 0.7em; }
}



/* = Clearfix
----------------------------------------------------------------------------------------------------------------- */
.clearfix:after { content: ""; display: table; clear: both; }



/* = International Site Overrides
----------------------------------------------------------------------------------------------------------------- */
html.html--intl .hdr-navlinks li ul { top: calc(100% + 32px); }

