@charset "UTF-8";
/*-------------------------------------------- Animation keyframes */
/*---------------------- Hide */
@-webkit-keyframes hide {
  from,
    to {
    opacity: 0;
  }
}
@-moz-keyframes hide {
  from,
    to {
    opacity: 0;
  }
}
@keyframes hide {
  from,
    to {
    opacity: 0;
  }
}
/*---------------------- Fade in */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
}
@-moz-keyframes fadeIn {
  from {
    opacity: 0;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
}
/*---------------------- Fade in left */
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
}
@-moz-keyframes fadeInLeft {
  from {
    opacity: 0;
    -moz-transform: translateX(-20px);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    -moz-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    -o-transform: translateX(-20px);
    transform: translateX(-20px);
  }
}
/*---------------------- Fade in right */
@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
}
@-moz-keyframes fadeInRight {
  from {
    opacity: 0;
    -moz-transform: translateX(20px);
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translateX(20px);
    -moz-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -o-transform: translateX(20px);
    transform: translateX(20px);
  }
}
/*---------------------- Fade in down */
@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
}
@-moz-keyframes fadeInDown {
  from {
    opacity: 0;
    -moz-transform: translateY(-20px);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -moz-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    -o-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}
/*---------------------- Fade in up */
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
}
@-moz-keyframes fadeInUp {
  from {
    opacity: 0;
    -moz-transform: translateY(20px);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -o-transform: translateY(20px);
    transform: translateY(20px);
  }
}
/*---------------------- Fade in up big */
@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translateY(1000px);
  }
}
@-moz-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -moz-transform: translateY(1000px);
  }
}
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translateY(1000px);
    -moz-transform: translateY(1000px);
    -ms-transform: translateY(1000px);
    -o-transform: translateY(1000px);
    transform: translateY(1000px);
  }
}
/*-------------------------------------------- Fonts */
/*---------------------- Avenir Light Pro */
@font-face {
  font-family: "Avenir Light Pro";
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/avenir-light-pro/avenir-light-pro-regular.woff.eot?#iefix") format("embedded-opentype"), url("../fonts/avenir-light-pro/avenir-light-pro-regular.woff.woff2") format("woff2"), url("../fonts/avenir-light-pro/avenir-light-pro-regular.woff.woff") format("woff"), url("../fonts/avenir-light-pro/avenir-light-pro-regular.woff.ttf") format("truetype"), url("../fonts/avenir-light-pro/avenir-light-pro-regular.woff.svg#Avenir Light Pro") format("svg");
}
@font-face {
  font-family: "Avenir Light Pro";
  font-style: normal;
  font-weight: bold;
  src: url("../fonts/avenir-light-pro/avenir-light-pro-black.woff.eot?#iefix") format("embedded-opentype"), url("../fonts/avenir-light-pro/avenir-light-pro-black.woff.woff2") format("woff2"), url("../fonts/avenir-light-pro/avenir-light-pro-black.woff.woff") format("woff"), url("../fonts/avenir-light-pro/avenir-light-pro-black.woff.ttf") format("truetype"), url("../fonts/avenir-light-pro/avenir-light-pro-black.woff.svg#Avenir Light Pro") format("svg");
}
/*---------------------- Icons */
@font-face {
  font-family: "Icons";
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/icons/icons.woff.eot?#iefix") format("embedded-opentype"), url("../fonts/icons/icons.woff.woff2") format("woff2"), url("../fonts/icons/icons.woff.woff") format("woff"), url("../fonts/icons/icons.woff.ttf") format("truetype"), url("../fonts/icons/icons.woff.svg#Icons") format("svg");
}
@font-face {
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/icons/icons.woff.eot?#iefix") format("embedded-opentype"), url("../fonts/icons/icons.woff.woff2") format("woff2"), url("../fonts/icons/icons.woff.woff") format("woff"), url("../fonts/icons/icons.woff.ttf") format("truetype"), url("../fonts/icons/icons.woff.svg#icons") format("svg");
}
.icon-arrow-right-2:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-arrow-right:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-business:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-certificate:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-close:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-email-2:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-email:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-facebook:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-family:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-fax:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-googleplus:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-info:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-instagram:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-linkedin:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-litigation:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-menu:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-phone-2:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-phone:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-pin:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-post:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-property:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-reorder:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-scale:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-tick-round:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-tick:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-twitter:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-will-and-estate:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

.icon-youtube:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}

/*-------------------------------------------- Global */
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  /* Prevent iOS text size adjust after orientation change, without disabling user zoom. */
  -webkit-font-smoothing: antialiased;
}

body {
  margin: 0;
  font-size: 16px;
  font-family: "Avenir Light Pro", "Verdana", sans-serif;
  -webkit-font-smoothing: antialiased;
  color: #444444;
}

/*---------------------- Media */
figure {
  margin: 0;
}

img,
iframe {
  max-width: 100%;
}

img {
  height: auto;
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
  /* Correct overflow displayed oddly in IE 9. */
}

/*---------------------- Lists */
.dot-list {
  list-style: none;
  padding: 0;
}
.dot-list li {
  padding-left: 1em;
  text-indent: -0.75em;
}
.dot-list li:before {
  content: "•";
  color: #1d3d6e;
  margin-right: 0.3em;
}

/*---------------------- Links */
a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
a[href^=tel] {
  cursor: default;
}
a:focus {
  outline: thin dotted;
  /* Address "outline" inconsistency between Chrome and other browsers. */
}
a:active, a:hover {
  outline: 0;
  /* Improve readability when focused and also mouse hovered in all browsers. */
}

/*---------------------- Misc. typography */
h1,
h2,
h3,
p {
  margin: 0;
  font-size: inherit;
}

strong {
  font-weight: bold;
  /* Address style set to "bolder" in Firefox 4+, Safari 5, and Chrome. */
}

/*-------------------------------------------- Form inputs

1. Correct font family not being inherited in all browsers.
2. Correct font size not being inherited in all browsers.
3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.

*/
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */
}

button,
input {
  line-height: normal;
  /* Address Firefox 4+ setting "line-height" on "input" using "!important" in the UA stylesheet */
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  /* Remove inner padding and border in Firefox 4+. */
  padding: 0;
}

.radio-set ul {
  list-style: none;
  padding: 0;
}
.radio-set ul li {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

/*---------------------- Text inputs */
input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"], input:not([type]), textarea,
textarea {
  -webkit-appearance: none;
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin: 5px 0;
  padding: 12px 20px 10px 20px;
  border: 1px solid #cdcdcd;
  border-radius: 3px;
  background-color: #f4f4f4;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}
input[type="color"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="week"]:focus, input:not([type]):focus, textarea:focus,
textarea:focus {
  outline: none;
  border-color: #55aae0;
  background-color: white;
  box-shadow: 0 0 3px #55aae0;
}
input[type="color"]:focus:invalid, input[type="date"]:focus:invalid, input[type="datetime"]:focus:invalid, input[type="datetime-local"]:focus:invalid, input[type="email"]:focus:invalid, input[type="month"]:focus:invalid, input[type="number"]:focus:invalid, input[type="password"]:focus:invalid, input[type="search"]:focus:invalid, input[type="tel"]:focus:invalid, input[type="text"]:focus:invalid, input[type="time"]:focus:invalid, input[type="url"]:focus:invalid, input[type="week"]:focus:invalid, input:not([type]):focus:invalid, textarea:focus:invalid,
textarea:focus:invalid {
  border-color: #f1215c;
}
input[type="color"]::-webkit-input-placeholder, input[type="date"]::-webkit-input-placeholder, input[type="datetime"]::-webkit-input-placeholder, input[type="datetime-local"]::-webkit-input-placeholder, input[type="email"]::-webkit-input-placeholder, input[type="month"]::-webkit-input-placeholder, input[type="number"]::-webkit-input-placeholder, input[type="password"]::-webkit-input-placeholder, input[type="search"]::-webkit-input-placeholder, input[type="tel"]::-webkit-input-placeholder, input[type="text"]::-webkit-input-placeholder, input[type="time"]::-webkit-input-placeholder, input[type="url"]::-webkit-input-placeholder, input[type="week"]::-webkit-input-placeholder, input:not([type])::-webkit-input-placeholder, textarea::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  -webkit-font-smoothing: antialiased;
  /* Fix broken inheritance */
  color: #858585;
}
input[type="color"]::-moz-placeholder, input[type="date"]::-moz-placeholder, input[type="datetime"]::-moz-placeholder, input[type="datetime-local"]::-moz-placeholder, input[type="email"]::-moz-placeholder, input[type="month"]::-moz-placeholder, input[type="number"]::-moz-placeholder, input[type="password"]::-moz-placeholder, input[type="search"]::-moz-placeholder, input[type="tel"]::-moz-placeholder, input[type="text"]::-moz-placeholder, input[type="time"]::-moz-placeholder, input[type="url"]::-moz-placeholder, input[type="week"]::-moz-placeholder, input:not([type])::-moz-placeholder, textarea::-moz-placeholder,
textarea::-moz-placeholder {
  -webkit-font-smoothing: antialiased;
  /* Fix broken inheritance */
  color: #858585;
}
input[type="color"]:-moz-placeholder, input[type="date"]:-moz-placeholder, input[type="datetime"]:-moz-placeholder, input[type="datetime-local"]:-moz-placeholder, input[type="email"]:-moz-placeholder, input[type="month"]:-moz-placeholder, input[type="number"]:-moz-placeholder, input[type="password"]:-moz-placeholder, input[type="search"]:-moz-placeholder, input[type="tel"]:-moz-placeholder, input[type="text"]:-moz-placeholder, input[type="time"]:-moz-placeholder, input[type="url"]:-moz-placeholder, input[type="week"]:-moz-placeholder, input:not([type]):-moz-placeholder, textarea:-moz-placeholder,
textarea:-moz-placeholder {
  -webkit-font-smoothing: antialiased;
  /* Fix broken inheritance */
  color: #858585;
}
input[type="color"]:-ms-input-placeholder, input[type="date"]:-ms-input-placeholder, input[type="datetime"]:-ms-input-placeholder, input[type="datetime-local"]:-ms-input-placeholder, input[type="email"]:-ms-input-placeholder, input[type="month"]:-ms-input-placeholder, input[type="number"]:-ms-input-placeholder, input[type="password"]:-ms-input-placeholder, input[type="search"]:-ms-input-placeholder, input[type="tel"]:-ms-input-placeholder, input[type="text"]:-ms-input-placeholder, input[type="time"]:-ms-input-placeholder, input[type="url"]:-ms-input-placeholder, input[type="week"]:-ms-input-placeholder, input:not([type]):-ms-input-placeholder, textarea:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  -webkit-font-smoothing: antialiased;
  /* Fix broken inheritance */
  color: #858585;
}

textarea {
  height: 8em;
  vertical-align: top;
  /* Improve readability and alignment in all browsers */
  overflow: auto;
  /* Remove default vertical scrollbar in IE 8/9 */
  resize: vertical;
}

/*---------------------- Placeholder polyfill */
.placeholder {
  text-align: left;
  color: #858585;
}

/*-------------------------------------------- Buttons */
button,
input[type=submit],
.button {
  display: inline-block;
  padding: 15px 60px;
  border-radius: 3px;
  font-size: 18px;
  font-weight: bold;
  color: white;
  background: -webkit-linear-gradient(#093b96, #153667) #0f387f;
  background: linear-gradient(#093b96, #153667) #0f387f;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
button:hover,
input[type=submit]:hover,
.button:hover {
  opacity: 0.9;
}

button,
input[type=submit] {
  border: 0;
  -webkit-font-smoothing: antialiased;
  /* Fix inheritance not working */
}

/*---------------------- Outline buttons */
.outline {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid white;
}
.outline:hover {
  background-color: rgba(255, 255, 255, 0.25);
}

/*-------------------------------------------- Arrow links */
.arrow {
  font-size: 13px;
  color: #00a9df;
  -webkit-transition: color 0.3s;
  -moz-transition: color 0.3s;
  transition: color 0.3s;
}
.arrow:hover {
  color: #006f93;
}
.arrow:after {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  display: inline-block;
  vertical-align: middle;
  margin-left: 2px;
}

/*-------------------------------------------- Tick lists */
.ticks {
  margin: 40px 0;
  padding: 0;
  list-style-type: none;
}
.ticks li {
  position: relative;
  /* For positioing tick icon */
  display: block;
  margin: 25px 0;
  padding-left: 40px;
  line-height: 1.5;
}
.ticks li:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  position: absolute;
  left: 0;
  top: 5px;
  font-size: 20px;
  color: #63bc46;
}
.ticks li p {
  margin-bottom: 10px;
}

/*-------------------------------------------- Global horizontal wrapper */
.wrapper {
  margin: 0 25px;
}
.wrapper::after {
  clear: both;
  content: "";
  display: table;
}
@media screen and (min-width: 1222px) {
  .wrapper {
    max-width: 1172px;
    margin: 0 auto;
  }
}

/*-------------------------------------------- Browser unsuported warning */
#browser-warning {
  padding: 15px;
  text-align: center;
  color: white;
  background-color: #00a9df;
}
#browser-warning a {
  color: white;
  font-weight: bold;
  text-decoration: underline;
}

/*-------------------------------------------- Site header */
body > header {
  border-bottom: 1px solid #d6d6d6;
  text-align: center;
  font-family: 'Avenir Light Pro';
  position: relative;
  z-index: 20;
  background-color: white;
  position: relative;
  /*---------------------- Secondary navigation */
  /*---------------------- Company Logo, site navigation, call us */
  /*---------------------- Company logo */
  /*-------------------------------------------- Site navigation */
  /*---------------------- Call us */
  /*---------------------- Menu toggle */
}
@media screen and (min-width: 800px) {
  body > header {
    padding: 0;
  }
  body > header .container {
    display: table;
    width: 100%;
  }
  body > header > .wrapper {
    padding: 0;
    position: relative;
    /* For positioning sub-nav */
  }
}
body > header > .wrapper {
  margin: 0 auto;
  padding-top: 20px;
}
@media screen and (min-width: 800px) {
  body > header > .wrapper {
    padding: 0;
  }
}
body > header .secondary-navigation {
  display: none;
  background-color: #1d3d6e;
  text-align: centre;
  font-size: 12px;
  padding: 10px;
}
@media screen and (min-width: 800px) {
  body > header .secondary-navigation {
    display: block;
    text-align: right;
  }
}
body > header .secondary-navigation .link {
  display: inline-block;
  vertical-align: middle;
  padding: 0 10px;
  color: white;
}
body > header .secondary-navigation .link:not(:last-child) {
  border-right: solid 1px white;
}
@media screen and (min-width: 800px) {
  body > header .logo,
  body > header nav,
  body > header #call {
    display: table-cell;
    vertical-align: middle;
  }
}
body > header .logo {
  display: inline-block;
  vertical-align: middle;
  width: 150px;
  float: left;
  margin-left: 20px;
  margin-bottom: 20px;
}
@media screen and (min-width: 800px) {
  body > header .logo {
    width: 200px;
    padding: 10px;
    display: table-cell;
    float: none;
  }
}
body > header .site-nav {
  font-size: 16px;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background-color: #F5F6F5;
  display: none;
  z-index: 1;
  -webkit-animation: fadeIn 0.3s;
  -moz-animation: fadeIn 0.3s;
  animation: fadeIn 0.3s;
  /*---------------------- Top level */
}
body > header .site-nav.active {
  display: block;
}
@media screen and (min-width: 800px) {
  body > header .site-nav {
    background-color: transparent;
    position: relative;
    display: table-cell;
  }
}
body > header .site-nav > ul {
  position: relative;
  margin: 0 auto;
  padding: 0;
}
@media screen and (min-width: 800px) {
  body > header .site-nav > ul {
    display: table;
  }
}
body > header .site-nav > ul > li {
  list-style: none;
  border-top: solid 1px #e8e8e8;
  /*---------------------- Second level */
}
@media screen and (min-width: 800px) {
  body > header .site-nav > ul > li {
    border-top: none;
  }
}
@media screen and (min-width: 800px) {
  body > header .site-nav > ul > li.extra {
    display: none;
  }
}
body > header .site-nav > ul > li a {
  display: block;
  padding: 0.75rem 1rem;
}
@media screen and (min-width: 800px) {
  body > header .site-nav > ul > li a {
    padding: 0;
  }
}
@media screen and (min-width: 800px) {
  body > header .site-nav > ul > li {
    margin: 15px;
    display: table-cell;
    vertical-align: middle;
    border-left: 1px solid #e8e8e8;
    font-size: 14px;
  }
  body > header .site-nav > ul > li:first-child {
    border: 0;
  }
  body > header .site-nav > ul > li:hover > .menu-content {
    display: table;
    animation: fadeInDown 0.5s;
  }
  body > header .site-nav > ul > li > a {
    padding: 25px;
    color: #939598;
  }
  body > header .site-nav > ul > li > a:after {
    content: '';
    display: block;
    width: 20px;
    height: 3px;
    margin-top: 8px;
    background-color: #dedede;
    -webkit-transition: inherit;
    -moz-transition: inherit;
    transition: inherit;
  }
  body > header .site-nav > ul > li > a:hover:after {
    width: 100%;
    background-color: #0395f1;
  }
  body > header .site-nav > ul > li > a.active {
    color: #1d3d6e;
  }
}
body > header .site-nav > ul > li .menu-content {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 100%;
  background-color: white;
  padding: 30px 0;
  text-align: left;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
  border-top: solid 1px #e8e8e8;
}
body > header .site-nav > ul > li .menu-content > * {
  display: table-cell;
  padding: 0 30px;
}
body > header .site-nav > ul > li .menu-content .children {
  list-style: none;
  border-right: solid 1px #e8e8e8;
  margin-left: 0;
  width: 50%;
}
body > header .site-nav > ul > li .menu-content .children .child {
  padding: 5px 0 5px 20px;
  position: relative;
  text-align: left;
  font-size: 16px;
  font-weight: bold;
}
body > header .site-nav > ul > li .menu-content .children .child:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s, color 0.5s;
}
body > header .site-nav > ul > li .menu-content .children .child:hover, body > header .site-nav > ul > li .menu-content .children .child:focus {
  color: #1d3d6e;
}
body > header .site-nav > ul > li .menu-content .children .child:hover:before, body > header .site-nav > ul > li .menu-content .children .child:focus:before {
  transform: translate(5px, -50%);
}
body > header .site-nav > ul > li .menu-content .details {
  font-size: 16px;
}
body > header .site-nav > ul > li .menu-content .details .heading {
  color: #1d3d6e;
  font-size: 24px;
  margin-bottom: 10px;
  font-weight: normal;
}
body > header .site-nav > ul > li .menu-content .details .heading:before {
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
body > header .site-nav > ul > li .menu-content .details .summary {
  margin-bottom: 15px;
  line-height: 1.4;
}
body > header .site-nav > ul > li .menu-content .details .link {
  color: #00a9df;
}
body > header #call {
  font-size: 14px;
  line-height: 1.3;
  display: block;
  clear: both;
  padding: 10px;
  border-top: solid 1px #d6d6d6;
  background-color: white;
}
@media screen and (min-width: 800px) {
  body > header #call {
    text-align: right;
    border-bottom: none;
    border-top: none;
    display: table-cell;
  }
}
body > header #call aside {
  position: relative;
  /* For positioing phone icon */
  display: inline-block;
  vertical-align: middle;
}
@media screen and (min-width: 800px) {
  body > header #call aside {
    padding-left: 35px;
  }
}
body > header #call aside:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  font-size: 34px;
  color: #d7d7d7;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.5rem;
}
@media screen and (min-width: 800px) {
  body > header #call aside:before {
    position: absolute;
    left: 0;
    top: 0;
  }
}
@media screen and (min-width: 800px) {
  body > header #call aside strong {
    display: block;
  }
}
body > header .menu-toggle {
  display: inline-block;
  vertical-align: middle;
  padding: 0.5rem 0;
  background: transparent;
  color: #8c8b8b;
  float: right;
  margin-right: 20px;
  margin-bottom: 20px;
  text-transform: uppercase;
  position: relative;
  padding-right: 1.5rem;
}
body > header .menu-toggle:hover, body > header .menu-toggle:focus {
  color: #1d3d6e;
}
body > header .menu-toggle:focus {
  outline: none;
}
@media screen and (min-width: 800px) {
  body > header .menu-toggle {
    display: none;
  }
}
body > header .menu-toggle:after {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  position: absolute;
  right: 0;
  top: 9px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5rem;
}

/*-------------------------------------------- Promotion banner */
.promotion-banner {
  text-align: center;
  font-size: 18px;
  background-color: #f4f4f4;
  padding: 1em;
}
.promotion-banner img {
  margin-bottom: 1em;
}
@media screen and (min-width: 800px) {
  .promotion-banner img {
    display: inline-block;
    vertical-align: middle;
    margin-right: 1em;
    margin-bottom: 0;
  }
}
.promotion-banner p {
  display: inline-block;
  vertical-align: middle;
}
.promotion-banner span {
  color: #8c8b8b;
}
.promotion-banner > a {
  margin: 0 1em;
  font-size: 14px;
  display: block;
  margin-top: 1em;
}
@media screen and (min-width: 800px) {
  .promotion-banner > a {
    display: inline-block;
    vertical-align: middle;
    margin-top: 0;
  }
}
@media screen and (min-width: 800px) {
  .promotion-banner > a + a {
    margin-left: 0;
  }
}
.promotion-banner > a.button {
  color: white;
  background-image: none;
  padding: 0.5em 1.5em;
}
.promotion-banner > a.more-info:after {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  display: inline-block;
  vertical-align: middle;
  margin-left: 2px;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
@media screen and (min-width: 800px) {
  .promotion-banner.stuck {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 10;
  }
}

.promotion-details {
  text-align: center;
  background-color: #8c8b8b;
  color: white;
  position: absolute;
  left: 0;
  right: 0;
  margin-top: 1em;
  overflow: hidden;
  opacity: 0;
  height: 0;
  -webkit-transform: translateY(100px);
  -moz-transform: translateY(100px);
  -ms-transform: translateY(100px);
  -o-transform: translateY(100px);
  transform: translateY(100px);
  -webkit-transition: opacity 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -moz-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -ms-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -o-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -moz-transition: opacity 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -moz-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -ms-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -o-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -moz-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: opacity 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -moz-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -ms-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), -o-transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55), transform 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.promotion-details .close {
  position: absolute;
  right: 20px;
  font-size: 12px;
  z-index: 10;
  font-weight: normal;
}
.promotion-details .close:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  display: inline-block;
  vertical-align: top;
  color: white;
  margin-right: 0.5em;
}
.promotion-details * {
  opacity: 0;
  -webkit-transition: all 1s 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -moz-transition: all 1s 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: all 1s 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.promotion-details .heading {
  font-family: "Georgia", serif;
  font-size: 30px;
  font-weight: normal;
  font-style: italic;
  color: #8c8b8b;
  font-family: "Georgia", serif;
  margin-bottom: 1em;
  -webkit-transform: translateX(100px);
  -moz-transform: translateX(100px);
  -ms-transform: translateX(100px);
  -o-transform: translateX(100px);
  transform: translateX(100px);
}
.promotion-details .heading:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  display: block;
  color: white;
  margin-bottom: 1em;
  opacity: 0;
  -webkit-transition: all 1s 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -moz-transition: all 1s 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: all 1s 1s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.promotion-details p {
  line-height: 1.5;
  font-size: 18px;
  font-weight: light;
  -webkit-transform: translate(-100px);
  -moz-transform: translate(-100px);
  -ms-transform: translate(-100px);
  -o-transform: translate(-100px);
  transform: translate(-100px);
}
.promotion-details a {
  text-decoration: underline;
  font-weight: bold;
}

.promotion-active .promotion-banner a.more-info:after {
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.promotion-active .promotion-details {
  z-index: 10;
  opacity: 1;
  padding: 2em;
  height: auto;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}
.promotion-active .promotion-details * {
  opacity: 1;
  -webkit-transform: translate(0);
  -moz-transform: translate(0);
  -ms-transform: translate(0);
  -o-transform: translate(0);
  transform: translate(0);
  -webkit-transition: all 1s 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -moz-transition: all 1s 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: all 1s 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.promotion-active .promotion-details .heading:before {
  opacity: 1;
  -webkit-transition: all 1s 1.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -moz-transition: all 1s 1.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: all 1s 1.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

/*-------------------------------------------- Main Wrapper */
.main-wrapper {
  position: relative;
}
.main-wrapper:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 100%;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 10;
  opacity: 0;
  transition: bottom 0s 0.5s, opacity 0.5s;
}

@media screen and (min-width: 800px) {
  .menu-active .main-wrapper:before {
    bottom: 0;
    opacity: 1;
    transition: bottom 0s, opacity 0.5s;
  }
}

/*-------------------------------------------- Site footer */
#footer {
  padding-top: 50px;
  border-top: 1px solid #d6d6d6;
}
#footer h2 {
  margin-bottom: 20px;
  font-size: 14px;
  color: #0f387f;
}
@media screen and (min-width: 600px) {
  #footer .top {
    display: table;
    width: 100%;
  }
}
#footer .news {
  display: none;
  border: 1px solid #ededed;
}
@media screen and (min-width: 840px) {
  #footer .news {
    display: table-cell;
    vertical-align: top;
    width: 270px;
  }
}
#footer .news h2 {
  margin: 0;
  border-bottom: 1px solid #ededed;
  padding: 12px 16px;
  text-align: center;
}
#footer .links::after {
  clear: both;
  content: "";
  display: table;
}
@media screen and (min-width: 600px) {
  #footer .links {
    display: table-cell;
    vertical-align: top;
    padding-left: 8%;
  }
}
#footer .links .link-set {
  display: inline-block;
  vertical-align: top;
  width: 40%;
  min-width: 200px;
}
#footer .links ul {
  float: left;
  margin: 0;
  padding: 0 50px 25px 0;
}
#footer .links li {
  display: block;
  margin-bottom: 10px;
}
#footer .links li:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  margin-right: 5px;
  color: #787878;
}
#footer .links a:hover {
  color: #0395f1;
}
@media screen and (min-width: 600px) {
  #footer .contact {
    display: table-cell;
    vertical-align: top;
    width: 270px;
  }
}
#footer .contact p {
  margin-bottom: 15px;
}

body > footer {
  padding-bottom: 50px;
}
body > footer .wrapper {
  margin-top: -1px;
  padding: 30px 0;
  border-top: 1px solid #ededed;
  text-align: center;
}
@media screen and (min-width: 600px) {
  body > footer .wrapper {
    text-align: left;
  }
  body > footer .wrapper .digital360-logo {
    float: right;
  }
  body > footer .wrapper .digital360-logo img {
    max-width: none;
    height: 21px;
    /* Fix IE bugs relating to global `height: auto` with `max-width: none` */
  }
}
body > footer .wrapper img {
  vertical-align: middle;
}
body > footer .wrapper p {
  margin: 30px 0;
}
@media screen and (min-width: 600px) {
  body > footer .wrapper p {
    margin: 0 30px;
    display: inline;
  }
}
body > footer .wrapper p.disclaimer {
  display: block;
  font-size: 12px;
  margin: 5px 0px 5px 0px;
}

/*---------------------- News feed */
#news-feed {
  height: 300px;
  overflow: auto;
  margin: 0;
  padding: 0;
}
#news-feed li {
  display: block;
  padding: 20px;
  border-top: 1px solid #ededed;
  line-height: 1.5;
  color: #878787;
  background-color: #f7f8f9;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
#news-feed li:first-child {
  border-top: 0;
}
#news-feed li:hover {
  background-color: white;
  color: inherit;
}
#news-feed li h3 {
  text-transform: capitalize;
}
#news-feed li span,
#news-feed li p {
  font-size: 12px;
}
#news-feed li span {
  display: block;
  margin: 5px 0;
  color: #878787;
}
#news-feed li p:first-of-type:after {
  content: '...';
}
#news-feed li a {
  display: inline-block;
  margin-top: 5px;
  font-weight: bold;
  text-transform: capitalize;
  color: #0395f1;
}
#news-feed li a:hover {
  color: #0b7fc8;
}

/*---------------------- Social media links */
#social {
  margin: 30px 0;
  padding: 0;
}
#social li {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: -1px;
  margin-right: -1px;
}
#social a {
  position: relative;
  z-index: 1;
  display: block;
  width: 110px;
  padding: 9px 9px 9px 13px;
  margin: 0 auto;
  border: 1px solid #cacaca;
  text-align: left;
  background-color: white;
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;
}
#social a:hover {
  z-index: 2;
  color: white;
}
#social a:hover:before,
#social a:hover strong {
  color: white !important;
}
#social a:before {
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  font-size: 18px;
}
#social a.facebook:hover {
  border-color: #3a5898;
  background-color: #3a5898;
}
#social a.facebook:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#social a.facebook:before,
#social a.facebook strong {
  color: #3a5898;
}
#social a.googleplus:hover {
  border-color: #dd4b39;
  background-color: #dd4b39;
}
#social a.googleplus:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#social a.googleplus:before,
#social a.googleplus strong {
  color: #dd4b39;
}
#social a.twitter:hover {
  border-color: #3a9ade;
  background-color: #3a9ade;
}
#social a.twitter:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#social a.twitter:before,
#social a.twitter strong {
  color: #3a9ade;
}
#social a.youtube:hover {
  border-color: #cc2833;
  background-color: #cc2833;
}
#social a.youtube:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#social a.youtube:before,
#social a.youtube strong {
  color: #cc2833;
}
#social a.linkedin:hover {
  border-color: #1e98bd;
  background-color: #1e98bd;
}
#social a.linkedin:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#social a.linkedin:before,
#social a.linkedin strong {
  color: #1e98bd;
}
#social a.instagram:hover {
  border-color: #C13584;
  background-color: #C13584;
}
#social a.instagram:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#social a.instagram:before,
#social a.instagram strong {
  color: #C13584;
}
#social a span {
  font-family: 'Georgia';
  font-style: italic;
}

/*-------------------------------------------- Contact forms and related resource */
.contact-form,
.related-resource {
  border: 1px solid #e7e7e7;
  border-radius: 3px;
  text-align: center;
  box-shadow: 0 1px 1px 1px rgba(0, 0, 0, 0.05);
}
.contact-form .heading,
.related-resource .heading {
  margin-bottom: 8px;
  font-size: 22px;
  color: #1d3d6e;
}

/*-------------------------------------------- Contact forms */
form button:disabled, form input[type=submit]:disabled {
  background: linear-gradient(45deg, #8c8b8b, #6b6b6b);
  cursor: default;
}
form button:disabled:hover, form input[type=submit]:disabled:hover {
  background: linear-gradient(45deg, #8c8b8b, #6b6b6b);
}

.contact-form {
  padding: 30px;
}
@media screen and (min-width: 950px) {
  .contact-form {
    padding: 50px;
  }
}
.contact-form p {
  font-size: 16px;
}
.contact-form form {
  margin-top: 30px;
}
.contact-form input,
.contact-form textarea {
  margin: 0;
  margin-bottom: -1px;
  position: relative;
  z-index: 1;
  border-radius: 0;
}
.contact-form input:focus,
.contact-form textarea:focus {
  z-index: 2;
}
.contact-form .message,
.contact-form .inputs > label,
.contact-form .inputs > .radio-set {
  display: block;
  text-align: left;
  margin-bottom: 15px;
}
.contact-form input:first-of-type {
  border-radius: 3px 3px 0 0;
}
.contact-form textarea {
  min-height: 100px;
  border-radius: 0 0 3px 3px;
}
.contact-form button {
  margin-top: 30px;
}

.related-resource > .heading {
  padding: 20px 30px;
  font-size: 26px;
  border-bottom: solid 1px #e8e8e8;
}
.related-resource .resource {
  padding: 20px 30px;
  font-size: 16px;
  text-align: left;
  overflow: hidden;
}
@media screen and (min-width: 950px) {
  .related-resource .resource {
    padding: 20px 50px;
  }
}
.related-resource .resource .thumbnail-wrapper {
  position: relative;
  display: block;
  height: 12rem;
  margin-bottom: 1rem;
  border: solid 3px white;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
  background-color: #dddddd;
  overflow: hidden;
}
.related-resource .resource .thumbnail-wrapper .thumbnail {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  transition: all 0.3s;
}
.related-resource .resource .thumbnail-wrapper:hover .thumbnail, .related-resource .resource .thumbnail-wrapper:focus .thumbnail {
  transform: scale3d(1.05, 1.05, 1.05) rotate3d(1, 1, 1, 1deg);
}
.related-resource .resource .thumbnail-wrapper:hover .thumbnail:before, .related-resource .resource .thumbnail-wrapper:focus .thumbnail:before {
  right: -5rem;
}
.related-resource .resource .date {
  display: inline-block;
  padding-bottom: 0.25rem;
  margin-bottom: 1rem;
  border-bottom: solid 1px #e8e8e8;
}
.related-resource .resource > .heading {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}
.related-resource .resource .detail {
  margin-bottom: 1rem;
}
.related-resource .resource .read-more {
  display: block;
  float: left;
  margin-bottom: 1rem;
  color: #00a9df;
}
.related-resource .resource .read-more:after {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5rem;
  transition: margin 0.5s;
}
.related-resource .resource .read-more:hover:after {
  margin-left: 1rem;
}

/*-------------------------------------------- Children block list */
.children-block-list {
  display: block;
  background-color: #989697;
  padding: 60px 30px;
  text-align: center;
}
.children-block-list .wrapper > .heading {
  font-size: 25px;
  color: #1d3d6e;
  margin-bottom: 30px;
  font-weight: normal;
}
.children-block-list .pages {
  list-style: none;
  padding: 0;
}
.children-block-list .pages .page {
  background-color: white;
  padding: 20px;
  margin: 10px;
}
@media screen and (min-width: 650px) {
  .children-block-list .pages .page {
    display: inline-block;
    vertical-align: top;
    width: 35%;
  }
}
@media screen and (min-width: 1100px) {
  .children-block-list .pages .page {
    display: inline-block;
    vertical-align: top;
    width: 18%;
  }
}
.children-block-list .pages .page .title {
  font-family: "Georgia", serif;
  font-style: italic;
  font-weight: normal;
  font-size: 16px;
  margin-top: 0;
}
.children-block-list .pages .page .button {
  padding: 15px 30px;
}

/*-------------------------------------------- Hero sections */
#hero {
  padding: 100px 25px;
  text-align: center;
  font-size: 30px;
  color: white;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #1d3d6e;
}
@media screen and (min-width: 800px) {
  #hero {
    font-size: 45px;
    padding: 80px;
    text-align: left;
  }
}
@media screen and (min-width: 1000px) {
  #hero {
    font-size: 60px;
  }
}
#hero h1 {
  font-weight: normal;
  font-family: "Georgia", serif;
  font-style: italic;
}

/*-------------------------------------------- Global heading styles */
/*---------------------- Strong weight */
.strong {
  line-height: 1.4;
  color: #1d3d6e;
  text-align: center;
  font-size: 34px;
}
.strong em {
  font-family: "Georgia", serif;
  font-weight: normal;
  font-style: italic;
  color: #8c8b8b;
}

/*---------------------- Light weight */
.light {
  margin-bottom: 30px;
  font-weight: normal;
  font-size: 30px;
}
.light strong {
  display: block;
}

/*-------------------------------------------- Main content sections */
.main-content {
  padding-top: 50px;
  line-height: 1.5;
}
.main-content .container > .heading {
  color: #1d3d6e;
  font-size: 2rem;
  margin-top: 2rem;
  font-weight: normal;
}
.main-content .main,
.main-content .intro {
  margin-top: 40px;
}
@media screen and (min-width: 800px) {
  .main-content .main,
  .main-content .intro {
    float: left;
    width: 45%;
  }
}
.main-content .staff-heading {
  font-size: 1.4rem;
  font-weight: normal;
}
.main-content .staff {
  margin: 20px 0;
  list-style: none;
  padding: 0;
  text-align: center;
  flex-wrap: wrap;
}
@media screen and (min-width: 600px) {
  .main-content .staff {
    display: flex;
    align-items: stretch;
  }
}
@media screen and (min-width: 800px) {
  .main-content .staff {
    display: block;
  }
}
@media screen and (min-width: 1000px) {
  .main-content .staff {
    display: flex;
  }
}
.main-content .staff .member {
  margin: 70px 10px 10px 10px;
  position: relative;
  padding: 40px 10px 20px 10px;
  background-color: #efefef;
}
@media screen and (min-width: 600px) {
  .main-content .staff .member {
    display: inline-block;
    vertical-align: top;
    width: 130px;
  }
}
@media screen and (min-width: 800px) {
  .main-content .staff .member {
    width: 100%;
  }
}
@media screen and (min-width: 1000px) {
  .main-content .staff .member {
    width: 130px;
  }
}
.main-content .staff .member .details {
  min-height: 90px;
}
.main-content .staff .photo {
  position: absolute;
  width: 100px;
  height: 100px;
  overflow: hidden;
  top: 0;
  display: inline-block;
  border-radius: 100px;
  border: solid 4px white;
  transform: translate(-50%, -50%);
  background-color: #B4B5B7;
}
.main-content .staff .name {
  font-size: 16px;
}
.main-content .staff .button {
  padding: 10px 20px;
  font-size: 14px;
}
.main-content .meet-the-team-cta {
  background-color: #1d3d6e;
  color: white;
  text-align: center;
  padding: 1rem 2rem;
  margin-bottom: 2rem;
}
.main-content .meet-the-team-cta .button {
  font-size: 0.8rem;
  padding: 1rem 1.5rem;
  background: white;
  color: #1d3d6e;
  display: inline-block;
  vertical-align: middle;
  margin: 0.5rem;
}
@media screen and (min-width: 800px) {
  .main-content .intro {
    margin-right: 5%;
  }
}
.main-content .intro > .heading {
  font-size: 1.4rem;
  margin-bottom: 1rem;
}
.main-content p,
.main-content h3 {
  margin-bottom: 20px;
}
.main-content p a {
  color: #00a9df;
}
.main-content p a:hover {
  color: #1d3d6e;
}
@media screen and (min-width: 800px) {
  .main-content .related-resource,
  .main-content .contact-form {
    box-sizing: border-box;
    max-width: 450px;
    margin-left: auto;
    background-color: white;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
  }
  .main-content .contact-form {
    margin-top: -150px;
  }
}

/*---------------------- Page navigations */
.page-nav ol {
  margin: 0;
  padding: 0;
}
.page-nav li {
  display: inline-block;
  margin-bottom: 10px;
  color: #7a7a7a;
}
.page-nav a {
  display: inline-block;
  padding-bottom: 4px;
  border-bottom: 1px solid #ededed;
  font-size: 15px;
  color: #b8b8b8;
}
.page-nav a:hover {
  border-color: #00a9df;
  color: #00a9df;
}
.page-nav .breadcrumbs li:after {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  margin: 0 5px;
  color: #b8b8b8;
}
.page-nav .breadcrumbs li:last-child:after {
  display: none;
}
.page-nav .sections li {
  margin-right: 10px;
}

/*---------------------- Related pages nav */
.related-pages-nav {
  margin-top: 40px;
}
.related-pages-nav a {
  color: #00a9df;
}
.related-pages-nav a.active {
  color: #b8b8b8;
}
.related-pages-nav a:hover {
  color: #1d3d6e;
}

/*-------------------------------------------- Homepage overview section */
#overview {
  margin: 20px 0 40px 0;
}
#overview .strong {
  margin-bottom: 60px;
}
#overview .contact {
  margin: 40px 0;
}
#overview .intro p {
  line-height: 1.5;
  margin-bottom: 25px;
}
#overview .intro strong {
  font-size: 15px;
}
#overview .why-rose h2 {
  text-align: center;
  color: #1d3d6e;
  font-size: 22px;
}
@media screen and (min-width: 800px) {
  #overview .container {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  #overview .container .intro,
  #overview .container .contact,
  #overview .container .why-rose {
    display: table-cell;
    vertical-align: top;
  }
  #overview .container .intro {
    padding: 40px 40px 0 0;
    -webkit-animation: hide 0.6s, fadeInRight 0.6s 0.6s;
    -moz-animation: hide 0.6s, fadeInRight 0.6s 0.6s;
    animation: hide 0.6s, fadeInRight 0.6s 0.6s;
  }
  #overview .container .contact {
    width: 35%;
    margin: 0;
    -webkit-animation: fadeInUp 1s;
    -moz-animation: fadeInUp 1s;
    animation: fadeInUp 1s;
  }
  #overview .container .why-rose {
    padding: 40px 0 0 40px;
    -webkit-animation: hide 0.6s, fadeInLeft 0.6s 0.6s;
    -moz-animation: hide 0.6s, fadeInLeft 0.6s 0.6s;
    animation: hide 0.6s, fadeInLeft 0.6s 0.6s;
  }
  #overview .container .why-rose h2 {
    text-align: left;
  }
}

/*-------------------------------------------- "About" page "Team" section */
#team {
  background-color: #8c8b8b;
  padding: 5rem 2rem;
  margin-top: 3rem;
  border-top: 1px solid #d6d6d6;
  /*---------------------- Heading */
}
#team .heading {
  color: white;
  font-weight: normal;
  font-size: 2rem;
  margin-bottom: 2rem;
  text-align: center;
}
#team .strong {
  margin-bottom: 40px;
}

/*---------------------- Staff member list */
#team-list {
  margin: 0;
  padding: 0;
  color: #939598;
}
#team-list > li {
  background-color: white;
  display: block;
  border-radius: 0.25rem;
  margin-bottom: 2rem;
  padding: 30px;
}
@media screen and (min-width: 900px) {
  #team-list > li {
    padding: 0;
    display: table;
  }
}
@media screen and (min-width: 900px) {
  #team-list .avatar,
  #team-list .summary {
    display: table-cell;
    vertical-align: middle;
    width: 50%;
    padding: 30px;
  }
}
@media screen and (min-width: 900px) {
  #team-list .avatar {
    border-right: solid 1px #dddddd;
  }
}
#team-list figure {
  width: 200px;
  height: 200px;
  margin: 0 auto 30px auto;
  border-radius: 100%;
  background-color: #e7e9eb;
}
@media screen and (min-width: 900px) {
  #team-list figure {
    width: 150px;
    height: 150px;
    margin: 0 1rem 0 0;
  }
}
#team-list figure img {
  display: block;
  border-radius: inherit;
}
@media screen and (min-width: 900px) {
  #team-list figure,
  #team-list .details {
    display: inline-block;
    vertical-align: middle;
  }
}
#team-list .name,
#team-list .position {
  text-align: center;
  font-size: 18px;
}
@media screen and (min-width: 900px) {
  #team-list .name,
  #team-list .position {
    text-align: left;
  }
}
#team-list .name {
  font-size: 1.4rem;
  color: #1d3d6e;
}
#team-list p {
  margin-bottom: 15px;
  line-height: 1.5;
}
#team-list .summary,
#team-list .read-more {
  font-size: 1rem;
}
#team-list .position {
  font-family: "Georgia", serif;
  font-style: italic;
}
#team-list .description .content {
  display: none;
}

/*-------------------------------------------- "Why choose us" section */
#why-choose-us {
  padding: 40px 0;
  border-top: 1px solid #d6d6d6;
}
#why-choose-us .arrow {
  margin-top: 40px;
}
@media screen and (min-width: 900px) {
  #why-choose-us .intro {
    float: left;
    width: 20%;
    margin-top: 25px;
    margin-bottom: 25px;
    margin-right: 7%;
  }
}
#why-choose-us .intro p {
  margin-bottom: 20px;
  line-height: 1.5;
}
@media screen and (min-width: 900px) {
  #why-choose-us .reasons {
    float: left;
    width: 73%;
  }
}
@media screen and (min-width: 800px) {
  #why-choose-us .reasons .ticks {
    margin-right: -5%;
  }
  #why-choose-us .reasons .ticks li {
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    width: 44%;
    margin-right: 5%;
  }
}
@media screen and (min-width: 900px) {
  #why-choose-us .reasons .ticks {
    margin: 0;
  }
}

/*-------------------------------------------- Contact page map */
#map iframe {
  display: block;
  width: 100%;
  height: 450px;
  background-color: #dddddd;
}

/*-------------------------------------------- Services page */
#services-tree > ul {
  text-align: center;
  margin: 0;
  padding: 25px 0 0 0;
}
@media screen and (min-width: 600px) {
  #services-tree > ul {
    margin: -1.5%;
    padding: 3% 0;
  }
}
#services-tree > ul > li {
  display: block;
  margin-bottom: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-animation-name: hide, fadeIn;
  -moz-animation-name: hide, fadeIn;
  animation-name: hide, fadeIn;
}
@media screen and (min-width: 600px) {
  #services-tree > ul > li {
    display: inline-block;
    vertical-align: top;
    width: 47%;
    margin: 1.5%;
  }
}
@media screen and (min-width: 900px) {
  #services-tree > ul > li {
    width: 30.3333333333%;
  }
}
#services-tree > ul > li:nth-child(1) {
  -webkit-animation-delay: 0, 0.2s;
  -moz-animation-delay: 0, 0.2s;
  animation-delay: 0, 0.2s;
  -webkit-animation-duration: 0.2s, 1.5s;
  -moz-animation-duration: 0.2s, 1.5s;
  animation-duration: 0.2s, 1.5s;
}
#services-tree > ul > li:nth-child(2) {
  -webkit-animation-delay: 0, 0.4s;
  -moz-animation-delay: 0, 0.4s;
  animation-delay: 0, 0.4s;
  -webkit-animation-duration: 0.4s, 1.5s;
  -moz-animation-duration: 0.4s, 1.5s;
  animation-duration: 0.4s, 1.5s;
}
#services-tree > ul > li:nth-child(3) {
  -webkit-animation-delay: 0, 0.6s;
  -moz-animation-delay: 0, 0.6s;
  animation-delay: 0, 0.6s;
  -webkit-animation-duration: 0.6s, 1.5s;
  -moz-animation-duration: 0.6s, 1.5s;
  animation-duration: 0.6s, 1.5s;
}
#services-tree > ul > li:nth-child(4) {
  -webkit-animation-delay: 0, 0.8s;
  -moz-animation-delay: 0, 0.8s;
  animation-delay: 0, 0.8s;
  -webkit-animation-duration: 0.8s, 1.5s;
  -moz-animation-duration: 0.8s, 1.5s;
  animation-duration: 0.8s, 1.5s;
}
#services-tree > ul > li:nth-child(5) {
  -webkit-animation-delay: 0, 1s;
  -moz-animation-delay: 0, 1s;
  animation-delay: 0, 1s;
  -webkit-animation-duration: 1s, 1.5s;
  -moz-animation-duration: 1s, 1.5s;
  animation-duration: 1s, 1.5s;
}
#services-tree > ul > li:nth-child(6) {
  -webkit-animation-delay: 0, 1.2s;
  -moz-animation-delay: 0, 1.2s;
  animation-delay: 0, 1.2s;
  -webkit-animation-duration: 1.2s, 1.5s;
  -moz-animation-duration: 1.2s, 1.5s;
  animation-duration: 1.2s, 1.5s;
}
#services-tree > ul > li:nth-child(7) {
  -webkit-animation-delay: 0, 1.4s;
  -moz-animation-delay: 0, 1.4s;
  animation-delay: 0, 1.4s;
  -webkit-animation-duration: 1.4s, 1.5s;
  -moz-animation-duration: 1.4s, 1.5s;
  animation-duration: 1.4s, 1.5s;
}
#services-tree .container {
  padding: 50px 30px;
  text-align: left;
  color: white;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: background-color 0.3s;
  -moz-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
#services-tree .container:hover {
  background-color: rgba(15, 21, 28, 0.8);
}
@media screen and (min-width: 600px) {
  #services-tree .container {
    height: 450px;
  }
}
#services-tree h1 {
  margin-bottom: 30px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
}
#services-tree p {
  line-height: 1.4;
  font-size: 22px;
  font-weight: bold;
  text-transform: capitalize;
}
#services-tree nav {
  margin-top: 40px;
}
#services-tree nav ul {
  margin: 0;
  padding: 0;
}
#services-tree nav li {
  display: block;
  margin: 10px 0;
}
#services-tree nav a {
  font-size: 16px;
  opacity: 0.7;
}
#services-tree nav a:hover {
  opacity: 1;
}

/*-------------------------------------------- Page lists */
.page-list {
  padding: 15px;
  text-align: center;
}
.page-list li {
  display: inline-block;
  vertical-align: bottom;
  margin: 8px;
}
.page-list li img {
  display: block;
  width: 210px;
  height: 210px;
  max-width: none;
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3);
}
.page-list li .heading {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 110px;
  padding: 10%;
  text-align: center;
  font-size: 25px;
  font-weight: normal;
  font-family: "Georgia", serif;
  font-style: italic;
  text-transform: lowercase;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: top 0.3s;
  -moz-transition: top 0.3s;
  transition: top 0.3s;
}
.page-list li a {
  position: relative;
  /* For positioning label */
  display: block;
  background-color: #1d3d6e;
  color: white;
  -webkit-transform: perspective(400px);
  -moz-transform: perspective(400px);
  -ms-transform: perspective(400px);
  -o-transform: perspective(400px);
  transform: perspective(400px);
}
.page-list li a:hover .heading, .page-list li a.active .heading {
  top: 0;
}
.page-list li a.active .heading {
  border: 3px solid #2957c9;
}
.page-list li a:hover {
  -webkit-transform: perspective(400px) rotateX(20deg);
  -moz-transform: perspective(400px) rotateX(20deg);
  -ms-transform: perspective(400px) rotateX(20deg);
  -o-transform: perspective(400px) rotateX(20deg);
  transform: perspective(400px) rotateX(20deg);
}
.page-list li a:hover .heading:after {
  content: 'Learn more';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  font-size: 15px;
  font-weight: bold;
  font-family: "Avenir Light Pro", "Verdana", sans-serif;
  font-style: normal;
  -webkit-animation: fadeIn 0.3s;
  -moz-animation: fadeIn 0.3s;
  animation: fadeIn 0.3s;
}

/*-------------------------------------------- Services homepage hero section */
#services-hero {
  position: relative;
  padding: 50px;
  background-position: center center;
  background-size: cover;
}
@media screen and (min-width: 800px) {
  #services-hero {
    height: 180px;
  }
}
#services-hero .heading {
  display: block;
  color: white;
  text-align: center;
  width: 100%;
  font-size: 30px;
}
@media screen and (min-width: 800px) {
  #services-hero .heading {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 40px;
  }
}
#services-hero .heading em {
  font-weight: normal;
  font-family: "Georgia", serif;
}

.page-tagline,
.call-to-action-strip {
  display: block;
  background-color: #1d3d6e;
  padding: 50px 30px;
  color: white;
  font-size: 25px;
  text-align: center;
  font-weight: normal;
}
.page-tagline .content *:last-child,
.call-to-action-strip .content *:last-child {
  margin-bottom: 0;
}

.call-to-action-strip:before {
  display: block;
  margin-bottom: 20px;
  font-size: 45px;
}
@media screen and (min-width: 600px) {
  .call-to-action-strip:before {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 0;
    margin-right: 10px;
  }
}
.call-to-action-strip .text {
  font-weight: normal;
  display: inline-block;
  vertical-align: middle;
}

/*-------------------------------------------- Content hero */
.content-hero {
  padding: 40px 20px;
  background-position: center center;
  background-size: cover;
}
@media screen and (min-width: 800px) {
  .content-hero .content {
    padding: 100px 20px;
    width: 50%;
    max-width: 500px;
    margin-left: 100px;
    font-size: 16px;
    line-height: 1.4;
  }
}
.content-hero .content p {
  margin-bottom: 1em;
}
.content-hero .content p:first-child {
  font-size: 20px;
}

/*-------------------------------------------- Why rose */
.why-rose {
  text-align: center;
  padding: 80px 20px;
}
.why-rose > .heading {
  font-size: 25px;
  color: #1d3d6e;
  margin-bottom: 40px;
  font-weight: normal;
}
.why-rose .reasons {
  padding: 0;
  margin: 0;
  list-style: none;
}
.why-rose .reasons .reason {
  font-size: 16px;
  line-height: 1.5;
  margin: 0 1% 15px 1%;
}
@media screen and (min-width: 400px) {
  .why-rose .reasons .reason {
    display: inline-block;
    vertical-align: top;
    max-width: 265px;
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 650px) {
  .why-rose .reasons .reason {
    width: 25%;
  }
}
.why-rose .reasons .reason:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  color: #63bc46;
  font-size: 40px;
  display: block;
  margin-bottom: 15px;
}

/*-------------------------------------------- Contact Strip */
.contact-strip {
  background-color: #1d3d6e;
  background: linear-gradient(45deg, #123055, #264779);
  padding: 60px 10px;
}
@media screen and (min-width: 700px) {
  .contact-strip {
    padding: 60px 20px;
  }
}
@media screen and (min-width: 700px) {
  .contact-strip .wrapper .detail,
  .contact-strip .wrapper .form {
    display: inline-block;
    vertical-align: middle;
  }
}
.contact-strip .wrapper > .heading {
  color: white;
  text-align: center;
  font-size: 25px;
  font-weight: normal;
  margin-bottom: 30px;
}
.contact-strip .content {
  border-radius: 5px;
  background-color: white;
  padding: 20px;
  margin-bottom: 15px;
  font-size: 0;
  text-align: center;
}
@media screen and (min-width: 700px) {
  .contact-strip .content {
    text-align: left;
    padding: 40px;
  }
}
.contact-strip .content .detail {
  font-size: 18px;
}
@media screen and (min-width: 700px) {
  .contact-strip .content .detail {
    max-width: 300px;
    width: 33.3333333333%;
    margin-right: 11.1111111111%;
  }
}
.contact-strip .content .detail h2,
.contact-strip .content .detail h3,
.contact-strip .content .detail h4 {
  color: #1d3d6e;
  font-size: 22px;
  margin-bottom: 15px;
  margin-top: 0;
}
.contact-strip .content .detail .phone {
  display: block;
  color: #1d3d6e;
  font-size: 27px;
  margin-top: 15px;
}
@media screen and (min-width: 700px) {
  .contact-strip .content .detail .phone {
    font-size: 40px;
  }
}
.contact-strip .content .form {
  text-align: left;
  font-size: 16px;
}
@media screen and (min-width: 700px) {
  .contact-strip .content .form {
    width: 50%;
  }
}
@media screen and (min-width: 1000px) {
  .contact-strip .content .form {
    width: 55.5555555556%;
  }
}
.contact-strip .content .form .inputs,
.contact-strip .content .form .message {
  font-size: 0;
}
.contact-strip .content .form .inputs > *,
.contact-strip .content .form .message > * {
  font-size: 16px;
  display: block;
  margin-bottom: 10px;
}
@media screen and (min-width: 1000px) {
  .contact-strip .content .form .inputs > * {
    display: inline-block;
    vertical-align: top;
    width: calc(50% - 10px);
  }
}
@media screen and (min-width: 1000px) {
  .contact-strip .content .form .inputs > *:nth-child(even) {
    margin-right: 20px;
  }
}

/*-------------------------------------------- Language Strip */
.language-strip {
  background-color: #1d3d6e;
  background-color: linear-gradient(45deg, #123055, #264779);
  background-size: cover;
  background-position: center center;
  padding: 60px 10px;
  text-align: center;
}
@media screen and (min-width: 700px) {
  .language-strip {
    padding: 100px 20px;
  }
}
.language-strip .heading {
  font-size: 24px;
  line-height: 1.4;
  color: white;
}
.language-strip .button-wrapper {
  margin: 30px auto 0;
  max-width: 20rem;
}
@media screen and (min-width: 700px) {
  .language-strip .button-wrapper {
    max-width: none;
  }
}
.language-strip .button-wrapper .button {
  width: 100%;
  margin: 0.5rem 0.5rem 0;
  font-weight: normal;
  box-sizing: border-box;
}
@media screen and (min-width: 700px) {
  .language-strip .button-wrapper .button {
    width: auto;
  }
}

/*-------------------------------------------- Services list section */
#services {
  padding: 40px 0;
  border-top: 1px solid #d6d6d6;
}

/*-------------------------------------------- Homepage team slideshow */
#team-slideshow {
  color: white;
  background-color: #aaabad;
  background: -webkit-radial-gradient(#adaeb0, #828284);
  background: radial-gradient(#adaeb0, #828284);
}
#team-slideshow .header {
  padding: 35px 0 20px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
#team-slideshow .header h2 {
  margin-bottom: 20px;
  font-size: 35px;
}
@media screen and (min-width: 800px) {
  #team-slideshow .header h2 {
    font-size: 45px;
  }
}
#team-slideshow .header h2 em {
  font-weight: normal;
  font-family: "Georgia", serif;
  font-style: italic;
}
#team-slideshow .header nav li {
  display: inline-block;
  margin: 0 20px 20px 0;
  cursor: pointer;
}
#team-slideshow .header nav li .active {
  font-weight: bold;
}
#team-slideshow .header nav ul {
  margin: 0;
  padding: 0;
}
#team-slideshow .slides {
  margin: 0;
  padding: 0;
}
#team-slideshow .slides li {
  display: none;
}
#team-slideshow .slides li.active {
  display: block;
  padding: 35px 35px 0 35px;
  overflow: hidden;
  /* Contain animations */
}
@media screen and (min-width: 800px) {
  #team-slideshow .slides li.active::after {
    clear: both;
    content: "";
    display: table;
  }
}
#team-slideshow .slides h3 {
  font-size: 30px;
}
#team-slideshow .slides .position {
  margin-bottom: 30px;
  font-size: 20px;
  font-family: "Georgia", serif;
  font-style: italic;
}
#team-slideshow .slides .intro {
  margin-bottom: 35px;
  font-size: 16px;
  line-height: 1.5;
}
#team-slideshow .slides .button {
  padding: 12px 40px;
  font-size: 16px;
  color: #aaabad;
  background: white;
}
#team-slideshow .slides .container {
  -webkit-animation: hide 0.8s, fadeIn 1s 0.8s;
  -moz-animation: hide 0.8s, fadeIn 1s 0.8s;
  animation: hide 0.8s, fadeIn 1s 0.8s;
}
@media screen and (min-width: 800px) {
  #team-slideshow .slides .container {
    width: 46%;
    float: right;
    padding: 5% 0;
  }
  #team-slideshow .slides .container p {
    max-width: 350px;
  }
}
#team-slideshow .slides figure {
  margin-top: 40px;
}
@media screen and (min-width: 800px) {
  #team-slideshow .slides figure {
    width: 50%;
    float: left;
  }
  #team-slideshow .slides figure img {
    margin-right: 0;
  }
}
#team-slideshow .slides img {
  display: block;
  margin: 0 auto;
  -webkit-animation: fadeInUpBig 1s ease-out;
  -moz-animation: fadeInUpBig 1s ease-out;
  animation: fadeInUpBig 1s ease-out;
}

/*-------------------------------------------- Contact list */
#contact-options {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
@media screen and (min-width: 1172px) {
  #contact-options {
    margin-right: -5%;
  }
}
#contact-options li {
  position: relative;
  /* For positioing icons */
  display: block;
  margin: 25px 0;
  padding-left: 44px;
  line-height: 1.3;
}
@media screen and (min-width: 1172px) {
  #contact-options li {
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    width: 44%;
    margin-right: 5%;
  }
}
#contact-options li:before {
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  position: absolute;
  left: 0;
  top: 5px;
  font-size: 25px;
  color: #1d3d6e;
}
#contact-options .email:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#contact-options .fax:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#contact-options .phone:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#contact-options .post:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#contact-options .address:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
#contact-options h3 {
  margin-bottom: 0;
}

.email__wrapper {
  font-size: 0.9rem;
}

.email__label {
  margin-top: 1rem;
}

.email__address {
  margin: 0.25rem 0 0 0;
}
.email__address a {
  color: #0395f1;
}

/*-------------------------------------------- Default page content */
.default-content {
  padding: 80px 0;
  line-height: 1.5;
  background-color: #f0f0f0;
}
.default-content h1 {
  margin-bottom: 40px;
  font-size: 30px;
  color: #1d3d6e;
}
.default-content p,
.default-content ul {
  margin-bottom: 20px;
}

/*-------------------------------------------- Admin public pages */
#digital360-logo {
  margin-bottom: 40px;
}

#admin-access {
  padding: 25px;
  text-align: center;
  background-color: #f5f5f5;
  /*---------------------- Forms */
}
@media screen and (min-width: 768px) {
  #admin-access {
    padding: 60px;
  }
}
#admin-access form {
  box-sizing: border-box;
  margin: 25px auto 0 auto;
  border: 1px solid #e5e5e5;
  width: 330px;
  max-width: 100%;
  padding: 20px;
  text-align: left;
  border-radius: 6px;
  background-color: white;
}
#admin-access .message {
  margin-top: 0;
  margin-bottom: 20px;
  line-height: 1.4;
}
#admin-access .message.bad {
  color: red;
}
#admin-access fieldset {
  margin: 0;
  margin-bottom: 20px;
  padding: 0;
  border: none;
}
#admin-access .field {
  margin-bottom: 15px;
}
#admin-access .field.text label {
  display: block;
  margin-bottom: 6px;
}
#admin-access input[type=text],
#admin-access input[type=email],
#admin-access input[type=password],
#admin-access input[type=submit] {
  box-sizing: border-box;
}
#admin-access input[type=text],
#admin-access input[type=email],
#admin-access input[type=password] {
  width: 100%;
}
#admin-access input[type=submit] {
  max-width: 100%;
  white-space: normal;
}
#admin-access #Remember label {
  margin-left: 5px;
  font-weight: normal;
  text-transform: none;
}
#admin-access #ForgotPassword {
  margin: 25px 0 0 0;
}
#admin-access a {
  font-weight: bold;
}

/*-------------------------------------------- Resource pages */
.resource-list {
  list-style: none;
  padding: 0;
}
.resource-list li {
  border-bottom: solid 1px #bfbebe;
  padding-bottom: 20px;
  margin-bottom: 20px;
  margin: 0;
}
.resource-list li .author-info {
  font-size: 16px;
  margin-bottom: 10px;
}
.resource-list li .article-heading {
  font-size: 18px;
  margin-bottom: 10px;
  display: inline-block;
  color: #1d3d6e;
}
.resource-list li .summary {
  margin-bottom: 15px;
}
.resource-list li .article-read-more {
  color: #00a9df;
}

.resource h1 {
  margin-bottom: 40px;
  font-size: 30px;
  color: #1d3d6e;
}
.resource h2 {
  margin-bottom: 30px;
  font-size: 25px;
}
.resource h3 {
  margin-bottom: 25px;
  font-size: 20px;
  font-weight: bold;
}

/*-------------------------------------------- Profile page */
@media screen and (min-width: 850px) {
  .profile-page {
    font-size: 0;
  }
  .profile-page > * {
    font-size: 1rem;
  }
}
.profile-page .page-nav {
  margin-bottom: 1rem;
}
.profile-page .bio,
.profile-page .detailed-information {
  box-sizing: border-box;
}
@media screen and (min-width: 850px) {
  .profile-page .bio,
  .profile-page .detailed-information {
    display: inline-block;
    vertical-align: top;
    width: 50%;
  }
}
.profile-page .bio {
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .profile-page .bio {
    width: 40%;
  }
}
.profile-page .bio > .details {
  background-color: #efefef;
  padding: 3rem;
}
.profile-page .bio .name {
  font-size: 1.4rem;
  color: #1d3d6e;
  margin-bottom: 1rem;
}
.profile-page .bio .position {
  font-size: 1.2rem;
  font-family: "Georgia", serif;
  color: #8c8b8b;
  font-weight: normal;
  font-style: italic;
  margin-bottom: 1rem;
}
.profile-page .contact-details {
  text-align: left;
  background-color: white;
  padding: 2rem;
}
.profile-page .contact-details .heading {
  text-transform: uppercase;
  color: #1d3d6e;
  margin-bottom: 1rem;
  margin-top: 0;
}
.profile-page .contact-details .phone,
.profile-page .contact-details .email {
  font-size: 1.1rem;
  margin-bottom: 0.5rem;
}
.profile-page .contact-details .phone:before,
.profile-page .contact-details .email:before {
  width: 1.5rem;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  margin-right: 1rem;
  font-size: 1.5rem;
  color: #1d3d6e;
}
.profile-page .contact-details > .phone:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
.profile-page .contact-details > .phone a {
  color: inherit;
}
.profile-page .contact-details .email:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
.profile-page .photo {
  border-radius: 20rem;
  background-color: #B4B5B7;
  display: inline-block;
  overflow: hidden;
  max-width: 20rem;
  margin-bottom: 1rem;
  font-size: 0;
  background-image: -webkit-radial-gradient(50% 50%, circle farthest-side, #C7C9C7 25%, #B4B5B7 100%);
  background-image: radial-gradient( circle farthest-side at 50% 50%, #C7C9C7 25%, #B4B5B7 100%);
}
.profile-page .photo > * {
  font-size: 1rem;
}
.profile-page .quote {
  text-align: left;
  line-height: 1.5;
  margin: 3rem 0;
  padding: 2rem 0;
  font-size: 1.8rem;
  border-top: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  font-family: "Georgia", serif;
  color: #1d3d6e;
  font-weight: normal;
  font-style: italic;
}
@media screen and (min-width: 850px) {
  .profile-page .detailed-information {
    padding-left: 3rem;
  }
}
@media screen and (min-width: 1000px) {
  .profile-page .detailed-information {
    padding-left: 5rem;
    width: 60%;
  }
}
.profile-page .detailed-information > div {
  margin-bottom: 2rem;
}
.profile-page .detailed-information > div > .heading {
  margin-top: 0;
  font-size: 2rem;
  margin-bottom: 1.5rem;
  font-weight: 200;
}
.profile-page .qualification {
  position: relative;
  border: solid 1px #dddddd;
  padding: 1rem 1rem 1rem 4rem;
}
.profile-page .qualification:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #1d3d6e;
  left: 1rem;
  font-size: 2rem;
}
.profile-page .qualification .name {
  font-size: 1.1rem;
  margin: 0;
}
.profile-page .qualification .school {
  margin: 0;
}
.profile-page .expertise-category {
  margin-bottom: 1px;
}
.profile-page .expertise-category .button {
  background: #1d3d6e;
  display: block;
  border-radius: 0;
  width: 100%;
  text-align: left;
  padding: 1.5rem 3rem 1.5rem 4.5rem;
  position: relative;
}
.profile-page .expertise-category .button:after {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  position: absolute;
  top: 50%;
  right: 1.5rem;
  transform: translateY(-50%) rotate(90deg);
}
.profile-page .expertise-category .button:before, .profile-page .expertise-category .button:after {
  font-size: 2rem;
  display: block;
  transition: transform 0.3s;
}
.profile-page .expertise-category .button:before {
  position: absolute;
  top: 50%;
  left: 1.5rem;
  transform: translateY(-50%);
}
.profile-page .expertise-category .button.open:after {
  transform: translateY(-50%) rotate(-90deg);
}
.profile-page .expertise-category .button.business:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
.profile-page .expertise-category .button.litigation:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
.profile-page .expertise-category .button.family:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
.profile-page .expertise-category .button.property:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
.profile-page .expertise-category .button.will-and-estate:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
}
.profile-page .expertise-category .expertise {
  display: block;
  margin: 0;
  font-size: 1.1rem;
}
.profile-page .expertise-list {
  margin: 0;
  padding: 2rem;
  background-color: #efefef;
  display: none;
}
.profile-page .expertise-list .expertise {
  margin-bottom: 0.5rem;
}
.profile-page .expertise-list .expertise a {
  position: relative;
  color: #00a9df;
  padding-left: 1rem;
}
.profile-page .expertise-list .expertise a:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  position: absolute;
  left: 0;
  top: 0;
}

.cover-image {
  position: relative;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
}
.cover-image .image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
}

/*-------------------------------------------- Media centre */
.heading + .introduction {
  margin-top: 2rem;
}

.media-items {
  padding: 4rem 0 6rem;
  font-size: 0;
}
.media-items > * {
  font-size: 1rem;
}
@media screen and (min-width: 500px) {
  .media-items {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
.media-items .title {
  margin-bottom: 0.5rem;
}
.media-items .item {
  display: inline-block;
  vertical-align: top;
  margin: 0.75rem;
  box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 500px) {
  .media-items .item {
    width: calc(50% - 1.5rem);
  }
}
@media screen and (min-width: 700px) {
  .media-items .item {
    width: calc(33.3333333333% - 1.5rem);
  }
}
@media screen and (min-width: 900px) {
  .media-items .item {
    width: calc(25% - 1.5rem);
  }
}
.media-items .cover-image {
  height: 12rem;
}
.media-items .category {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  padding: 0.25rem 0.5rem;
  color: white;
  margin: 0;
  border-radius: 0.25rem;
  font-size: 0.8rem;
}
.media-items .details {
  padding: 1rem;
}
.media-items .content {
  font-size: 0.9rem;
}
.media-items a {
  color: #0395f1;
}
.media-items a:hover {
  color: #0b7fc8;
}
.media-items .date {
  font-size: 0.8rem;
  color: #888888;
  margin-bottom: 0;
}

.info-feature {
  padding: 2rem;
  padding-left: 5rem;
  background-color: #ebeef3;
  border-radius: 0.5rem;
  position: relative;
  margin-bottom: 2rem;
}
.info-feature .heading {
  font-size: 1.3rem;
}
.info-feature:before {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  position: absolute;
  left: 1.75rem;
  top: 2rem;
  color: #1d3d6e;
  font-size: 2rem;
}
.info-feature .content ul,
.info-feature .content ol {
  line-height: 1.4;
  padding-left: 1rem;
}
.info-feature .content ul li,
.info-feature .content ol li {
  margin-top: 0.5rem;
}
.info-feature .content > *:last-child {
  margin-bottom: 0;
}

.content-with-aside {
  background-color: #efefef;
  padding: 5rem 0;
}
.content-with-aside .heading {
  color: #1d3d6e;
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: normal;
}
.content-with-aside .wysiwyg {
  font-size: 1rem;
}
.content-with-aside .aside {
  background-color: white;
  padding: 2rem;
  border-radius: 0.25rem;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.25);
}
.content-with-aside .aside .heading {
  font-size: 1.5rem;
  margin-top: 0;
}
.content-with-aside .wrapper {
  font-size: 0;
}
.content-with-aside .wrapper:after {
  display: none;
}
.content-with-aside .wrapper > * {
  font-size: 1rem;
}
@media screen and (min-width: 900px) {
  .content-with-aside .wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
}
@media screen and (min-width: 900px) {
  .content-with-aside .wrapper > * {
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    width: calc(50% - 4rem);
  }
}

.introduction-block {
  padding-bottom: 4rem;
}

.process-steps {
  padding: 6rem 2rem;
  background-color: #8c8b8b;
  color: white;
  background-size: cover;
  background-position: center center;
}
.process-steps .detail {
  padding: 2rem;
}
.process-steps .detail .heading {
  font-size: 2rem;
  text-align: center;
  color: #1d3d6e;
  font-weight: normal;
}
.process-steps .steps {
  padding: 0;
  list-style: none;
  margin: 0 auto;
}
.process-steps .step {
  display: block;
  position: relative;
  color: #444444;
  background-color: white;
  box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.3);
  max-width: 45rem;
  margin: 0 auto;
  padding: 2rem;
  border-radius: 0.5rem;
  overflow: hidden;
}
.process-steps .step:not(:last-child) {
  margin-bottom: 5rem;
}
.process-steps .cta {
  border-top: solid 1px currentColor;
  padding: 2rem 0;
  text-align: center;
  font-size: 1.4rem;
}
.process-steps .cta *:last-child {
  margin-bottom: 0;
}
.process-steps .large {
  max-width: 60rem;
}
.process-steps .large .column {
  max-width: none;
}
.process-steps .detail {
  background-color: white;
  padding: 2rem 0;
  border-radius: 0.5rem 0.5rem 0 0;
}
@media screen and (min-width: 600px) {
  .process-steps .two-column {
    font-size: 0;
    display: flex;
    justify-content: space-between;
  }
  .process-steps .two-column > * {
    font-size: 1rem;
  }
}
.process-steps .column {
  display: inline-block;
  vertical-align: top;
  text-align: left;
  margin: 0.5rem;
}
@media screen and (min-width: 600px) {
  .process-steps .column {
    max-width: 18rem;
    width: calc(50% - 2rem);
  }
  .process-steps .column:first-child {
    margin-right: 2rem;
  }
  .process-steps .column:last-child {
    margin-left: 2rem;
  }
}

.question-strip {
  background-color: #efefef;
  padding: 4rem 0;
}
.question-strip .heading {
  color: #1d3d6e;
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: normal;
}
.question-strip .content {
  font-size: 1rem;
}
.question-strip .question {
  padding: 2rem;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.25);
  background-color: white;
  font-size: 1.25rem;
  margin-bottom: 2rem;
  border-radius: 0.5rem;
}
.question-strip .question .content * {
  font-size: 1.25rem;
}
.question-strip .question strong {
  color: #1d3d6e;
}
.question-strip .question p {
  margin: 0;
}

.image-with-content {
  color: white;
  background: -webkit-radial-gradient(#adaeb0, #828284);
  background: radial-gradient(#adaeb0, #828284);
}
.image-with-content .wrapper:after {
  display: none;
}
@media screen and (min-width: 800px) {
  .image-with-content .wrapper {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
}
@media screen and (min-width: 800px) {
  .image-with-content .wrapper > * {
    width: calc(50% - 2rem);
  }
}
.image-with-content .wrapper .image {
  display: block;
  align-self: flex-end;
}
.image-with-content .image {
  font-size: 0;
  position: relative;
}
.image-with-content .heading {
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: normal;
}
.image-with-content .detail {
  padding: 4rem 0 2rem;
}
@media screen and (min-width: 800px) {
  .image-with-content .detail {
    padding: 4rem 0;
  }
}

.form-feature {
  text-align: center;
  color: white;
  padding: 4rem 0;
  background-color: #374c7f;
  background-image: -webkit-linear-gradient(-315deg, #374c7f, #29385b);
  background-image: linear-gradient(45deg,#374c7f, #29385b);
}
.form-feature .heading {
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: normal;
}
.form-feature .detail {
  margin-bottom: 1.5rem;
}
.form-feature .form {
  display: inline-block;
  text-align: left;
  padding: 2rem;
  background-color: white;
  color: #444444;
  max-width: 600px;
}
.form-feature .form input,
.form-feature .form textarea {
  margin-bottom: 1rem;
}
@media screen and (min-width: 800px) {
  .form-feature .group {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
}
@media screen and (min-width: 800px) {
  .form-feature .group > * {
    width: calc(50% - 1rem);
  }
}

.leading-section {
  padding-top: 2rem;
  padding-bottom: 2rem;
  text-align: center;
}
.leading-section h2, .leading-section h3, .leading-section h4, .leading-section h5, .leading-section h6 {
  margin-bottom: 2.5rem;
  color: #1d3d6e;
}
.leading-section h2 {
  font-size: 1.6rem;
}
.leading-section h3 {
  font-size: 1.4rem;
}
.leading-section h4 {
  font-size: 1.2rem;
}
.leading-section h5 {
  font-size: 1.0rem;
}
.leading-section h6 {
  font-size: 0.8rem;
}
.leading-section p {
  color: #8c8b8b;
  line-height: 1.4;
  margin-bottom: 2rem;
}
.leading-section p strong {
  color: black;
}
.leading-section .inner-wrapper {
  max-width: 50rem;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  .leading-section {
    padding-top: 4rem;
    padding: 4rem;
  }
}

.customer-reviews-snippet {
  max-width: 450px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
.customer-reviews-snippet .customer-reviews-snippet__text {
  font-weight: bold;
}
.customer-reviews-snippet .customer-reviews-snippet__disclaimer {
  margin-top: 0.5rem;
  color: #8c8b8b;
}

.review-stars.review-stars--0-5 .review-stars__star:nth-child(1) {
  background-position: center center;
}
.review-stars.review-stars--0-5 .review-stars__star:nth-child(1) ~ .review-stars__star {
  background-position: bottom center;
}
.review-stars.review-stars--1 .review-stars__star:nth-child(2),
.review-stars.review-stars--1 .review-stars__star:nth-child(2) ~ .review-stars__star {
  background-position: bottom center;
}
.review-stars.review-stars--1-5 .review-stars__star:nth-child(2) {
  background-position: center center;
}
.review-stars.review-stars--1-5 .review-stars__star:nth-child(2) ~ .review-stars__star {
  background-position: bottom center;
}
.review-stars.review-stars--2 .review-stars__star:nth-child(3),
.review-stars.review-stars--2 .review-stars__star:nth-child(3) ~ .review-stars__star {
  background-position: bottom center;
}
.review-stars.review-stars--2-5 .review-stars__star:nth-child(3) {
  background-position: center center;
}
.review-stars.review-stars--2-5 .review-stars__star:nth-child(3) ~ .review-stars__star {
  background-position: bottom center;
}
.review-stars.review-stars--3 .review-stars__star:nth-child(4),
.review-stars.review-stars--3 .review-stars__star:nth-child(4) ~ .review-stars__star {
  background-position: bottom center;
}
.review-stars.review-stars--3-5 .review-stars__star:nth-child(4) {
  background-position: center center;
}
.review-stars.review-stars--3-5 .review-stars__star:nth-child(4) ~ .review-stars__star {
  background-position: bottom center;
}
.review-stars.review-stars--4 .review-stars__star:nth-child(5),
.review-stars.review-stars--4 .review-stars__star:nth-child(5) ~ .review-stars__star {
  background-position: bottom center;
}
.review-stars.review-stars--4-5 .review-stars__star:nth-child(5) {
  background-position: center center;
}
.review-stars .review-stars__star {
  display: inline-block;
  margin-bottom: 0.5rem;
  width: 25px;
  height: 24px;
  background: url(/site/images/star-rating-background.png) bottom center no-repeat;
  background-size: 25px;
}
.review-stars .review-stars__star:hover, .review-stars .review-stars__star.active {
  background: url(/site/images/star-rating-background.png) top center no-repeat;
  background-size: 25px;
}
.review-stars.submission {
  margin-top: 0.5rem;
}

@media screen and (min-width: 600px) {
  .customer-reviews {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: -1.5rem;
  }
}
.customer-reviews .customer-reviews__item {
  padding: 1rem;
  box-sizing: border-box;
  background-color: white;
  border-radius: 0.25rem;
  box-shadow: 0 0 0.25rem rgba(0, 0, 0, 0.2);
  margin-top: 1.5rem;
}
@media screen and (min-width: 600px) {
  .customer-reviews .customer-reviews__item {
    width: calc(50% - 0.75rem);
    padding: 1.5rem;
    margin: 0.3rem;
  }
}
@media screen and (min-width: 900px) {
  .customer-reviews .customer-reviews__item {
    width: calc(33.3332% - 1rem);
    margin: 0.5rem;
  }
}
.customer-reviews .customer-reviews__item a {
  color: #00a9df;
  cursor: pointer;
}
.customer-reviews .customer-reviews__item__heading {
  font-size: 0.9rem;
  margin: 0 0 0.25rem;
}
.customer-reviews .customer-reviews__item__subheading {
  font-size: 0.9rem;
  margin: 0.5rem 0 0.25rem;
  color: #8c8b8b;
  font-weight: normal;
}
.customer-reviews .customer-reviews__item__text {
  margin: 0.5rem 0 0.25rem;
  color: #8c8b8b;
}
.customer-reviews .customer-reviews__item__text.truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.customer-reviews .customer-reviews__item__text.truncate::before {
  content: "" attr(title) "";
  float: right;
  color: #00a9df;
}
.customer-reviews .customer-reviews__cta {
  display: inline-block;
  padding: 0.4rem 0.75rem 0.3rem;
  margin-top: 1rem;
  background-color: #fdfdfd;
  border: 1px solid #d6d6d6;
  color: #8c8b8b;
  font-size: 0.9rem;
}
.customer-reviews .customer-reviews__cta .icon:after {
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-family: 'icons';
  display: inline-block;
  vertical-align: middle;
  margin-left: 2px;
}
.customer-reviews .review-stars {
  margin: 1rem 0 0.5rem 0;
}

.customer-reviews-section .disclaimer {
  color: white;
  margin-top: 3rem;
}
.customer-reviews-section .disclaimer h2, .customer-reviews-section .disclaimer h3, .customer-reviews-section .disclaimer h4 {
  margin-bottom: 1rem;
}

.main-content .customer-reviews-snippet {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.main-content .customer-reviews-snippet .customer-reviews-snippet__disclaimer {
  display: none;
}
@media screen and (min-width: 800px) {
  .main-content .customer-reviews-snippet {
    margin-right: 0;
    margin-top: 1rem;
  }
}

/* Container used for styling the custom select, the buttom class below adds the
 * bg gradient, corners, etc. */
.custom-select {
  position: relative;
  display: block;
  margin: 5px 0;
  border: 1px solid #cdcdcd;
  border-radius: 3px;
  background-color: #f4f4f4;
}

/* This is the native select, we're making everything but the text invisible so
 * we can see the button styles in the wrapper */
.custom-select select {
  width: 100%;
  margin: 0;
  outline: none;
  padding: 11px 5px 9px;
  color: #888;
  /* Font size must be 16px to prevent iOS page zoom on focus */
  font-size: 16px;
}

.custom-select select:focus {
  border-color: #f1215c;
}

/* Custom arrow sits on top of the select - could be an image, SVG, icon font,
 * etc. or the arrow could just baked into the bg image on the select. */
.custom-select::after {
  content: "▾";
  position: absolute;
  top: calc(50% - 12px);
  right: 1em;
  z-index: 2;
  /* These hacks make the select behind the arrow clickable in some browsers */
  pointer-events: none;
  display: none;
}

/* Firefox <= 34 has a false positive on @supports( -moz-appearance: none )
 * @supports ( mask-type: alpha ) is Firefox 35+
 */
@supports (-webkit-appearance: none) or (appearance: none) or ((-moz-appearance: none) and (mask-type: alpha)) {
  /* Show custom arrow */
  .custom-select::after {
    display: block;
  }

  /* Remove select styling */
  .custom-select select {
    padding-right: 2em;
    /* Match-01 */
    /* inside @supports so that iOS <= 8 display the native arrow */
    background: none;
    /* Match-04 */
    /* inside @supports so that Android <= 4.3 display the native arrow */
    border: 1px solid transparent;
    /* Match-05 */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
}
@media screen and (min-width: 800px) {
  #page-contact-us .main-content .intro {
    width: 55%;
    margin-right: 0;
  }
}

#review-submission {
  background-color: #1d3d6e;
  padding: 5rem 2rem;
}
#review-submission a {
  color: #00a9df;
}
#review-submission .inputs {
  margin-bottom: 2rem;
}
#review-submission fieldset {
  margin: 0;
  padding: 0;
  margin-top: -20px;
}
#review-submission .wrapper {
  color: white;
  text-align: center;
  max-width: 550px;
}
#review-submission .wrapper .contact-form {
  margin-top: -7rem;
  color: black;
  background-color: white;
}
#review-submission .wrapper .contact-form h2, #review-submission .wrapper .contact-form h3, #review-submission .wrapper .contact-form h4 {
  font-size: 1.5rem;
  color: #1d3d6e;
  margin-bottom: 1rem;
}
#review-submission .wrapper .contact-form p {
  margin-bottom: 2rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
#review-submission .wrapper .contact-form .ratings {
  margin-bottom: 4rem;
}
#review-submission .wrapper .disclaimer {
  margin-top: 3rem;
}
#review-submission .wrapper .disclaimer h2, #review-submission .wrapper .disclaimer h3, #review-submission .wrapper .disclaimer h4 {
  margin-bottom: 1rem;
}
#review-submission .heading {
  color: white;
  font-weight: normal;
  font-size: 2rem;
  margin-bottom: 2rem;
  text-align: center;
}
#review-submission .strong {
  margin-bottom: 40px;
}

.stars {
  color: #ddd;
  font-size: 1.5rem;
}
.stars .filled {
  color: #e1651b;
}

.rating {
  border: none;
  float: left;
}

.rating > input {
  display: none;
}

.rating > label {
  color: #ddd;
  float: right;
  font-size: 2.5rem;
  text-shadow: -1px 0 #8c8b8b, 0 1px #8c8b8b, 1px 0 #8c8b8b, 0 -1px #8c8b8b;
}

.rating > input:checked ~ .interactive-star,
.rating:not(:checked) > .interactive-star:hover,
.rating:not(:checked) > .interactive-star:hover ~ .interactive-star {
  color: #e1651b;
  text-shadow: none;
}

.rating > input:checked + .interactive-star:hover,
.rating > input:checked ~ .interactive-star:hover,
.rating > .interactive-star:hover ~ input:checked ~ .interactive-star,
.rating > input:checked ~ .interactive-star:hover ~ .interactive-star {
  color: #e18a1b;
}

/*# sourceMappingURL=modern-browsers.css.map */
