/* ==========================================================================
   Variables
   ========================================================================== */
/* ==========================================================================
   Images
   ========================================================================== */
/* ==========================================================================
   Mixins
   ========================================================================== */
/* ==========================================================================
   Animation Mixins
   ========================================================================== */
/* ==========================================================================
   Layout
   ========================================================================== */
/* general */
.layout {
  padding: 150px 0 0 0;
  margin: 0;
  background: #ffffff; }

.layoutwidth {
  width: 92%;
  margin: 0 4%; }

.layoutwidth > hr {
  margin: 0;
  clear: both;
  background: transparent;
  border: none; }

.scrollToTop {
  display: none; }

/* top header */
.topHeader {
  clear: both;
  height: 50px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #a1c7f1;
  color: #fd4f00; }
  .topHeader ul {
    padding: 0;
    margin: 0; }
    .topHeader ul li {
      display: none;
      padding: 0;
      margin: 0;
      float: left;
      list-style: none;
      color: #364c68;
      font-weight: bold;
      font-family: DINProBold;
      font-size: 13px;
      line-height: 50px; }
      .topHeader ul li > strong {
        color: #ffffff; }
      .topHeader ul li:before {
        display: none;
        padding-right: 10px;
        color: #ffffff;
        font-family: FontAwesome; }
      .topHeader ul li.contactNumber {
        float: right;
        display: block;
        line-height: 47px;
        text-decoration: none;
        color: #fd4f00;
        font-size: 25px;
        font-family: DINPro; }
        .topHeader ul li.contactNumber a {
          color: #fd4f00;
          text-decoration: none; }
        .topHeader ul li.contactNumber:before {
          content: "\f095";
          display: inline-block;
          color: #fd4f00;
          font-size: 23px; }

body.hasAdminBar .topHeader {
  top: 46px; }

/* header */
.header {
  clear: both;
  height: 100px;
  width: 100%;
  position: absolute;
  top: 50px;
  left: 0;
  background: #8bbaed; }
  .header .logo {
    display: block;
    margin: 0 auto;
    width: 321px;
    height: 100px;
    background: url(../img/common/logo-small.png) 50% 50% no-repeat;
    background-size: 321px 100px; }
    .header .logo a {
      padding: 0;
      display: block;
      height: 130px; }
  .header .menuToggle {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    padding: 25px;
    width: 30px;
    height: 32px;
    float: left;
    clear: none;
    background: url(../img/common/icon-menuToggle.png) 50% 50% no-repeat;
    background-size: 30px 32px; }
  .header .navigation {
    display: none; }

body.hasAdminBar .header {
  top: 96px; }

/* banner */
.banner {
  clear: both; }
  .banner .layoutwidth {
    width: 100%;
    margin: 0; }
  .banner .group {
    clear: both;
    width: 100%;
    overflow: hidden; }
    .banner .group ul {
      width: 100%;
      padding: 0;
      margin: 0; }
      .banner .group ul li {
        width: 100%;
        padding: 0;
        margin: 0;
        display: none;
        list-style: none; }
        .banner .group ul li img {
          display: block;
          width: 100%; }
        .banner .group ul li:first-child {
          display: block; }
        .banner .group ul li.slick-slide {
          display: block; }
    .banner .group .slick-prev,
    .banner .group .slick-next {
      opacity: 0; }
  .banner .categories {
    width: 92%;
    margin: 30px 4% 0 4%;
    padding-bottom: 21px;
    background: url(../img/common/shadow-small.png) 50% 100% no-repeat;
    background-size: 100% 21px; }
    .banner .categories hr {
      clear: both;
      margin: 0;
      border: none; }
  .banner .singleBanner {
    background: 100% 100% no-repeat #f7f7f7; }
    .banner .singleBanner .container {
      padding: 25px 4% 35px 4%;
      box-sizing: border-box; }
    .banner .singleBanner h2 {
      margin: 0;
      padding: 0 0 25px 0;
      background: url(../img/banner/single-line.jpg) 0 100% no-repeat;
      font-size: 2.8em;
      font-family: DINProBold;
      font-weight: normal; }
    .banner .singleBanner.banner-assistant {
      background-image: url(../img/banner/banner-assistant.png); }
    .banner .singleBanner.banner-default {
      background-image: url(../img/banner/banner-default.png); }
    .banner .singleBanner.banner-dentist {
      background-image: url(../img/banner/banner-dentist.png); }
    .banner .singleBanner.banner-floss {
      background-image: url(../img/banner/banner-floss.png); }
    .banner .singleBanner.banner-patient {
      background-image: url(../img/banner/banner-patient.png); }
    .banner .singleBanner.banner-people {
      background-image: url(../img/banner/banner-people.png); }

/* content */
.screen {
  /* Social Media */ }
  .screen .breadcrumbs {
    padding: 20px 0;
    text-transform: uppercase;
    font-family: DINProBold;
    font-size: 11px; }
    .screen .breadcrumbs a {
      color: #202d3e;
      text-decoration: none; }
      .screen .breadcrumbs a:after {
        display: inline-block;
        padding: 0 5px;
        content: "\f101";
        font-family: FontAwesome;
        font-size: 12px; }
    .screen .breadcrumbs .breadcrumb_last {
      color: #fd4f00; }
  .screen .essb_links {
    padding: 10px 0;
    margin: -30px 0 15px 0 !important;
    clear: both;
    width: 100%;
    float: left;
    box-sizing: border-box;
    border-radius: 3px; }

.content {
  padding: 0 0 50px 0; }
  .content img {
    max-width: 100%;
    height: auto; }
  .content .readMore {
    color: #fd4f00;
    text-transform: uppercase;
    font-family: DINPro;
    font-weight: bold;
    text-decoration: none; }
    .content .readMore:before {
      display: inline-block;
      padding-right: 5px;
      content: "\f18e";
      font-family: FontAwesome;
      font-weight: 400;
      color: #fd4f00;
      font-size: 19px;
      line-height: 19px; }
    .content .readMore:hover {
      text-decoration: underline; }

.gallery {
  clear: both; }
  .gallery .item {
    text-align: center; }
    .gallery .item > a {
      display: block;
      height: 215px;
      vertical-align: middle;
      text-align: center;
      line-height: 215px; }
      .gallery .item > a > img {
        display: inline-block; }
  .gallery .slick-prev,
  .gallery .slick-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    border-radius: 3px;
    background: 50% 50% no-repeat #202d3e; }
    .gallery .slick-prev:before,
    .gallery .slick-next:before {
      opacity: 0;
      content: ''; }
  .gallery .slick-prev {
    left: -5px;
    background-image: url(../img/common/icon-arrow-left-small.png); }
  .gallery .slick-next {
    right: -5px;
    background-image: url(../img/common/icon-arrow-right-small.png); }

.sidepanel {
  clear: both; }
  .sidepanel .item {
    clear: both;
    margin: 0 0 30px 0;
    padding: 15px 20px;
    border-radius: 3px;
    background: #efefef;
    font-size: 13px; }
    .sidepanel .item ul {
      padding: 0;
      margin: 0; }
      .sidepanel .item ul li {
        padding: 0;
        margin: 0;
        list-style: none; }
        .sidepanel .item ul li a {
          display: block;
          padding: 6px 0;
          text-transform: uppercase;
          text-decoration: none;
          color: #fd4f00;
          font-family: DINProBold; }
        .sidepanel .item ul li ul li a {
          border-bottom: 1px solid #e0dfdf;
          text-transform: none;
          color: #202d3e;
          font-family: DINPro; }
        .sidepanel .item ul li ul li ul {
          padding-left: 15px; }
        .sidepanel .item ul li ul li.active > a {
          font-family: DINProBold; }

/* categories */
.categories .layoutwidth {
  padding: 71px 0 30px 0;
  background: url(../img/common/shadow-small.png) 50% 0 no-repeat;
  background-size: 100% 21px; }

.categories .group {
  padding: 0 0 30px 0; }
  .categories .group h2 {
    margin: 0;
    font-size: 25px; }
  .categories .group p {
    font-family: DINPro;
    font-size: 15px; }
  .categories .group .img {
    padding-bottom: 15px; }
    .categories .group .img img {
      width: 100%;
      box-shadow: 0.5px 0.9px 3px rgba(0, 0, 0, 0.3); }
      .categories .group .img img.desktop {
        display: none; }
  .categories .group .readMore {
    color: #fd4f00;
    text-transform: uppercase;
    font-family: DINPro;
    font-weight: bold;
    text-decoration: none; }
    .categories .group .readMore:before {
      display: inline-block;
      padding-right: 5px;
      content: "\f18e";
      font-family: FontAwesome;
      font-weight: 400;
      color: #fd4f00;
      font-size: 19px;
      line-height: 19px; }
    .categories .group .readMore:hover {
      text-decoration: underline; }
  .categories .group > a {
    text-decoration: none; }
    .categories .group > a:hover .readMore {
      text-decoration: underline; }

.categories .list {
  padding: 0;
  margin: 0; }
  .categories .list li {
    padding: 0;
    margin: 0;
    list-style: none; }
    .categories .list li.group {
      padding: 0 0 30px 0; }

/* subscribe */
.subscribe {
  padding: 35px 0;
  background: url(../img/common/shadow-small.png) 50% 0 no-repeat;
  background-size: 100% 21px; }
  .subscribe .gform_wrapper {
    margin: 0 auto;
    max-width: 520px; }
    .subscribe .gform_wrapper .gform_heading {
      margin-bottom: 5px; }
      .subscribe .gform_wrapper .gform_heading h3.gform_title {
        margin: 0;
        text-align: center;
        font-size: 2.4em;
        color: #fd4f00;
        font-weight: 400; }
        .subscribe .gform_wrapper .gform_heading h3.gform_title:before {
          display: inline-block;
          padding-right: 15px;
          border-radius: 2px;
          content: "\f003";
          font-family: FontAwesome;
          font-size: 30px; }
    .subscribe .gform_wrapper .gform_description,
    .subscribe .gform_wrapper .top_label .gfield_label,
    .subscribe .gform_wrapper .gfield_required,
    .subscribe .gform_wrapper .validation_error {
      display: none; }
    .subscribe .gform_wrapper .ginput_container {
      margin-top: 20px !important; }
    .subscribe .gform_wrapper .gform_footer {
      padding: 0;
      margin: 20px 0 20px 0; }
      .subscribe .gform_wrapper .gform_footer input.button {
        display: block;
        width: 100% !important;
        font-family: DINPro;
        font-size: 19px;
        font-weight: 700; }

/* footer */
.footer {
  padding: 35px 0;
  background: url(../img/common/shadow-text.png) 50% 0 no-repeat #202d3e;
  background-color: #09223d;
  background-size: 100% 21px;
  text-align: center;
  color: #ffffff;
  font-family: DINPro;
  font-size: 15px; }
  .footer a {
    color: #ffffff; }
  .footer p {
    padding: 0;
    margin: 0; }
  .footer .navigation {
    display: none; }

/* ==========================================================================
   Media Queries
   ========================================================================== */
@media only screen and (min-width: 640px) {
  /* general */
  .layout {
    padding: 180px 0 0 0; }
  /* top header */
  .topHeader ul li.dentalClinic {
    display: inline-block; }
  body.hasAdminBar .topHeader {
    top: 32px; }
  /* header */
  .header {
    height: 130px; }
    .header .logo {
      width: 417px;
      height: 130px;
      background-image: url(../img/common/logo.png);
      background-size: auto; }
      .header .logo a {
        height: 130px; }
    .header .menuToggle {
      width: 41px;
      height: 44px;
      background-size: auto; }
  body.hasAdminBar .header {
    top: 82px; }
  /* banner */
  .banner .container {
    background: url(../img/common/shadow.png) 50% 0 no-repeat;
    background-size: 100% 85px; }
  .banner .singleBanner {
    background-image: url(../img/banner/banner-default.png); }
    .banner .singleBanner .container {
      min-height: 200px;
      padding: 75px 4% 25px 4%;
      box-sizing: border-box; }
    .banner .singleBanner h2 {
      padding: 0 0 35px 0; } }

@media only screen and (min-width: 979px) {
  /* general */
  .layout {
    padding: 0;
    border-top: 180px solid #b7d4f4;
    background: url(../img/common/body-bg.jpg) repeat; }
  .layoutwidth {
    max-width: 980px;
    margin: 0 auto;
    background: #ffffff; }
  .scrollToTop {
    -webkit-transition: 700ms ease;
    -moz-transition: 700ms ease;
    -o-transition: 700ms ease;
    transition: 700ms ease;
    display: block;
    position: fixed;
    bottom: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
    opacity: 0.5;
    background: url(../img/common/icon-arrow-up.png) 50% 50% no-repeat #fd4f00;
    border-radius: 3px; }
    .scrollToTop:hover {
      opacity: 1; }
  /* top header */
  .topHeader {
    position: fixed;
    z-index: 100; }
  /* header */
  .header {
    -webkit-transition: 700ms ease;
    -moz-transition: 700ms ease;
    -o-transition: 700ms ease;
    transition: 700ms ease;
    position: fixed;
    z-index: 100; }
    .header .layoutwidth {
      position: relative; }
    .header .logo {
      -webkit-transition: 700ms ease;
      -moz-transition: 700ms ease;
      -o-transition: 700ms ease;
      transition: 700ms ease;
      width: 417px;
      height: 130px;
      margin: 0;
      position: absolute;
      left: 0;
      top: 0;
      z-index: 10;
      background-position: 0 0;
      background-size: 417px 130px; }
      .header .logo a {
        -webkit-transition: 700ms ease;
        -moz-transition: 700ms ease;
        -o-transition: 700ms ease;
        transition: 700ms ease;
        padding: 0;
        height: 130px; }
    .header .menuToggle {
      display: none; }
    .header .navigation {
      display: block;
      float: right;
      position: relative;
      width: 100%;
      font-family: DINProBold;
      font-size: 15px;
      font-weight: 400;
      text-transform: uppercase;
      color: #ffffff; }
      .header .navigation .menu-main-menu-container {
        float: right; }
      .header .navigation ul {
        float: right;
        padding: 0;
        margin: 0; }
        .header .navigation ul li {
          float: left;
          padding: 0;
          margin: 0;
          list-style: none; }
          .header .navigation ul li > a {
            -webkit-transition: 700ms ease;
            -moz-transition: 700ms ease;
            -o-transition: 700ms ease;
            transition: 700ms ease;
            display: block;
            padding: 28px 3px;
            color: #ffffff;
            text-decoration: none; }
            .header .navigation ul li > a span {
              -webkit-transition: 700ms ease;
              -moz-transition: 700ms ease;
              -o-transition: 700ms ease;
              transition: 700ms ease;
              display: block;
              padding: 26px 5px;
              border: 1px solid transparent;
              border-radius: 3px;
              background: 50% 100% no-repeat; }
          .header .navigation ul li > a:hover span {
            border-color: #fd4f00;
            background-image: url(../img/common/icon-menu-point.png);
            color: #fd4f00; }
          .header .navigation ul li.current-menu-ancestor > a span,
          .header .navigation ul li.current-menu-item > a span {
            color: #fd4f00; }
      .header .navigation > div > ul > li > .sub-menu {
        -webkit-transition: 700ms ease;
        -moz-transition: 700ms ease;
        -o-transition: 700ms ease;
        transition: 700ms ease;
        position: absolute;
        top: 127px;
        right: auto;
        padding: 30px 15px 0 30px;
        opacity: 0;
        visibility: hidden;
        z-index: 5;
        border-top: 3px solid #b7d4f4;
        background: #ffffff;
        box-shadow: 0.5px 0.9px 3px rgba(0, 0, 0, 0.3);
        color: #202d3e;
        text-transform: none; }
        .header .navigation > div > ul > li > .sub-menu a {
          padding: 3px 0;
          color: #202d3e; }
          .header .navigation > div > ul > li > .sub-menu a span {
            padding: 0;
            border: none;
            background: none; }
          .header .navigation > div > ul > li > .sub-menu a:hover {
            background: none;
            border: none;
            color: #202d3e;
            text-decoration: underline; }
            .header .navigation > div > ul > li > .sub-menu a:hover span {
              color: #202d3e; }
        .header .navigation > div > ul > li > .sub-menu > li {
          float: left;
          padding: 0 30px 30px 0; }
          .header .navigation > div > ul > li > .sub-menu > li > a {
            color: #fd4f00;
            text-transform: uppercase; }
            .header .navigation > div > ul > li > .sub-menu > li > a:hover span {
              color: #fd4f00; }
          .header .navigation > div > ul > li > .sub-menu > li > .sub-menu {
            position: static;
            top: auto;
            right: auto;
            padding: 0;
            float: left;
            border-top: none;
            background: none; }
            .header .navigation > div > ul > li > .sub-menu > li > .sub-menu > li {
              clear: both;
              font-family: DINPro; }
      .header .navigation > div > ul > li:hover .sub-menu {
        opacity: 1;
        visibility: visible; }
      .header .navigation > div > ul > li#menu-item-62 .sub-menu {
        right: 0;
        z-index: 1; }
    .header.offset {
      height: 80px; }
      .header.offset .logo {
        height: 80px;
        background-position: 0 0;
        background-size: 257px 80px; }
        .header.offset .logo a {
          height: 80px;
          padding: 0; }
      .header.offset .navigation ul li > a {
        padding: 18px 3px; }
        .header.offset .navigation ul li > a span {
          padding: 11px 15px; }
      .header.offset .navigation > div > ul > li > .sub-menu {
        top: 77px; }
  /* banner */
  .banner .layoutwidth {
    max-width: 980px;
    margin: 0 auto;
    position: relative; }
  .banner .categories {
    padding: 0 0 45px 0;
    background: url(../img/common/shadow-small.png) 50% 100% no-repeat;
    background-size: 100% 21px; }
    .banner .categories .group {
      margin-top: -100px; }
  .banner .list li.group {
    margin-top: -100px; }
  .banner .singleBanner {
    background-image: url(../img/banner/banner-default.png); }
  /* content */
  .screen .layoutwidth {
    width: 100%;
    padding: 0 4%;
    box-sizing: border-box; }
  .content {
    float: left;
    width: 67%; }
    .content.home {
      padding: 20px 0 0 0;
      width: 100%; }
      .content.home h2 {
        font-size: 2.4em; }
  .gallery .slick-prev,
  .gallery .slick-next {
    width: 40px;
    height: 40px; }
  .gallery .slick-prev {
    left: -40px;
    background-image: url(../img/common/icon-arrow-left.png); }
  .gallery .slick-next {
    right: -40px;
    background-image: url(../img/common/icon-arrow-right.png); }
  .sidepanel {
    clear: none;
    float: right;
    width: 30%;
    padding-bottom: 50px; }
  /* categories */
  .categories {
    padding: 0; }
    .categories .layoutwidth {
      width: 100%;
      padding: 71px 4% 50px 4%;
      box-sizing: border-box;
      background: url(../img/common/shadow-small.png) 50% 0 no-repeat #ffffff;
      background-size: 100% 21px; }
    .categories .group {
      float: left;
      clear: none;
      padding: 0 10px;
      box-sizing: border-box;
      position: relative; }
      .categories .group .img img.mobile {
        display: none; }
      .categories .group .img img.desktop {
        display: block; }
    .categories .locations {
      float: right;
      width: 33%; }
    .categories .list {
      width: 67%;
      float: left; }
      .categories .list li.group {
        float: left;
        width: 50%;
        padding: 0 10px 30px 10px; }
  /* subscribe */
  .subscribe {
    padding: 0;
    background: none; }
    .subscribe .layoutwidth {
      width: 100%;
      padding: 35px 4%;
      box-sizing: border-box;
      background: url(../img/common/shadow-small.png) 50% 0 no-repeat #ffffff;
      background-size: 100% 21px; }
    .subscribe .gform_wrapper {
      max-width: none; }
      .subscribe .gform_wrapper .gform_heading {
        width: 36%;
        margin-right: 4%;
        float: left; }
        .subscribe .gform_wrapper .gform_heading h3.gform_title {
          text-align: left;
          padding-bottom: 20px;
          font-size: 2.1em; }
          .subscribe .gform_wrapper .gform_heading h3.gform_title:before {
            padding-right: 10px;
            font-size: 26px; }
        .subscribe .gform_wrapper .gform_heading .gform_description {
          display: block; }
      .subscribe .gform_wrapper .gform_body {
        width: 46%;
        float: left; }
        .subscribe .gform_wrapper .gform_body ul li.gfield {
          clear: none;
          float: left;
          padding-right: 10px;
          box-sizing: border-box;
          width: 50%;
          margin: 0;
          min-height: 148px; }
        .subscribe .gform_wrapper .gform_body .ginput_container {
          margin-top: 60px !important; }
      .subscribe .gform_wrapper .gform_footer {
        width: 14%;
        float: left;
        clear: none;
        margin: 60px 0 0 0; }
        .subscribe .gform_wrapper .gform_footer input.button {
          font-size: 15px; }
  /* footer */
  .footer {
    font-size: 12px;
    text-align: left; }
    .footer .layoutwidth {
      width: 100%;
      padding: 0 4%;
      box-sizing: border-box;
      background: none; }
    .footer p {
      display: inline-block;
      padding-right: 5px; }
    .footer .navigation {
      clear: both;
      display: block; }
      .footer .navigation ul {
        display: inline-block;
        padding: 0;
        margin: 0; }
        .footer .navigation ul li {
          float: left;
          padding: 0 10px 0 0;
          margin: 0;
          list-style: none; } }

@media only screen and (min-width: 1020px) {
  /* general */
  .layoutwidth {
    max-width: 1000px; }
  /* top header */
  .topHeader ul li {
    display: inline-block; }
    .topHeader ul li.openingHours {
      padding-right: 10px; }
  /* banner */
  .banner .layoutwidth {
    max-width: 1020px; } }

@media only screen and (min-width: 1050px) {
  /* general */
  .layoutwidth {
    max-width: 1050px; }
  /* top header */
  .topHeader ul li {
    display: inline-block; }
    .topHeader ul li.openingHours {
      padding-right: 30px; }
  /* header */
  .header .navigation ul li > a {
    display: block;
    padding: 28px 3px; }
    .header .navigation ul li > a span {
      padding: 26px 16px; }
  .header.offset .navigation ul li > a span {
    padding: 11px 16px; }
  /* banner */
  .banner .layoutwidth {
    max-width: 1050px; } }

@media only screen and (min-width: 1200px) {
  /* general */
  .layoutwidth {
    max-width: 1200px; }
  /* top header */
  .topHeader .layoutwidth {
    max-width: 1050px; }
  /* header */
  .header .layoutwidth {
    max-width: 1050px; }
  /* banner */
  .banner {
    /*
        .group {
            ul {
                .slick-list {
                    overflow: visible;
                }
                li {
                    &:first-child:after
                    {
                        content: '';
                        position: absolute;
                        top: 140px;
                        right: -125px;
                        display: block;
                        width: 265px;
                        height: 241px;

                        background: $bannerDots 50% 50% no-repeat;
                    }
                }
            }
        }
      */ }
    .banner .layoutwidth {
      max-width: 1200px; }
    .banner .singleBanner .container {
      padding: 75px 6% 25px 6%; }
  /* content */
  .screen .layoutwidth {
    padding: 0 9%; }
  .screen .breadcrumbs {
    margin-left: -55px; }
  .gallery .slick-prev {
    left: -60px; }
  .gallery .slick-next {
    right: -60px; }
  /* categories */
  .categories .layoutwidth {
    padding: 71px 4% 30px 4%; }
  .categories .group {
    padding: 0 20px; }
  .categories .list li.group {
    padding: 0 20px 30px 20px; }
  /* subscribe */
  .subscribe .layoutwidth {
    padding: 35px 6%; }
  /* footer */
  .footer .navigation {
    float: right;
    clear: none; } }
