/*
 Theme Name:   GeneratePress Child
 Theme URI:    http://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Thomas Usborne
 Author URI:   http://edge22.com
 Template:     generatepress
 Version:      0.1
 Tags: two-columns, three-columns, one-column, right-sidebar, left-sidebar, fluid-layout, responsive-layout, custom-header, custom-background, custom-menu, custom-colors, sticky-post, threaded-comments, translation-ready, featured-images, theme-options, light, white, dark, black, blue, brown, gray, green, orange, pink, purple, red, silver, tan, yellow
*/

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-moz-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-o-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-ms-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

/* .fade-in {
    animation: fadeIn ease 5s;
    -webkit-animation: fadeIn ease 5s;
    -moz-animation: fadeIn ease 5s;
    -o-animation: fadeIn ease 5s;
    -ms-animation: fadeIn ease 5s;
} */

.fade-in {
    opacity: 0;
    animation: fadeinout 5s linear forwards;
    -webkit-animation: fadeinout 5s linear forwards;
    -moz-animation: fadeinout 5s linear forwards;
    -o-animation: fadeinout 5s linear forwards;
    -ms-animation: fadeinout 5s linear forwards;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: 5s;
    -moz-animation-duration: 5s;
    animation-duration: 5s;
    -webkit-animation-delay: .7s;
    -moz-animation-delay: .7s;
    animation-delay: .7s;
}

@-webkit-keyframes fadeinout {
    0% { opacity: 0; }
    20% { opacity: 1; }
    80% { opacity: 1; }
    100% { opacity: 0; }
  }
  
  @keyframes fadeinout {
    0% { opacity: 0; }
    20% { opacity: 1; }
    80% { opacity: 1; }
    100% { opacity: 0; }
  }

.main-navigation {
    position: relative;
}

.main-navigation .main-nav ul li>a:hover,
.main-navigation .main-nav ul li>a:focus,
.main-navigation .main-nav ul li.sfHover>a,
.main-navigation,
.main-navigation ul ul,
.main-navigation .main-nav ul li[class*="current-menu-"]>a:hover,
.main-navigation .main-nav ul li[class*="current-menu-"].sfHover>a,
.main-navigation .main-nav ul li>a:hover,
.main-navigation .main-nav ul li.sfHover>a,
.main-navigation .main-nav ul ul li>a:hover,
.main-navigation .main-nav ul ul li>a:focus,
.main-navigation .main-nav ul ul li.sfHover>a {
    color: #ffffff;
    background-color: rgba(86, 156, 147, 0.8);
}

.main-navigation .main-nav ul li[class*="current-menu-"]>a {
    background-color: transparent;
}

.entry-title {
    line-height: 1;
}

button.menu-toggle {
    text-align: right;
}

.inside-header {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-justify-content: space-around;
    justify-content: flex-end;
}

.header-widget {
    float: none;
    max-width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
}

.header-widget .separate-containers .widget,
.header-widget .widget {
    margin-bottom: 0px;
    padding: 0px;
}

.header-widget #custom_html-3 {
    white-space: nowrap;
}

.header-widget #custom_html-2 {
    font-size: 26px;
    font-weight: 500;
    white-space: nowrap;
}

.header-widget p {
    margin-bottom: 0px;
}

a.social-icon {
    background: #4eb7ac;
    -moz-border-radius: 70px;
    -webkit-border-radius: 70px;
    border-radius: 70px;
    color: #267870;
    height: 34px;
    width: 34px;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    margin-right: 2px;
    margin-top: 3px;
}

a.social-icon i {
    display: block;
    padding-top: 6px;
}

hr {
    background-color: rgba(0, 0, 0, .4);
    height: 2px;
}

.less-bold {
    font-weight: 300;
}

.hidden-image {
    visibility: hidden;
}

.widget-title {
    margin-bottom: 20px;
}

.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 input[type=url],
.wpcf7 input[type=password],
.wpcf7 input[type=tel],
.wpcf7 input[type=number],
.wpcf7 input[type=search],
.wpcf7 textarea {
    padding: 6px 8px;
    font-size: 14px;
}

.wpcf7 textarea {
    height: 120px;
}

.wpcf7 p {
    margin-bottom: .7em;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.button:visited {
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
}

.video-container {
    position: relative;
}

.video-container video {
    height: auto;
    vertical-align: middle;
    width: 100%;
    pointer-events: none;
}

.home-bg .soleil-logo-home,
.video-container .overlay-desc {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 75%;
    max-width: 1080px;
}

.inside-bg.video-container .overlay-desc {
    position: absolute;
    top: 70%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: initial;
    max-width: 435px;
    font-size: 40px;
    padding: 2px 14px;
    color: #ffffff;
    background-color: #fec30c;
    line-height: 1em;
}


/* .video-container .overlay-desc {
	background: rgba(0, 0, 0, 0);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.video-container .overlay-desc h1 {
	color: #ffffff;
	font-size: 5vw;
	font-weight: normal;
	text-shadow: 2px 2px 4px #666666;
	text-align: left;
	line-height: 1.6em;
}

.video-container .overlay-desc h1 .video-subheader {
	display: block;
	font-size: 10vw;
	text-align: left;
}
.home-bg {
	background: url('images/home-background.jpg') no-repeat center center;
	background-size: cover;
	margin-top: -131px;
	z-index: 10;
	width: 100%;
	position: relative;
} */

.inside-bg {
    background: url('images/inside-background.jpg') no-repeat top center;
    background-size: contain;
    margin-top: -131px;
    z-index: 10;
    width: 100%;
    position: relative;
}

.home-cta-boxes {
    text-align: center;
    border-top: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
}

.home-cta-boxes .home-cta-box {
    border-left: 2px solid #ffffff;
    padding: 0;
}

.home-cta-boxes .home-cta-box:last-child {
    border-right: 2px solid #ffffff;
}

.home-cta-boxes a {
    color: #ffffff;
    font-size: 30px;
    line-height: 30px;
    font-weight: 600;
    display: block;
    padding: 60px 0;
    height: 60px;
}

.home-cta-box a:hover {
    background-color: #A7DBD6;
    color: #4eb7ac !important;
}

.home-bio h2 {
    color: #fff7b9;
    font-size: 78px;
    font-weight: 700;
    text-transform: uppercase;
    padding-top: 30px;
    margin-bottom: 10px;
}

.home-bio .home-dr-soleil {
    margin-bottom: -8px;
    padding-right: 20px;
}

.home-bio p {
    color: #ffffff;
}

.home-bio a.button,
.home-patient-reviews a.button {
    background-color: #fff7b9;
    color: #3d6a5f;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    font-weight: 800;
    font-size: 20px;
}

.why-bio h1 {
    color: #fff7b9;
    font-size: 46px;
    font-weight: 700;
    text-transform: uppercase;
    padding-top: 30px;
    margin-bottom: 20px;
}

.why-bio .home-dr-soleil {
    margin-bottom: -8px;
    padding-right: 20px;
}

.why-stars ul li {
    margin-bottom: 20px;
}

.home-welcome h2 {
    color: #306557;
    font-size: 60px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
}

.home-logos {
    text-align: center;
}

.home-logos img {
    vertical-align: middle;
    padding: 0 10px 16px;
}

.home-patient-reviews h3 {
    color: #ffffff;
    font-size: 50px;
}

.flexslider .flex-direction-nav a,
.flexslider .flex-direction-nav a {
    display: block;
}

.flex-direction-nav .flex-next {
    right: 0 !important;
    margin-right: -40px;
    opacity: 1 !important;
}

.flex-direction-nav .flex-prev {
    left: 0 !important;
    opacity: 1 !important;
    margin-left: -40px;
}

.flexslider {
    width: 90%;
    margin: 0 auto !important;
    background: transparent !important;
    border: 0px !important;
}

.flex-direction-nav a::before {
    font-size: 30px !important;
    color: #ffffff !important;
}

.flexslider li.slide p {
    color: #ffffff;
    line-height: 24px;
    text-align: center;
}

.flexslider li.slide p::before {
    color: #ffffff;
    content: "\0022";
}

.flexslider li.slide a.read-more::before {
    color: #ffffff;
    content: "...\0022";
}

.flexslider li.slide a.read-more {
    color: #ffffff;
}

#content .widget ul.recent-blog-posts {
    list-style-type: none;
}

#content .widget ul li.recent-blog-posts-excerpt h4 {
    margin-bottom: 10px;
    font-size: 20px;
}

.date-comments {
    color: #666666;
    font-size: 80%;
    line-height: 1.5;
    margin-bottom: 10px;
}

p.recent-thumbnail {
    float: left;
    padding-right: 12px;
}

p.recent-excerpt {
    font-size: 80%;
    line-height: 1.5;
    padding-bottom: 20px;
}

a.top-bar-button, a.top-bar-button:visited {
    font-size: 18px;
    background-color: #4eb7ac;
    color: #fff7b9;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    padding: 6px 15px;
    margin: 2px 10px;
}

a.top-bar-button:hover {
    background-color: #fff7b9;
    color: #4eb7ac;
}

@media (max-width: 768px) {
    a.top-bar-button {
        display: block;
        margin: 10px auto 4px;
        max-width: 210px;
    }
}

#rum_sst_tab:hover, #rum_sst_tab2:hover {
    background-color: #A4A4A4;
}
#rum_sst_tab {
    font-family: Arial,sans-serif;
    top: 350px;
    background-color: #3d6a5f;
    color: #ffffff;
    border-style: solid;
    border-width: 0;
}
#rum_sst_tab2 {
    font-family: Arial,sans-serif;
    top: 560px;
    background-color: #3d6a5f;
    color: #fff7b9;
    border-style: solid;
    border-width: 0;
}
.rum_sst_left {
    left: -2px;
    cursor: pointer;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -webkit-transform: rotate(
270deg
);
    -moz-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    transform: rotate(
270deg
);
    -moz-border-radius-bottomright: 10px;
    border-bottom-right-radius: 10px;
    -moz-border-radius-bottomleft: 10px;
    border-bottom-left-radius: 10px;
}
.rum_sst_contents {
    position: fixed;
    margin: 0;
    padding: 6px 13px 8px 13px;
    text-decoration: none;
    text-align: center;
    font-size: 15px;
    font-weight: bold;
    border-style: solid;
    display: block;
    z-index: 100000;
}

a.footer-read-more {
    font-weight: bold;
}

#content .widget ul li.recent-blog-posts-excerpt {
    margin-left: 0px;
    list-style-type: none;
    /*overflow: auto;*/
    border-bottom: dotted 1px #cccccc;
    padding-bottom: 0px;
    margin-bottom: 20px;
}

.footer-widgets a.social-icon:hover {
    color: #267870;
}

.site-footer a.button,
.site-footer a.button:visited {
    background-color: #6e8f87;
}

.site-footer a.button:hover {
    background-color: #3d6a5f;
}

.generate-back-to-top,
.generate-back-to-top:visited {
    left: 30px;
}

@media (min-width: 1080px) {
    .main-navigation .main-nav ul li a {
        white-space: nowrap;
        letter-spacing: 2px;
    }
    .sf-menu {
        display: flex;
        justify-content: space-around;
    }
    .main-navigation .main-nav ul li li a {
        letter-spacing: unset;
        white-space: normal;
    }
}

@media (max-width: 1080px) {
    .main-navigation .menu-toggle {
        display: block;
    }
    .main-navigation ul {
        display: none;
    }
    .main-navigation.toggled .main-nav>ul {
        display: block;
    }
    .main-navigation .main-nav ul ul.toggled-on {
        position: relative;
        top: 0;
        left: 0 !important;
        width: 100%;
    }
    .main-navigation .main-nav .sf-menu>li {
        float: none;
        clear: both;
        display: block !important;
        text-align: left !important;
    }
    .main-navigation .sub-menu.toggled-on,
    .main-navigation .children.toggled-on {
        display: block !important;
        opacity: 1 !important;
    }
    .main-navigation .dropdown-menu-toggle:before {
        content: "\f107" !important;
    }
    .main-navigation .sfHover>a .dropdown-menu-toggle:before {
        content: "\f106" !important;
    }
    .main-navigation .menu-item-has-children .dropdown-menu-toggle {
        float: right;
    }
    .main-navigation .mobile-bar-items {
        display: block;
    }
    .main-navigation .menu li.search-item {
        display: none !important;
    }
    .main-navigation .sf-menu>li.menu-item-float-right {
        float: none !important;
        display: inline-block;
    }
    [class*="nav-float-"] .site-header .inside-header>* {
        float: none;
        clear: both;
    }
}

@media (max-width: 1020px) {
    .home-cta-boxes .home-cta-box {
        border-bottom: 2px solid #ffffff;
    }
    .home-cta-boxes a {
        padding: 30px 0;
        height: 30px;
        font-size: 24px;
        line-height: 24px;
    }
    .home-cta-boxes .home-cta-box:last-child a {
        padding: 24px 0 35px 0;
    }
}

@media (min-width: 768px) {
    .admin-bar .fixed-header {
        top: 32px;
    }
    .fixed-header {
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 200;
    }
    .home-bg {
        height: 838px;
        background-attachment: fixed;
    }
    .inside-bg {
        height: 463px;
        background-attachment: fixed;
    }
    .home-patient-reviews h3,
    .home-patient-reviews .flexslider {
        padding-bottom: 30px;
    }
    .home-patient-reviews {
        height: 432px;
        background-attachment: fixed;
    }
    .header-widget #custom_html-3 {
        padding-left: 20px;
    }
    .entry-content .wpcf7 input[type=text],
    .entry-content .wpcf7 input[type=email],
    .entry-content .wpcf7 input[type=url],
    .entry-content .wpcf7 input[type=password],
    .entry-content .wpcf7 input[type=tel],
    .entry-content .wpcf7 input[type=number],
    .entry-content .wpcf7 input[type=search],
    .entry-content .wpcf7 textarea {
        width: 75%;
    }
}

@media (max-width: 1020px) {
    .landing-page-smile-gallery img.wp-image-586,
    .landing-page-smile-gallery img.wp-image-588 {
        padding-top: 60px;
    }
}

@media (min-width: 768px) {
    .main-navigation ul ul {
        width: 230px;
    }
}

@media (max-width: 768px) {
    .inside-header {
        flex-direction: column-reverse;
    }
    .header-widget {
        display: inline;
    }
    .inside-header>:not(:last-child) {
        margin-bottom: 0px;
    }
    .site-logo {
        margin-bottom: 10px;
    }
    .slideout-navigation,
    .main-navigation ul ul,
    .main-navigation .main-nav ul li[class*="current-menu-"]>a:hover,
    .main-navigation .main-nav ul li[class*="current-menu-"].sfHover>a,
    .main-navigation .main-nav ul li[class*="current-menu-"]>a,
    .main-navigation .main-nav ul li>a:hover,
    .main-navigation .main-nav ul li.sfHover>a,
    .main-navigation .main-nav ul ul li>a:hover,
    .main-navigation .main-nav ul ul li>a:visited,
    .main-navigation .main-nav ul ul li>a:focus,
    .main-navigation .main-nav ul ul li.sfHover>a {
        background-color: rgba(86, 156, 147, 1);
    }
    .home-bg,
    .inside-bg {
        text-align: center;
        margin-top: -70px;
    }
    #generate-slideout-menu.main-navigation .main-nav ul ul {
        background-color: #4eb7ac;
    }
    .entry-content .wpcf7 input[type=text],
    .entry-content .wpcf7 input[type=email],
    .entry-content .wpcf7 input[type=url],
    .entry-content .wpcf7 input[type=password],
    .entry-content .wpcf7 input[type=tel],
    .entry-content .wpcf7 input[type=number],
    .entry-content .wpcf7 input[type=search],
    .entry-content .wpcf7 textarea {
        width: 100%;
    }
    .inside-bg.video-container .overlay-desc {
        font-size: 25px;
    }
}