@charset "UTF-8";
/* includes */
/* typography */
/* colours */
/* animation */
/* layout */
/* breakpoints */
/* primary element styling */
html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
  min-width: 300px;
  display: block;
}

body, button, input, .xmp-form textarea, select, textarea {
  font-family: "Segoe UI", Arial, Helvetica, sans-serif;
}

p, ul, li {
  font-size: calc(14px + 0.208333333333333vw);
  line-height: calc(22px + 1.04166666666667vw);
}

a {
  text-decoration: underline;
  color: #0040c4;
  color: #d9291c;
}

a:hover {
  text-decoration: none;
  color: #1018c8;
  color: #7e1810;
}

a:visited {
  color: #506478;
}

h1 {
  font-weight: 300;
  font-size: calc(27.2727272727px + 0.90909090909vw);
  line-height: calc(32px + 0.75vw);
}

h2 {
  font-size: calc(24px + 0.854166666666666vw);
  line-height: calc(36px + 1.04166666666667vw);
  font-weight: 100;
}

img {
  max-width: 100%;
}

/* layout */
.background {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #333333;
  /* For browsers that do not support gradients */
  /* For Safari 5.1 to 6.0 */
  /* For Opera 11.1 to 12.0 */
  /* For Firefox 3.6 to 15 */
  background: linear-gradient(#333333, #777777);
  /* Standard syntax */
  z-index: -1;
}

#wrapper {
  display: block;
  margin: 0 auto;
  background-color: #f0f0f0;
  min-height: 100%;
}

.header {
  background-color: #444;
  line-height: 0;
}

.top-pane {
  float: right;
  padding: 16px;
}

.content, .sidebar, #footer {
  padding: 16px;
  width: 100%;
  box-sizing: border-box;
  float: left;
}

.sidebar {
  width: 100%;
}

#footer {
  width: 100%;
  border: 0px solid rgba(0, 0, 0, 0.1);
  border-width: 1px 0 0 0;
  background-color: #e3e3e3;
  text-align: center;
}

/* navigation */
navbar {
  margin: 0;
  padding: 0;
  display: block;
  width: 100%;
  height: 50px;
  background-color: #d9291c;
}

navbar #desktop-menu {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  text-align: left;
  line-height: 16px;
  font-size: 0px;
}

navbar #desktop-menu > ul {
  padding: 0;
  margin: 0;
  font-size: 0px;
}

navbar #desktop-menu li {
  list-style: none;
  display: inline-block;
  width: auto;
  height: 100%;
  box-sizing: border-box;
  transition: 0.15s;
  font-size: 16px;
  line-height: 16px;
}

navbar #desktop-menu li a {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  font-weight: 600;
  position: relative;
  padding: 15px 13px 8px 13px;
  display: block;
  height: 100%;
  box-sizing: border-box;
  transition: 0.15s;
}

navbar #desktop-menu li a:visited {
  color: rgba(255, 255, 255, 0.8);
}

navbar #desktop-menu li ul {
  display: none;
  position: absolute;
  padding: 0;
  margin: 0;
  width: 250px;
  z-index: 10;
  background-color: #EBEBEB;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

navbar #desktop-menu li ul li {
  width: 100%;
  height: 50px;
}

navbar #desktop-menu li ul li:hover {
  background-color: #e64c41;
}

navbar #desktop-menu li ul li:hover a {
  color: white !important;
}

navbar #desktop-menu li.active {
  background-color: #e64c41;
}

navbar #desktop-menu li.active a {
  color: white;
}

navbar #desktop-menu li:hover {
  background-color: #EBEBEB;
}

navbar #desktop-menu li:hover a {
  color: rgba(0, 0, 0, 0.8) !important;
}

navbar #desktop-menu li:hover ul {
  display: block !important;
}

/* mobile menu icon */
#menu-icon {
  width: 36px;
  height: 36px;
  position: relative;
  box-sizing: border-box;
  float: right;
  right: 8px;
  top: 8px;
  z-index: 21;
}

.menu-icon-part {
  width: 100%;
  height: 10%;
  display: block;
  background-color: white;
  position: absolute;
  top: 45%;
  transition: 0.2s;
  left: 0;
  border-radius: 5px;
}

#menu-icon .first-part {
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
  /* Standard syntax */
  top: 20%;
}

#menu-icon .second-part {
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
  /* Standard syntax */
  top: 45%;
}

#menu-icon .third-part {
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
  /* Standard syntax */
  top: 45%;
}

#menu-icon .fourth-part {
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
  /* Standard syntax */
  top: 70%;
}

#menu-icon.active {
  width: 24px;
  right: 16px;
}

#menu-icon.active .menu-icon-part {
  top: 45%;
  background-color: #444;
}

#menu-icon.active .first-part {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  /* Standard syntax */
  left: 0;
}

#menu-icon.active .second-part {
  opacity: 0;
  top: 0%;
}

#menu-icon.active .third-part {
  opacity: 0;
  top: 90%;
}

#menu-icon.active .fourth-part {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  /* Standard syntax */
  left: 0;
}

#mobile-menu-container {
  position: absolute;
  right: 0;
  display: none;
  width: 100%;
  height: auto;
  box-shadow: 0 3px 16px rgba(0, 0, 0, 0.5);
  background-color: #EBEBEB;
  z-index: 20;
}

#mobile-menu-container ul {
  margin: 0;
  padding: 0;
  line-height: 16px;
  display: block;
  overflow: hidden;
}

#mobile-menu-container ul li {
  list-style: none;
  width: auto;
  box-sizing: border-box;
  transition: 0.15s;
  font-size: 16px;
  line-height: 16px;
  height: auto;
  display: block;
  clear: both;
  position: relative;
}

#mobile-menu-container ul li a {
  color: rgba(0, 0, 0, 0.8);
  padding: 16px;
  text-decoration: none;
  font-weight: 600;
  position: relative;
  display: block;
  height: 100%;
  box-sizing: border-box;
  transition: 0.15s;
  line-height: 16px !important;
}

#mobile-menu-container ul li.active {
  background-color: #e64c41;
}

#mobile-menu-container ul li.active a {
  color: white;
}

#mobile-menu-container ul .has-children {
  width: 100%;
}

#mobile-menu-container ul .has-children > a {
  width: calc(100% - 50px);
}

#mobile-menu-container ul .has-children ul {
  display: none;
  height: 0px;
  overflow: hidden;
  transition: 0.2s;
  width: 100%;
}

#mobile-menu-container ul .has-children ul li a {
  font-weight: 400;
  padding-left: 26px;
}

#mobile-menu-container ul .has-children::after {
  content: "";
  background: url("/Portals/_default/Skins/RonaldYoungSkin2016/Arrow.png");
  position: absolute;
  width: 16px;
  height: 16px;
  background-size: 16px 16px;
  right: 21px;
  top: 16px;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  transition: 0.2s;
}

#mobile-menu-container ul .expanded ul li:nth-child(1) a {
  border: 0px solid rgba(0, 0, 0, 0.1);
  border-top-width: 1px;
}

#mobile-menu-container ul .expanded ul {
  display: inline-block;
  height: auto;
  border: 0px solid rgba(0, 0, 0, 0.1);
  border-bottom-width: 1px;
}

#mobile-menu-container ul .expanded::after {
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
}

/* parts */
.slogan {
  float: right;
  display: inline-block;
  margin-top: 90px;
  margin-bottom: 0;
  margin-right: 16px;
  color: rgba(255, 255, 255, 0.8);
  font-size: 170%;
  line-height: 170%;
}

.logo {
  width: 200px;
  height: auto;
  max-width: 33%;
  min-width: 134px;
}

#virtual-tour-frame {
  border: 0;
  width: 100%;
  height: calc(250px + 40vmin);
  margin-bottom: 8px;
}

#virtual-tour-mobile-notice {
  display: block;
  width: 100%;
  height: auto;
  padding: 16px;
  box-sizing: border-box;
  background-color: #e3e3e3;
  color: black;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

.awards-wrapper {
  width: 80%;
  margin: 0 auto;
  position: relative;
}

.awards-wrapper .first {
  position: relative;
  z-index: 11;
  left: 0;
}

.awards-wrapper .second {
  position: absolute;
  left: calc(20% - (17vw*(1/5)));
  z-index: 12;
}

.awards-wrapper .third {
  position: absolute;
  left: calc(40% - (17vw*(2/5)));
  z-index: 13;
}

.awards-wrapper .fourth {
  position: absolute;
  left: calc(60% - (17vw*(3/5)));
  z-index: 14;
}

.awards-wrapper .fifth {
  position: absolute;
  left: calc(80% - (17vw*(4/5)));
  z-index: 15;
}

.awards-wrapper .sixth {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 16;
}

.award-image {
  width: 17vw;
}

.contact-form {
  width: 100%;
}

.contact-form .label {
  margin: 4px;
  clear: both;
}

.contact-form .input input, .contact-form .input .xmp-form textarea, .xmp-form .contact-form .input textarea, .contact-form .input textarea {
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 3px;
  padding: 8px;
  margin: 4px;
  box-shadow: inset 1px 2px 4px rgba(0, 0, 0, 0.1);
  box-sizing: border-box;
  width: 50% !important;
  display: inline-block;
}

.contact-form::after {
  display: block;
  clear: both;
}

.xmp-form {
  width: 100%;
  font-weight: 400;
}

.xmp-form label {
  font-weight: 400;
  width: 75px !important;
}

.xmp-form input, .xmp-form textarea {
  font-weight: 400;
  background-color: #fcfcfc;
  width: 200px;
  max-width: calc(100% - 80px);
  border: solid 1px rgba(0, 0, 0, 0.1);
  padding: 5px;
  border-radius: 2px;
  box-shadow: inset 1px 2px 3px rgba(0, 0, 0, 0.05);
  transition: 0.2s;
}

.xmp-form input:hover, .xmp-form textarea:hover {
  background-color: #fdfdfd;
}

.xmp-form input:focus, .xmp-form textarea:focus {
  box-shadow: inset 1px 1px 0px rgba(0, 0, 0, 0.1);
  border: solid 1px rgba(0, 128, 255, 0.3);
  background-color: #ffffff;
}

.xmp-form textarea {
  width: calc(100% - 80px) !important;
  height: 200px;
}

.xmp-form input[type="submit"], .xmp-form textarea[type="submit"] {
  -webkit-appearance: none;
  background-color: #f5faff;
  border-radius: 5px;
  border: solid 1px rgba(0, 128, 255, 0.5);
  box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.05);
  padding-top: 10px;
  padding-bottom: 10px;
}

.xmp-form input[type="submit"]:hover, .xmp-form textarea[type="submit"]:hover {
  background-color: #ebf5ff;
  border: solid 1px rgba(0, 128, 255, 0.8);
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}

.testimonial-item {
  background-color: #f0f0f0;
  width: 100%;
  height: 100%;
}

.testimonial-item h2 {
  text-align: center;
}

.testimonial-item p {
  font-style: italic;
}

.testimonial-item p::before {
  content: "“";
}

.testimonial-item p:after {
  content: "”";
}

.home-staff-image {
  width: 80%;
  height: auto;
  margin: auto;
  display: block;
  padding-bottom: 16px;
}

/* selective fixes */
.cf:before,
.cf:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.cf:after {
  clear: both;
}

.fullwidth {
  width: 100% !important;
}

#EDR_ChameleonSlider_498 {
  max-height: 270px !important;
}

/* visibility */
.tablet-visible {
  display: none;
}

.tablet-hidden {
  display: block;
}

.tablet-visible-i {
  display: none;
}

.tablet-hidden-i {
  display: inline-block;
}

.desk-visible {
  display: none;
}

.desk-hidden {
  display: block;
}

.desk-visible-i {
  display: none;
}

.desk-hidden-i {
  display: inline-block;
}

/* debugging */
.centered {
  text-align: center;
}

img.centered {
  display: block;
  margin: auto;
}

/* tablet breakpoint */
@media screen and (min-width: 641px) {
  .tablet-visible {
    display: block;
  }
  .tablet-hidden {
    display: none;
  }
  .tablet-visible-i {
    display: inline-block;
  }
  .tablet-hidden-i {
    display: none;
  }
  .award-image {
    width: calc(90px + 5vw);
  }
  .awards-wrapper .second {
    left: calc(20% - ((90px + 5vw)*(1/5)));
  }
  .awards-wrapper .third {
    left: calc(40% - ((90px + 5vw)*(2/5)));
  }
  .awards-wrapper .fourth {
    left: calc(60% - ((90px + 5vw)*(3/5)));
  }
  .awards-wrapper .fifth {
    left: calc(80% - ((90px + 5vw)*(4/5)));
  }
  .home-staff-image {
    height: 187px;
    float: right;
    margin-left: 5px;
    width: 230px;
    padding-bottom: 0;
  }
}

/* HD desktop breakpoint */
@media screen and (min-width: 961px) {
  .desk-visible {
    display: block;
  }
  .desk-hidden {
    display: none;
  }
  .desk-visible-i {
    display: inline-block;
  }
  .desk-hidden-i {
    display: none;
  }
  #wrapper {
    width: calc(480px + 50vw);
    box-shadow: 0 0 16px rgba(0, 0, 0, 0.5);
  }
  h1 {
    line-height: 40px;
    font-size: 36px;
  }
  h2 {
    line-height: 46px;
    font-size: 32.2px;
  }
  p {
    line-height: 32px;
    font-size: 16px;
  }
  .content, .sidebar, #footer {
    width: 75%;
  }
  .sidebar {
    width: 25%;
  }
  #footer {
    width: 100%;
  }
  #mobile-menu-container {
    display: none !important;
  }
  #EDR_ChameleonSlider_498 {
    max-height: 2000px !important;
    min-height: 500px !important;
  }
  #EDR_ChameleonSlider_498 > div {
    max-height: 2000px !important;
    min-height: 500px !important;
  }
  #EDR_ChameleonSlider_498 > div > div {
    max-height: 2000px !important;
    min-height: 500px !important;
  }
  #EDR_ChameleonSlider_498 > div > div > div {
    max-height: 2000px !important;
    min-height: 500px !important;
  }
}

/* first larger than HD breakpoint */
@media screen and (min-width: 1921px) {
  #wrapper {
    width: calc(480px + 50%);
  }
  h1 {
    font-size: calc(24px + 0.625vw);
    line-height: calc(30px + 0.625vw);
  }
  h2 {
    font-size: calc(24.15px + 0.419270833333333vw);
    line-height: calc(34.5px + 0.598958333333333vw);
  }
  p {
    font-size: calc(12px + 0.208333333333333vw);
    line-height: calc(24px + 0.416666666666667vw);
  }
}
