/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/

/*** Globals ***/

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

.nuns {
    display:none;
}

.light-teal {
    color:#15b4c3;
}

.dark-teal {
    color:#098894;
}

.light-text {
    font-weight:400;
}

.grad-text {
  background: -webkit-linear-gradient(0deg,#098894, #15b4c3);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.circle-img {
    border-radius:50%;
}

.curve-corners img {
    border-radius: 10px;
}

/*** Buttons ***/

/**** Teal Grad Button ***/
#top nav > ul > .button_solid_color_2 > a:before, #header-outer.transparent #top nav > ul > .button_solid_color_2 > a:before {
    background-image: -webkit-linear-gradient(left, #098894, #15b4c3);
    background-image: -o-linear-gradient(left, #098894, #15b4c3);
    background-image: linear-gradient(to right, #098894, #15b4c3);
}

/*** Orange to Pink Grad
#top nav > ul > .button_solid_color_2 > a:before, #header-outer.transparent #top nav > ul > .button_solid_color_2 > a:before {
    background-image: -webkit-linear-gradient(left, #ff934c, #fc686f);
    background-image: -o-linear-gradient(left, #ff934c, #fc686f);
    background-image: linear-gradient(to right, #ff934c, #fc686f);
}  ***/

.btn-clear {
    display: inline-block;
    background: transparent;
    border: 2px solid #fff;
    color: #fff;
    font-size: 16px;
    line-height: 16px;
    padding: 8px 40px;
    border-radius: 50px;
    text-transform: uppercase;
    transition: 0.5s all;
    font-weight: bold;
}

.btn-clear:hover {
    background:#098894;
    border:2px solid #098894;
    color:#fff;
}

.btn-dark-teal {
    display: inline-block;
    background:#098894;
    border: 2px solid #098894;
    color: #fff;
    font-size: 16px;
    line-height: 16px;
    padding: 8px 40px;
    border-radius: 50px;
    text-transform: uppercase;
    transition: 0.5s all;
    font-weight: bold;
}

.btn-dark-teal:hover {
    background:#15b4c3;
    border:2px solid #15b4c3;
    color:#fff;
}

.btn-grad {
    display: inline-block;
    background-image: -webkit-linear-gradient(left, #098894, #15b4c3);
    background-image: -o-linear-gradient(left, #098894, #15b4c3);
    background-image: linear-gradient(to right, #098894, #15b4c3);
    color: #fff;
    font-size: 16px;
    line-height: 16px;
    padding: 8px 40px;
    border-radius: 50px;
    text-transform: uppercase;
    transition: 0.5s all;
    font-weight: bold;
}

.btn-grad:hover {
    transform: scale(1.1);
    color:#fff;
}

.btn-orange-grad {
    display: inline-block;
    background-image: -webkit-linear-gradient(left, #ff934c, #fc686f);
    background-image: -o-linear-gradient(left, #ff934c, #fc686f);
    background-image: linear-gradient(to right, #ff934c, #fc686f);
    color: #fff;
    font-size: 16px;
    line-height: 16px;
    padding: 8px 40px;
    border-radius: 50px;
    text-transform: uppercase;
    transition: 0.5s all;
    font-weight: bold;
}

.btn-orange-grad:hover {
    transform: scale(1.1);
    color:#fff;
}

.big-btn {
    padding: 15px 45px;
    letter-spacing: 1px;
}

.btn-wide {
    font-size: 16px;
    line-height: 18px;
    text-transform: uppercase;
    border: 1px solid #000;
    display: block;
    padding: 10px;
    border-radius: 50px;
    color: #000;
}

.btn-wide:hover {

}

@media screen and (max-width:1000px) {

    .btn-nav {
        background-image: -webkit-linear-gradient(left, #098894, #15b4c3);
        background-image: -o-linear-gradient(left, #098894, #15b4c3);
        background-image: linear-gradient(to right, #098894, #15b4c3);
        padding: 5px 10px;
        border-radius: 50px;
    }

    body .nectar-mobile-only.mobile-header .btn-nav a {
        font-size: 14px;
        line-height: 14px;
        font-weight:bold;
        color:#fff;
    }

    body .nectar-mobile-only.mobile-header .btn-nav a i {
        font-size: 14px;
        line-height: 14px;
    }

}

/*** Cust Nav ***/

/*
html body:not([data-header-format="left-header"]) #header-outer .sf-menu li ul {
    background-color: rgba(9,136,148,.5)!important;
}*/

/*** Home ***/

.home-hero-wrap .flush-text {
    margin-bottom:10px;
}

.home-hero-wrap .wpb_wrapper .flush-text p {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 24px;
    line-height: 28px;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.services-wrap {

}

.services-wrap h1 {

}

.services-wrap i {
    font-size: 60px;
    line-height: 60px;
}

.services-wrap .la-phone {
    font-size: 16px;
    line-height: 18px;
}

.services-wrap h2 {
    font-size: 20px;
    line-height: 24px;
}

.services-wrap p {

}

.services-wrap ul {

}

.services-wrap ul li {
    font-size: 16px;
    line-height: 28px;
    font-weight: 600;
}

.services2-wrap {

}

.services2-wrap h2 {

}

.services2-wrap .services2-inner-wrap {

}

.services2-wrap .services2-inner-wrap h2 {
    font-size: 20px;
    line-height: 20px;
    font-weight: 300;
    text-align: center;
}

.services2-wrap .services2-inner-wrap h2 span {
    font-size: 34px;
    line-height: 34px;
    font-weight: bold;
    text-transform: none;
}

.services2-wrap .services2-inner-wrap .wpb_wrapper h3 {
    font-size: 18px;
    line-height: 20px;
    font-weight: 300;
    text-transform: none;
    margin-top: 20px;
    margin-bottom: 15px;
    text-align:center;
}

.services2-wrap .services2-inner-wrap ul {

}

.services2-wrap .services2-inner-wrap ul li {
    font-size: 16px;
    line-height: 18px;
    padding-bottom: 6px;
}

.services2-wrap .btm-btn-wrap {

}

.services2-wrap .btm-btn-wrap a {
    position: absolute;
    bottom: 25px;
    width: 70%;
    left: 15%;
}

.dark-col-wrap {

}

.outline-col-wrap {

}

.cta-wrap {

}

.cta-wrap .wpb_wrapper .wpb_wrapper h3 {
    font-size:24px;
    line-height:28px;
}

.about-wrap {

}

.testimonial-quote-wrap {

}

.testimonial-quote-wrap p {
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 1px;
    padding-left: 40px;
    padding-right: 40px;
    font-style: italic;
}

.testimonial-sig-wrap {

}

.testimonial-sig-wrap p {
    padding-left: 40px;
    font-weight: bold;
    font-size: 16px;
    line-height: 18px;
    padding-bottom: 0;
}

.testimonial-sig-wrap ul {
    margin-left: 0;
    padding-left: 40px;
}

.testimonial-sig-wrap ul li {
    list-style:none;
    display:inline-block;
}

.testimonial-sig-wrap i {
    color:#f8d64e;
}

.serv-list-wrap h2 {
    color: #fff;
    text-align: center;
    text-transform: capitalize;
    font-size: 18px;
    line-height: 22px;
    margin-top: 40px;
}

.serv-list-wrap ul {
    text-align: center;
}

.serv-list-wrap ul li {
    display: inline-block;
    padding-right: 15px;
}

.serv-list-wrap ul li a {
    color:#fff;
}

.serv-list-wrap ul li a:hover {
    color:#e8e8e8;
}

/*** In-House Specials Page ***/

.savings-hero-wrap h2 {
    color: #009ca8;
    text-transform: none;
    margin-bottom: 0;
}

.savings-hero-wrap .wpb_wrapper .wpb_wrapper h3 {
    color: #009ca8;
    font-size:20px;
    line-height:22px;
    font-weight:300;
    font-family:'Plus Jakarta Sans';
}

.savings-hero-wrap p {
    font-family: 'Heebo';
}

.savings-hero-wrap ul {
    margin-left: 0;
}

.savings-hero-wrap ul li {

}

.savings-hero-wrap .price-callout-wrap {
    background-color: rgba(0,145,157,0.15);
    width: 85%;
    margin: 0 auto;
    padding: 15px 20px;
    border-radius: 10px;
}

.savings-hero-wrap .price-callout-wrap h2 {
    text-align:center;
}

.savings-hero-wrap .price-callout-wrap h2 span {
    color: #000;
    font-size: 16px;
    line-height: 18px;
    font-weight: 400;
    text-transform: uppercase;
}

.savings-hero-wrap .post-callout {
    text-transform: uppercase;
}

.savings-hero-wrap .md-txt {
    font-size: 16px;
    line-height: 18px;
    padding-bottom:4px;
}

.savings-hero-wrap .sm-txt {
    font-size: 13px;
    line-height: 15px;
}

.plan-covers-wrap h2 {

}

.plan-covers-wrap .wpb_wrapper .wpb_wrapper h3 {
    font-size: 24px;
    line-height: 28px;
    text-align: center;
    text-transform: none;
}

.plan-covers-wrap .wpb_wrapper .wpb_wrapper h3 span {
    font-size: 36px;
    line-height: 40px;
    text-transform: uppercase;
    letter-spacing: -3px;
}

.plan-covers-wrap ul {

}

.plan-covers-wrap ul li {
    font-family: 'Heebo';
}

.plan-included-wrap {
    font-family: 'Heebo';
}

.plan-included-wrap h2 {

}

.plan-teal-bg {
    background-color: rgba(0,145,157,0.15);
    padding: 5%;
    border-radius: 10px;
}

.plan-teal-bg .sm-txt-block {

}

.plan-teal-bg .sm-txt-block p {
    font-family: 'Heebo';
    padding-bottom: 5px;
}

.plan-teal-bg .sm-txt-block ul {

}

.plan-teal-bg .sm-txt-block ul li {
    font-family: 'Heebo';
}

.plan-teal-bg .sm-txt-block ul li strong em {
    font-weight:700;
}

/*** Membership Plan ***/

.member-full-wrap {
    border-bottom:5px solid #009ca8;
}

.bg-member-txt-wrap ul li {
    font-weight: bold;
    line-height: 20px;
    padding-bottom: 10px;
}

.member-plan-txt-wrap ul li {
    font-weight: bold;
    line-height: 20px;
    padding-bottom: 10px;
}

.member-plan-txt-wrap .sm-txt {
    font-size:14px;
    line-height:18px;
}

/*** Services ***/

.services-page-wrap h2 {
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 0;
}

.services-page-wrap .sm-txt {
    font-size:16px;
    line-height:18px;
}

.services-page-wrap p {
    font-size:16px;
    line-height:22px;
}

.services-page-wrap .btn-grad {
    position: absolute;
    width: 66%;
    left: 17%;
    bottom: 10%;
}

.material .services-page-wrap .wpb_content_element,
.material .services-page-wrap .wpb_row {
    margin-bottom: 10px;
}

.serv-sec-top-txt-wrap h2 {
    font-size: 24px;
    line-height: 28px;
    text-transform: capitalize;
    text-align:center;
}

/*** Team ***/

.doc-bio-wrap-top .wpb_wrapper .wpb_wrapper h2 {
    margin-bottom: 0;
}

.doc-bio-wrap-top .sm-txt{
    font-size: 14px;
    line-height: 16px;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 1px;
}


.doc-bio-wrap-top p,
.doc-bio-wrap p {
    font-size: 16px;
    line-height: 24px;
}

.staff-mod-wrap .wpb_wrapper .wpb_wrapper h2 {
    margin-bottom: 0;
    font-size: 24px;
    line-height: 24px;
}

.staff-mod-wrap .wpb_wrapper .wpb_wrapper p {

}

/*** Blog ***/

#sidebar .widget li {
    list-style: disc;
    padding-bottom: 10px;
}

html body #page-header-bg .container .row .blog-title.section-title h1 {
    font-size: 30px;
    line-height: 34px;
}

html body .post h3.title {
    font-size: 24px;
    line-height: 26px;
}

.blg-wrppr h2 {
    font-size: 24px;
    line-height: 28px;
    text-transform: none;
}

.blg-wrppr ul {

}

.blg-wrppr ul li {

}

.blg-wrppr a {

}

.blg-wrppr a:hover {

}

/*** Global Above Footer ***/

.dent-assoc-wrap .owl-carousel[data-desktop-cols] .owl-stage {
    padding:0;
}

.dent-assoc-wrap .owl-carousel[data-column-padding="40px"] .carousel-item {
    padding: 20px 41px;
}

/*** Footer ***/

#footer-outer #footer-widgets .ftr-col-wrap {
    font-family: 'Heebo';
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-icnwrp {

}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-icnwrp .ftr-iconbg {
    display: inline-block;
    width: 12%;
    background: rgba(8,137,149,0.1);
    text-align: center;
    padding: 10px;
    border-radius: 50%;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-icnwrp .ftr-iconbg i {
    color:#088995;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-add-wrap {
    margin-bottom: 20px;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-add-wrap .ftr-icnwrp .ftr-add {
    display: inline-block;
    width: 84%;
    vertical-align: middle;
    margin-left: 2%;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-add-wrap .ftr-icnwrp .ftr-add a {

}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-add-wrap .ftr-icnwrp .ftr-add a:hover {

}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-add-wrap .ftr-icnwrp .ftr-add p {
    font-size: 16px;
    line-height: 20px;
    text-transform: uppercase;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-add-wrap .ftr-icnwrp .ftr-add p strong {

}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-phn-wrap {
    margin-bottom: 20px;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-phn-wrap .ftr-phn {
    display: inline-block;
    width: 84%;
    vertical-align: middle;
    margin-left: 2%;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-phn-wrap .ftr-phn a {
    font-size: 16px;
    line-height: 20px;
    font-weight:bold;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-phn-wrap .ftr-phn a:hover {

}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-eml-wrap {
    margin-bottom: 20px;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-eml-wrap .ftr-eml {
    display: inline-block;
    width: 84%;
    vertical-align: middle;
    margin-left: 2%;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-eml-wrap .ftr-eml a {
    font-size: 16px;
    line-height: 20px;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-eml-wrap .ftr-eml a:hover {

}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-hrs-wrap .ftr-hrs {
    display: inline-block;
    width: 84%;
    vertical-align:top;
    margin-left: 2%;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-hrs-wrap .ftr-hrs ul {
    margin-top: 5px;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-hrs-wrap .ftr-hrs ul li {
    padding: 0!important;
    text-transform: uppercase;
    font-size: 15px;
    line-height: 21px;
    letter-spacing: 0.5px;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-hrs-wrap .ftr-hrs ul li span {
    padding-left:5px;
}

#footer-outer #footer-widgets .ftr-col-wrap .ftr-hrs-wrap .ftr-hrs table tr td {
    font-size: 16px;
    line-height: 22px;
    padding-right: 10px;
    letter-spacing: 0.5px;
}

#footer-outer #footer-widgets #contact .ftr-col-wrap {

}

#footer-outer #footer-widgets #contact .ftr-col-wrap h2 {
    color: #088995;
    font-size: 24px;
    line-height: 28px;
    padding-bottom: 10px;
    text-align: center;
}

/*** Responsive ***/

@media screen and (min-width:1000px) and (max-width:1199px) {

    .home-hero-wrap .wpb_wrapper .flush-text p {
        font-size: 22px;
        line-height: 26px;
    }

    #top nav > ul > li > a {
        font-size:12px;
    }

}

@media only screen and (min-width: 1000px) {

    body #footer-outer .row {
        padding: 75px 0 20px;
    }

    .services2-wrap .btm-btn-wrap a {
        width: 90%;
        left: 5%;
    }

    .savings-hero-wrap .price-callout-wrap {
        width: 100%;
        padding: 20px 10px;
    }

    .savings-hero-wrap .price-callout-wrap h2 span {
        font-size: 14px;
        line-height: 16px;
    }

    html body .services-page-wrap .wpb_wrapper h2 {
        font-size: 20px;
        line-height: 24px;
    }

}

.for-mobile {
    display:none!important;
}

@media screen and (max-width:787px) {

    .for-desktop {
        display:none!important;
    }

    .for-mobile {
        display:block!important;
    }

    .home-hero-wrap .wpb_wrapper .flush-text p {
        font-size: 20px;
    }

    .testimonial-quote-wrap p {
        font-size: 18px;
        line-height: 30px;
        padding-left: 10px;
        padding-right: 10px;
    }

    .specials-wrap .img-with-aniamtion-wrap[data-animation=fade-in-from-left] .hover-wrap {
        padding-right:0;
    }

    .serv-sec-top-txt-wrap h2 {
        font-size: 22px;
        line-height: 26px;
    }

    .npp-wrap h2 {
        font-size: 22px;
        line-height: 26px;
    }

    .npp-wrap .big-btn {
        padding: 15px;
        display: block;
        text-align: center;
    }

}
/* ═══════════════════════════════════════════════════════════════════════════
   FIX: About Page Button Overlap - Deployed 2025-10-14
   ═══════════════════════════════════════════════════════════════════════════ */

/* Fix the button container that has flexbox properties but missing display */
.wpb_text_column div[style*="flex-wrap: wrap"][style*="justify-content: center"] {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
}

/* Hide the <br> tags that are causing vertical stacking and overlap */
.wpb_text_column div[style*="flex-wrap: wrap"] br {
    display: none !important;
}

/* Ensure buttons are inline-block with proper spacing */
.wpb_text_column div[style*="flex-wrap: wrap"] a {
    display: inline-block !important;
    margin: 10px;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* Add subtle hover effect for better UX */
.wpb_text_column div[style*="flex-wrap: wrap"] a:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* Visible focus state for accessibility (keyboard navigation) */
.wpb_text_column div[style*="flex-wrap: wrap"] a:focus {
    outline: 3px solid #098894;
    outline-offset: 2px;
}

/* ═══════════════════════════════════════════════════════════════════════════
   RESPONSIVE: Mobile Optimization
   ═══════════════════════════════════════════════════════════════════════════ */

/* Tablet and below - stack buttons vertically for better mobile UX */
@media (max-width: 768px) {
    .wpb_text_column div[style*="flex-wrap: wrap"] {
        flex-direction: column;
        align-items: stretch;
        gap: 15px;
    }

    .wpb_text_column div[style*="flex-wrap: wrap"] a {
        width: 100%;
        max-width: 400px;
        text-align: center;
        margin: 0 auto;
        padding: 15px 30px;
    }
}

/* Small mobile screens - adjust button sizing */
@media (max-width: 480px) {
    .wpb_text_column div[style*="flex-wrap: wrap"] {
        gap: 10px;
    }

    .wpb_text_column div[style*="flex-wrap: wrap"] a {
        padding: 12px 25px;
        font-size: 16px !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   END OF CSS FIX
   ═══════════════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════════
   FIX: Dr. Pierpont Team Photo - Consistent Rounded Corners
   Date: 2025-10-14
   Issue: Image had inconsistent border-radius (left rounded, right square)
   Solution: Apply uniform border-radius to all corners
   ═══════════════════════════════════════════════════════════════════════════ */

/* Target the team photo specifically by filename */
img[src*="home-staff-v1-rev2.jpg"],
image[src*="home-staff-v1-rev2.jpg"] {
    border-radius: 10px !important;
    overflow: hidden !important;
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
}

/* General fix for all images in About page sections with teal background */
.wpb_wrapper div[style*="e8f4f5"] img,
.wpb_wrapper div[style*="e8f4f5"] image {
    border-radius: 10px !important;
    overflow: hidden !important;
    display: block !important;
}

/* Ensure parent container doesn't conflict with border-radius */
.wpb_wrapper div[style*="border-radius"] p {
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: inherit;
}

/* Additional selector for image wrapper divs that might have border-radius */
.wpb_wrapper div[style*="border-radius: 10px"] img,
.wpb_wrapper div[style*="border-radius: 10px"] image {
    border-radius: 10px !important;
    overflow: hidden !important;
}

/* Force consistent rendering across browsers */
.wpb_wrapper img,
.wpb_wrapper image {
    -webkit-border-radius: inherit;
    -moz-border-radius: inherit;
    border-radius: inherit;
}

/* ═══════════════════════════════════════════════════════════════════════════
   END OF CSS FIX
   ═══════════════════════════════════════════════════════════════════════════ */
