body {overflow:auto !important;display:grid;grid-template-rows:auto auto 1fr auto;}
body.frontpage .site-wrapper {background-color: transparent;}

.frontpage_bottom_content .grid > .grid-cell:nth-child(2) {background-size: cover; background-repeat:no-repeat;background-position:center;}
@media (max-width:600px){
    .frontpage_bottom_content .grid > .grid-cell:nth-child(2) > span.placeholder {display:block;aspect-ratio:960/385;}

}

/* Typography */
html, body {font-size:15px}
button, input, p, select, textarea { line-height: 1.6em; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {font-weight:400}
@media (min-width:960px){h1, .h1 { font-size: 28px;} h3, .h3 {font-size: 1.5em} }
.ck-content .fa {vertical-align: initial !important; line-height: inherit;}
.ck-content p {margin-bottom: 24px;font-weight:300;}
.ck-content ul {padding-left: 30px;margin-bottom:24px;}
.ck-content li {font-weight:300; list-style: circle none;}
.ck-content li + li {padding-top: 10px;}
.page-title {border-bottom: 0;margin-bottom: 20px; padding-bottom: 0;}
h2, .h2 {font-size:28px; line-height: 1.6; margin: 0;}
strong {font-weight: 400;}
article.m-text-article {padding: 30px;}
header.page-title {margin-bottom: 24px;}

/* buttons */
.button-primary {
  cursor: pointer;
  display: inline-block;
  letter-spacing: .1rem;
  min-height: 38px;
  line-height: 20px;
  margin-bottom: 1em;
  padding: 8px 30px;
  text-align: center;
  text-decoration: none;
  transition-duration: 200ms;
  vertical-align: top;
  word-spacing: initial;
  font-size: 15px;
  font-weight: normal;
  border-width: 1px;
  border-radius: 0.5rem;
}


/* Background Image */

body {
    background-position: left top;
    background-size: auto;
    background-repeat: repeat;
    background-attachment: scroll;
}

/* Structure */
.container.with-xlarge {width:100%;}
@media (min-width: 1460px) {
.container.with-xlarge {width:1460px;}
}
.container.site-wrapper {padding:0; margin:30px auto;}

/* Top menu */

.site-navigation .container.with-xlarge .utilities-bar {min-width: 0 !important;}
.site-navigation {box-shadow: 0px 5px 3px 1px rgb(0 0 0 / 20%); border-bottom: 0;}

@media (min-width: 960px) {
.site-navigation {border-top:0px solid #D5D5D5;border-bottom:0px solid #D5D5D5; padding-top: 0; padding-bottom: 0;z-index:999;min-height:83px;height:auto}
.site-corporate ul.w-menu.w-menu-list.nav.nav-default, .site-navigation ul.w-menu.w-menu-list.nav.nav-default {float: right;}
.navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item, .navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item.primary {margin:0}
.navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item > a, .navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item.primary > a {padding: 0;line-height:0;border-bottom:0;}
.navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item {padding: 0px;}
.navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item > a {padding: 0 20px;}
.navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item > span.marker {line-height:80px;}
.navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item > span.marker i {font-weight: 700;}
.site-navigation .w-menu-list.nav > .w-menu-item > a > span {height:80px; line-height:80px; display:inline-block;}
.site-navigation .w-menu-list.nav > .w-menu-item.active > a > span {padding-top: 0 !important;}
.navbar-collapse ul.nav.nav-default>.dropdown .dropdown-menu {margin:0;}
.w-menu, .w-menu > li.dropdown, .w-menu > li.dropdown > .dropdown-menu {background-color: inherit;}
.navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item {float:left; border-bottom-width: 3px; border-bottom-style:solid;border-bottom-color:transparent;}
.site-navigation .container.with-xlarge .navbar-header {top:0 !important; width:100%;padding: 0;position:relative;height:auto;min-height: 83px;}
.site-navigation .nav-default>li.active {padding-bottom: 0;}
.site-navigation .nav-default > li > a {font-weight:600;}
.site-navigation .nav-default > li > a > span {font-size: 14px !important;}
.site-navigation .container.with-xlarge .utilities-bar {text-align: center; height: 80px;}
div#searchButton, .site-navigation .w-menu-list.nav > .w-menu-item > a > span, .navbar-collapse.top-menu>.w-menu.w-menu-list.nav>.w-menu-item > span.marker, .w-logo > a {height:83px; line-height: 83px;}
.site-navigation, .site-navigation .container.with-xlarge .navbar-header {min-height:83px;height:auto;}
div#searchButton {margin:0;}
div#searchButton .search-icon {height:inherit;}
.site-navigation .navbar-header {left: -20px}
.logo-container {padding: 0 10px;}
.search-container-widget {padding-top:0;}

.nav .w-menu-item.active > a > span, .nav .category--item.active > a > span, .nav .w-menu-item.active > .category--title > a > span, .nav .category--item.active > .category--title > a > span, .nav .w-menu-item:hover > .category--title > a > span, .nav .category--item:hover > .category--title > a > span, .nav .w-menu-item:hover > a > span, .nav .category--item:hover > a > span {border: 0 !important;}
.nav .w-menu-item a > span, .nav .category--item a > span {transition: none;}

.nav .w-menu-item.active, .nav .category--item.active, .nav .w-menu-item.active > .category--title, .nav .category--item.active > .category--title, .nav .w-menu-item:hover > .category--title, .nav .category--item:hover > .category--title, .nav .w-menu-item:hover, .nav .category--item:hover {border-bottom: 3px solid;}
/* Navbar dropdown */

.navbar-collapse ul.nav>.dropdown .dropdown-menu {
  position: absolute;
  top: 100%;
  margin-top: 3px !important;
  width: 150%;
}
.navbar-collapse ul.nav>.dropdown .dropdown-menu .dropdown-container {border: 0; padding: 5px 0;}
.navbar-collapse ul.nav>.dropdown .dropdown-menu .dropdown-container .w-menu-item {font-weight:300;padding:0;}
.navbar-collapse ul.nav>.dropdown .dropdown-menu .dropdown-container .w-menu-item > a {padding: 0.5em 20px;}
.navbar-collapse ul.nav>.dropdown .dropdown-menu .dropdown-container .w-menu-item > .dropdown-menu {width:100%;}
.navbar-collapse ul.nav>.dropdown .dropdown-menu .dropdown-container .w-menu-item > .dropdown-menu a.item-sub {padding-left:25px;}





.logo.w-logo a {display:block;padding-left:18px;text-align:left;}
.logo.w-logo a.anchor-text {text-transform: uppercase;font-size: 22px; line-height: 1.1em;display: table-cell;vertical-align: middle;}
.site-navigation .logo img.responsive {max-height: 45px;display:inline-block;margin:0;vertical-align:middle;}
}

/* Mobile navigation */
@media (max-width:960px) {
  .mobile-navigation .w-menu-item.active > a > span {border: 0 !important;}
  .mobile-navigation .dropdown-menu {padding-left: 0 !important;}
  .mobile-navigation .dropdown-menu .w-menu-item > a {padding-left: 1.5em !important;}
}



@media (max-width:960px){
  .logo.w-logo {position: relative; top: 50%; transform: translateY(-50%);}
    .logo.w-logo a {text-align:center; margin: 0 !important;}
}
@media (max-width:767px){
    .site-navigation .logo img.responsive {max-height:35px;}
}

/* Frontpage Hero Image */


.hero-image-container {background-size:cover;background-position:center center;}
.hero-image {position:relative;overflow:auto;}
.hero-image .page-content {float:right;padding:60px;width: 100%; max-width:345px;font-size:15px;font-weight:300;}
.hero-image .page-content h2 {font-size:24px;font-weight:700;margin:0;line-height:44px;}
.hero-image .page-content h3 {font-size:18px;font-weight:700;margin:0;line-height:36px;}
.hero-image .page-content p + h3 {margin-top: 24px;}
.hero-image .page-content strong {font-weight: 400;}
.hero-image .hero-caption {
    position:absolute;
    left: 0;
    bottom: 60px;
    width: 345px;
    padding: 15px;
}
.hero-image .hero-caption h2 {font-size: 36px;}
.hero-image .hero-caption h2 span {
    display:inline-block;
    margin: 10px 0;
    padding: 0 10px;
}
@media (max-width:960px){
    .hero-image .hero-caption {width:245px;}
}
@media (max-width:630px){
    .hero-image .page-content {max-width:100%;margin:60px 0 20px 0;}
    .hero-image .hero-caption {display: none;}
}



/* Columns */
aside.column > .panel, aside.column .panel-heading {background:transparent;border-top:0;border-left:0;border-right:0;}
aside.column > .panel {border-bottom: 0;}
aside.column .panel-heading > .h5 { text-transform: uppercase; font-size:22px; }
aside.column .panel-heading {border-bottom:0;}

/* Tables */
.ck-content table {margin: 0 0 1em 0 !important;width:100%;}
.ck-content table tr > td {padding:8px;}
.ck-content table.striped tr:nth-child(odd) {background-color: #cfdee5;}
.ck-content table.striped tr:nth-child(even):hover {background-color: #FFFFFF;}
.ck-content table tfoot tr {background-color: #EDEDED;}

/* Page Picture Element */
.page-image {position:relative;min-height:400px;max-height: 800px;background-position:center;background-size:cover;background-repeat:no-repeat;}

/* Footer */
.site-footer { padding: 36px 0 36px 0; font-weight: 300;font-size:15px;}
.site-footer h2 {font-size:24px;font-weight: 300;margin:0;line-height:1.6em;}
.site-footer.site-copyright {text-align: center;}


/* Google Maps */
#embedMaps iframe {
    width:100%;
    height:100%;
    border: 0;
}
#embedMaps {
    display: flex;
    align-items: center;
    height:100%;
    min-height: 250px;
    text-align: center;
    width: 100%;
    background-position: center center;
    background-size: cover;
    background-blend-mode: screen;
    background-color: #7a7a7a;
}
#embedMaps > a {margin: auto;padding:16px 60px;}

/* Content pages */

.maps-aside {
    align-items: center;
    padding: 60px;
    min-height:400px;
}
.maps-aside * {color: inherit;}

.grid.contact-info {
  gap:0;
  margin: 0;
}
* + .grid.contact-info {margin-top: 30px;}
.grid.contact-info:last-child {margin-bottom:0;}
.grid.contact-info .grid-cell {
  padding: 30px;
  position: relative;
  min-height: 400px;
  overflow: hidden;
}
.grid.contact-info .grid-cell img {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 100% !important;
  min-width:100%;
  width:auto;
  max-width: initial;
  transform: translate(-50%, -50%);
}
@media (max-width:960px) {
  .grid.contact-info {
    row-gap: 30px;
  }
}
@media (max-width:600px) {
  .grid.contact-info {
    row-gap: 0px;
  }
  .grid.contact-info .grid-cell {
    min-height:200px;
  }
  .grid.contact-info .grid-cell img {
    height:auto;
    width:100%;

  }
}
.grid.contact-info.clinic-info .grid-cell {
  min-height: 200px;
}
.grid.contact-info.clinic-info .grid-cell h2 {
  margin-bottom: 24px;
}

.grid.special {
  gap: 0;
}
.grid.special .grid-cell {
  padding: 60px;
}
.grid.special .grid-cell h1, .grid.special .grid-cell h2, .grid.special .grid-cell h3, .grid.special .grid-cell h4, .grid.special .grid-cell h5, .grid.special .grid-cell h6, .grid.special .grid-cell a {
  color: inherit;
}
.grid.special .grid-cell a {
  font-weight: 400;
}

/* Video embed */
.media-element iframe.mediaEmbed {
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 0;
}
.media-element div.mediaEmbed {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    position:relative;
    background-position:center center;
    background-size:cover;
}
.media-element div.mediaEmbed > a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 60px;
}
.media-element div.mediaEmbed > a > span {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
}

/* Grids */
@media (max-width: 960px) {
    .ck-content .grid[data-columns="4"] {
        display: grid;
        grid-template-columns: repeat(2,1fr);
    }
    .ck-content .grid[data-columns="3"] {
        display: grid;
        grid-template-columns: repeat(3,1fr);
    }
    .ck-content .grid > .grid-cell {width:100%;}
}

@media (max-width: 767px) {
    .ck-content .grid[data-columns="3"] {
        display: grid;
        grid-template-columns: repeat(1,1fr) !important;
    }
}
@media (max-width: 500px) {
    .ck-content .grid {
        grid-template-columns: repeat(1,1fr) !important;
    }
}
