/*
Theme Name: wildsmiles_child
Theme URI: https://nuvolum.com/
Description: Wildsmiles Child Theme
Author: Nuvolum
Template: wildsmiles
Version: 1.0
*/

:root {
    --doctor-btn-background-color: #006da7;
}

html {
	scroll-behavior: smooth;
}

/* Bulma Fixes */

a {
    cursor: pointer;
    font-weight: 500;
    color: #30abe1;
}

a:hover {
    font-weight: bold;
    color: #006da7;
}

a:active {
    font-weight: bold;
    color: #30abe1;
}

.column {
    padding: 0;
}

html {
    width: 100%;
}

body {
    background: #ffffff;
    color: #545454;
    font-family: "Montserrat", sans-serif;
    width: 100%;
}

h1 {
    font-family: Montserrat;
    font-size: 50px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
}

h1.title {
    margin: 0;
    left: 4.1666vw;
}

.content-container {
    padding-bottom: initial;
}


/* Nav */

.nav-logo {
    height: 75px;
    width: auto;
}

.nav-logo:hover {
    opacity: 0.5;
    cursor: pointer;
}

.gradient-btn.nav-btn {
    position: absolute;
    right: 4.1666vw;
    font-family: "Montserrat", sans-serif;
}

.header-container {
    height: 93px;
    width: 100%;
    border: unset;
    box-shadow: unset;
}

header {
    width: 100%;
    height: 100%;
}

nav {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

nav ul {
    float: unset;
}

nav ul a {
    font-family: "Montserrat";
    font-size: 12px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #545454;
    padding: 0;
    margin: 0 25px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    position: relative;
}

nav ul a:hover {
    font-size: 12px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #545454;
    opacity: 1;
}

nav ul a:active {
    font-size: 12px;
    font-weight: 700;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #30abe1;
    opacity: 1;
}

nav ul a.nav-link-active-page {
    font-size: 12px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #30abe1;
}

nav ul a.nav-link-active-page:after,
nav ul a:active:after {
    content: "";
    height: 2px;
    width: 100%;
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 18%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 76%, #00aaf3 88%, #009be5 96%, #aaddc5 103%, #83c46b 108%);
    position: absolute;
    bottom: -2px;
    left: 0;
}

.subheading {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    margin-bottom: 8px;
}

h2 {
    font-size: 36px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #545454;
}

h4 {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
}

@media only screen and (max-width: 767px) {
    h1 {
        font-size: 40px;
    }
    h2 {
        font-size: 20px;
    }
    p {
        font-size: 18px;
    }
}

.doctor-page.header-container {
    height: 100px;
}

nav.doctor-nav {
    background-color: #001a3e;
}

nav.doctor-nav.desktop-nav {
	display: flex;
    justify-content: initial;
}
nav.patient-nav.desktop-nav {
	display: flex;
}
nav.patient-nav.mobile-nav,
nav.doctor-nav.mobile-nav {
		display: none;
	}
@media(max-width: 1250px) {
	nav.patient-nav.desktop-nav,
	nav.doctor-nav.desktop-nav {
		display: none;
	}
	nav.patient-nav.mobile-nav,
	nav.doctor-nav.mobile-nav {
		display: flex !important;
	}
}


nav.doctor-nav .nav-logo {
    padding: 0;
    margin-left: 4.166vw;
}

nav.doctor-nav .nav-logo img {
    height: 75px;
    margin-bottom: 8px;
}

nav.doctor-nav ul.doctor-nav-items {
    position: absolute;
    margin-left: 17.2vw;
}

nav.doctor-nav ul a {
    font-size: 12px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #ffffff;
}

nav.doctor-nav ul a:hover {
    font-weight: 700;
}

nav.doctor-nav ul.nav-cta {
    color: #ffffff;
    position: absolute;
    right: 19.2vw;
    display: flex;
    justify-content: center;
    align-items: center;
}

nav.doctor-nav ul.nav-cta a {
    margin: 35px 4px;
}

nav.doctor-nav .gradient-btn span {
    background-color: #001a3e;
    color: #ffffff;
}

@media only screen and (max-width: 1250px) {
    .header-container {
        height: 66px;
    }
    nav.mobile-nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 28px 0 11px;
        z-index: 4;
        /* Hamburger Icon 3 & animation */
    }
    nav.mobile-nav a {
        padding: 0;
    }
    nav.mobile-nav .nav-logo {
        height: 56px;
        width: auto;
    }
    nav.mobile-nav .navicon-circle {
        width: 28px;
        height: 28px;
        border: solid 2px #00adf3;
        border-radius: 50%;
        position: relative;
        z-index: 6;
    }
    nav.mobile-nav #navicon-3 {
        width: 14px;
        height: 9px;
        position: absolute;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        -o-transition: 0.5s ease-in-out;
        transition: 0.5s ease-in-out;
        cursor: pointer;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
    nav.mobile-nav #navicon-3 span {
        display: block;
        position: absolute;
        height: 1px;
        width: 100%;
        background: #00adf3;
        border-radius: 1px;
        opacity: 1;
        left: 0;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: 0.25s ease-in-out;
        -moz-transition: 0.25s ease-in-out;
        -o-transition: 0.25s ease-in-out;
        transition: 0.25s ease-in-out;
    }
    nav.mobile-nav .navicon-circle.open {
        border-color: #ffffff;
        -webkit-transition: border-color 0.25s ease-in-out;
        -moz-transition: border-color 0.25s ease-in-out;
        -o-transition: border-color 0.25s ease-in-out;
        transition: border-color 0.25s ease-in-out;
    }
    nav.mobile-nav #navicon-3.open {
        width: 17px;
    }
    nav.mobile-nav #navicon-3.open span {
        background: #ffffff;
    }
    nav.mobile-nav #navicon-3 span:nth-child(1) {
        top: 0px;
    }
    nav.mobile-nav #navicon-3 span:nth-child(2),
    nav.mobile-nav #navicon-3 span:nth-child(3) {
        top: 4px;
    }
    nav.mobile-nav #navicon-3 span:nth-child(4) {
        top: 8px;
    }
    nav.mobile-nav #navicon-3.open span:nth-child(1) {
        top: 4px;
        width: 0%;
        left: 50%;
    }
    nav.mobile-nav #navicon-3.open span:nth-child(2) {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
        width: 18px;
    }
    nav.mobile-nav #navicon-3.open span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
        width: 18px;
    }
    nav.mobile-nav #navicon-3.open span:nth-child(4) {
        top: 4px;
        width: 0%;
        left: 50%;
    }
    .fixedPosition {
        position: fixed;
    }
    .hamburger-menu {
        height: 100%;
        position: fixed;
        top: -100vh;
        right: -100vw;
        width: 0;
        overflow-x: hidden;
        white-space: nowrap;
        border-radius: 100%;
    }
    .hamburger-menu.hamburger-menu--open {
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        border-radius: 0;
        animation-name: menuAnimOpen;
        animation-timing-function: cubic-bezier(0.24, 0.64, 0.05, 0.89);
        animation-duration: 0.5s;
        background-color: #00adf3;
        z-index: 3;
    }
    nav.doctor-nav .hamburger-menu.hamburger-menu--open {
        background-color: #001a3e;
    }
    nav.doctor-nav .hamburger-menu.hamburger-menu--open .menu-1 {
        margin-bottom: 36px;
    }
    nav.doctor-nav .hamburger-menu .menu-content .menu-3 li {
        margin-bottom: 36px;
    }
    nav.doctor-nav .hamburger-menu .menu-content .menu-3 li a {
        font-size: 24px;
        font-weight: bold;
        font-stretch: normal;
        font-style: normal;
        line-height: 1;
        letter-spacing: normal;
        color: #00adf3;
    }
    .hamburger-menu .hamburger-menu--opening,
    .hamburger-menu .hamburger-menu--closing {
        pointer-events: none;
    }
    .hamburger-menu.hamburger-menu--closing {
        animation-name: menuAnimClose;
        animation-timing-function: cubic-bezier(0.24, 0.64, 0.05, 0.89);
        animation-delay: 300ms;
        animation-duration: 1s;
    }
    .hamburger-menu.hamburger-menu--closing .hamburger-menu-content {
        opacity: 0;
        transition: opacity 300ms ease-in-out;
    }
    @keyframes menuAnimOpenNew {
        0% {
            clip-path: ellipse(0px 0px at 100% 0%);
        }
        100% {
            clip-path: ellipse(120vw 120vw at 100% 0%);
        }
    }
    @keyframes menuAnimCloseNew {
        0% {
            clip-path: ellipse(120vw 120vw at 100% 0%);
        }
        100% {
            clip-path: ellipse(0px 0px at 100% 0%);
        }
    }
    .hamburger-menu .menu-content {
        display: flex;
        flex-direction: column;
        margin-top: 80px;
    }
    .hamburger-menu .menu-content .menu-content-list li {
        padding-left: 78px;
        float: left;
        clear: left;
    }
    .hamburger-menu .menu-content .menu-1 li {
        margin-bottom: 36px;
    }
    .hamburger-menu .menu-content .menu-2 li:not(:last-of-type) {
        margin-bottom: 36px;
    }
    .hamburger-menu .menu-content .menu-1 li a {
        font-size: 24px;
        font-weight: 500;
        font-stretch: normal;
        font-style: normal;
        line-height: 1;
        letter-spacing: normal;
        color: #ffffff;
    }
    .hamburger-menu .menu-content .menu-2 li a {
        font-size: 14px;
        font-weight: bold;
        font-stretch: normal;
        font-style: normal;
        line-height: 1;
        letter-spacing: normal;
        color: #ffffff;
    }
    .hamburger-menu .menu-content .gradient-line {
        align-self: center;
        width: 284px;
        height: 1px;
        border: solid 2px #ffffff;
        margin-bottom: 36px;
    }
}

@media only screen and (max-width: 1023px) {
    .reverse-columns-touch {
        display: flex;
        flex-direction: column-reverse;
    }
}

@media only screen and (max-width: 767px) {
    h2 {
        font-size: 34px;
        font-weight: normal;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.29;
        letter-spacing: normal;
    }
}


/* Button */

.btn:hover,
.button:hover {
    cursor: pointer;
    box-shadow: none;
    margin: initial;
    padding: initial;
}

.gradient-btn {
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 18%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 76%, #00aaf3 88%, #009be5 96%, #aaddc5 103%, #83c46b 108%);
    border-radius: 35px;
    border-width: 2px;
    box-sizing: border-box;
    color: #00a84f;
    display: block;
    height: 42px;
    letter-spacing: 1px;
    position: relative;
    text-decoration: none;
    width: 156px;
    z-index: 2;
    cursor: pointer;
    overflow: hidden;
}


/* .gradient-btn:before {
    content: '';
    background-image: linear-gradient(to right, #84c26b 5%, #008a1d 18%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 76%, #00aaf3 88%, #009be5 96%, #aaddc5 103%, #83c46b 108%);
    height: 156px;
    width: 300px;
    border-radius: 35px;
    position: absolute;
    top: -50px;
    left: -75px;
    transition: 3s ease-in-out;
  }
  
  .gradient-btn:hover::before {
    animation: rotating 1.5s linear infinite;
    -webkit-animation: rotating 1.5s linear infinite;
    -moz-animation: rotating 1.5s linear infinite;
  } */

.gradient-btn:hover {
    opacity: 0.5;
    -webkit-animation-name: spin;
    -webkit-animation-duration: 2000ms;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-name: spin;
    -moz-animation-duration: 2000ms;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: spin;
    -ms-animation-duration: 2000ms;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    animation-name: spin;
    animation-duration: 2000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

.gradient-btn span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    align-items: center;
    background: #fff;
    border-radius: 35px;
    display: flex;
    justify-content: center;
    height: 38px;
    transition: background 0.5s ease;
    width: 152px;
    font-size: 12px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #545454;
}

.gradient-btn i {
    margin-left: 6px;
    font-weight: 500;
}

.gradient-btn.go-back-btn {
    position: absolute;
    top: 120px;
    left: 4.1666vw;
    height: 36px;
    width: 74px;
    z-index: 140;
}

.gradient-btn:before.go-back-btn {
    content: "";
    height: 75px;
    width: 150px;
    border-radius: 35px;
    position: absolute;
    top: -20px;
    left: -35px;
    /* transition: 3s ease-in-out; */
}

.gradient-btn.go-back-btn:hover::before {
    animation: rotating 1.5s linear infinite;
    -webkit-animation: rotating 1.5s linear infinite;
    -moz-animation: rotating 1.5s linear infinite;
}

.gradient-btn.go-back-btn span {
    height: 32px;
    width: 71px;
}

.gradient-btn.go-back-btn i {
    margin: 0 6px 0 0;
    font-weight: 500;
}

.gradient-btn span .fa-long-arrow-right {
    font-size: 16px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: inherit;
    margin-left: 9px;
}

.big-btn {
    width: 208px;
    height: 72px;
    border-radius: 35px;
    background-color: #00adf3;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #ffffff;
}

.big-btn-dark {
    width: 208px;
    height: 72px;
    border-radius: 35px;
    background-color: #006da7;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #ffffff;
}

.small-btn,
button._submit,
.wpcf7 input[type="submit"],
input.woocommerce-Button.button,
#birs_book_appointment {
    width: 146px;
    height: 50px;
    border-radius: 35px;
    background-color: #00adf3;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #ffffff;
}

.small-btn-dark {
    width: 146px;
    height: 50px;
    border-radius: 35px;
    background-color: #006da7;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #ffffff;
}

.big-btn .fal,
.big-btn-dark .fal {
    vertical-align: middle;
}

.big-btn .fa-play,
.big-btn-dark .fa-play {
    margin-left: 36px;
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: inherit;
}

.big-btn .fa-long-arrow-right,
.big-btn-dark .fa-long-arrow-right {
    font-size: 26px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: inherit;
    margin-left: 17px;
}

.big-btn:hover,
.big-btn-dark:hover,
.small-btn:hover,
button._submit:hover,
input.woocommerce-Button.button:hover,
.wpcf7 input[type="submit"]:hover,
#birs_book_appointment:hover {
    opacity: 0.3;
    color: #ffffff;
    background-color: #00adf3;
}

.small-btn-dark:hover {
    opacity: 0.3;
    color: #ffffff;
}

.big-btn:active,
.small-btn:active,
button._submit:active,
input.woocommerce-Button.button:active,
.wpcf7 input[type="submit"]:active,
#birs_book_appointment:active {
    border: solid 1px #00adf3;
    background-color: #ffffff;
    color: #00adf3;
    opacity: 1;
}

.big-btn-dark:active {
    border: solid 1px #006da7;
    background-color: #ffffff;
    color: #006da7;
    opacity: 1;
}

.button-group {
    display: flex;
}

.button-group .big-btn:first-of-type,
.big-btn-dark:first-of-type,
.small-btn:first-of-type {
    margin-right: 17px;
}

a.link {
    color: #00adf3;
    cursor: pointer;
    position: relative;
}

a.link:hover {
    color: #c0e5f6;
}

a.link:active:after {
    content: "";
    text-align: center;
    height: 2px;
    width: 100%;
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 18%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 76%, #00aaf3 88%, #009be5 96%, #aaddc5 103%, #83c46b 108%);
    position: absolute;
    bottom: 0;
    left: 0;
}

@media only screen and (max-width: 767px) {
    .gradient-btn.go-back-btn {
        top: 106px;
        display: none;
    }
    .big-btn {
        width: 150px;
        height: 52px;
        border-radius: 25px;
        background-color: #00adf3;
        font-size: 14px;
        font-weight: 500;
        font-stretch: normal;
        font-style: normal;
        line-height: normal;
        letter-spacing: normal;
        color: #ffffff;
    }
    .big-btn-dark {
        width: 150px;
        height: 52px;
        border-radius: 25px;
        font-size: 14px;
        font-weight: 500;
        font-stretch: normal;
        font-style: normal;
        line-height: normal;
        letter-spacing: normal;
    }
    .big-btn .fa-long-arrow-right {
        margin-left: 11px;
        font-size: 19px;
        font-weight: 300;
        font-stretch: normal;
        font-style: normal;
        line-height: normal;
        letter-spacing: normal;
        color: inherit;
    }
    .big-btn .fa-play {
        margin-left: 27px;
        font-size: 13px;
        font-weight: 300;
        font-stretch: normal;
        font-style: normal;
        line-height: normal;
        letter-spacing: normal;
        color: inherit;
    }
}


/* .gradient-btn:hover span {
      background: transparent;
  } */


/***************************************/


/**  Home Page  **/


/***************************************/

body.page-template-page-home {
    background-color: transparent;
}

body.page-template-page-home nav,
body.page-template-page-home div.header-container {
    background-color: transparent;
}

.video-container {
    margin-top: -93px;
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    top: 0;
}

#homeSizzleDesktop {
    object-fit: cover;
    width: 100vw;
    height: calc(100vh - 18px);
    position: absolute;
    top: 0;
    left: 0;
}

#homeSizzleMobile {
    display: block;
}

#homeGradientBar {
    object-fit: fill;
    height: 18px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

.sizzle-text {
    position: absolute;
    top: 33.6vh;
    width: 100%;
}

.sizzle-text h1 {
    font-size: 50px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: #545454;
    margin-bottom: 18px;
}

.sizzle-text p {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 27px;
}

.sizzle-text h1 {
    font-size: 50px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: #545454;
}

@media only screen and (max-width: 767px) {
    #chat-widget-container {
        display: none;
    }
    .video-container {
        margin-top: -66px;
        position: relative;
        width: 100%;
        height: auto;
        top: 0;
    }
    #homeGradientBar {
        position: unset;
        width: 100%;
        display: block;
    }
    .mobile-sizzle-container {
        position: relative;
    }
    .mobile-sizzle-container .button-group {
        position: absolute;
        bottom: 35px;
    }
    .sizzle-text {
        position: initial;
    }
    .sizzle-text h1 {
        font-size: 35px;
        font-weight: 500;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.43;
        letter-spacing: normal;
        text-align: center;
        color: #545454;
        margin-top: 20px;
    }
    .sizzle-text p {
        font-size: 14px;
        font-weight: normal;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.43;
        letter-spacing: normal;
        text-align: center;
        color: #a2a2a2;
        margin-bottom: 20px;
    }
}


/***************************************/


/**  Find A Doctor Page  **/


/***************************************/

.page-template-page-find-doctor .content-container {
    padding-bottom: 60px;
}

.find-a-doctor-top-section {
    margin-top: 64px;
    margin-bottom: 52px;
}

.find-a-doctor-top-section p {
    font-size: 28px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.57;
    letter-spacing: normal;
    color: #a2a2a2;
}

.doctor-store-locator h2 {
    display: none;
}

.store_locator_plus div#map.slp_map {
    float: right;
    width: 41.7vw;
    clear: right;
}

.store_locator_plus div#map_sidebar {
    overflow: initial;
    width: 37vw;
}

div.results_row_left_column,
div.results_row_center_column {
    /* width: 33%; */
    padding: 0 10px;
}

div.results_row_left_column {
    padding-left: 0;
}

.store_locator_plus span.tagtext {
    display: none;
}

.store_locator_plus div#map_sidebar div.results_entry {
    background-color: #ffffff;
    border: unset;
    border-bottom: solid 1px #979797;
    color: #333333;
    cursor: unset;
    float: left;
    height: 200px;
    line-height: unset;
    margin: 0 2px 2px;
    padding: 3px;
    position: relative;
    width: 100%;
}

.store_locator_plus div.results_entry span.location_name {
    color: #333333;
}

.store_locator_plus div#map_sidebar div.results_entry a {
    width: 85px;
    height: 28px;
    border-radius: 20px;
    border: solid 1px #00adf3;
    color: #00adf3;
    cursor: pointer;
    position: relative;
    font-size: 12px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    display: flex;
    justify-content: center;
    align-items: center;
}

.store_locator_plus div#map_sidebar div.results_entry a:hover {
    color: #c0e5f6;
    background-color: unset;
}

.store_locator_plus #searchForm LABEL {
    min-width: unset;
}

.store_locator_plus #searchForm #addy_in_address.search_item {
    display: flex;
    align-items: center;
    margin-bottom: 21px;
}

.store_locator_plus #searchForm INPUT[type="text"] {
    height: 42px;
    border-radius: 21px;
    border: solid 1px #333333;
    font-size: 12px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #333333;
    padding: 14px 0 14px 23px;
}

.store_locator_plus #searchForm INPUT#addressSubmit.slp_ui_button {
    height: 42px;
    border-radius: 20px;
    border: solid 1px #00adf3;
    background-color: #00adf3;
    font-size: 12px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
}

.store_locator_plus #searchForm INPUT#addressSubmit.slp_ui_button:hover {
    opacity: 0.3;
    color: #ffffff;
}

.store_locator_plus #searchForm INPUT#addressSubmit.slp_ui_button:active {
    border: solid 1px #00adf3;
    background-color: #ffffff;
    color: #00adf3;
    opacity: 1;
}

.store_locator_plus p.geocode_message {
    display: none;
}

@media only screen and (max-width: 1023px) {
    .page-template-page-find-doctor .content-container {
        padding-bottom: 40px;
    }
    .find-a-doctor-top-section {
        margin-bottom: 32px;
        margin-top: 32px;
    }
    .find-a-doctor-top-section h1,
    .find-a-doctor-top-section p {
        padding: 0 29px 0 30px;
    }
    .find-a-doctor-top-section h1 {
        margin-bottom: 16px;
    }
    .store_locator_plus div#map.slp_map {
        float: unset;
        width: initial;
    }
    .store_locator_plus div#map_sidebar {
        overflow: initial;
        width: unset;
    }
    .store_locator_plus #searchForm .search_item {
        padding: 0 29px 0 30px;
    }
    .store_locator_plus div#map_sidebar div.results_entry {
        float: unset;
        width: initial;
        display: flex;
        flex-direction: column;
        height: unset;
        padding: 20px;
    }
    .store_locator_plus div.results_row_left_column,
    .store_locator_plus div.results_row_center_column,
    .store_locator_plus div.results_row_right_column {
        width: 100%;
    }
    .store_locator_plus div.results_row_right_column {
        margin-top: 20px;
    }
    .store_locator_plus div.results_entry span.location_name {
        color: #333333;
    }
    .store_locator_plus div#map_sidebar div.results_entry a {
        width: 78px;
        height: 28px;
        border-radius: 20px;
        border: solid 1px #00adf3;
        color: #00adf3;
        cursor: pointer;
        position: relative;
        font-size: 12px;
        font-weight: bold;
        font-stretch: normal;
        font-style: normal;
        line-height: normal;
        letter-spacing: normal;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .store_locator_plus div#map_sidebar div.results_entry a:hover {
        color: #c0e5f6;
        background-color: unset;
    }
    .store_locator_plus #searchForm #addy_in_address.search_item {
        display: flex;
        align-items: center;
        margin-bottom: 21px;
    }
    .store_locator_plus #searchForm LABEL {
        text-align: left;
    }
    div.results_row_left_column,
    div.results_row_center_column {
        padding: 0;
    }
    .store_locator_plus #searchForm INPUT[type="text"] {
        height: 42px;
        border-radius: 21px;
        border: solid 1px #333333;
        font-size: 12px;
        font-weight: bold;
        font-stretch: normal;
        font-style: normal;
        line-height: normal;
        letter-spacing: normal;
        color: #333333;
        padding: 14px 0 14px 23px;
    }
    .store_locator_plus #searchForm INPUT#addressSubmit.slp_ui_button {
        height: 42px;
        border-radius: 20px;
        border: solid 1px #00adf3;
        background-color: #00adf3;
        font-size: 12px;
        font-weight: bold;
        font-stretch: normal;
        font-style: normal;
        line-height: normal;
        letter-spacing: normal;
        color: #ffffff;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .store_locator_plus #searchForm INPUT#addressSubmit.slp_ui_button:hover {
        opacity: 0.3;
        color: #ffffff;
    }
    .store_locator_plus #searchForm INPUT#addressSubmit.slp_ui_button:active {
        border: solid 1px #00adf3;
        background-color: #ffffff;
        color: #00adf3;
        opacity: 1;
    }
}

@media only screen and (max-width: 425px) {
    .find-a-doctor-top-section h1 {
        font-size: 44px;
    }
}


/***************************************/


/**  Recommend Your Doctor Page  **/


/***************************************/

.recommend-top-section {
    margin-top: 48px;
    margin-bottom: 84px;
}

.recommend-top-section h1 {
    font-size: 50px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: #545454;
    margin-bottom: 18px;
}

.recommend-top-section p {
    font-size: 22px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.55;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 43px;
}

.recommend-top-section button._submit {
    border: none;
    margin-top: 18px;
    width: 175px;
    height: 60px;
    border-radius: 30px;
}

@media only screen and (max-width: 1023px) {
    .recommend-top-section h1,
    .recommend-top-section p {
        padding: 0 30px 0 29px;
    }
}

@media only screen and (max-width: 425px) {
    .recommend-top-section h1 {
        font-size: 40px;
    }
}


/* activecampaign form */

label._form-label {
    font-size: 16px !important;
    font-weight: normal !important;
    font-stretch: normal !important;
    font-style: normal !important;
    line-height: 1.43 !important;
    letter-spacing: normal !important;
    color: #333333 !important;
}

._form input[type="text"] {
    width: 100% !important;
    height: 55px !important;
    border-radius: 6px !important;
    border: solid 1px #cdcdcd !important;
    background-color: #f6f6f6 !important;
}

._form ._form_element {
    margin-bottom: 32px !important;
}

._form textarea {
    width: 100% !important;
    height: 165px !important;
}

._form ._error-inner {
    color: #ff4337 !important;
}



/***************************************/


/**  Patients (reviews) Page  **/


/***************************************/

.patients-top-section {
    margin-top: 48px;
    margin-bottom: 60px;
}

.patients-top-section h1 {
    margin-bottom: 19px;
}

.patients-top-section p {
    font-size: 28px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.57;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 28px;
}

.patients-top-section .button-group {
    /* padding: 0 29px; */
}

.patients-sizzle-col {
    position: relative;
}

.patients-sizzle-col .tagline {
    position: absolute;
    top: 51.5%;
    left: 6.7%;
}

.patients-sizzle {
    margin-bottom: 52px;
}

.overview {
    margin-bottom: 52px;
}

.overview .subheading {
    margin-bottom: 8px;
}

.overview h2 {
    margin-bottom: 56px;
}

.review-text {
    margin-bottom: 52px;
}


/* Slider */

.carousel-wrapper {
    position: relative;
    margin-bottom: 60px;
}

.carousel-wrapper .btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.carousel-wrapper .btn {
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 19%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 77%, #00aaf3 88%, #009be5 97%, #aaddc5 104%, #83c46b 109%);
    border-radius: 35px;
    border-width: 2px;
    box-sizing: border-box;
    color: #00a84f;
    display: block;
    height: 36px;
    width: 36px;
    cursor: pointer;
}

.carousel-wrapper .btn .fal {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    border-radius: 35px;
    transition: background 0.5s ease;
    width: 33px;
    height: 33px;
    font-size: 16px;
    color: #545454;
    display: flex;
    justify-content: center;
    align-items: center;
}

.btn--previous {
    left: 3.5vw;
}

.btn--next {
    right: 3.5vw;
}

.review-carousel {
    width: 83.3333vw;
    margin: auto;
}

.review-slide-container {
    width: calc((100% - 20px) / 3);
    margin-right: 10px;
    display: flex;
    justify-content: center;
}

.review-slide {
    width: 321px;
    height: 362px;
    border-style: solid;
    border-width: 4px;
    border-image-source: radial-gradient( circle at 5% 50%, #90c173, #33a357 11%, #249980 20%, #00a9c3 30%, #20738e 39%, #16366b 49%, #1b75ba 59%, #00abeb 68%, #65bef0 76%, #9fcec2 81%, #90c173 86%);
    border-image-slice: 1;
    background-color: #f7f7f7;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.review-slide .quote {
    font-size: 20px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.6;
    letter-spacing: normal;
    text-align: center;
    color: #545454;
    padding: 55px 31px 0 31px;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.review-slide .caption {
    font-size: 14px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 2.29;
    letter-spacing: normal;
    text-align: center;
    color: #545454;
    padding: 0 26px 52px 26px;
}

@media only screen and (min-width: 1640px) {
    .review-slide-container {
        width: calc((100% - 20px) / 4);
        margin-right: 10px;
    }
}

@media only screen and (max-width: 1186px) {
    .review-slide-container {
        width: calc((100% - 20px) / 2);
        margin-right: 10px;
    }
}

@media only screen and (max-width: 1023px) {
    .review-slide-container {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    .patients-top-section {
        margin-top: 16px;
        margin-bottom: 40px;
    }
    .patients-top-section h1 {
        padding-left: 25px;
        padding-right: 30px;
        font-size: 44px;
    }
    .patients-top-section p {
        padding: 0 32px 0 27px;
        margin-bottom: 32px;
    }
    .patients-top-section .button-group {
        padding: 0 29px;
    }
    .patients-sizzle {
        margin-bottom: 32px;
    }
    .overview {
        margin-bottom: 40px;
    }
    .overview .subheading,
    .review-text .subheading {
        margin-bottom: 1px;
        line-height: 1.5;
        padding: 0 20px 0 39px;
    }
    .overview h2,
    .review-text h2 {
        margin-bottom: 40px;
        line-height: 1.29;
        padding: 0 20px 0 39px;
    }
    .review-text h2 {
        margin-bottom: 32px;
    }
    .review-text {
        margin-bottom: 32px;
    }
    /* Slider */
    .carousel-wrapper {
        margin-bottom: 40px;
    }
    .review-carousel {
        width: 321px;
    }
    .review-slide-container {
        margin-right: 50px;
    }
    /* 321px is slide side, 16px is about half of prev/next button size */
    .btn--previous {
        left: calc(((100vw - 321px) / 2) - 16px);
    }
    .btn--next {
        right: calc(((100vw - 321px) / 2) - 16px);
    }
}


/***************************************/


/**  Collection Page  **/


/***************************************/

.collection-top-section {
    margin-top: 21px;
    margin-bottom: 43px;
}

.collection-top-section h1 {
    margin-bottom: 12px;
}

.collection-top-section p {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
}

.collection-top-section .big-btn {
    float: right;
    width: 208px;
    height: 72px;
    border-radius: 35px;
}

.collection-top-section .big-btn .fa-long-arrow-right {
    margin-left: 8px;
}

@media only screen and (max-width: 767px) {
    .collection-top-section {
        margin-top: 21px;
        margin-bottom: 69px;
        padding: 0 59px;
        display: flex;
        flex-direction: column;
    }
    .collection-top-section h1 {
        margin-bottom: 12px;
    }
    .collection-top-section p {
        font-size: 26px;
        font-weight: 500;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.38;
        letter-spacing: normal;
        color: #a2a2a2;
        margin-bottom: 27px;
        padding-left: 13px;
    }
    .collection-top-section .big-btn {
        float: left;
        padding-left: 13px;
        height: 52px;
        border-radius: 25px;
        font-size: 14px;
    }
}


/***************************************/


/**  Braces Collection Modal  **/


/***************************************/

.collection-modal {
    position: relative;
    width: 940px;
}

.collection-modal.fancybox-content {
    padding: 0;
}

.collection-modal .collection-modal-close {
    position: absolute;
    top: 16px;
    left: 16px;
    font-size: 30px;
    background: linear-gradient( to right, #84c26b 5%, #008a1d 23%, #00916d 44%, #00abbe 61%, #006a82 80%, #009be5);
    border-image-slice: 1;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    cursor: pointer;
}

.collection-modal .collection-modal-close i {
    font-weight: 500;
}

.collection-modal .collection-modal-close:hover {
    opacity: 0.8;
}

.collection-modal .modal-grid {
    display: grid;
    grid-template-columns: 540px 400px;
    height: 430px;
}

.collection-modal .bracket-info {
    display: flex;
    align-items: center;
    padding: 0 10%;
}

.collection-modal .bracket-info h6 {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 12px;
}

.collection-modal .bracket-info p {
    color: #5f5f5f;
    margin-bottom: 40px;
}

.collection-modal .bracket-image {
    display: flex;
    justify-content: center;
    align-items: center;
}

.collection-modal .modal-grid.gradient-title-bar {
    width: 100%;
    height: 40px;
    background-image: linear-gradient( to right, #90c173 5%, #33a357 13%, #249980 24%, #00a9c3 35%, #20738e 46%, #16366b 57%, #1b75ba 69%, #00abeb 80%, #65bef0 89%, #9fcec2 95%, #90c173 100%);
}

.collection-modal .collection-brand {
    text-align: center;
    margin: auto;
}

.collection-modal .collection-brand img {
    max-height: 40px;
}

@media only screen and (max-width: 1000px) {
    .collection-modal {
        width: 790px;
    }
    .collection-modal .modal-grid {
        grid-template-columns: 430px 360px;
        height: 430px;
    }
}

@media only screen and (max-width: 820px) {
    .collection-modal {
        width: 100%;
    }
    .collection-modal .modal-grid {
        grid-template-columns: 1fr;
        height: auto;
    }
    .collection-modal .bracket-info {
        padding: 10%;
    }
    .collection-modal .bracket-info .big-btn {
        width: 170px;
    }
    .collection-modal .bracket-image img {
        height: 200px;
    }
}


/***************************************/


/**  Designer Braces (query) Page  **/


/***************************************/

.designer-braces-container {
    position: relative;
    margin-bottom: 99px;
    margin-top: 23px;
}

.designer-braces {
    margin-top: 21px;
    margin-bottom: 60px;
}

.designer-braces h1 {
    margin-bottom: 12px;
}


/* .designer-braces p {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 40px;
  } */

.collections.query-collections .collection-sizzle .collection-text h3 {
    font-size: 32px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.13;
    letter-spacing: normal;
    color: #ffffff;
    margin-bottom: 5px;
}

.collections.query-collections .collection-sizzle .collection-text span {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #ffffff;
}

.collections.query-collections .collection-arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 8.4%;
    bottom: 5.5%;
    width: 64px;
    height: 64px;
    border-radius: 35px;
    border: solid 1px #ffffff;
    font-size: 26px;
    color: #ffffff;
    cursor: pointer;
}

@media only screen and (max-width: 767px) {
    .designer-braces h1,
    .designer-braces p {
        padding: 0 29px 0 30px;
    }
    .designer-braces .big-btn {
        margin: 29px 29px 0 30px;
    }
}


/***************************************/


/**  About Page  **/


/***************************************/

.page-template-page-about h2 {
    font-size: 36px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #545454;
    margin-top: 10px;
}

.page-template-page-about .subheading {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    margin-bottom: 9px;
}

.about-top-section {
    margin-top: 60px;
    margin-bottom: 60px;
}

.about-top-section h1 {
    margin-bottom: 26px;
}

.about-top-section p {
    font-size: 28px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.57;
    letter-spacing: normal;
    color: #a2a2a2;
    max-width: 37.5vw;
    margin-bottom: 39px;
}

.about-icons {
    margin-bottom: 60px;
}

.about-icons .subheading {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    margin-bottom: 9px;
}

.about-icons h2 {
    font-size: 36px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #545454;
    margin-top: 10px;
    margin-bottom: 73px;
}

.about-icon-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 43px 6.3vw;
}

.icon-card {
    display: flex;
    text-align: center;
    flex-direction: column;
}

.icon-card p {
    margin-top: 19px;
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
}

.image-text {
    margin-bottom: 60px;
}

.easy-123 {
    background-color: #f6f6f6;
    padding: 60px 0;
}

.easy-123 .big-btn-dark {
    margin-top: 40px;
}

.easy-grid {
    display: grid;
    grid-template-columns: 320px 320px 320px;
    justify-content: center;
    margin-top: 40px;
    /* align-items: baseline; */
    row-gap: 20px;
    grid-gap: 20px;
}

.easy-grid.easy-grid--4 {
    grid-template-columns: 1fr 1fr 1fr auto;
    gap: 0 20px;
}

.easy-grid .btn {
    width: 156px;
    margin: 0;
}

.easy-item {
    display: grid;
    grid-template-columns: 80px 1fr;
    grid-gap: 20px;
    align-items: center;
    grid-gap: 10px;
}

.gradient-circle {
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 18%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 76%, #00aaf3 88%, #009be5 96%, #aaddc5 103%, #83c46b 108%);
    border-radius: 10000px;
    border-width: 2px;
    box-sizing: border-box;
    color: #00a84f;
    display: block;
    height: 80px;
    letter-spacing: 1px;
    position: relative;
    text-decoration: none;
    width: 80px;
    z-index: 2;
    margin-right: 20px;
}

.gradient-circle span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    align-items: center;
    background: #f6f6f6;
    border-radius: 1000000px;
    display: flex;
    justify-content: center;
    height: 75px;
    transition: background 0.5s ease;
    width: 75px;
    font-size: 40px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #00adf3;
}

.easy-item p {
    font-size: 18px;
    font-weight: 300;
    color: #a2a2a2;
}

.collections-heading {
    margin-bottom: 40px;
}

.collections {
    margin-bottom: 60px;
}

.collections .collection-sizzle {
    margin: 0 9px;
    position: relative;
}

.collections .collection-sizzle:first-of-type {
    margin-left: 0;
}

.collections .collection-sizzle:last-of-type {
    margin-right: 0;
}

.collection-sizzle {
    transition: all 160ms ease-out;
}

.collection-sizzle video {
    display: block;
    transition: all 160ms ease-out;
}

.collection-sizzle:hover video {
    box-shadow: 0 15px 10px -10px rgba(0, 0, 0, 0.6);
}

.collection-sizzle:hover {
    transform: scale(1.05);
    /* z-index: 1; */
}

.collections .collection-sizzle .collection-text {
    position: absolute;
    bottom: 6.2%;
    left: 9.6%;
    max-width: 60%;
    color: #ffffff;
}

.collections .collection-sizzle .collection-text h3 {
    font-size: 2.5vw;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.13;
    letter-spacing: normal;
    color: #ffffff;
    margin-bottom: 5px;
}

.collections .collection-sizzle .collection-text span {
    font-size: 1.40625vw;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #ffffff;
}

.collection-arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 8.4%;
    bottom: 5.5%;
    width: 5vw;
    height: 5vw;
    border-radius: 2.734375vw;
    border: solid 1px #ffffff;
    font-size: 2.03125vw;
    color: #ffffff;
    cursor: pointer;
}

.collection-arrow:hover {
    opacity: 0.5;
    color: #ffffff;
}


/* .carousel-cell {
      width: 84.8%;
      height: 532px;
      margin-right: 5.3vw;
    }
    .carousel-cell video {
      width: 100%;
      height: 100%;
    } */

.pr-banner {
    padding: 60px 0;
    margin-bottom: 60px;
}

.pr-banner .btn {
    margin-top: 30px;
}

.doctors-page .pr-banner .btn,
.doctors-page .pr-banner .small-btn {
    background-color: var(--doctor-btn-background-color);
}

@media only screen and (max-width: 1023px) {
    .about-top-section {
        margin-top: 0;
        display: flex;
    }
    .easy-grid {
        grid-template-columns: 320px 320px;
        justify-content: start;
    }
    .about-icons {
        margin-bottom: 80px;
    }
    .about-icons .subheading {
        font-size: 20px;
    }
    .about-icons h2 {
        font-size: 34px;
        font-weight: normal;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.29;
        letter-spacing: normal;
        color: #545454;
        margin-bottom: 50px;
    }
    .about-top-section.one {
        flex-direction: column-reverse;
    }
    .about-top-section h1,
    .about-top-section p,
    .about-icons .subheading,
    .about-icons h2,
    .image-text h2,
    .image-text .subheading,
    .collections-heading h2,
    .collections-heading .subheading {
        padding-left: 30px;
        padding-right: 30px;
    }
    .about-top-section p {
        max-width: unset;
    }
    .button-group {
        padding-left: 30px;
        padding-right: 30px;
    }
    .video-col {
        margin-bottom: 24px;
    }
    .image-text {
        margin-bottom: 82px;
    }
    .image-text .column.top {
        margin-bottom: 64px;
    }
    .image-text .subheading {
        margin-bottom: 16px;
    }
}

@media only screen and (max-width: 767px) {
    .about-top-section {
        margin-bottom: 40px;
    }
    .easy-123 {
        padding-left: 40px;
        padding-right: 40px;
    }
    .easy-grid,
    .easy-grid.easy-grid--4 {
        grid-template-columns: 320px;
        justify-content: center;
        gap: 20px 20px;
    }
    .easy-grid a.btn {
        justify-self: center;
    }
    .about-icons {
        margin-bottom: 40px;
    }
    .about-icon-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }
    .icon-card p {
        padding-left: 54px;
        padding-right: 54px;
    }
    .collections-heading {
        margin-bottom: 32px;
    }
    .collections {
        margin-bottom: 40px;
    }
    .collections .collection-sizzle:first-of-type {
        margin-left: initial;
    }
    .collections .collection-sizzle:last-of-type {
        margin-right: initial;
    }
    .collections .collection-sizzle {
        margin-left: 0;
        margin-right: 20px;
    }
    .collection-sizzle video {
        display: block;
    }
    .collections .collection-sizzle .collection-text {
        position: absolute;
        bottom: 6.2%;
        left: 9.6%;
        max-width: 60%;
        color: #ffffff;
    }
    .collections .collection-sizzle .collection-text h3 {
        font-size: 8.533333333333333vw;
        font-weight: 500;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.13;
        letter-spacing: normal;
        color: #ffffff;
        margin-bottom: 5px;
    }
    .collections .collection-sizzle .collection-text span {
        font-size: 4.8vw;
        font-weight: 300;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.56;
        letter-spacing: normal;
        color: #ffffff;
    }
    .carousel-cell {
        width: 317px;
        height: 532px;
    }
    .carousel-cell video {
        width: 100%;
        height: 100%;
    }
    .collection-arrow {
        right: 8.5%;
        bottom: 5.5%;
        width: 17.07vw;
        height: 17.07vw;
        border-radius: 9.33vw;
        border: solid 1px #ffffff;
        font-size: 6.93vw;
        color: #ffffff;
        cursor: pointer;
    }
    .image-text {
        margin-bottom: 40px;
    }
    .image-text .column.top {
        margin-bottom: 40px;
    }
    .pr-banner .pr-content {
        padding: 0 40px;
        margin-bottom: 40px;
    }
}


/* Collection Card */

.collection-card-container {
    margin: 0 auto 60px auto;
    text-align: center;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 1089px;
}

.collection-card-container-disney {
    margin: 0 0 60px 0;
    text-align: center;
    display: grid;
    grid-template-columns: repeat(2, 362px);
}

.collection-card {
    justify-self: left;
    margin: 22px;
    width: 319px;
}

.collection-card-move-left-desktop {
    margin-right: auto;
}

.collection-card.disney-collection-card {
    margin: 22px 44px 22px 0;
}

.collection-card .collection-image {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 286px;
    width: 319px;
    background-color: #00255a;
    position: relative;
}

.collection-card .collection-image img {
    height: 100%;
}

.collection-card .collection-title a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 16px;
    color: #545454;
    font-size: 19px;
    line-height: 36px;
    font-weight: 500;
}

.collection-card .collection-icons {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 64px;
    font-size: 24px;
    cursor: pointer;
}

.hover-container {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: flex;
}

.hover-left-view,
.hover-right-view,
.hover-top-view {
    height: 100%;
    width: 100%;
}

.bracket-left-view,
.bracket-right-view {
    display: none;
}

@media (max-width: 1204px) {
    .collection-card-container,
    .collection-card-container-disney {
        grid-template-columns: repeat(2, 1fr);
    }
    .collection-card-move-left-desktop {
        margin-right: 22px;
    }
}

@media (max-width: 800px) {
    .collection-card {
        justify-self: center;
    }
    .collection-card-container,
    .collection-card-container-disney {
        grid-template-columns: repeat(1, 1fr);
        justify-content: center;
        margin-bottom: 40px;
    }
    .collection-card-move-left-desktop {
        margin-right: 22px;
    }
    .collection-card.disney-collection-card {
        margin: 22px;
    }
}

@media (max-width: 767px) {
    .page-template-page-about h1 {
        font-size: 40px;
    }
    .page-template-page-about h2 {
        font-size: 20px;
    }
    .page-template-page-about p {
        font-size: 18px;
    }
}


/***************************************/


/**  Create Smile Page  **/


/***************************************/

.create-smile-top-section {
    margin-top: 21px;
    margin-bottom: 32px;
}

.create-smile-top-section h1 {
    margin-bottom: 12px;
}

.create-smile-top-section p {
    font-size: 28px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.57;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 28px;
    max-width: 1175px;
}

.teeth-drop-section {
    position: relative;
    height: 350px;
    width: 100%;
    background-color: #e4e4e4;
    padding: 40px 20px;
    text-align: center;
}

.teeth-drop-section p {
    color: #006da7;
}

.braces-select-section {
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 20px 0;
    background-image: linear-gradient( to right, #00aaf3 5%, #009be5 19%, #aaddc5 89%);
}

.braces-grid-disney {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
}

.braces-grid-signature {
    display: none;
    grid-template-columns: repeat(6, 1fr);
    justify-items: center;
}

.braces-grid-college {
    display: none;
    grid-template-columns: repeat(8, 1fr);
    justify-items: center;
}

.reset-centered {
    display: flex;
    justify-content: center;
    align-items: center;
}

.college-create-blurb {
    display: none;
    max-width: 800px;
    text-align: center;
    margin: auto;
    margin-top: 40px;
    color: lightcyan;
    padding: 0 40px;
}

img.brace-image {
    width: 100px;
    cursor: pointer;
    transition: transform 0.2s ease-in-out;
}

img.brace-image:hover {
    transform: scale(1.2);
}

.bottom-button-section {
    padding: 40px 0;
    text-align: center;
}

.bottom-button-section .button-group {
    padding: 0;
}

a.small-btn.reset {
    margin-right: unset;
    margin: auto;
}

a.reset:hover {
    opacity: 1;
}

a.reset.disabled {
    opacity: 0.3;
}

.collection-select-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 40px;
    position: relative;
    flex-direction: row;
}

.action-buttons {
    position: absolute;
    right: 110px;
    display: flex;
    align-items: center;
    flex-direction: row;
    /* display: none; */
}

.action-buttons .social-icons {
    margin-right: 20px;
}

.collection-select-buttons p {
    display: inline-block;
    margin: 0 40px 0 40px;
    font-size: 20px;
    color: #404040;
    font-weight: 500;
    cursor: pointer;
    position: relative;
}

.collection-select-buttons p.is-brace-selected {
    font-weight: 600;
}

.collection-select-buttons p.is-brace-selected:after {
    content: "";
    height: 2px;
    width: 100%;
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 18%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 76%, #00aaf3 88%, #009be5 96%, #aaddc5 103%, #83c46b 108%);
    position: absolute;
    bottom: 0;
    left: 0;
}

.design-smile-cta {
	margin-top: 80px;
	margin-bottom: 40px;
	padding: 0 40px;
}

.design-smile-cta h5 {
	margin-bottom: 1.5rem;
}

.brace-drop-zone {
    width: 600px;
    height: 100%;
    margin: 0 auto;
    z-index: inherit;
    position: relative;
}

#teeth-drop-section {
    height: 100%;
    width: 100%;
    z-index: inherit;
    background-color: #e4e4e4;
}

.teeth-drop-section {
    z-index: inherit;
}

#teeth {
    z-index: 1;
    background-color: transparent;
}

.drop-container {
    z-index: 2;
    background-color: transparent;
}

.brace-image {
    z-index: 3;
    background-color: transparent;
}

.no-brace-selected-icon {
    background-image: url("assets/img/create-your-smile-icon.png");
    background-repeat: no-repeat;
    background-position: center;
}

.btn.small-btn.reset {
    background-color: #ffffff;
    color: #00adf3;
}

#teeth {
    width: 600px;
    position: absolute;
    top: 60px;
    left: 50%;
    margin-left: -300px;
}

#tooth1 {
    height: 100px;
    width: 100px;
    position: absolute;
    top: 71px;
    left: 16px;
}

#tooth2 {
    height: 100px;
    width: 100px;
    position: absolute;
    top: 86px;
    left: 100px;
}

#tooth3 {
    height: 100px;
    width: 100px;
    position: absolute;
    top: 97px;
    left: 197px;
}

#tooth4 {
    height: 100px;
    width: 100px;
    position: absolute;
    top: 93px;
    left: 306px;
}

#tooth5 {
    height: 100px;
    width: 100px;
    position: absolute;
    top: 85px;
    left: 402px;
}

#tooth6 {
    height: 100px;
    width: 100px;
    position: absolute;
    top: 70px;
    left: 486px;
}

@media only screen and (min-width: 768px) {
    #tooth1.no-brace-selected-icon {
        height: 100px;
        width: 100px;
        position: absolute;
        top: 66px;
        left: 16px;
    }
    #tooth2.no-brace-selected-icon {
        height: 100px;
        width: 100px;
        position: absolute;
        top: 78px;
        left: 100px;
    }
    #tooth3.no-brace-selected-icon {
        height: 100px;
        width: 100px;
        position: absolute;
        top: 88px;
        left: 197px;
    }
    #tooth4.no-brace-selected-icon {
        height: 100px;
        width: 100px;
        position: absolute;
        top: 88px;
        left: 306px;
    }
    #tooth5.no-brace-selected-icon {
        height: 100px;
        width: 100px;
        position: absolute;
        top: 78px;
        left: 402px;
    }
    #tooth6.no-brace-selected-icon {
        height: 100px;
        width: 100px;
        position: absolute;
        top: 66px;
        left: 486px;
    }
}

@media only screen and (max-width: 1000px) {
    .braces-grid-college {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media only screen and (max-width: 1023px) {
    .collection-select-buttons {
        flex-direction: column;
    }
    .action-buttons {
        position: unset;
        margin-top: 40px;
    }
    .action-buttons .social-icons {
        margin: 0 10px;
    }
}

@media only screen and (max-width: 767px) {
    .create-smile-top-section {
        padding: 0 20px;
    }
	.design-smile-cta {
		margin-top: 40px;
		margin-bottom: 0;
	}
    .braces-grid-signature {
        grid-template-columns: repeat(3, 1fr);
    }
    .braces-grid-college {
        grid-template-columns: repeat(3, 1fr);
    }
    .teeth-drop-section {
        height: 270px;
    }
    .brace-drop-zone {
        width: 300px;
        margin: 0 auto;
        position: relative;
    }
    #teeth {
        width: 300px;
        margin-left: -160px;
    }
    #tooth1 {
        height: 60px;
        width: 60px;
        top: 58px;
        left: -7px;
    }
    #tooth2 {
        height: 60px;
        width: 60px;
        top: 64px;
        left: 35px;
    }
    #tooth3 {
        height: 60px;
        width: 60px;
        top: 68px;
        left: 84px;
    }
    #tooth4 {
        height: 60px;
        width: 60px;
        top: 68px;
        left: 138px;
    }
    #tooth5 {
        height: 60px;
        width: 60px;
        top: 64px;
        left: 187px;
    }
    #tooth6 {
        height: 60px;
        width: 60px;
        top: 58px;
        left: 228px;
    }
    .no-brace-selected-icon {
        background-size: 30px;
    }
}


/***************************************/


/**  Doctors Page **/


/***************************************/

.doctors-page {
    padding-bottom: 60px;
}

.doctors-page .light-p {
    margin-top: 0.75rem;
}

.doctor-sizzle-desktop {
    position: relative;
}

.doctor-sizzle-mobile {
    display: none !important;
}

.doctor-sizzle-desktop .sizzle-content {
    position: absolute;
    bottom: 20%;
    left: 0;
    padding-left: 8.33%;
    color: white;
    max-width: 915px;
}

.doctor-sizzle-desktop .sizzle-content h1,
.doctor-sizzle-desktop .sizzle-content p {
    text-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
}

.doctor-sizzle-desktop .sizzle-content p {
    margin-top: 20px;
    margin-bottom: 30px;
    font-size: 24px;
    font-weight: 300;
}

#doctorSizzleDesktop {
    object-fit: cover;
    width: 100vw;
    height: calc(100vh - 100px);
    top: 0;
    left: 0;
}

#doctorSizzleMobile {
    object-fit: cover;
    width: 100vw;
    height: calc(80vh - 100px);
    top: 0;
    left: 0;
}

.doctors-page .doctors-top-section {
    margin-top: 60px;
    margin-bottom: 60px;
}

.doctors-page .doctors-top-section .button-group {
    margin-top: 40px;
}

.doctors-page .doctors-body-section {
    margin-top: 60px;
}

.doctors-page .doc-darren {
    position: relative;
}

.doctors-page .doc-darren img {
    position: absolute;
    top: 0;
    left: 0;
    max-height: 550px;
}

.doctors-page .technical-details {
    background: #f1faff;
}

.doctors-page .technical-details .blue-heading {
    padding-top: 60px;
    margin-bottom: 0;
    text-align: center;
}

.doctors-page .technical-details img {
    width: 100%;
}

.doctors-page .about-founder-container {
    align-self: flex-start;
}

.doctors-page .about-founder-container .small-btn-dark {
	margin-top: 1rem;
}

.doctors-page .about-founder-container .fa-play {
	padding-left: 1rem;
}

.doctors-page .doctor-sizzle-content-mobile {
    background: #f1faff;
    padding: 30px 40px;
    margin: 0;
}

.doctor-sizzle-content-mobile .button-group {
	flex-direction: column;
    align-items: center;
}

.doctor-sizzle-content-mobile .get-started-btn-mb {
	margin-right: 0;
}

.doctor-sizzle-content-mobile .how-it-works-btn-mb {
	margin-top: 1rem;
}

.gyp.color-back {
    background: #f6f6f6;
}

.gyp__icons {
    margin-top: 40px;
    margin-bottom: 60px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
	grid-gap: 20px;
}

.gyp__single-icon {
    display: flex;
    flex-direction: column;
    gap: 20px;
    text-align: center;
}

.gyp__single-icon img {
    width: 100%;
    max-width: 150px;
    align-self: center;
}

.gyp__single-icon p {
    font-size: 18px;
    font-weight: 300;
    display: flex;
    justify-content: center;
    color: #a2a2a2;
}

.doctors-page .green-heading {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    margin-bottom: 10px;
}

.doctors-page .light-p {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 2rem;
}

.doctors-page .doctors-body-section h2 {
    margin-bottom: 10px;
}


/* .doctors-page .about-sizzle-video video {
    max-height: 500px;
  } */

.doctors-page .get-started {
    margin-top: 60px;
}

.doctors-page .get-started-container {
	margin: 0;
}

.doctors-page .button-group.quick-links {
    justify-content: center;
    align-items: center;
}

.doctors-page .button-group.quick-links:first-of-type {
    margin-top: 20px;
    flex-wrap: wrap;
}

.doctors-page .get-started .button-group.quick-links a {
    margin: 20px;
}

.doctors-page .get-started a.big-btn-dark {
    height: 72px;
    width: 267px;
}

.doctors-page .image-text {
    margin: 60px 0;
}

.doctors-page .image-text h2 {
    margin-top: 10px;
}

.gradient-separator {
    height: 5px;
    width: 100%;
    background-image: linear-gradient( to right, #90c173 5%, #33a357 13%, #249980 24%, #00a9c3 35%, #20738e 46%, #16366b 57%, #1b75ba 69%, #00abeb 80%, #65bef0 89%, #9fcec2 95%, #90c173 100%);
    margin-top: 40px;
}

.doctors-page .easy-123 {
    margin: 60px 0 0;
}

@media only screen and (max-width: 1140px) {
    .doctors-page .easy-grid {
        grid-template-columns: 320px 320px;
    }
    .gyp__icons {
        grid-template-columns: repeat(2, 1fr);
		grid-gap: 20px;
    }
	.doctors-page .gradient-separator {
		margin-top: 0;
	}
}

@media only screen and (min-width: 767px) {
    .doctors-page .doc-darren-text {
        max-width: 673px;
    }
}

@media only screen and (max-width: 767px) {
    .doctor-sizzle-desktop {
        display: none;
    }
    .doctor-sizzle-mobile {
        display: block !important;
    }
    .doctor-sizzle-mobile .button-group {
        justify-content: center;
    }
    .doctor-sizzle-mobile .button-group .big-btn-dark {
        width: 175px;
    }
    .doctor-sizzle-mobile .px-30 {
        color: #a2a2a2
    }
    .doctors-page {
        padding-bottom: 40px;
    }
    .doctors-page .doctors-top-section {
        margin-top: 0;
        margin-bottom: 40px;
    }
    .doctors-page .doctors-body-section,
    .doctors-page .doctors-body-section-2 {
        margin-top: 40px;
    }
    .doctors-page .doc-darren img {
        position: relative;
    }
    .doctors-page .get-started {
        margin-top: 40px;
    }
    .doctors-page .button-group.quick-links {
        flex-direction: column;
    }
    body.page-template-default .button-group.quick-links:first-of-type,
    body.page-template .button-group.quick-links:first-of-type {
        flex-wrap: unset;
    }
    .doctors-page .image-text {
        margin: 40px 0;
    }
    .doctors-page .easy-123 {
        margin: 40px 0 0;
    }
    .doctors-page .easy-grid {
        grid-template-columns: 320px;
    }
    .doctors-page .technical-details .blue-heading {
        padding: 60px 0 20px 30px;
    }
    .gyp__icons {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 20px;
    }
    .gyp__icons p {
        font-size: 16px;
    }
}

.doctors-page .grow-practice {
    background: #c0e8ff;
    margin-top: 0;
}

.doctors-page .steps-you-can-take-body {
    font-size: 18px;
}

.doctors-page .grow-practice-btn {
    margin-top: 30px;
    width: 267px;
}

.modal-form-container {
    display: none;
    position: fixed;
    z-index: 3;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.4);
}

.modal-form {
    margin: 15% auto;
    padding: 20px;
    width: 80%;
}

.doctors-page .pr-banner.wildsmiles-news {
    margin-bottom: 0;
}

.doctors-page .pr-banner .big-btn-dark {
    width: 157px;
}

.big-btn-dark.grow-practice-btn {
    margin: 0 auto;
    margin-top: 3rem;
}

@media (max-width: 1023px) {
    .doctors-page .grow-practice-btn {
        margin: 30px auto 0;
    }
    .doctors-page .pr-banner.wildsmiles-news {
        padding-bottom: 0;
    }
    .doctors-page .grow-practice {
        padding: 30px 0;
        margin: 0;
    }
}

@media (min-width: 1007px) {
    .grow-practice-video {
        padding: 4rem 0;
        max-width: 100%;
    }
}


/***************************************/


/**  Schedule a Demo Page  **/


/***************************************/

h2.birs_section {
    font-family: "Montserrat", sans-serif;
    font-size: 18px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
}

.birchschedule label {
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    color: #333333;
    font-size: 16px;
}

.birchschedule select {
    width: 548px;
}

.birchschedule select,
.birchschedule input[type="text"] {
    width: 548px;
    height: 55px;
    border-radius: 6px;
    border: solid 1px #cdcdcd;
    background-color: #f6f6f6;
}

#birs_appointment_form .birchschedule-radio-buttons label {
    display: inline;
    font-weight: normal;
    margin-left: 4px;
}

.birs_form_field {
    margin-bottom: 32px;
}

#birs_appointment_notes {
    width: 548px;
    height: 320px;
}

#birs_book_appointment {
    border: none;
}

@media (max-width: 767px) {
    .birchschedule {
        margin: 0 30px;
    }
    .birchschedule select,
    .birchschedule input[type="text"],
    #birs_appointment_notes {
        width: 100%;
    }
}


/***************************************/


/**  Doctors Start (log in / Forgot password) **/


/***************************************/

.doctor-start-page {
    padding: 60px 0;
}

.doctor-start-page h6 {
    font-size: 18px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    padding: 30px 0;
}

.doctor-start-page p.login-username,
p.login-password {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
}

.doctor-start-page p.login-username label,
p.login-password label {
    font-size: 16.8px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    color: #333333;
}

.doctor-start-page p.login-username input,
p.login-password input {
    max-width: 548px;
    height: 55px;
    border-radius: 6px;
    border: solid 1.2px #cdcdcd;
    background-color: #f6f6f6;
    font-size: 20px;
}

.doctor-start-page p.login-password {
    margin-bottom: 20px;
}

.doctor-start-page p.login-remember label {
    font-size: 14.4px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.67;
    letter-spacing: normal;
    color: #333333;
}

.doctor-start-page p.login-submit {
    margin: 40px 0 30px 0;
}

.doctor-start-page p.login-submit input {
    width: 208px;
    height: 72px;
    border-radius: 35px;
    background-color: #00adf3;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #ffffff;
    box-shadow: 0px 0px 0px transparent;
    border: 0px solid transparent;
    text-shadow: 0px 0px 0px transparent;
    cursor: pointer;
}

.doctor-start-page p.login-submit input:hover {
    opacity: 0.3;
    color: #ffffff;
    transition: none;
    margin: 0;
}

.doctor-start-page .wp_login_error {
    color: red;
    margin-bottom: 10px;
}

.doctor-start-page .wp_login_error {
    color: red;
    margin-bottom: 10px;
}

.doctor-start-page p.login-submit input:active {
    border: solid 1px #00adf3;
    background-color: #ffffff;
    color: #00adf3;
    opacity: 1;
}

.doctor-start-page .doctor-store-login,
.doctor-store-signup {
    margin-left: 60px;
}

.doctor-start-page .doctor-store-signup {
    margin-top: 20px;
}

.doctor-start-page .forgot_password a,
.doctor-start-page .doctor-store-signup a {
    text-decoration: underline;
}

.lost_reset_password {
    padding: 60px 20%;
}

.lost_reset_password p:first-of-type {
    visibility: hidden;
    font-size: 0px;
    display: flex;
    flex-direction: column;
}

.lost_reset_password p:before {
    font-size: 50px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: #545454;
    visibility: visible;
    content: "Lost Your Password?";
}

.lost_reset_password p:after {
    font-size: 22px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.55;
    letter-spacing: normal;
    color: #a2a2a2;
    visibility: visible;
    content: "Please enter your username or email address. You will receive an email with a link to reset your password.";
}

.lost_reset_password .form-row-first label {
    font-size: 14.4px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.67;
    letter-spacing: normal;
    color: #333333;
    margin-top: 40px;
}

.lost_reset_password .form-row-first input {
    max-width: 548px;
    height: 55px;
    border-radius: 6px;
    border: solid 1.2px #cdcdcd;
    background-color: #f6f6f6;
    font-size: 20px;
}

.lost_reset_password .form-row button.woocommerce-Button {
    margin-top: 21px;
    width: 208px;
    height: 72px;
    border-radius: 35px;
    background-color: #00adf3;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #ffffff;
    box-shadow: 0px 0px 0px transparent;
    border: 0px solid transparent;
    text-shadow: 0px 0px 0px transparent;
    cursor: pointer;
}

.lost_reset_password .form-row button.woocommerce-Button:hover {
    opacity: 0.3;
    color: #ffffff;
    transition: none;
}

.lost_reset_password .form-row button.woocommerce-Button:active {
    border: solid 1px #00adf3;
    background-color: #ffffff;
    color: #00adf3;
    opacity: 1;
}

.lost_reset_password .woocommerce-form-row.form-row {
    margin-left: 60px;
}

@media only screen and (max-width: 967px) {
    .doctor-start-page {
        padding: 40px 30px;
    }
    .doctor-start-page .doctor-store-login,
    .doctor-store-signup {
        margin-left: 0px;
    }
    .lost_reset_password {
        padding: 40px 30px;
    }
    .lost_reset_password .woocommerce-form-row.form-row {
        margin-left: 0px;
    }
}


/***************************************/


/**  Scholarship Application Page **/


/***************************************/

.scholarship-top-section {
    margin-top: 48px;
    margin-bottom: 84px;
}

.scholarship-top-section h1 {
    font-size: 50px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: #545454;
    margin-bottom: 18px;
}

.scholarship-top-section p {
    font-size: 22px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.55;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 43px;
}

.scholarship-top-section h6.green-subheading {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    margin-bottom: 10px;
}

.scholarship-top-section p.p-subtext {
    font-size: 18px;
}

.wpcf7-form input {
    width: 548px;
    height: 55px;
    border-radius: 6px;
    border: solid 1px #cdcdcd;
    background-color: #f6f6f6;
}

.wpcf7-form p {
    font-size: 16px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    color: #333333;
}

.your-essay textarea {
    width: 548px;
    height: 320px;
}

@media only screen and (max-width: 767px) {
    .scholarship-top-section {
        padding: 0 30px;
    }
    .wpcf7-form input,
    .your-essay textarea {
        width: 100%;
    }
}


/***************************************/


/**  Residency Program Page **/


/***************************************/

.residency-program-section {
    margin-top: 60px;
    padding-bottom: 60px;
}

.residency-program-section .residency-top-section {
    margin-top: 21px;
    margin-bottom: 40px;
}

.residency-program-section .residency-top-section h1 {
    margin-bottom: 16px;
}

.residency-program-section .residency-top-section p {
    font-size: 22px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
}

.residency-program-section .green-heading {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    margin-bottom: 10px;
}

.residency-program-section .light-p {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 1rem;
}

.residency-body-section2 {
    margin-top: 40px;
}

.residency-program-section .image-gradient-box {
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 19%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 77%, #00aaf3 88%, #009be5 97%, #aaddc5 104%, #83c46b 109%);
    height: 500px;
    width: 536px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 0 0 auto;
}

.residency-program-section .image-gradient-box img {
    height: 494px;
    width: 530px;
}

.residency-program-section .get-started {
    margin-top: 60px;
}

.residency-program-section .button-group.quick-links {
    justify-content: center;
    align-items: center;
}

.residency-program-section .button-group.quick-links:first-of-type {
    margin-top: 20px;
    flex-wrap: wrap;
}

.residency-program-section .get-started .button-group.quick-links a {
    margin: 20px;
}

.residency-program-section .get-started a.big-btn-dark {
    height: 72px;
    width: 267px;
}

.gradient-separator {
    height: 5px;
    width: 100%;
    background-image: linear-gradient( to right, #90c173 5%, #33a357 13%, #249980 24%, #00a9c3 35%, #20738e 46%, #16366b 57%, #1b75ba 69%, #00abeb 80%, #65bef0 89%, #9fcec2 95%, #90c173 100%);
    margin-top: 40px;
}

@media only screen and (max-width: 767px) {
    .residency-program-section {
        margin-top: 40px;
        padding: 0 30px 40px 30px;
    }
    .residency-program-section .image-gradient-box {
        height: 300px;
        width: 320px;
        margin: 0 auto 40px auto;
    }
    .residency-program-section .image-gradient-box img {
        height: 294px;
        width: 314px;
    }
    .residency-program-section .get-started {
        margin-top: 40px;
    }
    .residency-program-section .button-group.quick-links {
        flex-direction: column;
    }
    .residency-program-section .button-group.quick-links a {
        border-radius: 100px;
    }
    .gradient-separator {
        margin-top: 20px;
    }
}


/***************************************/


/**  FAQ Page  **/


/***************************************/

.faq-top-section {
    margin-top: 60px;
    margin-bottom: 60px;
}

.faq-top-section h1 {
    margin-bottom: 12px;
}

.faq-top-section p {
    font-size: 22px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
}

.send-a-message,
.faq-link {
    color: #30abe1;
    cursor: pointer;
}

.faq-qa-container {
    padding: 60px 0 0 0;
}

.gradient-box-outer {
    margin-bottom: 32px;
    padding: 3px;
    height: 100%;
    width: 100%;
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 19%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 77%, #00aaf3 88%, #009be5 97%, #aaddc5 104%, #83c46b 109%);
}

.gradient-box-inner {
    background-color: #f7f7f7;
    height: 100%;
    width: 100%;
    padding: 18px 55px;
}

.gradient-box-inner p {
    font-size: 18px;
    color: #545454;
    font-weight: 500;
}

.faq-question {
    display: flex;
    justify-content: space-between;
}

.faq-question p {
    font-size: 22px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.55;
    letter-spacing: normal;
    color: #545454;
    margin-right: 20px;
    cursor: pointer;
}

.faq-question i {
    font-size: 26px;
    cursor: pointer;
    font-weight: 500;
}

.faq-show-answer {
    height: fit-content;
    transition: transform 0.2s ease-in-out;
}

.faq-answer {
    margin: 16px 0 0 0;
    font-weight: normal;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-in-out;
}

@media only screen and (max-width: 767px) {
    .faq-top-section {
        margin-top: 40px;
        margin-bottom: 40px;
        padding: 0 30px;
    }
    .faq-qa-container {
        padding: 40px 0 0 0;
    }
    .faq-question p {
        font-size: 18px;
    }
    .gradient-box-inner {
        padding: 18px 20px;
    }
}


/***************************************/


/**  Get Started Component **/


/***************************************/

.get-started {
    margin-top: 60px;
}

.get-started p {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    margin-bottom: 10px;
}

.get-started a.btn.big-btn,
.get-started a.btn.big-btn-dark {
    margin: 40px auto 0 auto;
}

@media only screen and (max-width: 767px) {
    .get-started {
        margin-top: 40px;
    }
    .get-started a {
        border-radius: 100px;
    }
}


/***************************************/


/**  Thank you page  **/


/***************************************/

.thank-you-page {
    margin: 60px 0 120px 0;
}

.thank-you-page .success-text {
    padding: 40px;
    text-align: center;
}

.thank-you-page p {
    font-size: 28px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.57;
    letter-spacing: normal;
    text-align: center;
    color: #a2a2a2;
    margin-top: 20px;
}

@media only screen and (max-width: 767px) {
    .thank-you-page {
        margin-bottom: 60px;
        padding: 0 30px;
    }
    .thank-you-page p {
        font-size: 22px;
    }
}


/***************************************/


/**  Privacy Policy  **/


/***************************************/

.privacy-policy-section {
    padding: 60px 0;
}

.privacy-policy-section h1 {
    margin-bottom: 30px;
}

.privacy-policy-section h6 {
    color: #333333;
    font-weight: bold;
}

.privacy-policy-section p {
    margin-bottom: 30px;
    color: #333333;
}

.privacy-policy-section ul {
    margin-left: 30px;
    color: #333333;
    list-style: initial;
}

.privacy-policy-section a {
    word-break: break-word;
}

@media only screen and (max-width: 767px) {
    .privacy-policy-section {
        padding: 40px 20px;
    }
}


/* Footer */

footer {
    background-color: #f1faff;
    padding: 50px 0;
}

h3 {
    font-size: 32px;
    line-height: 60px;
    color: #545454;
    font-weight: 500;
}

.footer-connect {
    padding-bottom: 40px;
}

.footer-social {
    display: flex;
    align-items: center;
}

.social-icons {
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 18%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 76%, #00aaf3 88%, #009be5 96%, #aaddc5 103%, #83c46b 108%);
    border-radius: 35px;
    border-width: 2px;
    box-sizing: border-box;
    color: #00a84f;
    display: block;
    height: 46px;
    letter-spacing: 1px;
    position: relative;
    text-decoration: none;
    width: 46px;
    z-index: 2;
    cursor: pointer;
    margin-right: 32px;
    /* overflow: hidden; */
}


/* 
  .social-icons:before {
    content: '';
    background-image: linear-gradient(to right, #84c26b 5%, #008a1d 18%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 76%, #00aaf3 88%, #009be5 96%, #aaddc5 103%, #83c46b 108%);
    height: 64px;
    width: 64px;
    border-radius: 35px;
    position: absolute;
    top: -10px;
    left: -10px;
    transition: 3s ease-in-out;
  }
  
  .social-icons:hover::before {
    animation: rotating 1.5s linear infinite;
    -webkit-animation: rotating 1.5s linear infinite;
    -moz-animation: rotating 1.5s linear infinite;
  } */

.social-icons:hover {
    opacity: 0.5;
    -webkit-animation-name: spin;
    -webkit-animation-duration: 40000ms;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-name: spin;
    -moz-animation-duration: 40000ms;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: spin;
    -ms-animation-duration: 40000ms;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    animation-name: spin;
    animation-duration: 4000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}

@-moz-keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}

@-webkit-keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}

@-moz-keyframes spin {
    to {
        background-position: bottom 50px right 100px;
    }
    from {
        background-position: right 300px bottom 50px;
    }
}

@-webkit-keyframes spin {
    to {
        background-position: bottom 50px right 100px;
    }
    from {
        background-position: right 300px bottom 50px;
    }
}

@keyframes spin {
    to {
        background-position: bottom 50px right 100px;
    }
    from {
        background-position: right 300px bottom 50px;
    }
}

.social-icons span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    align-items: center;
    background: #f1faff;
    border-radius: 35px;
    display: flex;
    justify-content: center;
    height: 42px;
    transition: background 0.5s ease;
    width: 42px;
    font-size: 12px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #545454;
    margin-right: 32px;
}

.social-logo {
    font-size: 25px;
    color: #30abe1;
    cursor: pointer;
}

.social-logo:hover {
    color: #68b7da;
}

.footer-email {
    cursor: pointer;
    color: #0092a4;
    font-weight: 500;
}

.footer-email-mobile {
    display: none;
    margin-bottom: 32px;
}

.footer-email-desktop {
    display: block;
}

.footer-address {
    font-weight: 500;
    line-height: 24px;
}

.footer-address a {
    cursor: pointer;
}

.footer-bottom {
    display: flex;
    align-items: flex-end;
    padding-top: 60px;
}

.footer-bottom img {
    height: 86px;
    margin-left: -32px;
}

.footer-bottom p {
    font-size: 9px;
    line-height: 24px;
    font-weight: 500;
}

.footer-bottom a {
    font-size: 9px;
    line-height: 24px;
    font-weight: 500;
    color: #545454;
    text-decoration: underline;
    margin-left: 20px;
}

@media only screen and (max-width: 767px) {
    footer {
        text-align: center;
    }
    .footer-email-mobile {
        display: block;
        margin-bottom: 32px;
    }
    .footer-email-desktop {
        display: none;
    }
    .footer-social {
        justify-content: center;
    }
    .social-icons {
        margin: 0 16px;
    }
    .footer-bottom {
        flex-direction: column;
        align-items: center;
    }
    .footer-bottom img,
    .footer-bottom a {
        margin-left: 0;
    }
    .footer-address p {
        padding: 0 20px;
    }
}


/* woocommerce forms */

div.registration-form.woocommerce form.register {
    border: none;
    padding: 0;
    margin-top: 0;
}

div.registration-form.woocommerce form.register .woocommerce-FormRow {
    margin-bottom: 32px;
}

div.registration-form.woocommerce form.register label,
div.registration-form.woocommerce form.register span.notation {
    font-size: 16px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    color: #333333;
}

div.registration-form.woocommerce form.register span.notation {
    font-size: 12px;
}

div.registration-form.woocommerce form.register label.error {
    color: #ff4337;
}

div.registration-form.woocommerce form.register input.woocommerce-Input {
    width: 100%;
    height: 55px;
    border-radius: 6px;
    border: solid 1px #cdcdcd;
    background-color: #f6f6f6;
}


/***************************************/


/**  helpers  **/


/***************************************/

.mt-0 {
    margin-top: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.my-40 {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
}

.mx-auto {
    margin-left: auto !important;
    margin-right: auto !important;
}

.my-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
}

@media (max-width: 767px) {
    .mt-40--mobile {
        margin-top: 40px !important;
    }
}


/***************************************/


/**  Investor Pages  **/


/***************************************/

.investors .btn.small-btn {
    width: 168px;
    height: 44px;
    font-size: 16px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    margin-top: 24px;
}

.investors h2 {
    line-height: normal;
    margin-bottom: 8px;
    margin-top: 0;
}

.investors p {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
}

.investors section {
    margin-top: 100px;
}

.investors #map {
    height: 41.6666vw;
    max-height: 600px;
    margin-bottom: 25px;
}

.investors .logo-section {
    margin-top: 0;
    background-color: #f8f8f8;
}

.investors .logo-section img {
    margin: auto;
    margin-top: 100px;
    margin-bottom: 100px;
    display: block;
}

.investors .contact-section b {
    color: #00adf3;
}

.investors .contact-section b:hover {
    cursor: pointer;
    opacity: 0.5;
}

.investors .contact-section h2 {
    margin-bottom: 40px;
}

.investors .collections-section h2 {
    margin-bottom: 40px;
}

.investors section.about-icons {
    margin-bottom: 60px;
}

.investors section.about-icons .about-icon-grid {
    gap: 0 6.3vw;
}

.investors section.about-icons h2 {
    margin-bottom: 8px;
}

.investors section.about-icons p {
    margin-bottom: 40px;
}

.investors section.form {
    margin-top: 0;
    margin-bottom: 100px;
}

.mobile-break {
    display: none;
}

@media (max-width: 767px) {
    .mobile-break {
        display: initial;
    }
    .investors section {
        margin-top: 40px;
    }
    .investors .logo-section img {
        margin-top: 40px;
        margin-bottom: 0;
    }
    .investors .sizzle-section h2,
    .investors .collections-section h2,
    .investors .sizzle-section p {
        padding: 0 30px;
    }
    .investors .sizzle-section video {
        margin-bottom: 30px;
    }
    .investors .contact-section {
        padding-left: 30px;
        padding-right: 30px;
    }
    .investors #map {
        margin-bottom: 30px;
    }
    .investors .about-icons h2+p {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (max-width: 1439px) and (min-width: 1024px) {
    .investors #map {
        height: 675px;
        max-height: unset;
    }
}


/***************************************/


/**  PR Coverage Page  **/


/***************************************/

.pr-coverage-section {
    margin-top: 48px;
    margin-bottom: 60px;
}

.pr-coverage-section p {
    font-size: 28px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.57;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-top: 20px;
    margin-bottom: 0px;
}

.pr-coverage-page .overview {
    background-color: #f6f6f6;
    padding: 60px 0;
}

.pr-coverage-page .overview .theater-grid {
    display: grid;
    grid-template-columns: 3fr 1fr;
    grid-gap: 50px;
}

.pr-coverage-page .overview .theater-wrapper {
    /* border-style: solid;
  border-width: 4px;
  border-image-source: radial-gradient(circle at 5% 50%, #90c173, #33a357 11%, #249980 20%, #00a9c3 30%, #20738e 39%, #16366b 49%, #1b75ba 59%, #00abeb 68%, #65bef0 76%, #9fcec2 81%, #90c173 86%);
  border-image-slice: 1; */
    border: none;
    /* Remove border */
}

.pr-coverage-page .overview .theater-extra {
    display: grid;
    grid-auto-rows: 1fr 1fr;
    grid-gap: 20px;
}

.pr-coverage-page .theater-title {
    font-size: 18px;
    color: #02974a;
    margin-top: 1rem;
}

.pr-coverage-page .theater-date {
    font-size: 20px;
    color: #545454;
}

.articles-grid {
    display: grid;
    grid-template-columns: repeat(3, 320px);
    grid-gap: 50px;
    margin-bottom: 80px;
    justify-content: center;
}

.article-link:hover {
    font-weight: normal;
}

.article-card {
    width: 321px;
    height: 362px;
    padding: 30px;
    border-style: solid;
    border-width: 4px;
    border-image-source: radial-gradient( circle at 5% 50%, #90c173, #33a357 11%, #249980 20%, #00a9c3 30%, #20738e 39%, #16366b 49%, #1b75ba 59%, #00abeb 68%, #65bef0 76%, #9fcec2 81%, #90c173 86%);
    border-image-slice: 1;
    background-color: #f7f7f7;
    display: grid;
    grid-gap: 50px;
    grid-auto-rows: min-content;
}

.article-card .title {
    font-size: 18px;
    color: #02974a;
    font-weight: normal;
}

.article-card .date {
    font-size: 20px;
    color: #545454;
    font-weight: 500;
}

.article-card .blurb {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    color: #545454;
    font-weight: normal;
}

a:hover .article-card .title {
    font-weight: normal;
}

a:hover .article-card .blurb {
    font-weight: normal;
}

@media (max-width: 1000px) {
    .pr-coverage-page .theater-grid {
        grid-template-columns: 1fr !important;
    }
    .pr-coverage-page .theater-extra {
        grid-template-columns: 1fr 1fr;
        grid-gap: 50px;
        grid-auto-rows: 1fr;
    }
}

@media (max-width: 1170px) {
    .articles-grid {
        grid-template-columns: repeat(2, 320px);
    }
}

@media (max-width: 767px) {
    .pr-coverage-section {
        padding: 0 40px;
    }
    .articles-grid {
        grid-gap: 40px;
        grid-template-columns: repeat(1, 320px);
    }
    .pr-coverage-page .theater-main {
        padding: 0 40px;
    }
    .pr-coverage-page .theater-extra {
        grid-template-columns: 1fr;
        grid-gap: 50px;
        grid-auto-rows: 1fr;
        padding: 0 40px;
    }
}

.section-wrapper {
    margin: 60px 0;
}

.section-wrapper.color-back {
    background: #f6f6f6;
    margin: 0;
    padding-top: 60px;
    padding-bottom: 60px;
}

@media (max-width: 767px) {
    .section-wrapper {
        padding-left: 40px;
        padding-right: 40px;
    }
    .message-from-mike-top iframe {
        width: 100%;
        height: auto;
    }
}

.modal-background {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    background-color: #00aaf3;
    padding: 30px;
    border-radius: 50%;
    z-index: 100;
    margin-top: -115px;
    margin-left: -115px;
}

.modal-background.open {
    display: block;
}

.loading-content {
    width: 200px;
    height: 200px;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.loading-circle {
    top: 0;
    width: 200px;
    height: 100px;
    position: absolute;
    border: 1px solid #fff;
    border-bottom: 0;
    transform-origin: 50% 100%;
    background-color: transparent;
    border-top-left-radius: 110px;
    border-top-right-radius: 110px;
    -ms-transform-origin: 50% 100%;
    -webkit-transform-origin: 50% 100%;
    animation: loading 1.5s linear infinite;
    -webkit-animation: loading 1.5s linear infinite;
}

.loading-name {
    color: #fff;
    cursor: default;
    position: relative;
    font-family: Tahoma, Arial;
}

@-webkit-keyframes loading {
    from {
        -ms-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -ms-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes loading {
    from {
        -ms-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -ms-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}


/***************************************/


/**  What's Happening Page **/


/***************************************/

.whats-happening-section {
    margin-top: 60px;
    padding-bottom: 60px;
}

.whats-happening-top-section {
    margin-top: 60px;
    margin-bottom: 40px;
}

.whats-happening-top-section h1 {
    margin-bottom: 16px;
}

.whats-happening-top-section p {
    font-size: 22px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
}

.whats-happening-section .green-heading {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #02974a;
    margin-bottom: 10px;
}

.whats-happening-section .light-p {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    color: #a2a2a2;
    margin-bottom: 1rem;
}

.residency-body-section2 {
    margin-top: 40px;
}

.whats-happening-section .image-gradient-box {
    background-image: linear-gradient( to right, #84c26b 5%, #008a1d 19%, #00916d 30%, #00abbe 41%, #006a82 53%, #001f60 64%, #0066ba 77%, #00aaf3 88%, #009be5 97%, #aaddc5 104%, #83c46b 109%);
    height: 500px;
    width: 536px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 0 0 auto;
}

.whats-happening-section .image-gradient-box img {
    height: 494px;
    width: 530px;
}

.whats-happening-section .get-started {
    margin-top: 60px;
}

.whats-happening-section .button-group.quick-links {
    justify-content: center;
    align-items: center;
}

.whats-happening-section .button-group.quick-links:first-of-type {
    margin-top: 20px;
    flex-wrap: wrap;
}

.whats-happening-section .get-started .button-group.quick-links a {
    margin: 20px;
}

.whats-happening-section .get-started a.big-btn-dark {
    height: 72px;
    width: 267px;
}

.testimonials h2 {
    margin-bottom: 50px;
}

.gradient-separator {
    height: 5px;
    width: 100%;
    background-image: linear-gradient( to right, #90c173 5%, #33a357 13%, #249980 24%, #00a9c3 35%, #20738e 46%, #16366b 57%, #1b75ba 69%, #00abeb 80%, #65bef0 89%, #9fcec2 95%, #90c173 100%);
    margin-top: 60px;
}

@media only screen and (max-width: 767px) {
    .whats-happening-section {
        margin-top: 40px;
        padding: 0 30px 40px 30px;
    }
    .whats-happening-section .image-gradient-box {
        height: 300px;
        width: 320px;
        margin: 0 auto 40px auto;
    }
    .whats-happening-section .image-gradient-box img {
        height: 294px;
        width: 314px;
    }
    .whats-happening-section .get-started {
        margin-top: 40px;
    }
    .whats-happening-section .button-group.quick-links {
        flex-direction: column;
    }
    .whats-happening-section .button-group.quick-links a {
        border-radius: 100px;
    }
    .gradient-separator {
        margin-top: 40px;
    }
}

.testimonial-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    gap: 36px 16px;
}

.testimonial-grid .mark-svg {
    width: 100%;
    height: auto;
    align-self: center;
}

@media only screen and (max-width: 1023px) {
    .testimonial-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 767px) {
    .testimonial-grid {
        grid-template-columns: 1fr;
        margin: 0 30px;
    }
}

.theater-image {
    width: 100%;
}

.theater-wrapper.bottom-right .play-btn {
    width: 50px;
    height: 50px;
    transform: unset;
    right: 10px;
    bottom: 10px;
    left: unset;
    top: unset;
}

.testimonial-cols .theater-wrapper {
    margin-right: 16px;
}

.testimonial-cols .column.last .theater-wrapper {
    margin-right: 0;
}

.big-btn-dark.centered,
.btn.centered {
    margin-left: auto;
    margin-right: auto;
}

.btn.doctor-btn {
    background-color: var(--doctor-btn-background-color);
}

.btn.light {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    font-stretch: normal;
    width: 169px;
    height: 44px;
    border-radius: 35px;
    background-color: #ffffff;
    color: #006da7;
}

.btn.light:hover {
    color: #ffffff;
    background-color: #006da7;
}

.challenge-banner {
    width: 100%;
    height: 124px;
    display: flex;
    align-items: center;
    background-color: #001a3e;
}

.challenge-banner span {
    font-size: 36px;
    font-weight: 500;
    line-height: 1.67;
    letter-spacing: normal;
    color: #ffffff;
    margin-right: 8vw;
}

.challenge-banner .text-button {
    display: flex;
    align-items: center;
    justify-content: center;
}

.b-flex {
    display: flex;
}

.b-flex.is-centered {
    justify-content: center;
}

.b-flex.is-vcentered {
    align-items: center;
}

@media (max-width: 1023px) {
    .columns.testimonial-cols .column .theater-wrapper {
        margin-right: 8.3333%;
        margin-left: 8.3333%;
    }
    .challenge-banner {
        display: block;
        height: unset;
        padding: 40px 0;
    }
    .challenge-banner span,
    .challenge-banner a {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
    .challenge-banner span {
        font-size: 24px;
        text-align: center;
        margin-bottom: 20px;
    }
    .challenge-banner .btn {
        /* font-size: 36px;
    font-weight: 500;
    line-height: 1.67;
    letter-spacing: normal;
    color: #ffffff; 
    margin-right: 8vw; */
    }
}

@media (max-width: 1023px) {
    .b-flex-desktop {
        display: initial;
    }
}

@media (max-width: 767px) {
    .mobile-padding {
        padding-left: 40px;
        padding-right: 40px;
    }
}

p.top-blurb {
    font-size: 22px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.55;
    letter-spacing: normal;
    color: #a2a2a2;
}


/***************************************/


/**  Video Flow Pages **/


/***************************************/

.back-link {
    display: block;
    margin-left: 70px;
    margin-top: 60px;
}

.back-link .fa-long-arrow-left {
    margin-right: 12px;
}

.video-flow .top-section {
    margin-top: 32px;
}

.video-flow .top-section h1 {
    margin-bottom: 24px;
}

.video-flow .top-section.no-back-link .columns:first-of-type {
    margin-top: 118px;
}

.video-flow .challenge {
    margin-top: 60px;
}

.video-flow .testimonials {
    padding: 60px 0;
}

.video-flow .testimonials .btn {
    margin-top: 60px;
}

.video-flow .theater-wrapper {
    margin-top: 60px;
}

.video-flow .testimonial-grid .theater-wrapper {
    margin-top: 0;
}

.video-flow .easy-123 {
    margin-bottom: 0;
    margin-top: 60px;
}

@media only screen and (max-width: 1023px) {
    .video-flow .easy-grid {
        grid-template-columns: 1fr 1fr;
        justify-content: start;
    }
}

@media only screen and (max-width: 767px) {
    .back-link {
        margin: 40px;
    }
    .video-flow .easy-grid {
        grid-template-columns: 320px;
        justify-content: center;
    }
}


/***************************************/


/**  WildSmiles Challenge Page **/


/***************************************/

.challenge .top-section {
    margin-top: 60px;
    margin-bottom: 24px;
}

.challenge .challenge-banner {
    margin-top: 60px;
    background-image: linear-gradient( to right, #90c173 5%, #33a357 18%, #249980 28%, #00a9c3 39%, #20738e 49%, #16366b 59%, #1b75ba 71%, #00abeb 81%, #65bef0 89%, #9fcec2 95%, #90c173 100%);
}

.challenge .easy-123 {
    background-color: #fff;
    margin-bottom: 0;
}

.challenge .easy-item {
    margin-bottom: 30px;
}

.challenge .easy-item:first-of-type {
    margin-top: 18px;
}

.challenge .easy-item:last-of-type {
    margin-bottom: 0;
}

.challenge .video-section {
    background-color: #f6f6f6;
    padding: 60px 0;
}

.challenge .video-section h2 {
    margin-bottom: 32px;
}

.image-strip {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 20.35vw;
}

.image-strip img {
    height: 100%;
}


/* compensate for white gap left by image-strip */

.image-strip+.benefits {
    position: relative;
    top: -2px;
}

.challenge .benefits {
    background-color: #001a3e;
    color: #fff;
    padding: 60px 0;
}

.challenge .benefits h2,
.challenge .benefits .subheading {
    color: inherit;
}

.easy-row {
    margin-top: 48px;
    display: flex;
    justify-content: space-between;
}

.easy-item--top-down {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.easy-item--top-down img {
    width: 143px;
    height: 143px;
    margin-bottom: 24px;
}

.easy-item--top-down p {
    font-size: 22px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.55;
    letter-spacing: normal;
    text-align: center;
    color: #ffffff;
}

.challenge .challenge-kit {
    padding: 60px 0;
}

.challenge-kit .top-blurb {
    padding-top: 24px;
}

.challenge .kit-images {
    padding-top: 60px;
}

.gradient-hl {
    height: 5px;
    width: 78.3%;
    margin: auto;
    background-image: linear-gradient( to right, #90c173 5%, #33a357 13%, #249980 24%, #00a9c3 35%, #20738e 46%, #16366b 57%, #1b75ba 69%, #00abeb 80%, #65bef0 89%, #9fcec2 95%, #90c173 100%);
}

.cta {
    padding: 60px 0;
}

.cta p {
    font-size: 36px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #545454;
    margin-bottom: 48px;
}

.challenge .cta .btn {
    /* font-size: 36px;
  font-weight: 500;
  font-stretch: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  color: #545454; */
    margin-bottom: 48px;
}

@media only screen and (max-width: 1023px) {
    .easy-row {
        flex-direction: column;
    }
    .easy-item--top-down {
        flex-direction: row;
        justify-content: flex-start;
    }
    .easy-item--top-down p {
        text-align: left;
        margin-left: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .image-strip {
        grid-template-columns: 1fr;
        grid-template-rows: unset;
    }
    .image-strip img {
        width: 100%;
        height: auto;
    }
    .easy-item--top-down {
        flex-direction: column;
        margin-bottom: 30px;
    }
    .easy-item--top-down img {
        /* width: 64px;
    height: 64px; */
    }
    .easy-item--top-down p {
        text-align: center;
        margin-left: 0;
    }
}


/***************************************/


/**  Testimonials Query Page **/


/***************************************/

.testimonials-query .top-section {
    margin-top: 32px;
}

.testimonials-query .top-section p {
    margin-top: 32px;
}

.testimonials-query .testimonial-cols {
    padding: 60px 0;
}

.testimonials-query .testimonial-cols .theater-wrapper {
    margin-right: 0;
}

.theater-figure figcaption {
    font-family: "Montserrat";
    font-size: 14px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 2.29;
    letter-spacing: normal;
    color: #545454;
}

.easy-item.easy-item-image-text {
    grid-template-columns: 173px 1fr;
    grid-gap: 40px;
}

.easy-item.easy-item-image-text {
    margin: 30px 0;
}

.easy-item.easy-item-image-text:last-of-type {
    margin-bottom: 0;
}

.easy-item-image-text .text {
    font-size: 20px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.6;
    letter-spacing: normal;
    color: #545454;
}

.easy-item-image-text .caption {
    margin-top: 15px;
    font-size: 14px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 2.29;
    letter-spacing: normal;
    color: #545454;
}

.testimonials-query .gradient-hl {
    margin-top: 60px;
}

@media only screen and (max-width: 1023px) {
    .theater-figure {
        margin-bottom: 60px;
    }
    .theater-figure figcaption {
        margin-right: 8.3333%;
        margin-left: 8.3333%;
    }
    .testimonials-query .testimonial-cols {
        padding-bottom: 0;
    }
}

@media only screen and (max-width: 767px) {
    .easy-item.easy-item-image-text {
        grid-template-columns: 1fr;
    }
}


/* DISNEY ELASTICS PAGE */

.elastics-logo {
    text-align: center;
}

.elastics-logo img {
    width: 100%;
    max-width: 480px;
}

.light-p {
    font-size: 22px;
    line-height: 1.55;
    color: #a2a2a2;
    margin-top: 40px;
}

.elastics-sizes-container {
    background-color: #f6f6f6;
    padding: 50px 0;
}

.elastics-card {
    margin-top: 30px;
    margin-bottom: 0;
}

.elastics-card .collection-image {
    background-color: transparent;
}

.elastics-card .collection-image {
    background-color: transparent;
    width: 100%;
    height: auto;
}

.elastics-card .collection-title {
    background-color: #006da7;
    color: white;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.elatics-heading {
    font-size: 36px;
    font-weight: 500;
    letter-spacing: normal;
    color: #545454;
}


/* ELASITCS DR PAGE BANNER */

.pr-banner.elastics {
    background-color: #fff;
}


/* TOAST */

.fixed-toast {
    position: sticky;
    top: 0px;
    width: 100%;
    z-index: 1;
}

.fixed-toast .toast-content {
    background-color: #006da7;
    padding: 14px 40px;
    text-align: center;
}

.fixed-toast .toast-p {
    font-size: 20px;
    color: #ffffff;
}

.fixed-toast .toast-p a {
    font-weight: 500;
    color: #fff;
    text-decoration: underline;
}

.close-toast {
    position: absolute;
    top: 10px;
    right: 10px;
    color: #fff;
    cursor: pointer;
}

.gradient-bar {
    height: 10px;
    width: 100%;
    background-image: linear-gradient( to right, #90c173 5%, #33a357 13%, #249980 24%, #00a9c3 35%, #20738e 46%, #16366b 57%, #00abeb 80%, #65bef0 89%, #9fcec2 95%, #90c173 100%);
}

@media only screen and (max-width: 767px) {
    .pr-banner.elastics .pr-content {
        margin-bottom: 0;
        padding-top: 40px;
    }
    .fixed-toast .toast-p {
        font-size: 1rem;
    }
}

@media only screen and (min-width: 1400px) {
    .vh-40-desktop {
        height: 40vh;
    }
}


/* Animations */
.pulse {
 	animation: pulse-animation 1.5s infinite;
	box-shadow: 0px 0px 1px 1px #006da7;
}

@keyframes pulse-animation {
	0% {
		box-shadow: 0 0 0 0px #006da7;
	}
	100% {
		box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
	}
}

.pulse--green {
 	animation: pulse-animation-green 1.5s infinite;
	box-shadow: 0px 0px 1px 1px #00a651;
}

@keyframes pulse-animation-green {
	0% {
		box-shadow: 0 0 0 0px #00a651;
	}
	100% {
		box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
	}
}