/*
Theme Name: XT Grid Theme
Author: Xtensive Web Design
Author URI: https://www.xtensive.co.uk
Description: A base theme built with CSS Grid
Version: 1.0
*/
/* Breakpoints */
/* Colors */
/* Weights */
.site-header {
  width: 100%;
  margin: 0 auto;
  position: fixed;
  top: 0;
  z-index: 100;
  background: #FFF;
  opacity: 0;
  animation: fadein 1s ease;
  animation-fill-mode: forwards;
  animation-delay: .2s; }
  .site-header .container {
    width: 100%;
    max-width: 1600px;
    padding: 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media (min-width: 992px) {
      .site-header .container {
        padding: 1rem 2rem; } }
  .site-header .custom-logo-link {
    display: block;
    z-index: 110; }
    .site-header .custom-logo-link img {
      width: 150px;
      height: auto;
      display: block;
      transition: .3s; }
    .site-header .custom-logo-link.active img {
      filter: brightness(0) invert(1); }
  .site-header #mobile-button {
    appearance: none;
    background: linear-gradient(130deg, #0CC0DF 0%, #0CC0DF 40%, #008AA8 100%);
    padding: 0.5rem;
    border: 0;
    display: block;
    width: 35px;
    height: 35px;
    position: relative;
    cursor: pointer;
    z-index: 110;
    transition: .3s; }
    .site-header #mobile-button.active span {
      background: none; }
      .site-header #mobile-button.active span:before {
        top: 0;
        transform: rotate(45deg); }
      .site-header #mobile-button.active span:after {
        bottom: 0;
        transform: rotate(-45deg); }
    .site-header #mobile-button span {
      width: 100%;
      height: 2px;
      background: #FFF;
      display: block;
      position: relative; }
      .site-header #mobile-button span:before {
        content: ' ';
        position: absolute;
        top: -7px;
        left: 0;
        width: 100%;
        height: 2px;
        background: #FFF;
        transition: .3s; }
      .site-header #mobile-button span:after {
        content: ' ';
        position: absolute;
        bottom: -7px;
        left: 0;
        width: 100%;
        height: 2px;
        background: #FFF;
        transition: .3s; }
    @media (min-width: 992px) {
      .site-header #mobile-button {
        display: none; } }

#main-menu {
  display: block;
  width: 100%;
  height: 100svh;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  background: linear-gradient(30deg, #008AA8 0%, #0CC0DF 100%);
  z-index: 100;
  padding: 6rem 1rem 4rem 1rem;
  margin: 0;
  overflow: scroll;
  transition: .3s ease-in-out; }
  @media (min-width: 992px) {
    #main-menu {
      display: none; } }
  #main-menu.active {
    opacity: 1;
    visibility: visible; }
  #main-menu .menu {
    list-style-type: none;
    padding: 0;
    margin: 0; }
    #main-menu .menu li {
      border-bottom: 1px solid rgba(255, 255, 255, 0.3);
      padding: 1rem 0; }
      #main-menu .menu li a {
        font-size: 1rem;
        font-weight: 500;
        text-transform: uppercase;
        color: rgba(0, 0, 0, 0.6);
        text-decoration-color: transparent;
        display: block;
        transition: .3s;
        position: relative; }
        #main-menu .menu li a:hover, #main-menu .menu li a:focus {
          color: #FFF; }
    #main-menu .menu .sub-menu {
      height: 0;
      overflow: hidden;
      transition: max-height .3s ease;
      padding-left: 2rem;
      display: block !important;
      list-style-type: none; }
      #main-menu .menu .sub-menu li {
        border-bottom: 0; }
        #main-menu .menu .sub-menu li a::before {
          content: "-";
          position: absolute;
          left: -1rem; }
    #main-menu .menu .menu-item-has-children.open > .sub-menu {
      height: auto;
      padding-top: 1rem; }
    #main-menu .menu .current-menu-item a {
      color: #FFF; }
    #main-menu .menu .menu-item-has-children > a:hover::after, #main-menu .menu .menu-item-has-children > a:hover::before, #main-menu .menu .menu-item-has-children > a:focus::after, #main-menu .menu .menu-item-has-children > a:focus::before {
      background: #FFF; }
    #main-menu .menu .menu-item-has-children > a::after {
      content: "";
      position: absolute;
      width: 15px;
      height: 2px;
      background: #333;
      display: inline-block;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      transition: .3s; }
    #main-menu .menu .menu-item-has-children > a::before {
      content: "";
      position: absolute;
      width: 2px;
      height: 15px;
      background: #333;
      display: inline-block;
      right: 6.6px;
      top: 50%;
      transform: translateY(-50%);
      transition: .3s; }
    #main-menu .menu .menu-item-has-children.open > a::before {
      height: 0; }
    #main-menu .menu .menu-item-has-children.open > a::after {
      transform: translateY(-50%) rotate(180deg); }
  #main-menu form {
    width: 100%;
    background: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
    background: rgba(255, 255, 255, 0.3); }
    #main-menu form input[type='search'] {
      appearance: none;
      border: 0;
      background: none;
      width: 100%;
      color: #FFF;
      padding: 0.5rem; }
      #main-menu form input[type='search']::placeholder {
        color: #FFF; }
    #main-menu form button {
      appearance: none;
      background: none;
      cursor: pointer;
      border: 0; }
      #main-menu form button iconify-icon {
        color: #FFF;
        transition: .3s; }
        #main-menu form button iconify-icon:hover, #main-menu form button iconify-icon:focus {
          color: #333; }

#desktop-menu {
  display: none; }
  @media (min-width: 992px) {
    #desktop-menu {
      display: flex; } }
  #desktop-menu .menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center; }
    #desktop-menu .menu li {
      margin: 0 0 0 2rem; }
      #desktop-menu .menu li a {
        text-transform: uppercase;
        color: #333;
        font-weight: 500;
        text-decoration-color: transparent;
        font-size: 0.8rem;
        transition: .3s; }
        #desktop-menu .menu li a:hover, #desktop-menu .menu li a:focus {
          color: #008AA8; }
  #desktop-menu .menu-item-108 a, #desktop-menu .menu-item-871 a {
    position: relative;
    margin-right: 0.8rem; }
    #desktop-menu .menu-item-108 a:after, #desktop-menu .menu-item-871 a:after {
      content: ' ';
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: -12px;
      background: url("/wp-content/uploads/2025/11/down-arrow.png");
      background-size: contain;
      background-position: center center;
      background-repeat: no-repeat;
      width: 8px;
      height: 8px; }
  #desktop-menu .menu-item-108:hover .sub-menu, #desktop-menu .menu-item-108:focus .sub-menu, #desktop-menu .menu-item-871:hover .sub-menu, #desktop-menu .menu-item-871:focus .sub-menu {
    opacity: 1;
    visibility: visible; }
  #desktop-menu .sub-menu {
    background: #FFF;
    position: absolute;
    list-style-type: none;
    padding: 2rem 1.3rem 1rem 1.3rem;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    transition: .3s ease-in-out; }
    #desktop-menu .sub-menu li {
      margin: 0 0 1rem 0; }
      #desktop-menu .sub-menu li a:after {
        display: none; }
      #desktop-menu .sub-menu li:last-child {
        margin-bottom: 0; }
  #desktop-menu .menu-item-271, #desktop-menu .menu-item-107 {
    display: none; }

.menu-item-108, .menu-item-871 {
  cursor: pointer; }

.header-right {
  display: none; }
  @media (min-width: 992px) {
    .header-right {
      display: flex;
      justify-content: flex-end;
      width: 150px; } }
  .header-right .btn {
    padding: 0.7rem 1rem;
    font-size: 0.8rem;
    display: inline-flex; }

.mobile-right {
  display: flex; }
  .mobile-right #search-btn-mobile {
    margin-right: 0.5rem;
    appearance: none;
    cursor: pointer;
    background: none;
    border: 0; }
    .mobile-right #search-btn-mobile iconify-icon {
      color: #333; }

.search-bar {
  width: 100%;
  transition: .3s;
  display: flex;
  align-items: center;
  justify-content: center; }
  .search-bar.active {
    opacity: 1;
    visibility: visible; }
  .search-bar form {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
    border-top: 1px solid #eee;
    display: flex;
    padding: 0 1rem;
    align-items: center;
    justify-content: space-between; }
  .search-bar input[type="search"] {
    appearance: none;
    border: 0;
    padding: 0.5rem; }

#search-button {
  appearance: none;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  margin: 0 0 0 2rem; }
  #search-button iconify-icon {
    transition: .3s; }
    #search-button iconify-icon:hover, #search-button iconify-icon:focus {
      color: #0CC0DF; }

.search-box {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background: #FFF;
  height: 200px;
  z-index: 200;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transform: translateY(-100%);
  transition: .3s; }
  .search-box.active {
    transform: translateY(0); }
  .search-box form {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #eee; }
    .search-box form input[type='search'] {
      width: 100%;
      appearance: none;
      cursor: pointer;
      background: none;
      border: 0; }
    .search-box form button {
      appearance: none;
      background: none;
      border: 0;
      cursor: pointer; }
  .search-box #close-button {
    margin-bottom: 2rem;
    appearance: none;
    background: none;
    padding: 0;
    border: 0;
    cursor: pointer;
    transition: .3s; }

.page-overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  top: 0;
  left: 0;
  z-index: 50;
  opacity: 0;
  visibility: hidden;
  transition: .3s; }
  .page-overlay.active {
    opacity: 1;
    visibility: visible; }

.newsletter {
  width: 100%;
  background: linear-gradient(130deg, #0CC0DF 0%, #008AA8 100%); }
  .newsletter .container {
    flex-direction: column;
    text-align: center;
    padding: 4rem 2rem; }
    @media (min-width: 800px) {
      .newsletter .container {
        flex-direction: row;
        align-items: center;
        justify-content: center; } }
    .newsletter .container .content {
      width: 100%;
      margin-bottom: 2rem; }
      @media (min-width: 800px) {
        .newsletter .container .content {
          width: 60%;
          text-align: left;
          margin-bottom: 0; } }
      .newsletter .container .content h2 {
        position: relative;
        font-size: 2rem;
        text-transform: uppercase;
        font-weight: 500;
        padding: 0;
        margin: 0; }
      .newsletter .container .content p {
        left: 0;
        right: 0;
        margin: 0 auto;
        font-size: 0.8rem;
        font-weight: 400;
        letter-spacing: 0.2rem;
        text-transform: uppercase; }
    .newsletter .container .form {
      width: 100%;
      display: flex;
      flex-direction: column; }
      @media (min-width: 800px) {
        .newsletter .container .form {
          width: 40%;
          flex-direction: row;
          align-items: center;
          justify-content: center; } }
      .newsletter .container .form input[type='email'] {
        width: 100%;
        appearance: none;
        border: 0;
        padding: 0.8rem;
        text-align: center;
        text-transform: uppercase; }
        @media (min-width: 800px) {
          .newsletter .container .form input[type='email'] {
            text-align: left; } }
      .newsletter .container .form input[type='submit'] {
        width: 100%;
        background: #333;
        appearance: none;
        border: 0;
        cursor: pointer;
        padding: 0.8rem 0.5rem;
        color: #FFF;
        letter-spacing: 0.3rem;
        text-transform: uppercase;
        border: 0; }
        @media (min-width: 800px) {
          .newsletter .container .form input[type='submit'] {
            width: auto;
            padding: 0.8rem 1.5rem;
            margin-left: 0.4rem; } }

.site-footer {
  width: 100%;
  /* end of container */ }
  .site-footer .container {
    padding: 4rem 2rem;
    max-width: 1100px; }
    .site-footer .container .footer-top {
      width: 100%;
      text-align: center; }
      .site-footer .container .footer-top img {
        width: 100%;
        max-width: 400px; }
    .site-footer .container .box {
      width: 100%;
      text-align: center;
      display: flex;
      flex-direction: column;
      margin-bottom: 2rem; }
      @media (min-width: 800px) {
        .site-footer .container .box {
          width: 33.3333333%; } }
      @media (min-width: 992px) {
        .site-footer .container .box {
          order: 4; }
          .site-footer .container .box:nth-child(2) {
            order: 2; }
          .site-footer .container .box:nth-child(3) {
            order: 3; } }
      .site-footer .container .box:last-child {
        margin-bottom: 0; }
      .site-footer .container .box .title {
        font-weight: 500; }
      .site-footer .container .box address {
        font-style: normal;
        margin-bottom: 1rem; }
      .site-footer .container .box a {
        color: #333;
        text-decoration-color: transparent;
        transition: .3s ease-in-out;
        margin-bottom: 0.5rem; }
        .site-footer .container .box a:hover, .site-footer .container .box a:focus {
          color: #008AA8; }
      .site-footer .container .box ul {
        list-style-type: none;
        padding: 0;
        margin: 0; }
        .site-footer .container .box ul li {
          padding: 0;
          margin: 0 0 0.5rem 0; }
          .site-footer .container .box ul li:last-child {
            margin: 0; }
    .site-footer .container .socials {
      width: 100%;
      order: 5;
      display: flex;
      align-items: center;
      justify-content: center; }
      .site-footer .container .socials iconify-icon {
        background: linear-gradient(130deg, #0CC0DF 0%, #008AA8 100%);
        padding: 0.5rem;
        color: #FFF;
        margin: 0 0.2rem; }
    .site-footer .container .footer-bottom {
      width: 100%;
      font-size: 0.8rem;
      text-align: center; }
      @media (min-width: 992px) {
        .site-footer .container .footer-bottom {
          order: 6;
          margin-top: 4rem; } }
      .site-footer .container .footer-bottom a {
        font-size: 0.8rem;
        color: #333; }

.slides {
  max-height: 600px;
  overflow: hidden;
  margin: 0;
  border: 0 !important; }

.slide-img {
  width: 100%;
  height: 600px;
  background-size: cover !important;
  background-position: center center !important;
  position: relative; }
  .slide-img .overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center; }

.cat-header {
  width: 100%;
  height: 300px;
  background: #FAF8F3;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 2rem; }
  .cat-header h1 {
    max-width: 600px;
    font-size: 2rem;
    line-height: 2.5rem;
    text-transform: uppercase;
    font-weight: 500;
    color: #9E8B6F;
    padding: 0;
    margin: 0;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .3s;
    animation-fill-mode: forwards; }

.blog-main, .search-results-container {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 4rem;
  padding: 2rem; }
  @media (min-width: 800px) {
    .blog-main, .search-results-container {
      grid-template-columns: repeat(3, 1fr);
      padding: 4rem 2rem; } }
  .blog-main .blog-post, .search-results-container .blog-post {
    text-decoration-color: transparent;
    color: #333;
    background: #FAF8F3;
    padding: 1rem;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .3s;
    animation-fill-mode: forwards; }
    .blog-main .blog-post:nth-child(2), .search-results-container .blog-post:nth-child(2) {
      opacity: 0;
      transform: translateY(1rem);
      animation: fadeup 1s ease;
      animation-delay: .4s;
      animation-fill-mode: forwards; }
    .blog-main .blog-post:nth-child(3), .search-results-container .blog-post:nth-child(3) {
      opacity: 0;
      transform: translateY(1rem);
      animation: fadeup 1s ease;
      animation-delay: .5s;
      animation-fill-mode: forwards; }
    .blog-main .blog-post:nth-child(n+4), .search-results-container .blog-post:nth-child(n+4) {
      opacity: 0;
      transform: translateY(1rem);
      animation: fadeup 1s ease;
      animation-delay: .6s;
      animation-fill-mode: forwards; }
    .blog-main .blog-post .image, .search-results-container .blog-post .image {
      width: 100%;
      height: 300px;
      margin-bottom: 0.5rem; }
      .blog-main .blog-post .image img, .search-results-container .blog-post .image img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .blog-main .blog-post h2, .search-results-container .blog-post h2 {
      font-size: 1.2rem;
      font-weight: 400;
      padding: 0;
      margin: 0; }
    .blog-main .blog-post span, .search-results-container .blog-post span {
      font-size: 0.8rem; }

.single-blog {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding: 4rem 2rem;
  opacity: 0;
  transform: translateY(1rem);
  animation: fadeup 1s ease;
  animation-delay: .3s;
  animation-fill-mode: forwards; }
  .single-blog .date {
    font-size: 0.8rem; }
  .single-blog h2 {
    font-size: 2rem;
    font-weight: 400;
    color: #333; }
  .single-blog li {
    font-size: 1.1rem;
    font-weight: 300;
    margin-bottom: 0.5rem; }
    .single-blog li:last-child {
      margin-bottom: 0; }
    .single-blog li strong {
      font-size: 1.1rem;
      font-weight: 400;
      color: #008AA8; }
  .single-blog p a {
    font-size: 1.1rem; }
  .single-blog a {
    color: #008AA8; }

.share {
  width: 100%;
  border-top: 1px solid #FAF8F3;
  padding-top: 0.5rem;
  margin-top: 2rem; }
  .share ul {
    list-style-type: none;
    padding: 0;
    margin: 1rem 0 0 0;
    display: flex; }
    .share ul li {
      margin-right: 0.5rem; }
      .share ul li a {
        background: #FAF8F3;
        display: flex;
        align-items: center;
        padding: 0.7rem 1rem;
        color: #333;
        text-decoration-color: transparent;
        transition: .3s; }
        .share ul li a:hover, .share ul li a:focus {
          background: #9E8B6F;
          color: #FFF; }
          .share ul li a:hover iconify-icon, .share ul li a:focus iconify-icon {
            color: #FFF; }
        .share ul li a iconify-icon {
          margin-right: 0.5rem;
          transition: .3s; }

.blog-main {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 4rem;
  padding: 2rem; }
  @media (min-width: 800px) {
    .blog-main {
      grid-template-columns: repeat(3, 1fr);
      padding: 4rem 2rem; } }
  .blog-main .blog-post {
    text-decoration-color: transparent;
    color: #333;
    background: #FAF8F3;
    padding: 1rem;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .3s;
    animation-fill-mode: forwards; }
    .blog-main .blog-post:nth-child(2) {
      opacity: 0;
      transform: translateY(1rem);
      animation: fadeup 1s ease;
      animation-delay: .4s;
      animation-fill-mode: forwards; }
    .blog-main .blog-post:nth-child(3) {
      opacity: 0;
      transform: translateY(1rem);
      animation: fadeup 1s ease;
      animation-delay: .5s;
      animation-fill-mode: forwards; }
    .blog-main .blog-post:nth-child(n+4) {
      opacity: 0;
      transform: translateY(1rem);
      animation: fadeup 1s ease;
      animation-delay: .6s;
      animation-fill-mode: forwards; }
    .blog-main .blog-post .image {
      width: 100%;
      height: 300px;
      margin-bottom: 0.5rem; }
      .blog-main .blog-post .image img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .blog-main .blog-post h2 {
      font-size: 1.2rem;
      font-weight: 400;
      padding: 0;
      margin: 0; }
    .blog-main .blog-post span {
      font-size: 0.8rem; }

.error {
  width: 100%;
  height: 100vh;
  background: #f6f6f6;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column; }
  .error .content {
    max-width: 61.25rem;
    width: 100%;
    padding: 2rem;
    text-align: center; }
    .error .content h1 {
      font-size: 14rem;
      font-weight: 900;
      margin: 0;
      padding: 0;
      color: #333; }
    .error .content h3 {
      font-size: 5rem;
      font-weight: 900;
      color: #000;
      margin: 0;
      padding: 0; }
    .error .content h4 {
      font-size: 2rem;
      color: #000;
      margin-top: 0.625rem; }
    .error .content a {
      background: #FFF;
      border: 3px solid #333;
      color: #000;
      margin-top: 0.625rem;
      padding: 0.5rem 2rem;
      display: inline-block; }
      .error .content a:hover {
        background: #000;
        text-decoration: none;
        color: #FFF; }

html {
  box-sizing: border-box;
  font-family: "router", sans-serif;
  font-size: 16px; }

* {
  box-sizing: inherit;
  font-size: 16px; }

p {
  font-size: 1.1rem;
  line-height: 1.7rem;
  font-weight: 300; }
  p strong {
    font-size: 1.1rem;
    font-weight: 500; }

body {
  font-size: 16px;
  padding: 0;
  margin: 0; }

.entry-content .alignwide {
  margin-left: -80px;
  margin-right: -80px; }

.entry-content .alignfull {
  margin-left: calc( -100vw / 2 + 100% / 2 );
  margin-right: calc( -100vw / 2 + 100% / 2 );
  max-width: 100vw; }

.alignfull img {
  width: 100vw; }

.js-scroll {
  opacity: 0;
  transition: opacity 500ms; }

.js-scroll.scrolled {
  opacity: 1; }

.scrolled.fade-in {
  animation: fade-in 1s ease-in-out both; }

@keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@keyframes fadeup {
  from {
    opacity: 0;
    transform: translateY(1rem); }
  to {
    opacity: 1;
    transform: translateY(0); } }
@keyframes scroll {
  0% {
    transform: translateX(0px); }
  100% {
    transform: translateX(calc(-150px * 15.5)); } }
.container {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 2rem 1rem;
  display: flex;
  flex-wrap: wrap; }
  @media (min-width: 800px) {
    .container {
      padding: 2rem; } }

.btn, #gform_submit_button_1, #gform_submit_button_2 {
  background: linear-gradient(130deg, #0CC0DF 0%, #008AA8 70%, #0CC0DF 100%);
  background-size: 150% 150%;
  background-position: top left;
  transition: .3s ease-in-out;
  padding: 0.8rem 1.2rem;
  display: inline-block;
  text-transform: uppercase;
  color: #FFF;
  text-decoration-color: transparent;
  font-size: 0.9rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  letter-spacing: 0.1rem; }
  .btn:hover, .btn:focus, #gform_submit_button_1:hover, #gform_submit_button_1:focus, #gform_submit_button_2:hover, #gform_submit_button_2:focus {
    background-position: bottom right; }
    .btn:hover iconify-icon, .btn:focus iconify-icon, #gform_submit_button_1:hover iconify-icon, #gform_submit_button_1:focus iconify-icon, #gform_submit_button_2:hover iconify-icon, #gform_submit_button_2:focus iconify-icon {
      margin-left: 1.8rem; }
  .btn iconify-icon, #gform_submit_button_1 iconify-icon, #gform_submit_button_2 iconify-icon {
    margin-left: 0.8rem;
    transition: .3s ease-in-out; }

#gform_submit_button_1, #gform_submit_button_2 {
  border: 0;
  cursor: pointer; }

.btn-outline {
  border: 2px solid #008AA8;
  padding: 1rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #008AA8;
  text-transform: uppercase;
  text-decoration-color: transparent;
  font-weight: 500;
  text-align: center;
  transition: .3s; }
  .btn-outline iconify-icon {
    color: #008AA8;
    transition: .3s; }
  @media (min-width: 576px) {
    .btn-outline {
      width: auto; } }
  .btn-outline:hover, .btn-outline:focus {
    background: #008AA8;
    color: #FFF; }
    .btn-outline:hover iconify-icon, .btn-outline:focus iconify-icon {
      color: #FFF; }

.home-video {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 1rem;
  height: 700px;
  position: relative;
  margin-top: 67px; }
  @media (min-width: 800px) {
    .home-video {
      height: 600px;
      margin-top: 89px;
      padding: 0 2rem; } }
  .home-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative; }
  .home-video .overlay {
    position: absolute;
    width: 100%;
    max-width: 1600px;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    position: absolute;
    padding: 0 1rem;
    box-sizing: border-box; }
    @media (min-width: 800px) {
      .home-video .overlay {
        padding: 0 2rem; } }
    .home-video .overlay .container {
      background: rgba(0, 0, 0, 0.4);
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-end;
      height: 100%; }
      .home-video .overlay .container .heading {
        font-size: 2rem;
        line-height: 2.5rem;
        max-width: 600px;
        color: #FFF;
        text-transform: uppercase;
        font-weight: 500;
        padding: 0;
        margin: 0;
        opacity: 0;
        transform: translateY(1rem);
        animation: fadeup 1s ease;
        animation-delay: .4s;
        animation-fill-mode: forwards; }
        @media (min-width: 800px) {
          .home-video .overlay .container .heading {
            font-size: 2.5rem;
            line-height: 3rem; } }
      .home-video .overlay .container .subheading {
        color: #FFF;
        padding: 0;
        margin: 0 0 2rem 0;
        opacity: 0;
        transform: translateY(1rem);
        animation: fadeup 1s ease;
        animation-delay: .6s;
        animation-fill-mode: forwards; }
        @media (min-width: 800px) {
          .home-video .overlay .container .subheading {
            font-size: 1.2rem; } }
      .home-video .overlay .container .btn {
        opacity: 0;
        transform: translateY(1rem);
        animation: fadeup 1s ease;
        animation-delay: .8s;
        animation-fill-mode: forwards; }

/* Marquee CSS */
.logos {
  height: auto;
  position: relative;
  width: 100%;
  display: grid;
  place-items: center;
  overflow: hidden;
  padding: 0 0 4rem 0;
  opacity: 0;
  animation: fadein 1s ease;
  animation-delay: 1s;
  animation-fill-mode: forwards; }
  @media (min-width: 992px) {
    .logos {
      padding-bottom: 4rem; } }
  .logos::before, .logos::after {
    position: absolute;
    background-image: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0) 100%);
    content: '';
    width: 15%;
    height: 100%;
    z-index: 2;
    pointer-events: none; }
  .logos::before {
    left: 0;
    top: 0; }
  .logos::after {
    right: 0;
    top: 0;
    transform: rotateZ(180deg); }
  .logos .slide-track {
    width: calc(150px * 22);
    display: flex;
    animation: scroll 30s linear infinite;
    justify-content: space-between; }
  .logos img {
    width: 150px;
    height: auto;
    margin: 0 2rem;
    object-fit: contain; }

.logos-padding {
  padding: 0 0 4rem 0; }

.cta {
  width: 100%;
  padding: 4rem 2rem;
  background: linear-gradient(130deg, #9E8B6F 0%, #E0D5C0 40%, #9E8B6F 100%);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }
  .cta h2 {
    font-size: 2rem;
    text-transform: uppercase;
    font-weight: 500;
    padding: 0;
    margin: 0; }
  .cta h3 {
    font-size: 1rem;
    color: #333;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.5rem; }
  .cta .buttons {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-top: 2rem; }
    @media (min-width: 576px) {
      .cta .buttons {
        flex-direction: row; } }
    .cta .buttons .btn {
      background: #FFF;
      margin-bottom: 1rem;
      width: 100%;
      text-align: center;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #9E8B6F; }
      @media (min-width: 576px) {
        .cta .buttons .btn {
          width: auto;
          margin-bottom: 0;
          margin-right: 0.5rem; } }
      .cta .buttons .btn iconify-icon {
        transition: 0; }
      .cta .buttons .btn:hover, .cta .buttons .btn:focus {
        background: #9E8B6F;
        color: #FFF; }
        .cta .buttons .btn:hover iconify-icon, .cta .buttons .btn:focus iconify-icon {
          margin-left: 0.8rem; }
    .cta .buttons .btn-outline {
      border: 2px solid #FFF;
      padding: 0.7rem 1.5rem;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #FFF;
      text-transform: uppercase;
      text-decoration-color: transparent;
      font-weight: 500;
      width: 100%;
      text-align: center;
      transition: .3s; }
      @media (min-width: 576px) {
        .cta .buttons .btn-outline {
          width: auto; } }
      .cta .buttons .btn-outline:hover, .cta .buttons .btn-outline:focus {
        background: #FFF;
        color: #333; }
        .cta .buttons .btn-outline:hover iconify-icon, .cta .buttons .btn-outline:focus iconify-icon {
          color: #333; }
      .cta .buttons .btn-outline iconify-icon {
        color: #FFF; }

.treatments-carousel {
  width: 100%;
  background: #FAF8F3;
  padding: 4rem 0 3rem 0;
  text-align: center;
  /* end of feed container */ }
  .treatments-carousel h2 {
    font-size: 2rem;
    color: #333;
    text-transform: uppercase;
    font-weight: 500;
    position: relative;
    padding: 0;
    margin: 0 0 2rem 0; }
    .treatments-carousel h2:before {
      content: 'Our Treatments';
      position: absolute;
      top: -1.3rem;
      font-size: 0.8rem;
      color: #9E8B6F;
      left: 0;
      right: 0;
      margin: 0 auto;
      letter-spacing: 0.2rem; }
  .treatments-carousel .feed-container .box, .treatments-carousel .feed-container-2 .box {
    background: #FFF;
    padding: 1rem;
    margin: 0 1rem;
    text-align: left;
    text-decoration-color: transparent; }
    .treatments-carousel .feed-container .box:hover .image img, .treatments-carousel .feed-container .box:focus .image img, .treatments-carousel .feed-container-2 .box:hover .image img, .treatments-carousel .feed-container-2 .box:focus .image img {
      transform: scale(1.1, 1.1); }
    .treatments-carousel .feed-container .box:hover .btn, .treatments-carousel .feed-container .box:focus .btn, .treatments-carousel .feed-container-2 .box:hover .btn, .treatments-carousel .feed-container-2 .box:focus .btn {
      background-position: bottom right; }
      .treatments-carousel .feed-container .box:hover .btn iconify-icon, .treatments-carousel .feed-container .box:focus .btn iconify-icon, .treatments-carousel .feed-container-2 .box:hover .btn iconify-icon, .treatments-carousel .feed-container-2 .box:focus .btn iconify-icon {
        margin-left: 1.7rem;
        color: #FFF; }
    .treatments-carousel .feed-container .box .image, .treatments-carousel .feed-container-2 .box .image {
      width: 100%;
      height: 300px;
      overflow: hidden; }
      .treatments-carousel .feed-container .box .image img, .treatments-carousel .feed-container-2 .box .image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: .3s ease-in-out; }
    .treatments-carousel .feed-container .box h3, .treatments-carousel .feed-container-2 .box h3 {
      font-size: 1.1rem;
      color: #333;
      text-transform: uppercase;
      font-weight: 500;
      padding: 0;
      margin: 1rem 0; }
    .treatments-carousel .feed-container .box p, .treatments-carousel .feed-container-2 .box p {
      color: #333;
      padding: 0;
      margin: 0;
      min-height: 70px; }
    .treatments-carousel .feed-container .box .btn, .treatments-carousel .feed-container-2 .box .btn {
      margin-top: 2rem; }
  .treatments-carousel .feed-container .slick-dots, .treatments-carousel .feed-container-2 .slick-dots {
    list-style-type: none;
    padding: 0;
    margin: 2rem 0 0 0;
    display: flex;
    align-items: center;
    justify-content: center; }
    .treatments-carousel .feed-container .slick-dots li, .treatments-carousel .feed-container-2 .slick-dots li {
      margin: 0 0.5rem; }
      .treatments-carousel .feed-container .slick-dots li button, .treatments-carousel .feed-container-2 .slick-dots li button {
        font-size: 0;
        appearance: none;
        border: 0;
        background: #333;
        border-radius: 100%;
        width: 12px;
        height: 12px;
        transition: .3s;
        cursor: pointer; }
        .treatments-carousel .feed-container .slick-dots li button:hover, .treatments-carousel .feed-container .slick-dots li button:focus, .treatments-carousel .feed-container-2 .slick-dots li button:hover, .treatments-carousel .feed-container-2 .slick-dots li button:focus {
          background: #008AA8; }
    .treatments-carousel .feed-container .slick-dots .slick-active button, .treatments-carousel .feed-container-2 .slick-dots .slick-active button {
      background: #008AA8; }
  .treatments-carousel .slick-prev {
    background: none;
    border: 0;
    appearance: none;
    cursor: pointer;
    transition: .3s;
    padding: 0.5rem; }
    .treatments-carousel .slick-prev:hover, .treatments-carousel .slick-prev:focus {
      background: linear-gradient(130deg, #0CC0DF 0%, #008AA8 60%, #0CC0DF 100%);
      background-size: 150% 150%;
      background-position: top left; }
  .treatments-carousel .slick-next {
    background: none;
    border: 0;
    appearance: none;
    cursor: pointer;
    padding: 0.5rem; }
    .treatments-carousel .slick-next:hover, .treatments-carousel .slick-next:focus {
      background: linear-gradient(130deg, #0CC0DF 0%, #008AA8 60%, #0CC0DF 100%);
      background-size: 150% 150%;
      background-position: top left; }
  .treatments-carousel .feed1, .treatments-carousel .feed2 {
    margin-top: 2rem; }

.home-text {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  display: flex;
  flex-direction: column-reverse;
  padding: 2rem 0; }
  @media (min-width: 992px) {
    .home-text {
      flex-direction: row;
      padding: 6rem 2rem 6rem 0;
      align-items: flex-start; } }
  @media (min-width: 1601px) {
    .home-text {
      padding: 6rem 2rem; } }
  .home-text h1 {
    font-size: 2rem;
    position: relative;
    color: #333;
    font-weight: 500;
    text-transform: uppercase;
    padding: 0;
    margin: 1.3rem 0 0 0; }
    .home-text h1:before {
      content: 'Aesthetics & Wellness';
      position: absolute;
      top: -1.3rem;
      font-size: 0.8rem;
      color: #9E8B6F;
      left: 0;
      letter-spacing: 0.2rem; }
  .home-text .btn {
    display: inline-flex;
    margin-top: 1rem; }
  .home-text .content {
    margin-bottom: 2rem;
    padding: 0 1rem;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .5s;
    animation-fill-mode: forwards; }
    @media (min-width: 800px) {
      .home-text .content {
        padding: 0 2rem; } }
    @media (min-width: 992px) {
      .home-text .content {
        width: 40%;
        padding: 0 0 0 3rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        margin-bottom: 0; } }
    .home-text .content img {
      width: 100px; }
  .home-text .image {
    display: none;
    width: 100%;
    height: 400px;
    padding: 0 1rem;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .5s;
    animation-fill-mode: forwards; }
    @media (min-width: 992px) {
      .home-text .image {
        display: flex;
        width: 60%;
        padding: 0;
        height: 550px;
        position: relative; } }
    .home-text .image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }

.iv-therapy {
  width: 100%;
  height: 700px;
  position: relative; }
  @media (min-width: 992px) {
    .iv-therapy {
      height: 600px; } }
  .iv-therapy img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .iv-therapy .content {
    position: absolute;
    width: 80%;
    height: auto;
    left: 10%;
    top: 50%;
    transform: translateY(-50%);
    background: linear-gradient(130deg, #0CC0DF 0%, #0CC0DF 40%, #008AA8 100%);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 2rem; }
    @media (min-width: 992px) {
      .iv-therapy .content {
        width: 40%;
        left: 0; } }
    .iv-therapy .content h2 {
      font-size: 2rem;
      text-transform: uppercase;
      font-weight: 500;
      padding: 0;
      margin: 0 0 1rem 0;
      color: #FFF; }
    .iv-therapy .content p {
      color: #FFF;
      font-weight: 400;
      margin-top: 0; }
    .iv-therapy .content .btn {
      background: #FFF;
      color: #008AA8;
      display: inline-flex;
      margin-top: 1rem; }
      .iv-therapy .content .btn iconify-icon {
        color: #008AA8; }

.aesthetics {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  position: relative;
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  padding: 0 0 4rem 0; }
  @media (min-width: 800px) {
    .aesthetics {
      padding: 6rem 0; } }
  .aesthetics .image {
    width: 50%;
    height: 300px;
    padding-right: 1rem; }
    .aesthetics .image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    @media (min-width: 800px) {
      .aesthetics .image:nth-child(1) {
        order: 1;
        width: 30%;
        height: 450px;
        padding-right: 3rem; } }
    .aesthetics .image:nth-child(2) {
      margin-top: 6rem;
      padding-left: 1rem;
      padding-right: 0; }
      @media (min-width: 800px) {
        .aesthetics .image:nth-child(2) {
          order: 3;
          width: 30%;
          height: 450px;
          margin-top: 12rem;
          padding-left: 3rem; } }
  .aesthetics .content {
    width: 100%;
    padding: 3rem 1rem 0 1rem; }
    @media (min-width: 800px) {
      .aesthetics .content {
        width: 40%;
        order: 2;
        padding: 5rem 0 0 0; } }
    @media (min-width: 992px) {
      .aesthetics .content {
        padding: 5rem 2rem 0 2rem; } }
    .aesthetics .content h2 {
      font-size: 2rem;
      color: #333;
      text-transform: uppercase;
      font-weight: 500;
      position: relative;
      padding: 0;
      margin: 0 0 2rem 0; }
      .aesthetics .content h2:before {
        content: 'Our Treatments';
        position: absolute;
        top: -1.3rem;
        font-size: 0.8rem;
        color: #9E8B6F;
        left: 0;
        letter-spacing: 0.2rem; }
    .aesthetics .content .btn {
      display: inline-flex;
      margin-top: 2rem; }

.about-us {
  padding: 4rem 0 2rem 0; }
  @media (min-width: 992px) {
    .about-us {
      padding: 6rem 0; } }

.page-header {
  width: 100%;
  margin: 0 auto;
  height: 450px;
  position: relative;
  margin-top: 67px; }
  @media (min-width: 800px) {
    .page-header {
      margin-top: 0; } }
  .page-header img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative; }
  .page-header .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.3); }
    .page-header .overlay .container {
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center; }
      .page-header .overlay .container h1 {
        font-size: 2rem;
        line-height: 2.5rem;
        text-transform: uppercase;
        font-weight: 500;
        color: #FFF;
        padding: 0;
        margin: 0;
        opacity: 0;
        transform: translateY(1rem);
        animation: fadeup 1s ease;
        animation-delay: .3s;
        animation-fill-mode: forwards; }
        @media (min-width: 800px) {
          .page-header .overlay .container h1 {
            font-size: 2.5rem;
            line-height: 3rem; } }
      .page-header .overlay .container p {
        font-size: 1.1rem;
        max-width: 800px;
        color: #FFF;
        padding: 0;
        margin: 0.5rem 0 0 0;
        opacity: 0;
        transform: translateY(1rem);
        animation: fadeup 1s ease;
        animation-delay: .5s;
        animation-fill-mode: forwards; }

.service-feed {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 4rem 2rem;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 2rem; }
  @media (min-width: 500px) {
    .service-feed {
      grid-template-columns: 1fr 1fr; } }
  @media (min-width: 992px) {
    .service-feed {
      grid-template-columns: repeat(3, 1fr); } }
  .service-feed .box {
    background: #FAF8F3;
    padding: 1rem;
    margin: 0;
    text-align: left;
    text-decoration-color: transparent;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .3s;
    animation-fill-mode: forwards; }
    .service-feed .box:nth-child(2) {
      animation-delay: .5s; }
    .service-feed .box:nth-child(3) {
      animation-delay: .7s; }
    .service-feed .box:nth-child(n+4) {
      animation-delay: 1s; }
    .service-feed .box:hover .image img, .service-feed .box:focus .image img {
      transform: scale(1.1, 1.1); }
    .service-feed .box:hover .btn-outline, .service-feed .box:focus .btn-outline {
      background: #008AA8;
      color: #FFF; }
      .service-feed .box:hover .btn-outline iconify-icon, .service-feed .box:focus .btn-outline iconify-icon {
        margin-left: 1.7rem;
        color: #FFF; }
    .service-feed .box:hover .btn, .service-feed .box:focus .btn {
      background-position: bottom right; }
      .service-feed .box:hover .btn iconify-icon, .service-feed .box:focus .btn iconify-icon {
        margin-left: 1.7rem; }
    .service-feed .box .image {
      width: 100%;
      height: 300px;
      overflow: hidden; }
      .service-feed .box .image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: .3s ease-in-out; }
    .service-feed .box h3 {
      font-size: 1.1rem;
      color: #333;
      text-transform: uppercase;
      font-weight: 500;
      padding: 0;
      margin: 1rem 0; }
    .service-feed .box p {
      color: #333;
      padding: 0;
      margin: 0;
      min-height: 100px; }
    .service-feed .box .btn-outline {
      display: inline-flex;
      align-items: center;
      margin-top: 2rem;
      text-transform: uppercase;
      color: #008AA8;
      font-weight: 500;
      font-size: 1rem;
      transition: .3s ease-in-out; }
      .service-feed .box .btn-outline iconify-icon {
        margin-left: 0.8rem;
        transition: .3s ease-in-out; }
  .service-feed .box-staff {
    padding: 1rem !important; }
    .service-feed .box-staff .image {
      display: block !important;
      height: 350px !important;
      margin-bottom: 1rem; }
      .service-feed .box-staff .image img {
        object-position: top center; }
    .service-feed .box-staff h3 {
      margin: 0;
      padding: 0; }
    .service-feed .box-staff p {
      min-height: auto;
      margin-bottom: 2rem; }

.service-feed-main {
  padding-top: 0; }
  .service-feed-main .box {
    padding: 2rem; }
    .service-feed-main .box h3 {
      margin-top: 0; }
    .service-feed-main .box .image {
      display: none; }
    .service-feed-main .box .btn-outline {
      border: 0;
      padding: 0; }
    .service-feed-main .box:hover .btn-outline, .service-feed-main .box:focus .btn-outline {
      background: none;
      color: #008AA8; }
      .service-feed-main .box:hover .btn-outline iconify-icon, .service-feed-main .box:focus .btn-outline iconify-icon {
        color: #008AA8; }

.service-tabs {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 1rem 2rem 1rem;
  opacity: 0;
  transform: translateY(1rem);
  animation: fadeup 1s ease;
  animation-fill-mode: forwards;
  animation-delay: .3s; }
  @media (min-width: 800px) {
    .service-tabs {
      padding: 0 2rem 2rem 2rem; } }
  .service-tabs button {
    appearance: none;
    background: #FAF8F3;
    border: 0;
    padding: 0.8rem 1.2rem;
    text-transform: uppercase;
    cursor: pointer;
    transition: .3s; }
    .service-tabs button:hover, .service-tabs button:focus {
      background: #008AA8;
      color: #FFF; }
    .service-tabs button.active {
      background: #008AA8;
      color: #FFF; }

.service-main {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 4rem 1rem;
  display: flex;
  flex-wrap: wrap; }
  @media (min-width: 800px) {
    .service-main {
      padding: 6rem 0;
      align-items: center; } }
  .service-main article {
    width: 100%;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .3s;
    animation-fill-mode: forwards; }
    @media (min-width: 800px) {
      .service-main article {
        width: 50%;
        padding-left: 2rem;
        padding-right: 2rem; } }
    .service-main article h2 {
      font-size: 2rem;
      font-weight: 500;
      text-transform: uppercase;
      color: #008AA8;
      padding: 0;
      margin: 0;
      position: relative; }
  .service-main .images {
    display: none; }
    @media (min-width: 800px) {
      .service-main .images {
        display: flex;
        width: 50%;
        position: relative;
        padding-left: 2rem; }
        .service-main .images .image:nth-child(1) {
          width: 45%;
          margin-right: 5%;
          height: 300px;
          position: relative; }
        .service-main .images .image:nth-child(2) {
          width: 50%;
          height: 350px;
          position: relative;
          margin-top: 7rem;
          right: 0; }
        .service-main .images .image img {
          width: 100%;
          height: 100%;
          object-fit: cover; } }

.contact-page {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 4rem 2rem;
  opacity: 0;
  transform: translateY(1rem);
  animation: fadeup 1s ease;
  animation-delay: .3s;
  animation-fill-mode: forwards;
  display: flex;
  flex-wrap: wrap; }
  .contact-page article {
    width: 100%; }
    @media (min-width: 800px) {
      .contact-page article {
        width: 60%;
        padding-right: 4rem; } }
    .contact-page article h2 {
      font-size: 1.7rem;
      font-weight: 500;
      color: #008AA8;
      padding: 0; }
    .contact-page article .gfield_label {
      font-weight: 300 !important; }
    .contact-page article input[type='text'], .contact-page article input[type='email'], .contact-page article input[type='tel'], .contact-page article textarea {
      border: 1px solid #ccc;
      height: 40px; }
      .contact-page article input[type='text']:focus, .contact-page article input[type='email']:focus, .contact-page article input[type='tel']:focus, .contact-page article textarea:focus {
        outline: none;
        border-color: #008AA8;
        /* indigo */
        box-shadow: 0 0 6px rgba(2, 114, 119, 0.3); }
    .contact-page article .gfield_consent_label a {
      color: #008AA8; }
  .contact-page aside {
    width: 100%; }
    @media (min-width: 800px) {
      .contact-page aside {
        width: 40%;
        padding-left: 4rem; } }
    .contact-page aside .box {
      background: #FAF8F3;
      padding: 2rem;
      display: flex;
      flex-direction: column;
      margin-bottom: 2rem; }
      .contact-page aside .box .title {
        font-weight: 500;
        color: #008AA8;
        padding: 0;
        margin: 0 0 1rem 0;
        font-size: 1.2rem; }
      .contact-page aside .box address {
        font-style: normal;
        font-size: 1.1rem;
        margin: 0 0 1rem 0; }
      .contact-page aside .box a {
        font-size: 1.1rem;
        color: #333; }

.treatments-main {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 4rem 1rem 0 1rem;
  opacity: 0;
  transform: translateY(1rem);
  animation: fadeup 1s ease;
  animation-delay: .5s;
  animation-fill-mode: forwards;
  display: flex;
  flex-wrap: wrap; }
  @media (min-width: 800px) {
    .treatments-main {
      padding: 4rem 0; } }
  .treatments-main h2 {
    font-size: 2rem;
    position: relative;
    color: #008AA8;
    font-weight: 500;
    text-transform: uppercase;
    padding: 0;
    margin: 0; }
  .treatments-main article {
    width: 100%; }
    @media (min-width: 800px) {
      .treatments-main article {
        width: 60%;
        padding: 0 4rem 0 2rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center; }
        .treatments-main article h2 {
          margin: 0 0 1rem 0; }
        .treatments-main article p {
          margin: 0 0 1rem 0; } }
  .treatments-main .images {
    display: none; }
    @media (min-width: 800px) {
      .treatments-main .images {
        width: 40%;
        display: flex; } }
    .treatments-main .images .image:nth-child(1) {
      width: 35%;
      height: 250px; }
    .treatments-main .images .image:nth-child(2) {
      width: 60%;
      height: 350px;
      margin-top: 4rem;
      margin-left: 5%; }
    .treatments-main .images .image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }

.treatment-article {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 2rem;
  opacity: 0;
  transform: translateY(1rem);
  animation: fadeup 1s ease;
  animation-delay: 1s;
  animation-fill-mode: forwards; }
  @media (min-width: 800px) {
    .treatment-article {
      padding: 6rem 2rem; } }
  .treatment-article h2 {
    font-size: 1.7rem;
    line-height: 2.5rem;
    color: #008AA8;
    font-weight: 500;
    padding: 0;
    margin: 0; }
  .treatment-article h3 {
    font-size: 1.5rem;
    font-weight: 500;
    color: #9E8B6F; }
  .treatment-article strong {
    font-weight: 500;
    color: #008AA8;
    font-size: 1.1rem; }
  .treatment-article p:first-child {
    margin-top: 0; }
  .treatment-article .has-small-font-size strong {
    font-size: 0.8rem; }
  .treatment-article ul {
    list-style-type: none;
    padding: 0;
    margin: 0; }
  .treatment-article li {
    font-size: 1.1rem;
    font-weight: 300;
    margin-bottom: 0.5rem;
    padding-left: 1rem;
    position: relative; }
    .treatment-article li:before {
      content: '-';
      position: absolute;
      top: 0;
      left: 0;
      color: #0CC0DF; }
    .treatment-article li:last-child {
      margin-bottom: 0; }
  .treatment-article .wp-block-table thead {
    border-bottom: 0; }
  .treatment-article .wp-block-table th {
    background: #9E8B6F;
    text-align: left;
    color: #FFF;
    font-weight: 500; }
  .treatment-article .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background: #FAF8F3; }
  .treatment-article .wp-block-cover {
    padding: 2rem; }
    .treatment-article .wp-block-cover h3 {
      font-weight: 500;
      font-size: 1.3rem;
      padding: 0;
      margin: 0 0 1rem 0; }
    .treatment-article .wp-block-cover p strong {
      color: #9E8B6F; }
    .treatment-article .wp-block-cover .has-small-font-size {
      margin-bottom: 0; }
      .treatment-article .wp-block-cover .has-small-font-size strong {
        font-size: 13px !important; }
  .treatment-article .service-feed img {
    width: 100%;
    max-width: 40px !important; }
  .treatment-article .service-feed h2 {
    grid-column: 1/2; }
    @media (min-width: 576px) {
      .treatment-article .service-feed h2 {
        grid-column: 1/3; } }
    @media (min-width: 800px) {
      .treatment-article .service-feed h2 {
        grid-column: 1/4; } }
  .treatment-article .small p, .treatment-article .small strong {
    font-size: 0.9rem;
    color: #333;
    min-height: auto; }

.treatment-article-two .service-feed {
  grid-template-columns: 1fr; }
  @media (min-width: 800px) {
    .treatment-article-two .service-feed {
      grid-template-columns: repeat(2, 1fr); } }
  .treatment-article-two .service-feed .box h4 {
    font-weight: 400; }
  .treatment-article-two .service-feed .box .small p, .treatment-article-two .service-feed .box .small strong {
    font-size: 0.9rem;
    color: #333;
    min-height: auto; }

.treatment-article-stacked {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto; }
  .treatment-article-stacked .wp-block-table thead {
    border-bottom: 0; }
  .treatment-article-stacked .wp-block-table th {
    background: #9E8B6F;
    text-align: left;
    color: #FFF;
    font-weight: 500; }
  .treatment-article-stacked .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background: #FAF8F3; }
  .treatment-article-stacked h3 {
    font-size: 1.5rem;
    font-weight: 500;
    color: #9E8B6F; }
  .treatment-article-stacked .gfield_label {
    font-weight: 300 !important; }
  .treatment-article-stacked input[type='text'], .treatment-article-stacked input[type='email'], .treatment-article-stacked input[type='tel'], .treatment-article-stacked textarea {
    border: 1px solid #ccc;
    height: 40px; }
    .treatment-article-stacked input[type='text']:focus, .treatment-article-stacked input[type='email']:focus, .treatment-article-stacked input[type='tel']:focus, .treatment-article-stacked textarea:focus {
      outline: none;
      border-color: #008AA8;
      /* indigo */
      box-shadow: 0 0 6px rgba(2, 114, 119, 0.3); }
  .treatment-article-stacked .gfield_consent_label a {
    color: #008AA8; }

.book-mobile {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 0 1rem 0; }
  @media (min-width: 800px) {
    .book-mobile {
      display: none; } }
  .book-mobile .btn {
    padding: 0.7rem 1rem;
    margin-right: 0.5rem; }

.pricing {
  background: linear-gradient(120deg, #008AA8 0%, #008AA8 70%, #0CC0DF 100%);
  display: flex;
  flex-wrap: wrap;
  position: relative; }
  .pricing .container {
    position: relative; }
    @media (min-width: 800px) {
      .pricing .container {
        justify-content: space-between;
        display: flex; } }
  .pricing .info {
    width: 100%;
    display: flex;
    margin-bottom: 2rem;
    position: relative;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .7s;
    animation-fill-mode: forwards; }
    @media (min-width: 800px) {
      .pricing .info {
        width: auto;
        margin-bottom: 0; } }
    .pricing .info .price {
      font-size: 1.5rem;
      line-height: 1.5rem;
      color: #FFF;
      padding-right: 1rem;
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center; }
      .pricing .info .price:after {
        content: ' ';
        position: absolute;
        right: 0;
        width: 1px;
        height: 20px;
        top: 50%;
        transform: translateY(-50%);
        background: rgba(255, 255, 255, 0.3); }
      .pricing .info .price span {
        font-size: 0.8rem;
        line-height: 0.8rem; }
    .pricing .info .duration {
      padding-left: 1rem;
      font-size: 1.5rem;
      line-height: 1.5rem;
      color: #FFF;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center; }
      .pricing .info .duration span {
        font-size: 0.8rem;
        line-height: 0.8rem; }
  .pricing .buttons {
    width: 100%;
    opacity: 0;
    transform: translateY(1rem);
    animation: fadeup 1s ease;
    animation-delay: .7s;
    animation-fill-mode: forwards; }
    @media (min-width: 800px) {
      .pricing .buttons {
        width: auto; } }
    .pricing .buttons .btn {
      background: #FFF;
      color: #008AA8; }
      .pricing .buttons .btn:nth-child(1) {
        margin-right: 0.5rem; }
      .pricing .buttons .btn:hover, .pricing .buttons .btn:focus {
        background: #0CC0DF;
        color: #FFF; }

.triple-image {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 2rem; }
  @media (min-width: 800px) {
    .triple-image {
      grid-template-columns: repeat(3, 1fr);
      grid-gap: 4rem; } }
  .triple-image .image {
    width: 100%;
    height: 320px; }
    .triple-image .image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .triple-image .image:nth-child(2) {
      margin-top: 4rem; }
      @media (min-width: 800px) {
        .triple-image .image:nth-child(2) {
          margin-top: 0; } }
    .triple-image .image:nth-child(3) {
      display: none; }
      @media (min-width: 800px) {
        .triple-image .image:nth-child(3) {
          display: block; } }

.faqs {
  margin-top: 4rem;
  background: #FAF8F3;
  padding: 2rem 0; }
  .faqs .container {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    flex-direction: column; }
    .faqs .container h2 {
      font-size: 2rem;
      font-weight: 400;
      text-align: center;
      padding: 0;
      margin: 0 0 2rem 0; }
    .faqs .container .accordion {
      appearance: none;
      background: none;
      border: 0;
      border-bottom: 1px solid #FAF8F3;
      width: 100%;
      text-align: left;
      padding: 0 0 0.5rem 0;
      font-size: 1.1rem;
      font-weight: 500;
      margin-bottom: 0.5rem;
      cursor: pointer;
      font-family: "router", sans-serif;
      position: relative; }
      .faqs .container .accordion:after {
        content: '\02795';
        font-size: 0.8rem;
        color: #008AA8;
        float: right;
        margin-left: 5px; }
      .faqs .container .accordion.active:after {
        content: "\2796"; }
    .faqs .container .panel {
      padding: 0;
      background-color: none;
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.2s ease-out; }
    .faqs .container p {
      margin-top: 0; }
      .faqs .container p strong {
        font-weight: 500;
        font-size: 1.1rem; }
    .faqs .container li {
      font-weight: 300;
      font-size: 1.1rem;
      margin-bottom: 0.5rem; }
      .faqs .container li:last-child {
        margin-bottom: 0; }

.treatments-carousel-white {
  background: #FFF;
  padding: 6rem 0; }
  .treatments-carousel-white .feed-container .box {
    background: #FAF8F3; }

.treatment-article-wide {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto; }
  .treatment-article-wide .service-feed {
    padding: 2rem 0 0 0; }
    .treatment-article-wide .service-feed h3 {
      padding: 0;
      margin: 0; }
    .treatment-article-wide .service-feed span {
      display: block;
      margin: 0 0 1rem 0;
      font-weight: 500;
      color: #9E8B6F; }

.service-staff {
  padding: 2rem; }
  @media (min-width: 500px) {
    .service-staff {
      grid-template-columns: 1fr; } }
  @media (min-width: 800px) {
    .service-staff {
      grid-template-columns: 1fr 1fr; } }
  @media (min-width: 992px) {
    .service-staff {
      grid-template-columns: repeat(3, 1fr); } }

.staff-single {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  padding: 4rem 2rem;
  opacity: 0;
  transform: translateY(1rem);
  animation: fadeup 1s ease;
  animation-delay: .5s;
  animation-fill-mode: forwards; }
  @media (min-width: 800px) {
    .staff-single {
      flex-direction: row;
      position: relative; } }
  .staff-single article {
    width: 100%; }
    @media (min-width: 800px) {
      .staff-single article {
        width: 60%;
        position: relative; } }
    .staff-single article h2 {
      font-size: 1.7rem;
      font-weight: 400;
      color: #333; }
    .staff-single article p a {
      font-size: 1.1rem;
      color: #008AA8; }
  .staff-single aside {
    width: 100%; }
    @media (min-width: 800px) {
      .staff-single aside {
        width: 40%;
        padding-left: 6rem; } }
    .staff-single aside img {
      border: 10px solid #FAF8F3; }
      @media (min-width: 800px) {
        .staff-single aside img {
          width: 100%;
          height: auto; } }

.std-content {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 4rem 2rem; }
  .std-content h2 {
    font-size: 1.5rem;
    font-weight: 400;
    color: #008AA8; }
  .std-content ul {
    list-style-type: none;
    padding: 0;
    margin: 0; }
  .std-content li {
    font-size: 1.1rem;
    margin-bottom: 1rem;
    padding-left: 1rem;
    position: relative; }
    .std-content li:before {
      content: '-';
      position: absolute;
      top: 0;
      left: 0;
      color: #0CC0DF; }
  .std-content:last-child {
    margin-bottom: 0; }
  .std-content a {
    color: #333;
    text-decoration-color: transparent;
    font-size: 1.1rem; }
    .std-content a:hover, .std-content a:focus {
      color: #008AA8; }

.no-min-height .box p {
  min-height: auto; }

.work-with-us {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 2rem;
  background: #FAF8F3;
  margin-bottom: 4rem; }
  .work-with-us h2 {
    font-size: 2rem;
    font-weight: 500;
    text-transform: uppercase; }

.skin-cycle {
  width: 100%;
  margin: 0 auto; }
  .skin-cycle .container {
    display: flex;
    flex-wrap: wrap;
    padding: 4rem 1rem; }
    @media (min-width: 800px) {
      .skin-cycle .container {
        padding: 6rem 2rem 8rem 2rem;
        align-items: flex-start;
        justify-content: center;
        flex-direction: row-reverse; } }
    .skin-cycle .container .video-box, .skin-cycle .container .image {
      width: 100%;
      position: relative;
      z-index: 1; }
      @media (min-width: 992px) {
        .skin-cycle .container .video-box, .skin-cycle .container .image {
          width: 50%; }
          .skin-cycle .container .video-box:before, .skin-cycle .container .image:before {
            content: ' ';
            position: absolute;
            bottom: -2rem;
            right: -2rem;
            width: 100%;
            height: 100%;
            background: #FAF8F3;
            z-index: -1; } }
      .skin-cycle .container .video-box video, .skin-cycle .container .image video {
        width: 100%;
        height: auto; }
    .skin-cycle .container .image {
      height: 500px; }
      .skin-cycle .container .image img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .skin-cycle .container .content {
      padding-top: 3rem; }
      @media (min-width: 992px) {
        .skin-cycle .container .content {
          width: 50%;
          padding-top: 1.3rem;
          padding-right: 4rem;
          padding-left: 1rem; } }
      .skin-cycle .container .content h2 {
        font-size: 2rem;
        font-weight: 500;
        padding: 0;
        margin: 0;
        text-transform: uppercase;
        position: relative; }
        .skin-cycle .container .content h2:before {
          content: 'Understand Your Skin';
          position: absolute;
          top: -1.3rem;
          font-size: 0.8rem;
          color: #9E8B6F;
          left: 0;
          letter-spacing: 0.2rem; }
      .skin-cycle .container .content .btn {
        display: inline-flex;
        margin-top: 1rem; }

.skin-cycle-alt .container .content h2:before {
  content: 'Health & Longevity'; }

.award-logos {
  width: 100%;
  background: #FAF8F3;
  margin: 0 auto;
  padding: 2rem; }
  .award-logos .container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; }
  .award-logos .text {
    display: none; }
    @media (min-width: 992px) {
      .award-logos .text {
        width: 60%;
        display: flex;
        flex-direction: column; } }
    .award-logos .text h2 {
      padding: 0;
      margin: 0;
      font-size: 1.8rem;
      text-transform: uppercase;
      font-weight: 500; }
      @media (min-width: 992px) {
        .award-logos .text h2 {
          margin: 0; } }
      @media (min-width: 1200px) {
        .award-logos .text h2 {
          font-size: 2rem; } }
    .award-logos .text p {
      padding: 0;
      margin: 0; }
  .award-logos .awards-block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%; }
    .award-logos .awards-block img {
      width: 100px; }
    @media (min-width: 992px) {
      .award-logos .awards-block {
        display: flex;
        width: 40%; } }

.medical-aesthetics {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 4rem 1rem; }
  @media (min-width: 576px) {
    .medical-aesthetics {
      padding: 4rem 0; } }
  @media (min-width: 992px) {
    .medical-aesthetics {
      padding: 4rem 2rem; } }
  .medical-aesthetics .three-images {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 3rem;
    margin-bottom: 1rem; }
    @media (min-width: 576px) {
      .medical-aesthetics .three-images {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 992px) {
      .medical-aesthetics .three-images {
        grid-template-columns: repeat(3, 1fr); } }
    .medical-aesthetics .three-images .image {
      width: 100%;
      height: 500px; }
      @media (min-width: 576px) {
        .medical-aesthetics .three-images .image {
          height: 350px; } }
      @media (min-width: 800px) {
        .medical-aesthetics .three-images .image {
          height: 450px; } }
      .medical-aesthetics .three-images .image img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
      .medical-aesthetics .three-images .image:nth-child(2) {
        display: none; }
        @media (min-width: 576px) {
          .medical-aesthetics .three-images .image:nth-child(2) {
            display: block;
            margin-top: 3rem; } }
        @media (min-width: 992px) {
          .medical-aesthetics .three-images .image:nth-child(2) {
            margin-top: 0; } }
      .medical-aesthetics .three-images .image:nth-child(3) {
        display: none; }
        @media (min-width: 992px) {
          .medical-aesthetics .three-images .image:nth-child(3) {
            display: block; } }
  .medical-aesthetics .btn {
    display: inline-flex;
    margin-top: 1rem; }
  .medical-aesthetics .content {
    display: flex;
    flex-wrap: wrap; }
    @media (min-width: 576px) {
      .medical-aesthetics .content {
        padding: 0 1rem; } }
    @media (min-width: 800px) {
      .medical-aesthetics .content {
        padding-top: 2rem; } }
    @media (min-width: 992px) {
      .medical-aesthetics .content {
        padding: 2rem 0 0 0; } }
    .medical-aesthetics .content h2 {
      font-size: 2rem;
      text-transform: uppercase;
      font-weight: 500;
      padding: 0;
      margin: 0 0 1rem 0; }
      @media (min-width: 800px) {
        .medical-aesthetics .content h2 {
          width: 40%;
          padding-right: 3rem; } }
    @media (min-width: 800px) {
      .medical-aesthetics .content .text {
        width: 60%; } }
    .medical-aesthetics .content .text p {
      margin-top: 0; }

.longevity {
  width: 100%;
  max-width: 1601px;
  margin: 0 auto;
  padding: 4rem 1rem; }
  @media (min-width: 992px) {
    .longevity {
      padding: 6rem 0;
      display: flex;
      flex-wrap: wrap;
      position: relative; } }
  @media (min-width: 1601px) {
    .longevity {
      padding: 6rem 2rem; } }
  .longevity .image {
    width: 100%;
    height: 400px; }
    @media (min-width: 992px) {
      .longevity .image {
        width: 30%; } }
    .longevity .image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .longevity .right-image {
    display: none; }
    @media (min-width: 992px) {
      .longevity .right-image {
        width: 30%;
        display: block;
        position: absolute;
        bottom: 6rem;
        right: 0; } }
  .longevity .content {
    margin-top: 2rem; }
    @media (min-width: 992px) {
      .longevity .content {
        width: 40%;
        padding: 0 4rem;
        margin-top: 0; } }
    .longevity .content h2 {
      font-size: 2rem;
      text-transform: uppercase;
      font-weight: 500;
      padding: 0;
      margin: 0; }
    .longevity .content .btn {
      display: inline-flex;
      margin-top: 1rem; }

.shop {
  width: 100%;
  padding: 4rem 0;
  background: #FAF8F3; }
  .shop .container {
    padding: 0 1rem;
    flex-direction: column;
    text-align: center; }
    .shop .container h2 {
      font-size: 2rem;
      text-transform: uppercase;
      font-weight: 500;
      padding: 0;
      margin: 0; }
    .shop .container p {
      margin-top: 0;
      margin-bottom: 2rem; }
    .shop .container .shop-feed {
      display: grid;
      grid-template-columns: 1fr;
      grid-gap: 2rem; }
      @media (min-width: 576px) {
        .shop .container .shop-feed {
          grid-template-columns: repeat(2, 1fr); } }
      @media (min-width: 992px) {
        .shop .container .shop-feed {
          grid-template-columns: repeat(4, 1fr); } }
      .shop .container .shop-feed a {
        background: #FFF;
        padding: 2rem;
        text-decoration-color: transparent; }
        .shop .container .shop-feed a img {
          width: 100%;
          max-width: 400px;
          margin: 0 auto;
          text-align: center; }
        .shop .container .shop-feed a p {
          font-size: 1.2rem;
          color: #333;
          font-weight: 500;
          margin-top: 1rem; }
          .shop .container .shop-feed a p span {
            color: #9E8B6F; }

/*# sourceMappingURL=style.css.map */
