/* T3 Layouts */
@media all {
  hr,
  .ce-div {
    border: none;
    margin: 0;
    height: 0.9375rem;
    background-image: linear-gradient(to right, #afd0cb 33%, rgba(0, 0, 0, 0) 0%);
    background-position: top;
    background-size: 6px 2px;
    background-repeat: repeat-x;
  }
}

/* page rollover searchbox */
@media screen {
  .page-rollover-searchbox[aria-hidden="true"] {
    margin-top: -100vh;
  }

  .page-rollover-searchbox {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100vw;
    height: 100vh;
    margin-top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(51, 51, 51, 0.9);
    transition: margin ease-in 0.5s;
  }
  .hide-while-init {
    top: -100vh !important;
  }
  .page-rollover-searchbox .search-label {
    position: absolute;
    left: 0;
    width: 4rem;
    bottom: calc(100% + 0.9375rem);
    color: rgb(255, 255, 255);
    font-size: 125%;
    font-weight: 600;
    text-transform: uppercase;
  }

  .page-rollover-searchbox .searchbox-inner {
    background: rgb(255, 255, 255);
    border: 0;
  }

  .page-rollover-searchbox .search-word {
    color: rgb(0, 0, 0);
    padding: 0.625rem 0.625rem;
    box-sizing: border-box;
  }

  .page-rollover-searchbox .search-close {
    position: absolute;
    right: 0;
    bottom: calc(100% + 0.625rem);
    color: rgb(255, 255, 255);
    background: none;
    border: 0;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.3125rem;
  }
  .page-rollover-searchbox .search-icon-close {
    position: relative;
    display: block;
    height: 0.3125rem;
  }

  .page-rollover-searchbox .search-icon-close::before,
  .page-rollover-searchbox .search-icon-close::after {
    content: "";
    background: rgb(255, 255, 255);
    display: block;
    height: 0.3125rem;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    left: 0;
    right: 0;
  }
  .page-rollover-searchbox .search-icon-close::after {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

/* page layout */
@media all {
  .wrap-inner {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }

  /* page header */
  .page-header-colorbar {
    background: rgb(175, 208, 202);
    line-height: 0.625;
  }

  .page-header-color-boxes {
    display: inline-block;
    height: 0.75em;
    width: auto;
  }

  .page-header-color-boxes:before {
    content: "";
    display: inline-block;
    border-left: 0.75em solid rgb(176, 200, 49);
    border-right: 0.75em solid rgb(0, 77, 159);
    background: rgb(238, 114, 3);
    width: 2.25em;
    height: 0.75em;
    vertical-align: top;
  }

  .page-header-logo-claim {
    font-size: 0.625em;
    line-height: 1.2;
    padding-left: 0.625em;
    vertical-align: top;
    color: white;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
    white-space: nowrap;
  }

  /* sticky header */
  .page-header-sticky .page-header {
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    right: 0;
    background-color: rgb(255, 255, 255);
    box-shadow: 0 0 1.25rem rgba(0, 0, 0, 0.25);
  }
  .page-header-sticky {
    padding-top: 3.25rem;
  }

  .page-logo {
    position: absolute;
    width: 7.5rem;
    margin: 0.3125rem 0.625rem;
  }

  .logo-link {
    display: block;
    position: relative;
    z-index: 10;
  }

  .logo-img {
    max-width: 100%;
    display: block;
  }

  .page-header-main {
    height: 2.5rem;
  }

  .nav-toggle {
    float: right;
  }

  .search-link,
  .search-toggle {
    float: right;
    margin-right: 0.125rem;
    padding: 0;
    -webkit-appearance: none;
    border: 0;
    background: none;
    width: 2.5rem;
    height: 2.5rem;
    text-decoration: none;
  }
  .search-link,
  .search-toggle-inner {
    justify-content: center;
    align-items: center;
  }

  .search-link .fa,
  .search-toggle .fa {
    display: block;
    font-size: 150%;
  }

  .page-modifier-search .search-link,
  .page-modifier-search .search-toggle,
  .page-modifier-search .page-rollover-searchbox {
    display: none !important;
  }

  /* stage */

  .page-stage {
    position: relative;
    overflow: hidden;
    background-color: rgb(242, 242, 244);
  }
  .page-stage .ce-grid-slider,
  .page-stage .ce-element {
    margin: 0;
  }

  .page-stage .ce-gallery {
    padding: 0 !important;
  }

  .page-stage .ce-row {
    margin: 0;
  }
  .page-stage .ce-column {
    margin: 0;
    padding: 0;
  }

  .page-stage .ce-grid-33-33-33 {
    padding: 1.25rem 0.625rem 0;
  }

  .page-layout-home .page-stage .ce-header {
    padding: 0.3125rem 0.625rem;
  }

  .ce-frame-jumpyteasers {
    display: none;
  }

  /* stage may have a heading */
  .page-stage .ce-slider {
    background: rgb(67, 80, 81);
  }

  .page-stage .slick-dots {
    position: relative;
    text-align: center;
    margin: 0 0 0.625rem;
    /*color: rgb(255,255,255);*/
  }

  .page-stage .ce-frame-headerimage {
    margin: 0 -30vw;
  }
  .page-stage .ce-frame-headerimage .ce-header {
    position: absolute;
    bottom: 0.625rem;
    left: 50vw;
    margin: 0;
    margin-left: calc(-50vw + 0.625rem);
    color: rgb(255, 255, 255);
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
  }

  /* content */
  .page-content {
    padding-top: 1.25rem;
  }

  /* content home */
  .page-content-home {
    padding-top: 0 !important;
  }
  .page-content-home-bg {
    background-color: rgb(223, 236, 234);
    margin-bottom: 1.25rem;
  }

  .page-content-home-left {
    background-color: rgb(207, 227, 223);
    padding: 1.25rem 0.625rem 0;
  }

  .page-content-home-top {
    background-color: rgb(191, 217, 213);
    padding: 1.25rem 0.625rem 0;
  }

  .page-content-home-bottom {
    background-color: rgb(66, 79, 80);
    padding: 1.25rem 0.625rem 0;
  }

  .page-grid-large-home .ce-frame-inverted > div {
    background: none;
  }

  /* footer */
  .page-footer {
    position: relative;
    overflow: hidden;
  }
  .page-footer::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    height: 1em;
    box-shadow: 0 0 1.5em rgba(0, 0, 0, 0.25);
  }

  .page-footer-top {
    padding-top: 1.25rem;
    background-color: rgb(102, 102, 102);
  }
  .page-footer-top > div {
    background: none;
  }

  .page-footer-bottom {
    padding-top: 1.25rem;
  }
  .page-footernav {
    margin-bottom: 0.625rem;
  }

  .page-socialaccounts .menu {
    display: flex;
    margin: 0 -0.3125rem;
  }

  .page-socialaccounts li {
    width: 33.3333%;
  }
  .social-link {
    display: block;
    margin: 0.3125rem;
    text-align: center;
    color: rgb(255, 255, 255);
    background-color: rgb(204, 204, 204);
  }
  .social-link .fa {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 2.5;
    width: 2.5em;
  }
  .facebook-link {
    background-color: rgb(59, 89, 152);
  }
  .twitter-link {
    background-color: rgb(85, 172, 238);
  }
  .youtube-link {
    background-color: rgb(255, 0, 0);
  }
  .linkedin-link {
    background-color: rgb(0, 119, 181);
  }

  .facebook-link:focus,
  .facebook-link:hover {
    background-color: rgba(59, 89, 152, 0.8) !important;
  }

  .twitter-link:focus,
  .twitter-link:hover {
    background-color: rgba(85, 172, 238, 0.8) !important;
  }
  .youtube-link:focus,
  .youtube-link:hover {
    background-color: rgba(255, 0, 0, 0.8) !important;
  }
  .linkedin-link:focus,
  .linkedin-link:hover {
    background-color: rgba(0, 119, 181, 0.8) !important;
  }
}

@media all and (min-width: 30em) {
  .wrap-inner {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .page-logo {
    left: 0.625rem;
  }

  .nav-toggle {
    margin-right: 0.625rem;
  }

  .page-header-colorbar {
    padding: 0 1.25rem;
  }

  .page-stage .ce-frame-headerimage {
    margin: 0 -15vw;
  }

  .page-stage .ce-frame-headerimage .ce-header {
    margin-left: calc(-50vw + 1.25rem);
  }

  .page-content-home-left,
  .page-content-home-top,
  .page-content-home-bottom,
  .page-layout-home .page-stage .ce-header {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .page-stage .ce-grid-33-33-33 {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
}

/* tablet + print */
@media all and (min-width: 47.5em), print {
  /* page layout */
  .page-header-searchbox {
    margin-top: 3px;
    margin-bottom: 1.875rem;
    padding: 1.25rem;
  }
  .page-header-searchbox .searchbox .search-word {
    padding: 0.5rem;
    box-sizing: border-box;
  }

  /* sticky header */
  .page-scrolled {
    padding-top: 3.25rem;
  }
  .page-logo {
    overflow: hidden;
    transition: all ease 0.25s;
  }

  .page-stage .ce-grid-33-33-33 {
    padding-left: 0.6275rem;
    padding-right: 0.6275rem;
  }

  .page-stage .ce-frame-headerimage {
    margin: 0;
  }
  .page-stage .ce-frame-headerimage .ce-header {
    position: absolute;
    bottom: 1.25rem;
    left: 50%;
    margin: 0;
    margin-left: calc(-50% + 1.25rem);
  }

  .page-socialshare {
    float: right;
    padding-top: 0.375rem;
  }

  .page-footer-bottom [data-ce-columns="2"] {
    max-width: calc(50% - 0.625rem);
  }
}

/* desktop */
@media all and (min-width: 62.5em) {
  /* page layout */

  .wrap-inner {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .page-grid-large {
    margin-left: -2.5rem;
    margin-right: -2.5rem;
  }
  .page-grid-large .page-col {
    float: right;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    max-width: 100%;
    min-height: 1px;
  }
  .page-grid-large-66-33 .page-col {
    width: 66.6666%;
  }
  .page-grid-large-66-33 .page-col:last-child {
    width: 33.3333%;
  }
  .page-grid-large-33-66 .page-col {
    width: 33.3333%;
  }
  .page-grid-large-33-66 .page-col:last-child {
    width: 66.6666%;
  }

  @supports (display: grid) {
    .page-grid-large-home {
      display: grid;
      grid-gap: 0px;
      grid-template-columns: calc(33% + 1.25rem) 2fr;
    }
    .page-grid-large-home .page-col {
      float: none !important;
      width: auto !important;
    }
    .page-grid-large-home::before,
    .page-grid-large-home::after,
    .page-grid-large-home .page-col::before,
    .page-grid-large-home .page-col::after {
      content: none !important;
    }
    .page-grid-large-home .page-col {
      grid-column: 1;
      display: grid;
    }
    .page-grid-large-home .page-col:last-child {
      grid-column: 2;
    }

    .page-content-home-left {
      grid-column: 1;
      grid-row: 1;
    }
    .page-content-home-top {
      grid-column: 1;
      grid-row: 1;
    }
    .page-content-home-bottom {
      grid-column: 1;
      grid-row: 2;
    }
  }

  .page-grid-large-home {
    margin: 0 2.5rem;
  }

  .page-grid-large-home .page-col {
    float: left;
    padding: 0;
  }

  .page-content-home-bg {
    margin-bottom: 2.5rem;
  }

  .page-content-home-left {
    padding: 2.5rem 2.5rem 0;
  }

  .page-content-home-top {
    padding: 2.5rem 2.5rem 0;
  }

  .page-content-home-bottom {
    padding: 2.5rem 2.5rem 0;
  }

  .page-logo {
    top: 0;
    left: 1.875rem;
    width: 10.75rem;
    margin: 1.25rem 0.625rem;
  }

  .page-header {
    min-height: 6.125rem;
  }

  .search-toggle {
    margin-top: 1.25rem;
    margin-right: 2.5rem;
  }

  .page-header-navigation {
    margin-left: 14rem;
    margin-right: 6rem;
    margin-bottom: 0.625rem;
    text-align: right;
  }

  .page-header-colorbar {
    padding: 0 2.5rem;
  }

  .page-header-color-boxes,
  .page-header-color-boxes:before {
    border-width: 0 1em;
    height: 1em;
  }
  .page-header-color-boxes:before {
    width: 3em;
  }
  .page-header-logo-claim {
    font-size: 0.725em;
    line-height: 1rem;
  }

  .page-header-sticky {
    padding-top: 6.125rem;
  }

  .page-stage .ce-frame-headerimage .ce-header {
    margin-left: calc(-50% + 2.5rem);
  }

  .page-stage .ce-slider {
    background: none;
  }

  .page-stage .slick-pause {
    right: 2.5rem;
  }

  .page-stage .ce-slider .ce-textpic-inner {
    right: 2.5rem;
    bottom: 5rem;
    width: auto;
    background: none;
  }

  .page-stage .ce-slider .slick-dots {
    bottom: 3.75rem;
  }

  .page-stage .ce-grid-33-33-33 {
    padding-top: 0;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .page-layout-home .page-stage .ce-header {
    padding: 0.625rem 2.5rem;
  }

  .page-stage .p-big {
    font-size: 200%;
    line-height: 1.1;
    text-shadow: 0 0 1rem rgba(0, 0, 0, 0.4);
  }

  .page-layout-home .ce-iconbox {
    position: relative;
    z-index: 5;
    margin-top: -2.5rem;
  }

  .page-stage-inner {
    overflow: hidden;
  }

  .ce-frame-jumpyteasers {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
  }

  .ce-frame-jumpyteasers .ce-iconbox {
    position: relative;
    z-index: 5;
    margin: 0;
  }

  .ce-frame-jumpyteasers .ce-iconbox-outer {
    position: absolute;
    left: 0;
    right: 0;
  }

  .ce-frame-jumpyteasers .ce-iconbox-inner {
    background: rgb(255, 255, 255);
    transform: translateY(-2.5rem);
    transition: all ease 0.25s;
  }

  .ce-frame-jumpyteasers .ce-iconbox:focus .ce-iconbox-inner,
  .ce-frame-jumpyteasers .ce-iconbox:hover .ce-iconbox-inner {
    transform: translateY(-6.4375rem);
  }

  .page-layout-home .page-stage .ce-iconbox {
    margin-top: -3.125rem;
  }

  .page-content {
    padding-top: 2.5rem;
    padding-bottom: 0.625rem;
  }

  .bc-nav {
    padding: 0 0 1.25rem;
  }

  .page-footer-bottom [data-ce-columns="2"] {
    max-width: 100%;
  }

  /*    .page-socialaccounts {
        position: fixed;
        z-index: 10;
        top: calc(50vh - 4.375rem);
        right: 0;
        background: rgb(255,255,255);
        box-shadow: 0 0 0.625rem rgba(0,0,0,0.3);
        text-align: center;
    }

    .page-socialaccounts .menu {
        display: block;
        margin: 0;
    }

    .page-socialaccounts .menu li {
        width: 100%;
    }    */
}

/* desktop - xlarge */
@media (min-width: 95em) {
  .wrap-outer {
    margin: 0 auto;
    max-width: 92.5rem; /* 1400 + 2x 40) */
  }

  .page {
    overflow: hidden;
  }

  .page-header-inner {
    position: relative;
  }

  .page-header-wrap {
    max-width: 87.5rem;
    margin: 0 auto;
  }

  .page-logo {
    left: 0;
    width: 216px;
    margin-left: 0;
  }

  .page-header-navigation {
    margin-right: 14rem;
  }
  .page-header-searchbox {
    position: absolute;
    top: 0;
    right: 2.5rem;
    z-index: 1;
    margin: 1.25rem 0;
    padding: 0;
    width: 11rem;
    transition: width ease 0.25s;
  }
  .page-header-searchbox:focus-within {
    width: 24rem;
  }

  .page-header-searchbox .searchbox-inner {
    border: 1px solid rgb(204, 204, 204);
    border-radius: 3px;
  }

  .page-header-searchbox .search-button {
    background: rgb(250, 250, 250);
  }

  .page-header-searchbox .search-label {
    clip: rect(1px, 1px, 1px, 1px) !important;
    -webkit-clip-path: inset(50%) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    overflow: hidden !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important;
  }

  .page-header-searchbox {
    right: 0;
    margin: 1.75rem 0 0;
  }

  .page-header-navigation {
    margin-bottom: 0.625rem;
  }

  .page-header-color-boxes,
  .page-header-color-boxes:before {
    border-width: 0 1.25rem;
    height: 1.25rem;
  }
  .page-header-color-boxes {
    border-width-left: 1.25rem;
    border-width-right: 1.25rem;
  }
  .page-header-color-boxes:before {
    width: 3.75rem;
  }
  .page-header-logo-claim {
    font-size: 1rem;
    line-height: 1.25rem;
  }

  .page-stage-inner {
    max-width: 120rem;
    margin: 0 auto;
  }

  .page-stage .slick-pause {
    left: 50%;
    margin-left: 41.875rem;
  }
  .page-stage .ce-slider .slick-dots {
    bottom: 4.5rem;
  }
  .page-stage .ce-slider .ce-textpic-inner {
    margin-left: 0;
    left: 2.5rem;
  }

  .page-stage .ce-grid-33-33-33 {
    max-width: 90rem; /* 1400 + 40 px */
    margin: 0 auto;
    padding: 0;
  }
  .page-stage .ce-header {
    max-width: 87.5rem;
    margin-left: auto;
    margin-right: auto;
    padding: 1.25rem 0;
  }

  .page-stage .p-big {
    font-size: 300%;
  }

  .page-layout-home .page-stage .ce-iconbox {
    margin-top: -4.375rem;
  }

  .ce-frame-jumpyteasers .ce-iconbox .icon {
    transition: all ease 0.25s;
  }
  .ce-frame-jumpyteasers .ce-iconbox:hover .icon,
  .ce-frame-jumpyteasers .ce-iconbox:focus .icon,
  .page-layout-home .page-stage .ce-iconbox .icon {
    width: 3.125rem;
    height: 3.125rem;
  }

  .ce-frame-jumpyteasers .ce-iconbox:focus .ce-iconbox-inner,
  .ce-frame-jumpyteasers .ce-iconbox:hover .ce-iconbox-inner {
    transform: translateY(-11.65rem);
  }

  .page-stage .ce-iconbox-text {
    font-size: 140%;
    padding: 1.875rem;
  }

  /* sticky header */
  .page-header-sticky {
    padding-top: 6.875rem;
  }

  .page-stage .ce-frame-headerimage .ce-header {
    margin-left: calc(-43.75rem);
  }

  .page-content {
    padding-bottom: 0rem;
  }

  .page-footer-top .page-footer-inner {
    display: flex;
    justify-content: space-between;
  }

  .page-footer-top .page-footer-inner::before,
  .page-footer-top .page-footer-inner::after {
    content: none;
  }

  .page-socialshare {
    order: 3;
  }

  .page-footernav {
    order: 2;
  }
  .page-copyright-notice {
    order: 1;
    margin: 0;
    padding-top: 0.375rem;
  }

  .page-socialaccounts {
    /*top: calc(50vh - 5.9375rem);*/
  }

  .page-socialaccounts {
    position: fixed;
    z-index: 10;
    /*top: calc(50vh - 4.375rem);*/
    top: calc(50vh - 5.9375rem);
    right: 0;
    background: rgb(255, 255, 255);
    box-shadow: 0 0 0.625rem rgba(0, 0, 0, 0.3);
    text-align: center;
  }

  .page-socialaccounts .menu {
    display: block;
    margin: 0;
  }

  .page-socialaccounts .menu li {
    width: 100%;
  }

  .social-link {
    margin: 0.625rem;
  }

  .social-link .fa {
    font-size: 2em;
    line-height: 1.5;
    width: 1.5em;
  }
}

@media (min-width: 100em) {
  .page-socialaccounts {
    right: auto;
    left: calc(50% + 45rem);
  }
}

@media (min-width: 120em) {
  .page-socialaccounts {
    left: calc(50% + 43.5rem + 6.25rem);
  }
}
