/*==========================================================
Lake Cardiology
Canvas 7.3.1 Custom Styles
==========================================================*/

html {
    scroll-behavior: smooth;
}

:root {
    --cv-font-display: "Inter", sans-serif;
}

/*==========================================================
Header
==========================================================*/

/* Override Canvas logo sizing */
#header-wrap #logo img.lc-header-logo {

    display: block;

    width: auto;

    height: 42px;

    max-height: 42px;

    object-fit: contain;

    transition: height .3s ease;

}

/* Keep the same size after scrolling */

#header.sticky-header #header-wrap #logo img.lc-header-logo {

    height: 42px;

    max-height: 42px;

}

/* Phone button */

.lc-header-phone {

    display: inline-flex;

    align-items: center;

    gap: .45rem;

    white-space: nowrap;

}

/*==========================================================
Tablet
==========================================================*/

@media (max-width: 991.98px) {

    #header-wrap #logo img.lc-header-logo,
    #header.sticky-header #header-wrap #logo img.lc-header-logo {

        height: 36px;

        max-height: 36px;

    }

}

/*==========================================================
Mobile
==========================================================*/

@media (max-width: 767.98px) {

    #header-wrap {

        min-height: 64px;

    }

    #header-wrap .container {

        min-height: 64px;

    }

    #header-wrap #logo img.lc-header-logo,
    #header.sticky-header #header-wrap #logo img.lc-header-logo {

        height: 32px;

        max-height: 32px;

    }

    .lc-header-phone {

        display: none !important;

    }

}

/*==========================================================
Small Phones
==========================================================*/

@media (max-width: 575.98px) {

    #header-wrap #logo img.lc-header-logo,
    #header.sticky-header #header-wrap #logo img.lc-header-logo {

        height: 30px;

        max-height: 30px;

    }

}

/*==========================================================
Hero
==========================================================*/

.lc-hero-bg {
    background-image:
        linear-gradient(
            90deg,
            rgba(15, 35, 43, 0.82) 0%,
            rgba(15, 35, 43, 0.54) 48%,
            rgba(15, 35, 43, 0.12) 100%
        ),
        url("../images/medical-011-large.webp");

    background-position: center;
    background-size: cover;
}

.cv-hero .container {
    position: relative;
    z-index: 2;
}

/*==========================================================
General Content
==========================================================*/

.lc-lead-copy {
    font-size: 1.12rem;
}

.lc-section-intro {
    max-width: 760px;
    margin: 22px auto 0;
    color: #617179;
}

/*==========================================================
Story Sections
==========================================================*/

.cv-story--reverse .cv-story-img {
    order: 2;
}

.cv-story--reverse .cv-story-body {
    order: 1;
}

/*==========================================================
Doctor Layout
==========================================================*/

.lc-doctor-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
    gap: clamp(3rem, 6vw, 6rem);
    align-items: start;
}

.lc-doctor-heading {
    margin-bottom: 2rem;
}

.lc-doctor-heading > span {
    display: block;
    margin-bottom: .25rem;
    color: #263a43;
}

.lc-doctor-heading h2 {
    margin-bottom: 0;
}

/* Portrait + intro */

.lc-doctor-profile {
    display: grid;
    grid-template-columns: 145px minmax(0, 1fr);
    gap: 1.75rem;
    align-items: start;
    margin-bottom: 2rem;
}

.lc-doctor-headshot {
    width: 145px;
    height: 145px;
    object-fit: cover;
    border: 4px solid #fff;
    border-radius: 50%;
    box-shadow: 0 12px 32px rgba(23, 42, 51, .12);
}

.lc-doctor-intro p:last-child {
    margin-bottom: 0;
}

/* Clinical focus */

.lc-doctor-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem 2rem;
    margin: 2rem 0 2.75rem;
}

.lc-doctor-points span {
    display: flex;
    align-items: center;
    gap: .6rem;
    color: #263a43;
    font-weight: 600;
}

.lc-doctor-points i {
    flex: 0 0 auto;
    color: var(--cnvs-themecolor);
}

/* Education & Training */

.lc-doctor-credentials {
    margin: 2.5rem 0;
}

.lc-doctor-credentials h3,
.lc-doctor-personal h3 {
    margin-bottom: 1.4rem;
    font-size: 1.45rem;
}

.lc-credentials-list {
    border-top: 1px solid rgba(31, 182, 176, .22);
}

.lc-credential-row {
    display: grid;
    grid-template-columns: 165px minmax(0, 1fr);
    gap: 1.5rem;
    padding: 1.1rem 0;
    border-bottom: 1px solid rgba(31, 182, 176, .18);
}

.lc-credential-label {
    color: var(--cnvs-themecolor);
    font-weight: 700;
}

.lc-credential-value strong {
    display: block;
    color: #344750;
    font-weight: 600;
}

.lc-credential-value span {
    display: block;
    margin-top: .2rem;
    color: #7a898f;
    font-size: .92rem;
}

/* Personal section */

.lc-doctor-personal {
    margin: 2.75rem 0;
    padding-top: 2rem;
    border-top: 1px solid rgba(23, 42, 51, .10);
}

/* Supporting image */

.lc-doctor-image {
    position: sticky;
    top: 120px;
}

.lc-doctor-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 760px;
    object-fit: cover;
    border-radius: 28px;
}

/*==========================================================
Dr. Kronhaus Portrait
==========================================================*/

.lc-doctor-image {
    position: sticky;
    top: 120px;
}

.lc-doctor-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 780px;

    object-fit: cover;
    object-position: center top;

    border-radius: 28px;
}

/* Tablet/mobile */

@media (max-width: 991.98px) {

    .lc-doctor-image {
        position: static;
    }

    .lc-doctor-image img {
        max-height: 520px;
        object-position: center 20%;
    }

}

@media (max-width: 991.98px) {

    .lc-doctor-layout {
        grid-template-columns: 1fr;
    }

    .lc-doctor-image {
        position: static;
        order: -1;
    }

    .lc-doctor-image img {
        max-height: 440px;
    }
}

@media (max-width: 767.98px) {

    .lc-doctor-profile {
        grid-template-columns: 1fr;
    }

    .lc-doctor-headshot {
        width: 130px;
        height: 130px;
    }

    .lc-doctor-points {
        grid-template-columns: 1fr;
    }

    .lc-credential-row {
        grid-template-columns: 1fr;
        gap: .35rem;
    }
}

/*==========================================================
Doctor Professional Recognition
==========================================================*/

.lc-doctor-recognition {
    margin: 2.75rem 0;
    padding: 1.5rem 1.75rem;
    background: #f8fbfa;
    border: 1px solid rgba(31, 182, 176, .18);
    border-radius: 18px;
}

.lc-recognition-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.lc-recognition-copy {
    flex: 1;
}

.lc-recognition-label {
    display: block;
    margin-bottom: .35rem;
    color: var(--cnvs-themecolor);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.lc-recognition-copy h3 {
    margin: 0 0 .35rem;
    font-size: 1.25rem;
}

.lc-recognition-copy p {
    margin: 0;
    color: #6f7e84;
    font-size: .95rem;
}

.lc-recognition-link {
    display: block;
    flex: 0 0 auto;
    text-decoration: none;
}

.lc-best-physicians-logo {
    display: block;
    width: 190px;
    height: auto;
    transition: transform .25s ease,
                opacity .25s ease;
}

.lc-recognition-link:hover .lc-best-physicians-logo {
    transform: translateY(-2px);
    opacity: .9;
}

/* Mobile */
@media (max-width: 767.98px) {

    .lc-doctor-recognition {
        padding: 1.5rem;
    }

    .lc-recognition-content {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.25rem;
    }

    .lc-best-physicians-logo {
        width: 170px;
    }

}

/*==========================================================
Kristin Casey / Provider Section
==========================================================*/

.lc-provider-section {
    background: #f8fbfa;
}

.lc-provider-layout {
    display: grid;
    grid-template-columns: minmax(360px, .85fr) minmax(0, 1.15fr);
    gap: clamp(3rem, 6vw, 6rem);
    align-items: start;
}

/*==========================================================
Provider Image
==========================================================*/

.lc-provider-image {
    position: sticky;
    top: 120px;
}

.lc-provider-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 780px;
    object-fit: cover;
    object-position: center top;
    border-radius: 28px;
}

/*==========================================================
Provider Heading
==========================================================*/

.lc-provider-heading {
    margin-bottom: 2rem;
}

.lc-provider-heading > span {
    display: block;
    margin-bottom: .25rem;
    color: #263a43;
}

.lc-provider-heading h2 {
    margin-bottom: 0;
}

.lc-provider-heading em {
    color: var(--cnvs-themecolor);
}

/*==========================================================
Clinical Focus
==========================================================*/

.lc-provider-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem 2rem;
    margin: 2rem 0 2.75rem;
}

.lc-provider-points span {
    display: flex;
    align-items: center;
    gap: .6rem;
    color: #263a43;
    font-weight: 600;
}

.lc-provider-points i {
    flex: 0 0 auto;
    color: var(--cnvs-themecolor);
}

/*==========================================================
Education & Experience
==========================================================*/

.lc-provider-credentials {
    margin: 2.75rem 0;
}

.lc-provider-credentials h3,
.lc-provider-personal h3 {
    margin-bottom: 1.4rem;
    font-size: 1.45rem;
}

/*
These use the same .lc-credentials-list,
.lc-credential-row, .lc-credential-label and
.lc-credential-value styles from Dr. Kronhaus's section.
*/

/*==========================================================
Weight Management Feature
==========================================================*/

.lc-provider-feature {
    margin: 2.75rem 0;
    padding: 1.75rem 2rem;
    background: #f0f8f6;
    border-left: 4px solid var(--cnvs-themecolor);
    border-radius: 0 18px 18px 0;
}

.lc-provider-feature-label {
    display: block;
    margin-bottom: .45rem;
    color: var(--cnvs-themecolor);
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.lc-provider-feature h3 {
    margin-bottom: .75rem;
    font-size: 1.3rem;
}

.lc-provider-feature p {
    margin-bottom: 0;
}

/*==========================================================
Personal Bio
==========================================================*/

.lc-provider-personal {
    margin: 2.75rem 0;
    padding-top: 2rem;
    border-top: 1px solid rgba(23, 42, 51, .10);
}

/*==========================================================
Responsive
==========================================================*/

@media (max-width: 991.98px) {

    .lc-provider-layout {
        grid-template-columns: 1fr;
    }

    .lc-provider-image {
        position: static;
    }

    .lc-provider-image img {
        max-height: 520px;
        object-position: center 25%;
    }

}

@media (max-width: 767.98px) {

    .lc-provider-points {
        grid-template-columns: 1fr;
    }

    .lc-provider-feature {
        padding: 1.5rem;
    }

}

/*==========================================================
Contact
==========================================================*/

.lc-contact-grid {
    display: grid;
    grid-template-columns: minmax(300px, 0.8fr) minmax(0, 1.35fr);
    gap: 32px;
    align-items: stretch;
}

.lc-contact-card {
    padding: clamp(28px, 4vw, 48px);
    border: 1px solid rgba(31, 182, 176, 0.16);
    border-radius: 24px;
    background: #f3f8f7;
}

.lc-contact-row {
    display: flex;
    gap: 16px;
    padding: 0 0 21px;
    margin-bottom: 21px;
    border-bottom: 1px solid rgba(23, 42, 51, 0.1);
}

.lc-contact-row:last-of-type {
    border-bottom: 0;
}

.lc-contact-row > i {
    color: #1fb6b0;
    font-size: 22px;
}

.lc-contact-row div {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.lc-contact-row strong {
    color: #172a33;
}

.lc-contact-row span,
.lc-contact-row a {
    color: #607178;
}

.lc-contact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 10px;
}

.lc-map {
    min-height: 540px;
    overflow: hidden;
    border-radius: 24px;
    box-shadow: 0 22px 55px rgba(23, 42, 51, 0.12);
}

/*==========================================================
Footer
==========================================================*/

.lc-footer-grid {
    display: grid;
    grid-template-columns: 1.4fr 0.75fr 1fr 0.85fr;
    gap: 55px;
    align-items: start;
}

.lc-logo--footer {
    display: inline-block;
    margin-bottom: 22px;
    color: #fff;
}

.lc-footer-hours {
    color: rgba(255, 255, 255, 0.65);
    line-height: 1.8;
}

.lc-footer-hours strong {
    color: #fff;
}

.lc-facebook {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #c7f2ee;
}

.lc-facebook:hover {
    color: #fff;
}

.lc-copyright {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

/* Footer navigation links */

.cv-footer-links {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cv-footer-links li {
    position: relative;
    padding-left: 1.2rem;
    margin-bottom: 0.65rem;
}

.cv-footer-links li::before {
    content: "•";
    position: absolute;
    top: 0;
    left: 0;
    color: var(--cnvs-themecolor, #1fb6b0);
    font-size: 1.1rem;
    font-weight: 700;
    line-height: inherit;
}

.cv-footer-links a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    transition: color 0.25s ease;
}

.cv-footer-links a:hover {
    color: #fff;
}

/*==========================================================
Tablet
==========================================================*/

@media (max-width: 991.98px) {

    #header-wrap #logo img.lc-header-logo,
    #header.sticky-header #header-wrap #logo img.lc-header-logo {
        height: 40px;
        max-height: 40px;
    }

    .cv-story--reverse .cv-story-img,
    .cv-story--reverse .cv-story-body {
        order: initial;
    }

    .lc-contact-grid,
    .lc-footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}

/*==========================================================
Mobile
==========================================================*/

@media (max-width: 767.98px) {

    .lc-header-phone {
        display: none !important;
    }

    .lc-doctor-points,
    .lc-contact-grid,
    .lc-footer-grid {
        grid-template-columns: 1fr;
    }

    .lc-doctor-profile {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .lc-doctor-headshot {
        width: 140px;
        height: 140px;
    }

    .lc-doctor-intro {
        width: 100%;
        text-align: left;
    }

    .lc-map {
        min-height: 380px;
    }

    .lc-copyright {
        display: block;
    }

    .lc-copyright > div + div {
        margin-top: 8px;
    }
}

/*==========================================================
Small Mobile
==========================================================*/

@media (max-width: 575.98px) {

    #header-wrap #logo img.lc-header-logo,
    #header.sticky-header #header-wrap #logo img.lc-header-logo {
        height: 36px;
        max-height: 36px;
    }
}

/*==========================================================
Doctor Credentials
==========================================================*/

.lc-doctor-credentials {
    margin: 2.5rem 0;
}

.lc-doctor-credentials h3 {
    margin-bottom: 1.5rem;
}

.lc-credentials-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.lc-credential {
    padding: 1.35rem 1.5rem;
    background: #fff;
    border: 1px solid rgba(31,182,176,.18);
    border-radius: 18px;
    box-shadow: 0 8px 20px rgba(0,0,0,.04);
    transition: all .25s ease;
}

.lc-credential:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 28px rgba(0,0,0,.08);
}

.lc-credential h4 {
    margin-bottom: .6rem;
    color: var(--cnvs-themecolor);
    font-size: 1rem;
    font-weight: 700;
}

.lc-credential p {
    margin-bottom: .35rem;
    color: #44535d;
    line-height: 1.6;
}

.lc-credential small {
    display: block;
    color: #7a8892;
}

@media (max-width: 767.98px) {

    .lc-credentials-grid {
        grid-template-columns: 1fr;
    }

}

/*==========================================================
Accreditation Section
==========================================================*/

.lc-accreditation-section {

    padding: 90px 0;

    background: linear-gradient(
        to bottom,
        #f8fbfb 0%,
        #ffffff 100%
    );

    border-top: 1px solid rgba(31,182,176,.10);

}

.lc-section-eyebrow {

    display: inline-block;

    margin-bottom: .75rem;

    color: var(--cnvs-themecolor);

    font-size: .85rem;

    font-weight: 700;

    letter-spacing: .18em;

    text-transform: uppercase;

}

.lc-accreditation-grid {

    display: flex;

    justify-content: center;

    align-items: flex-start;

    gap: 4rem;

    flex-wrap: wrap;

    margin-top: 3rem;

}

.lc-accreditation-card {

    width: 280px;

    text-align: center;

}

.lc-accreditation-card img {

    width: 250px;

    height: auto;

    transition: transform .3s ease;

    filter: grayscale(100%);

}

.lc-accreditation-card:hover img {

    transform: translateY(-6px);

}

.lc-accreditation-card h4 {

    margin-top: 1.5rem;

    margin-bottom: .4rem;

    color: var(--cnvs-themecolor);

    font-size: 1.2rem;

    font-weight: 700;

}

.lc-accreditation-card p {

    margin: 0;

    color: #607178;

}

@media (max-width: 767.98px) {

    .lc-accreditation-section {

        padding: 70px 0;

    }

    .lc-accreditation-grid {

        gap: 3rem;

    }

    .lc-accreditation-card {

        width: 100%;

        max-width: 260px;

    }

    .lc-accreditation-card img {

        width: 250px;

    }

}

/*=============================================
Service Area
==============================================*/

.lc-service-area-section {
    background-color: #e4f2eb;
}