@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");

:root {
    --greencolor: #19838a;
    --greenfilter: invert(37%) sepia(99%) saturate(868%) hue-rotate(149deg)
        brightness(86%) contrast(99%);
    --greenrgb: rgb(1 138 149 / 90%);
    --lightgreenrgb: rgb(1 138 149 / 80%);
    --btn2color: #343434;
    --secondarycolor: #2f2f2f;
    --blackcolor: #171717;
    --whitecolor: #fff;
    --backgroundcolor: #f8f9fa;
    --bordercolor: #ddd;
    --graycolor: #6b7280;
    --font-family: "Inter", sans-serif;
    --transition: all 0.3s 0s linear;
}

body {
    color: var(--blackcolor);
    font-family: var(--font-family);
    font-size: 14px;
}

p,
.text {
    color: var(--secondarycolor);
    font-size: 14px;
}

/* -------- Headings ---------- */
h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--blackcolor);
    font-family: var(--font-family);
    position: relative;
    font-weight: 500;
}

/* -------- other ---------- */
a {
    color: var(--greencolor);
    text-decoration: none;
    font-weight: var(--body-font-weight);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

a:hover,
a:focus {
    color: inherit;
    text-decoration: none;
    outline: none;
}

a b,
a strong {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

a img {
    border: none;
}

pre,
ul,
ol,
dl,
dd,
blockquote,
address,
table,
fieldset {
    margin-bottom: 10px;
}

ol,
ul {
    list-style-position: inside;
    margin: 0;
    padding: 0;
}

b,
strong {
    color: #333;
    font-weight: 600;
}

iframe {
    border: none !important;
}

.bg-light {
    background-color: var(--backgroundcolor);
}

.web-form-box {
    padding: 30px;
    background-color: var(--whitecolor);
    border-radius: 15px;
    box-shadow: rgba(0, 0, 0, 0.09) 0px 0.5rem 1rem;
    border: 1px solid var(--bordercolor);
}

.section-label {
    margin-bottom: 20px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 13px;
    display: inline-block;
    line-height: 1;
    padding: 11px 15px 12px;
    background-color: #eee;
    border-radius: 8px;
    letter-spacing: 1px;
}

.section-heading2 {
    font-weight: 700;
    font-style: normal;
    font-size: 30px;
    line-height: 35px;
    margin-bottom: 40px;
}

.form-group {
    margin-bottom: 15px;
}

.form-label {
    font-size: 14px;
}

.form-control,
.form-select {
    border-radius: 10px;
    font-size: 14px;
    background-color: #f9fafc;
    border: 1.5px solid #eaeaec;
    color: black;
    padding: 12px 15px;
    height: auto;
    font-weight: 400;
}

.form-control:focus,
.form-select:focus {
    background-color: #f9fafc;
    border-color: var(--greencolor);
    box-shadow: 0 0 6px rgba(23, 128, 137, 0.3);
    outline: none;
}

.section-title {
    font-size: 22px;
    font-weight: 700;
    margin: 0;
    color: var(--blackcolor);
    margin-bottom: 10px;
}

.section-sub {
    margin: 0;
    color: #6c757d;
    font-size: 15px;
}

.btn-default {
    border-radius: 10px;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 14px;
    font-family: var(--font-family);
    outline: 0;
    text-align: center;
    display: inline-block;
    background-color: #eee;
    border: 1px solid #ddd;
    color: var(--blackcolor);
    transition: all 0.3s 0s linear;
    height: 44px;
}

.btn-default:hover {
    background-color: transparent;
    border-color: #ddd;
}

.web-btn {
    background-color: var(--greencolor);
    color: #fff;
    border: 1px solid var(--greencolor);
    border-radius: 10px;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 14px;
    font-family: var(--font-family);
    outline: 0;
    text-align: center;

    display: inline-block;
}

.secondry-btn {
    background-color: var(--btn2color);
    border-color: var(--btn2color);
    color: #fff;
}

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

/* .btn {
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
} */

.btn:not(:disabled):not(.disabled) {
    cursor: pointer;
}

.web-btn:hover,
.web-btn:active {
    background-color: var(--btn2color) !important;
    color: #fff !important;
}

.btn:hover {
    color: #212529;
    text-decoration: none;
}

.badge-primary {
    background-color: var(--greencolor);
}

.web-clr {
    color: var(--greencolor);
}

/* ---------- DROPDOWN ANIMATION ---------- */
/* Make the parent a positioning context */
.dropdown {
    position: relative;
}

.dropdown-menu .dropdown-item {
    padding: 8px 16px;
    font-size: 14px !important;
    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}

.dropdown-menu .dropdown-item:hover {
    background-color: var(--greencolor);
    /* your brand color */
    color: #fff;
    /* make text white for contrast */
}

/* ---------- HEADER work start here  ---------- */

.header {
    z-index: 999;
    box-shadow: none;
}

.header .top-header {
    padding: 10px 0;
    border-bottom: 1px solid var(--bordercolor);
    background-color: #fff;
    transition: var(--transition);
}

.header .top-header.fixed {
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 1000;
    animation: fadeeffect 0.3s linear 0s 1;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

@keyframes fadeeffect {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.header .top-header .navbar-brand img {
    height: 45px;
    width: 158px;
    margin: 0;
    object-fit: contain;
}

.header .top-header .navbar-brand {
    padding: 0px;
}

.header .top-header .main-nav .nav-link {
    font-weight: 700;
    font-size: 14px !important;
    text-transform: uppercase;
    font-size: var(--font-family);
    color: #343434;
    padding: 10px 20px;
    cursor: pointer;
    transition: all 0.3s 0s linear;
}

.header .top-header .main-nav .nav-link:hover {
    color: var(--greencolor);
}

.header .top-header .main-nav .nav-link .badge {
    padding: 4px 5px;
    position: relative;
    margin-left: 3px;
    letter-spacing: 0.3px;
    font-size: 10px;
    margin-top: -2px;
    border-radius: 3px;
    vertical-align: middle;
}

.header .top-header .main-nav .nav-link .badge::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    border-radius: 2px;
    background-color: var(--greencolor);
    will-change: transform, opacity;
    animation: badgefade 1.6s infinite;
}

.header .top-header .main-nav .nav-link .badge::after {
    animation-delay: 0.2s;
}

.header .top-header .main-nav .nav-link .badge::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    border-radius: 2px;
    background-color: var(--greencolor);
    will-change: transform, opacity;
    animation: badgefade 1.6s infinite;
}

@keyframes badgefade {
    0% {
        transform: scale(1);
        opacity: 0.6;
    }

    70% {
        transform: scale(1.5);
        opacity: 0;
    }

    100% {
        transform: scale(1);
        opacity: 0;
    }
}

.header .top-header .web-btn {
    font-size: 12px;
    line-height: 24px;
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 10px;
}

/* ---------- SECOND HEADER ---------- */
.header .middle-header {
    background: #fff;
    border-bottom: 1px solid var(--bordercolor);
    padding: 10px 0px;
}

.header .middle-header .mid-header {
    display: flex;
    justify-content: space-between;
}

.header .middle-header .mid-header .search-bar {
    max-width: 500px;
    width: 100%;
}

.header .middle-header .mid-header .search-bar input {
    background-color: var(--backgroundcolor);
    color: #393939;
    padding-left: 55px;
}

.header .middle-header .mid-header .search-bar input:focus {
    border-color: var(--greencolor);
    box-shadow: 0 0 6px rgba(23, 128, 137, 0.3);

    outline: none;
}

.header .middle-header .mid-header .search-bar .search-btn {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #757575;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: none;
    background-color: none;
}

.header .middle-header .mid-header .right-icons {
    display: flex;
    align-items: center;
    gap: 30px;
}

.header .middle-header .mid-header .right-icons .cart-icon {
    font-size: 26px;
    color: #333;
    padding-right: 20px;
    position: relative;
    /* margin: 0px 20px ; */
}

.header .middle-header .mid-header .right-icons .cart-icon::after {
    content: "";
    position: absolute;
    width: 3px;
    height: 20px;
    border-radius: 50px;
    right: 0;
    top: 50%;
    transform: translate(0, -50%);
    background-color: var(--bordercolor);
}

.header .middle-header .mid-header .right-icons .call-icons {
    display: flex;
    gap: 5px;
    color: #333;
}

.header .middle-header .mid-header .right-icons .call-icons i {
    font-size: 25px;
}

.header .middle-header .mid-header .right-icons .call-icons p small {
    font-weight: 600;
}

.header .middle-header .mid-header .right-icons .call-icons p {
    margin: 0 0 3px 5px;
    line-height: 16px;
    font-weight: 600;
}

.header .middle-header .mid-header .right-icons .stores-img {
    display: flex;
    align-items: center;
    gap: 15px;
}
.header .middle-header .mid-header .right-icons .stores-img img {
    width: 30px;
    height: 30px;
    display: block;
    object-fit: contain;
}

.header .middle-header .mid-header .contact-text {
    font-size: 14px;
    margin: 0 12px;
}

.header .middle-header .mid-header .contact-text i {
    margin-right: 5px;
    color: #018a95;
}

/* ---------- THIRD HEADER ---------- */
.bottom-header {
    height: auto;
    background-color: var(--backgroundcolor);
    transition: all 0.3s 0s linear;
}

.bottom-header-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 24px;
}

.bottom-header-menu .nav-link {
    color: #343434;
    padding: 10px 0px 11px;
    display: block;
    cursor: pointer;
    font-size: 14px;
}

/* ---------- HEADER work end here  ---------- */

/* ---------- Home page banner work start here  ---------- */
.homepage-banner a img {
    border-radius: 20px;
    width: 100%;
    height: 278px;
    object-fit: cover;
    background-color: #eee;
    border: 2px solid var(--bordercolor);
}

.homepage-banner .owl-theme .owl-dots .owl-dot span {
    width: 8px;
    height: 8px;
    margin: 0px 4px;
    background: var(--bordercolor);
    display: block;
    border-radius: 50px;
    transition: all 0.3s ease;
}

.homepage-banner .owl-theme .owl-dots .owl-dot.active span {
    background: var(--greencolor);
}

/* ---------- footer work start here  ---------- */

.main-footer {
    background-color: #eaeaea;
}

.main-footer .footer-top {
    padding: 40px 0;
}

.main-footer .footer-top .footer-logo {
    height: 45px;
    width: 158px;
    object-fit: contain;
    margin-bottom: 20px;
    margin-left: -5px;
}

.main-footer .footer-top .footer-about p {
    margin-bottom: 30px;
    font-size: 14px;
    color: var(--blackcolor);
    font-weight: 500;
}

.main-footer .footer-top .footer-about .newsselter-text {
    font-size: 16px;
    color: var(--blackcolor);
    font-weight: 700;
}

.main-footer .newsletter-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
    /* max-width: 350px; */
    width: 100%;
    /* background: #fff; */
    /* padding: 18px; */
    /* border-radius: 8px; */
    /* box-shadow: 0 2px 8px rgba(0,0,0,0.1); */
}

.main-footer .newsletter-form h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
    color: #111;
}

.main-footer .newsletter-form input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 14px;
    height: 40px;
}

.main-footer .captcha-group {
    display: flex;
    align-items: center;
    gap: 10px;
}

.main-footer .captcha-box {
    display: flex;
    align-items: center;
    border: 1px solid #ccc;
    border-radius: 6px;
    overflow: hidden;
    background: #f9f9f9;
}

.main-footer .captcha-img {
    height: 40px;
    width: 300px;
    object-fit: cover;
}

.main-footer .refresh-btn {
    border: none;
    background: #fff;
    cursor: pointer;
    padding: 8px 10px;
    font-size: 16px;
    color: #444;
    transition: 0.3s;
}

.main-footer .refresh-btn:hover {
    color: #008c95;
}

.main-footer .footer-top .footer-links h5,
.main-footer .footer-top .footer-contact h5 {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
}

.main-footer .footer-top .footer-links ul {
    list-style: none;
    padding: 0;
}

.main-footer .footer-top .footer-links ul li {
    margin-bottom: 6px;
}

.main-footer .footer-top .footer-links ul li a {
    color: #343434;
    text-decoration: none;
    font-size: 14px;
}

.main-footer .footer-top .footer-links ul li a:hover {
    color: #00796b;
}

.main-footer .footer-top .footer-contact p {
    margin: 5px 0;
}

.main-footer .footer-top .footer-links .footer-icons {
    display: flex;
    align-items: center;
    /* justify-content: space-between; */
    margin-top: 15px;
    gap: 10px;
    line-break: anywhere;
}

.main-footer .footer-top .footer-links .footer-icons span {
    width: 30px;
    height: 30px;
    border-radius: 5px;
    color: #fff;
    background-color: var(--greencolor);
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-footer .footer-top .footer-links .footer-icons p {
    width: calc(100% - 45px);
    margin-bottom: 0px;
}

.main-footer .footer-top .social-icons {
    align-items: center;
    margin-top: 40px;
}

.main-footer .footer-top .social-icons li {
    margin-right: 8px;
    margin-top: 8px;
    display: inline-block;
}

.main-footer .footer-top .social-icons li a img {
    height: 30px;
    width: 30px;
}

.main-footer .footer-top .dmca-badge img {
    width: 121px;
    height: 24px;
}

.main-footer .footer-bottom {
    background: var(--greencolor);
    padding: 15px 0;
    color: #fff;
    font-weight: 500;
    font-size: 13px;
}

.main-footer .footer-bottom p {
    color: #fff;
    margin-bottom: 0;
}

.main-footer .footer-bottom-links {
    text-align: right;
}

.main-footer .footer-bottom a {
    color: #fff;
    text-decoration: none;
    text-align: right;
    margin: 0 5px;
}

.main-footer .footer-bottom a:hover {
    text-decoration: underline;
}

/* ---------- footer work end here  ---------- */

/* ---------- Home page service work start here  ---------- */

.secmed-services {
    overflow: hidden;
    position: relative;
    padding-bottom: 30px;
}

.secmed-services .section-heading2 {
    margin-bottom: 20px;
}

/* .secmed-services:before {
    content: " ";
    position: absolute;
    left: 0;
    bottom: 40px;
    width: 307px;
    height: 447px;
    background: url();
    background-size: 100% 100%;
    z-index: 0;
    animation: circlescale 2s linear 0s infinite alternate;
} */

@keyframes circlescale {
    0% {
        transform: scale(1, 1);
    }

    100% {
        transform: scale(1.1, 1.1);
    }
}

.secmed-services .title {
    font-size: 24px;
    margin-bottom: 40px;
}

.secmed-services p {
    font-size: 16px;
    line-height: 24px;
    margin: 0;
}

.secmed-services .web-btn {
    padding: 12.5px 30px;
    margin-top: 40px;
    font-size: 16px;
    min-width: 320px;
}

.with-icon {
    min-width: 135px;
    gap: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.secmed-services .box {
    border: 1px solid var(--bordercolor);
    background-color: #fff;
    box-shadow: 4px 4px 20px rgb(0 0 0 / 5%);
    border-radius: 20px;
    margin-bottom: 30px;
    margin-top: 40px;
    height: calc(100% - 70px);
    transition: all 0.3s 0s linear;
}

.secmed-services .box:hover {
    box-shadow: 4px 4px 20px rgb(0 0 0 / 20%);
}

.secmed-services .box.purple .box-img {
    background-color: #dbceea;
}

.secmed-services .box.green .box-img {
    background-color: #c5dbc5;
}

.secmed-services .box.orange .box-img {
    background-color: #f2dcc5;
}

.secmed-services .box.red .box-img {
    background-color: #f6cbcb;
}

.secmed-services .box.cyan .box-img {
    background-color: #c1f2ef;
}

.secmed-services .box.blue .box-img {
    background-color: #c7daf5;
}

.secmed-services .box .box-img {
    background-color: #eee;
    border-radius: 20px 20px 0 0;
    height: 126px;
    position: relative;
}

.secmed-services .box .box-img img {
    height: 167px;
    max-width: 112%;
    object-fit: contain;
    object-position: bottom;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 0);
    position: absolute;
}

.secmed-services .box .box-body {
    padding: 15px;
}

.secmed-services .box .box-body h4 {
    font-size: 14px;
    margin-bottom: 2px;
    font-weight: 700;
}

.secmed-services .box .box-body p {
    font-size: 12px;
    line-height: 16px;
    margin-bottom: 0;
    color: var(--secondarycolor);
}

.offers img {
    border-radius: 30px;
    border: 1px solid var(--bordercolor);
    width: 100%;
    height: auto;
}

.card {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    /* box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px; */
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    margin-top: 5px;
    height: 100%;
}

.card:hover {
    /* transform: translateY(-6px); */
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.card-image {
    overflow: hidden;
}

.card-image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
    transition: all 0.3s linear;
}

.card:hover .card-image img {
    transform: scale(1.1);
}

.card-content {
    padding: 16px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.card-title {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 8px;
    color: var(--blackcolor);
    line-height: 1.3em;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    /* limit title to 2 lines */
    -webkit-box-orient: vertical;
}

.card-excerpt {
    font-size: 14px;
    color: var(--secondarycolor);
    margin: 0 0 12px;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    /* limit excerpt to 3 lines */
    -webkit-box-orient: vertical;
}

.card-link {
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--greencolor);
    text-decoration: none;
    transition: color 0.2s;
    margin-bottom: 0px;
}

.card:hover .card-link {
    color: var(--blackcolor);
}

.section-heading.with-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 50px;
}

.web-btn2 {
    background-color: #f7f7f7;
    border: 1px solid var(--bordercolor);
    color: var(--btn2color);
    border-radius: 5px;
    padding: 10px 20px;
    font-size: 14px;
    outline: 0;
    min-width: 135px;
}

.owl-theme .owl-dots {
    margin-top: 5px;
}

.owl-theme .owl-dots .owl-dot span {
    width: 8px;
    height: 8px;
    margin: 0px 4px;
    background: var(--bordercolor);
    display: block;
    border-radius: 50%;

    transition: all 0.3s ease;
}

.owl-theme .owl-dots .owl-dot.active span {
    background: var(--greencolor);
}

.download-our-app-new {
    background-color: #fff;
    overflow: hidden;
}

.download-our-app-new h3 {
    font-size: 35px;
    font-weight: 700;
    margin-bottom: 30px;
    color: var(--blackcolor);
}

.download-our-app-new ul {
    margin: 0;
    padding: 0;
    display: flex;
}

.download-our-app-new ul li {
    list-style: none;
    margin-right: 40px;
}

.download-our-app-new ul li img.qr {
    height: 130px;
    width: 130px;
    border-radius: 10px;
    padding: 5px;
    background-color: #fff;
}

.download-our-app-new ul li img {
    width: 204px;
    height: 61px;
}

.download-our-app-new .download-img {
    width: 432px;
    height: 398px;
    margin: -103px auto -50px;
    display: block;
}

.download-our-app-new .box {
    background-color: #bbe0e2;
    padding: 50px;
    border-radius: 20px;
    position: relative;
}

.live-doctor-consultation {
    position: relative;
    background-color: var(--backgroundcolor);
}

.live-doctor-consultation .sec-live-badge .live-dot {
    width: 8px;
    height: 8px;
    background: white;
    border-radius: 50%;
    margin-right: 4px;
    animation: blink 1s infinite;
}

.live-doctor-consultation .sec-live-badge {
    display: inline-flex;
    align-items: center;
    background: red;
    color: white;
    font-weight: bold;
    font-size: 13px;
    padding: 5px 16px;
    border-radius: 20px;
    margin-bottom: 10px;
}

.live-doctor-consultation .box {
    background-color: #fff;
    border: 1px solid var(--bordercolor);
    border-radius: 10px;
    overflow: hidden;
    position: relative;
}

.live-doctor-consultation .box .doctor-img {
    width: 100%;
    height: 140px;
    object-fit: cover;
    object-position: top;
    background-color: #eee;
}

.live-doctor-consultation .box .price {
    background-color: var(--greencolor);
    color: #fff;
    border-radius: 50px 0 0 50px;
    right: 0;
    top: 50px;
    position: absolute;
    text-align: center;
    font-size: 25px;
    line-height: 18px;
    margin: 0;
    padding: 2px 8px 4px 12px;
}

.live-doctor-consultation .box .designation:before {
    content: "";
    position: absolute;
    height: 2px;
    width: 100%;
    background-color: var(--btn2color);
    left: 0;
    top: 60%;
    transform: translate(0, -50%);
}

.live-doctor-consultation .box .designation span {
    background-color: var(--btn2color);
    color: #fff;
    padding: 5px 15px;
    font-size: 12px;
    display: inline-block;
    border-radius: 3px;
    letter-spacing: 0.5px;
    z-index: 1;
    position: relative;
}

.live-doctor-consultation .box .designation {
    text-align: center;
    margin-top: -20px;
    margin-bottom: 0;
    position: relative;
}

.live-doctor-consultation .box .box-body {
    padding: 10px 15px 15px;
}

.live-doctor-consultation .box .box-body .verified {
    width: 66px;
    height: 22px;
    object-fit: contain;
    margin-bottom: 5px;
}

.live-doctor-consultation .box .box-body h3 {
    font-size: 16px;
    margin-bottom: 2px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-transform: capitalize;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    line-clamp: 1;
    -webkit-box-orient: vertical;
}

.live-doctor-consultation .box .box-body h3 span {
    display: block;
    width: 100%;
}

.live-doctor-consultation .box .box-body p {
    font-size: 14px;
    margin-bottom: 2px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    line-clamp: 1;
    -webkit-box-orient: vertical;
}

.live-doctor-consultation .box .box-body ul {
    display: flex;
    align-items: center;
    font-size: 14px;
    padding: 0;
    margin: 0 0 10px;
}

.live-doctor-consultation .box .box-body ul li {
    list-style: none;
    margin-right: 10px;
    min-width: 80px;
}

.live-doctor-consultation .box .box-body ul li:last-child {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    line-clamp: 1;
    -webkit-box-orient: vertical;
}

.live-doctor-consultation .box .box-body .availability {
    background-color: #eee;
    margin: 0 -15px 15px;
    padding: 5px 15px;
    text-align: center;
}

.live-doctor-consultation .box .box-body .availability p {
    margin: 0;
}

.live-doctor-consultation .section-heading .web-btn2 {
    background-color: #fff;
}

.live-doctor-consultation .section-heading .badge {
    padding: 7px 14px;
    font-size: 100%;
    background-color: red;
    color: #fff;
    display: inline-block;
}

.live-doctor-consultation .box .price {
    background-color: var(--greencolor);
    color: #fff;
    border-radius: 50px 0 0 50px;
    right: 0;
    top: 50px;
    position: absolute;
    text-align: center;
    font-size: 25px;
    line-height: 18px;
    margin: 0;
    padding: 2px 8px 4px 12px;
}

.live-doctor-consultation .box .price small {
    display: block;
    font-size: 12px;
    letter-spacing: 0.5px;
    padding-left: 10px;
}

a.btn.disabled,
fieldset:disabled a.btn {
    pointer-events: none;
}

.btn.disabled,
.btn:disabled {
    opacity: 0.65;
}

.btn.disabled,
.btn:disabled,
fieldset:disabled .btn {
    background-color: var(--greencolor);
    color: #fff;
}

.live-doctor-consultation .live-badge {
    display: inline-flex;
    align-items: center;
    background: red;
    color: white;
    font-weight: bold;
    font-size: 10px;
    padding: 3px 10px;
    border-radius: 20px;
    position: absolute;
    top: 5px;
    right: 5px;
}

.live-doctor-consultation .live-dot {
    width: 7px;
    height: 7px;
    background: white;
    border-radius: 50%;
    margin-right: 4px;
    animation: blink 1s infinite;
}

@keyframes blink {
    0%,
    50%,
    100% {
        opacity: 1;
    }

    25%,
    75% {
        opacity: 0;
    }
}

.website-new-banner {
    padding: 15px 0px;
    background-color: var(--greencolor);
}

.website-banner-height {
    height: 208px;
}

.website-banner-height img {
    height: 208px;
    background-color: #eee;
    border-radius: 10px;
    object-fit: cover;
}

.website-new-banner .box {
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    height: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    border: 1px solid var(--bordercolor);
}

.website-new-banner .box img {
    width: 70px;
    height: 70px;
    object-fit: contain;
    margin: 0px auto 15px;
    display: block;
}

.website-new-banner .box h4 {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
}

.breadcrumb {
    padding: 20px 0;
    padding-bottom: 10px !important;
    margin: 0;
    background: transparent;
    border-radius: 0;
    font-weight: 600;
    font-size: 14px;
}

.breadcrumb i {
    font-size: 14px;
}

.breadcrumb-item + .breadcrumb-item {
    padding-left: 0px;
}

.breadcrumb-item + .breadcrumb-item::before {
    font-family: "Font Awesome 6 Free";
    content: "\f105";
    font-weight: 900;
    color: #757575;
    padding: 0 10px;
}

.breadcrumb-item a {
    color: var(--blackcolor);
    text-decoration: none;
}

.breadcrumb-item.active {
    color: #757575 !important;
}

.page-title {
    font-size: 26px;
    font-weight: 700;
    margin-top: 5px;
    color: var(--blackcolor);
}

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

.section-heading .title {
    font-size: 28px;
    font-weight: 700;
}

/* Search Form Layout */
.search-form {
    margin-bottom: 30px;
}

.search-form form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    align-items: center;
}

/* Dropdown Wrapper */
.search-form form .select-wrapper {
    position: relative;
    min-width: 180px;
    flex-shrink: 0;
}

/* Hide Default Arrow */
.search-form form .category-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 10px 40px 10px 15px;
    /* add space for icon */
    font-size: 15px;
    border: 1px solid var(--bordercolor);
    border-radius: 10px;
    background: #fff;
    width: 100%;
    height: 45px;
    transition: all 0.3s ease;
    cursor: pointer;
}

/* Custom Chevron Icon */
.search-form form .select-wrapper i {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    font-size: 14px;
    color: #555;
}

/* Hover/Focus Effects */
.search-form form .category-select:hover,
.search-form form .category-select:focus {
    border-color: var(--greencolor);
    box-shadow: 0 0 6px rgba(23, 128, 137, 0.3);
    outline: none;
}

/* Search Input */
.search-form form .search-input {
    flex: 1;
    font-size: 15px;

    transition: all 0.3s ease;
}

.search-form form .search-input:focus {
    border-color: var(--greencolor);
    box-shadow: 0 0 6px rgba(23, 128, 137, 0.3);
    outline: none;
}

/* Search Button */
.search-form form .search-btn {
    padding: 12px 25px;
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    background-color: var(--greencolor);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

/* Responsive */
@media (max-width: 768px) {
    .search-form form {
        flex-direction: column;
        align-items: stretch;
    }

    .search-form form .select-wrapper,
    .search-form form .search-input,
    .search-form form .search-btn {
        width: 100%;
    }
}

.web-stories .sidebar {
    padding-right: 15px;
    border-right: 1px solid var(--bordercolor);
}

/* Widget Box */
.web-stories .sidebar .widget {
    background: #fff;
    border-radius: 15px;
    border: none;
    padding: 0px;
    /* margin-bottom: ; */
}

.web-stories .sidebar .widget .widget-title {
    font-size: 40px;

    border-left: none;
    padding-left: 0px;
}

/* Sidebar Base */
.sidebar {
    display: flex;
    flex-direction: column;
    gap: 15px;
    position: sticky;
    /* padding-right: 15px; */
    top: 90px;
}

/* Widget Box */
.sidebar .widget {
    background: #fff;
    border-radius: 15px;
    border: 1px solid var(--bordercolor);
    padding: 20px;
}

/* Titles */
.sidebar .widget .widget-title {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Consultation Section */
.sidebar .widget .consultation-list {
    list-style: none;
    padding: 0;
    margin: 0 0 15px 0;
}

.sidebar .widget .consultation-list li {
    font-size: 14px;
    color: var(--secondarycolor);
    margin-bottom: 8px;
    display: flex;
    /* align-items: center; */
    justify-content: start !important;
    gap: 8px;
}

.sidebar .widget .consultation-list li i {
    color: var(--btn2color);
}

/* Recent Posts */
.sidebar .widget .recent-post {
    display: flex;
    align-items: center;
    margin-bottom: 18px;
    gap: 12px;
}

.sidebar .widget .recent-post img {
    width: 70px;
    height: 60px;
    object-fit: cover;
    object-position: top;
    border-radius: 6px;
    flex-shrink: 0;
}

.sidebar .widget .post-info h4 {
    font-size: 14px;
    font-weight: 500;
    color: #222;
    text-decoration: none;
    display: block;
    margin-bottom: 5px;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    /* number of lines to show */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.sidebar .widget .recent-post:hover .post-info h4 {
    color: var(--greencolor);
}

.sidebar .widget .post-info .date {
    font-size: 12px;
    color: var(--secondarycolor);
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Hero Section */
.blog-hero {
    position: relative;
    height: 400px;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 25px;
}

.blog-hero img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-hero .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.4),
        rgba(0, 0, 0, 0.7)
    );
}

.hero-text {
    position: absolute;
    bottom: 0px;
    left: 0px;
    padding: 20px;
}

.hero-text .meta {
    font-size: 14px;
    opacity: 0.85;
    display: block;
    color: #fff;

    margin-bottom: 8px;
}

.hero-text h1 {
    font-size: 26px;
    font-weight: 700;
    margin: 0;
    color: #fff;
}

/* Actions */
.blog-actions {
    margin: 20px 0;
}

.share-icons {
    display: flex;
    align-items: center;
    gap: 15px;
}

.share-icons a {
    color: var(--greencolor);
    font-size: 22px;
    transition: 0.3s;
}

.share-icons a:hover {
    color: #0f5d63;
}

.cta-buttons {
    display: flex;
    align-items: center;
    gap: 15px;
}

.cta-buttons .btn {
    border-radius: 8px;
    padding: 8px 15px;
    font-weight: 600;
}

.listen-btn {
    border: 1px solid var(--greencolor);
    color: var(--greencolor);
    background: #fff;
}

.listen-btn:hover {
    background: var(--greencolor);
    color: #fff;
}

.checkup-btn {
    background: var(--greencolor);
    color: #fff;
}

.checkup-btn:hover {
    background: #0f5d63;
}

/* Content */
.blog-content {
    font-size: 14px;
    line-height: 18px;
}

.blog-content h1,
.blog-content h2,
.blog-content h3,
.blog-content h4,
.blog-content h5,
.blog-content h6 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
    margin-top: 20px;
}

.blog-content ul {
    padding-left: 10px;
}

.blog-content ul li {
    display: flex;
    align-items: center;
    list-style: disc;
    position: relative;
    padding-left: 15px;
    margin-bottom: 10px;
}

.blog-content ul li:before {
    content: "";
    width: 5px;
    height: 5px;
    position: absolute;
    left: 0;
    top: 6px;
    background-color: var(--blackcolor);
    border-radius: 50px;
}

.blog-content ul li p {
    margin: 0px;
}

.blog-content .intro:first-letter {
    font-size: 40px;
    font-weight: bold;
    float: left;
    line-height: 1;
    margin-right: 8px;
    color: var(--greencolor);
}

.blog-content blockquote {
    font-style: italic;
    padding: 15px 20px;
    background: #f7fafa;
    border-left: 4px solid var(--greencolor);
    margin: 20px 0;
    border-radius: 6px;
    color: #444;
}

.widget .widget-ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.widget .widget-ul li {
    border-bottom: 1px solid var(--bordercolor);
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.widget .widget-ul li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.widget .widget-ul li a {
    display: flex;
    align-items: end;
    justify-content: space-between;
    font-size: 14px;
    font-weight: 500;
    color: var(--btn2color);
}

.widget .widget-ul li a p {
    margin-bottom: 0px;
    width: calc(100% - 150px);
}

.widget .widget-ul li a span {
    background-color: #19838a20;
    color: var(--greencolor);
    padding: 4px 16px;
    border-radius: 20px;
    display: inline-block;
    max-width: 140px;
}

.widget .callback-form {
    margin-top: 15px;
}

.widget .callback-form .form-group {
    margin-bottom: 15px;
}

.widget .callback-form label {
    display: inline;
    margin-bottom: 5px;
    font-size: 14px;
    font-weight: 500;
    color: var(--secondarycolor);
}

.widget .callback-form .mobile-input {
    display: flex;
    align-items: center;
}

.widget .callback-form .mobile-input span {
    height: auto;
    padding: 11px 10px;
    font-weight: 400;
    background-color: #f9fafc;
    border: 1.5px solid #eaeaec;
    font-size: 16px;
    border-radius: 10px 0px 0px 10px;
    min-width: 60px;
    text-align: center;
}

.widget .callback-form .mobile-input input {
    flex: 1;
    border-radius: 0 6px 6px 0;
    border-left: none;
}

.widget .callback-form .captcha-box .captcha-flex {
    display: flex;
    align-items: center;
    margin-bottom: 8px;
    gap: 10px;
}

.widget .callback-form .captcha-box img {
    height: 40px;
    width: 10x0px;
    border: 1px solid #ccc;
    border-radius: 6px;
}

.widget .callback-form .refresh-btn {
    background: none;
    border: none;
    /* margin-left: 8px; */
    font-size: 18px;
    cursor: pointer;
    color: #333;
}

.widget .callback-form .consent {
    font-size: 13px;
    line-height: 1.5;
}

.widget .callback-form .consent a {
    color: var(--greencolor);
    text-decoration: underline;
}

.doctor-listing .search-form form .select-wrapper {
    flex: 1;
    min-width: 180px;
}

.doctor-listing .search-form form {
    justify-content: start;
}

.doctor-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #fff;
    border-radius: 20px;
    padding: 20px 25px;
    margin-bottom: 10px;
    border: 1px solid var(--bordercolor);
    transition: all 0.3s ease;
}

.doctor-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
    border: 1px solid var(--greencolor);
}

.doctor-left {
    display: flex;
    align-items: center;
    gap: 18px;
}

.doctor-img img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 1px solid var(--greencolor);
    box-shadow: 0 4px 10px rgba(13, 138, 159, 0.25);
    object-fit: contain;
}

.doctor-info h3 {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 600;
    /* color: #222; */
}

.doctor-info .location {
    font-size: 14px;
    color: #666;
    margin-bottom: 10px;
}

.doctor-info .speciality {
    background: linear-gradient(135deg, #e0f7fa, #b2ebf2);
    color: var(--greencolor);
    border: 1px solid var(--greencolor);
    font-size: 14px;
    padding: 5px 12px;
    border-radius: 10px;
    display: inline-block;
    font-weight: 500;
}

.speciality-filters {
    display: flex;
    flex-direction: column;
    gap: 10px;
    height: 400px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 6px;
}

.speciality-filters {
    scrollbar-width: thin;
    scrollbar-color: var(--greencolor) #f1f1f1;
}

.speciality-filters::-webkit-scrollbar {
    width: 5px;
}

.speciality-filters::-webkit-scrollbar-thumb {
    background: var(--greencolor);
    border-radius: 10px;
}

.speciality-filters::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.filter-btn {
    position: relative;
    cursor: pointer;
}

.filter-btn input {
    display: none;
}

.filter-btn span {
    display: inline-block;
    padding: 7px 14px;
    border-radius: 25px;
    background: #f1f5f9;
    color: var(--blackcolor);
    font-size: 12px;
    font-weight: 600;
    border: 1px solid #d0d7de;
    transition: all 0.3s ease;
    user-select: none;
}

.filter-btn input:checked + span {
    background: linear-gradient(135deg, #0d8a9f, #0b6c7f);
    color: #fff;
    border: 1px solid #0b6c7f;
    box-shadow: 0 4px 12px rgba(13, 138, 159, 0.3);
}

.filter-btn span:hover {
    background: #e2eff1;
}

.search-box {
    position: relative;
    width: 100%;
    max-width: 350px;
}

.search-box input {
    width: 100%;
    padding: 10px 15px 10px 35px;
    font-size: 14px;
}

.search-box i {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--greencolor);
    font-size: 14px;
    cursor: pointer;
}

.doctor-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.doctor-header .title {
    font-size: 20px;
    margin-bottom: 0px;
}

.filters {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    width: calc(100% - 200px);
}

.clear-filters {
    padding: 6px 16px;
    height: 48px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    border: 1px solid red;
    border-radius: 10px;
    background: transparent;
    font-size: 14px;
    color: red;
    cursor: pointer;
    transition: 0.3s ease;
}

.clear-filters:hover {
    background: red;
    color: #fff;
}

.doctors .consult-doctor-card {
    position: relative;
    background: #fff;
    border: 1px solid var(--bordercolor);
    border-radius: 15px;
    padding: 20px;
    text-align: center;
    transition: all 0.3s ease;
    height: calc(100% - 20px);
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    /* box-shadow: 0 2px 10px rgba(0,0,0,0.05); */
}

.doctors .consult-doctor-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
}

.doctors .consult-doctor-card .consult-doctor-exp {
    position: absolute;
    top: 12px;
    right: 12px;
    font-size: 12px;
    font-weight: 600;
    background-color: #ffecec;
    color: #393939;
    border-radius: 10px;
    padding: 4px 8px;
    /* box-shadow: 0 2px 6px rgba(0,0,0,0.05); */
}

/* Rating */
.doctors .consult-doctor-card .rating {
    position: absolute;
    top: 12px;
    left: 12px;
    font-size: 12px;
    font-weight: 600;
    color: #ff6b35;
    background: #fff3ec;
    border-radius: 10px;
    padding: 4px 8px;
    /* box-shadow: 0 2px 6px rgba(0,0,0,0.05); */
}

.doctors .consult-doctor-card .rating .star {
    color: #ff6b35;
    margin-right: 2px;
}

.doctors .consult-doctor-card .consult-doctor-img {
    padding-top: 30px;
}

/* Profile */
.doctors .consult-doctor-card .consult-doctor-img img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #f2f6ff;
    margin-bottom: 12px;
}

/* Info */
.doctors .consult-doctor-card .consult-doctor-name {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
    color: #222;
}

.doctors .consult-doctor-card .doctor-speciality {
    font-size: 14px;
    text-decoration: underline;
}

.doctors .consult-doctor-card .consult-doctor-degree {
    font-size: 14px;
    color: #666;
    margin-bottom: 5px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    /* number of lines to show */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.doctors .consult-doctor-card .consult-doctor-speciality {
    display: inline-block;
    padding: 4px 12px;
    background: #f2f6ff;
    border-radius: 6px;
    font-size: 13px;
    color: var(--greencolor);
    text-decoration: none;
    font-weight: 500;
    margin-bottom: 8px;
}

.doctors .consult-doctor-card .consult-doctor-speciality:hover {
    text-decoration: underline;
}

.doctors .consult-doctor-card .consult-doctor-fee {
    font-size: 15px;
    font-weight: 600;
    color: var(--greencolor);
    margin-bottom: 4px;
}

/* Buttons */
.doctors .consult-doctor-card .consult-doctor-actions {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: auto;
}

.doctors .consult-doctor-card .consult-doctor-actions .btn {
    font-size: 13px;
    padding: 6px 14px;
    border-radius: 8px;
    font-weight: 500;
}

.doctors .consult-doctor-card .consult-doctor-actions .btn-outline-primary {
    border: 1px solid var(--greencolor);
    color: var(--greencolor);
    background: transparent;
}

.doctors
    .consult-doctor-card
    .consult-doctor-actions
    .btn-outline-primary:hover {
    background: var(--greencolor);
    color: #fff;
}

.doctors .consult-doctor-card .consult-doctor-actions .btn-primary {
    background: var(--greencolor);
    border: 1px solid var(--greencolor);
    color: #fff;
}

.doctors .consult-doctor-card .consult-doctor-actions .btn-primary:hover {
    background: #10686f;
    border-color: #10686f;
}

/* Doctor Detail Card */
.doctor-detail-card {
    position: relative;
    background: #fff;
    border: 1px solid var(--bordercolor);
    border-radius: 15px;
    padding: 20px;
    transition: all 0.3s ease;
    margin-bottom: 20px;
}

.doctor-detail-card .img-profile {
    width: 200px;
    height: 200px;
    object-fit: cover;
    border-radius: 50%;
    margin-bottom: 10px;
}

.doctor-name {
    font-weight: 600;
    font-size: 20px;
    color: var(--blackcolor);
    line-height: 22px;
    margin-bottom: 5px;
}

.doctor-degree {
    margin-bottom: 10px;
    font-size: 15px;
    color: #666;
}

.doctor-speciality {
    display: inline-block;
    padding: 4px 14px;
    background: #eaf6f8;
    border-radius: 10px;
    font-size: 13px;
    margin-bottom: 10px;
    font-weight: 500;
    color: var(--greencolor);
    text-decoration: none;
}

.experience-badge {
    display: inline-block;
    width: 100%;
    text-align: center;
    padding: 4px 12px;
    background-color: #ffecec;
    color: #393939;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 600;
}

.rating-pill {
    padding: 4px 10px;
    background: #fff3ec;
    color: #ff6b35;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    position: absolute;
    top: 15px;
    right: 20px;
}

.doctor-bio {
    font-size: 14px;
    color: #444;
    margin-bottom: 10px;
}

.read-more {
    font-size: 13px;
    color: var(--greencolor);
    font-weight: 500;
    text-decoration: none;
}

/* Sidebar Widget */

/* List Style */
.consultation-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.consultation-list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 15px;
    padding: 12px 0;
    border-bottom: 1px solid #f5f5f5;
}

.consultation-list li:last-child {
    border-bottom: none;
}

.consult-type {
    color: #444;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
}

.consult-type i {
    color: var(--greencolor);
}

.consult-price {
    font-weight: 600;
    color: var(--greencolor);
}

/* .accordion {
    border: none;
}

.accordion-item {
    border: none;
    margin-bottom: 10px;
} */

.doctor-detail .nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    color: var(--blackcolor) !important;
}

.doctor-detail .nav-tabs .nav-link {
    color: var(--greencolor);
}

/* .accordion-button {
    background: #fff;
    border: 1px solid var(--bordercolor);
    border-radius: 10px;
    box-shadow: none;
    font-weight: 600;
    font-size: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
    transition: all 0.2s ease;
}

.accordion-button:not(.collapsed) {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    background-color: #eaf6f8;
    color: var(--greencolor);
}

.accordion-button:focus {
    box-shadow: none;
}

.accordion-body {
    font-size: 14px;
    color: #555;
    padding: 15px 20px;
    border: 1px solid #e5e5e5;
    border-top: none;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}

.accordion-button::after {
    display: none;
} */

/* .accordion-icon {
    font-size: 18px;
    transition: transform 0.2s ease;
} */

/* Review Box */
.review-box {
    max-width: 600px;
    margin: 30px auto;
    padding: 25px;
    background: #fff;
    border: 1px solid var(--bordercolor);
    border-radius: 15px;
    /* box-shadow: 0 8px 25px rgba(0,0,0,0.1); */
    transition: transform 0.3s ease;
}

.review-box:hover {
    transform: translateY(-5px);
}

.review-box h5 {
    font-weight: 700;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    color: #333;
}

.review-box h5 i {
    color: var(--greencolor);
}

.review-box .form-group {
    margin-bottom: 20px;
}

/* Rating Section */
.rating-section {
    margin-bottom: 15px;
}

.rating-section label {
    font-weight: 600;
    display: block;
    margin-bottom: 5px;
    color: #444;
}

.rating-stars {
    font-size: 28px;
    color: #ccc;
    cursor: pointer;
    display: flex;
    gap: 8px;
}

.rating-stars i {
    transition:
        transform 0.2s,
        color 0.3s;
}

.rating-stars i:hover {
    transform: scale(1.2) rotate(-10deg);
    color: #f7b731;
}

.rating-stars .fa-solid {
    color: #f7b731;
    animation: pop 0.3s ease;
}

@keyframes pop {
    0% {
        transform: scale(0.8);
    }

    100% {
        transform: scale(1);
    }
}

.rating-text {
    display: block;
    margin-top: 5px;
    font-size: 14px;
    color: #666;
}

.login .login-wrapper {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.login .login-wrapper .left-panel {
    background: linear-gradient(180deg, #0bccdc 0%, #19838a 100%);
    color: #fff;
    min-height: 420px;
}

.login .login-wrapper .left-panel .welcome {
    color: rgba(255, 255, 255, 0.9);
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 15px;
}

.login .login-wrapper .left-panel .logo {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 18px rgba(10, 30, 60, 0.12);
    margin-bottom: 15px;
}

.login .login-wrapper .left-panel .logo img {
    width: 80px;
    object-fit: contain;
    filter: brightness(100);
}

.login .login-wrapper .left-panel .brand {
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 28px;
    color: #fff;
}

.login .login-wrapper .left-panel .lead-text {
    color: rgba(255, 255, 255, 0.92);
    font-size: 13px;
    line-height: 1.45;
}

.login .login-wrapper .right-panel {
    background: #fff;
    min-height: 420px;
}

.login .login-wrapper .right-panel .title {
    font-size: 22px;
    font-weight: 700;
    color: #343434;
    margin-bottom: 20px;
}

.login .login-wrapper .right-panel .subtitle {
    color: #6c7a89;
    font-size: 14px;
    margin-bottom: 15px;
}

.login .login-wrapper .form-label {
    font-size: 13px;
    color: #6c7a89;
    margin-bottom: 5px !important;
}

.login .login-wrapper .form-group {
    margin-bottom: 20px;
}

.login .login-wrapper .country {
    max-width: 60px;
}

.login .login-wrapper .or {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #b7c6d3;
    margin: 20px 0px;
}

.login .login-wrapper .or:before,
.login .login-wrapper .or:after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e6eef6;
    margin: 0 12px;
}

.login .login-wrapper .google-btn {
    border-radius: 24px;
    border: 1px solid var(--bordercolor);
    background: #fff;
    padding: 10px 14px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s linear;
}

.login .login-wrapper .google-btn:hover {
    background-color: #eee;
    border: 1px solid var(--bordercolor);
}

@media (max-width: 767.98px) {
    .login .login-wrapper .left-panel,
    .login .login-wrapper .right-panel {
        min-height: unset;
        padding: 28px;
    }

    .login .login-wrapper .login-wrapper {
        flex-direction: column;
    }
}

/* ========================= */
/* ✨ Extra Animations Added */
/* ========================= */

/* Wrapper fade-in */
.login .login-wrapper {
    animation: fadeInUp 0.9s ease both;
}

/* Left panel slide-in */
.login .login-wrapper .left-panel {
    animation: slideInLeft 1s ease both;
}

/* Right panel slide-in */
.login .login-wrapper .right-panel {
    animation: slideInRight 1s ease both;
}

/* Floating Logo effect */
.login .login-wrapper .left-panel .logo {
    animation: float 3s ease-in-out infinite;
}

.login .login-wrapper .left-panel .logo img {
    animation: pulse 2.5s infinite;
}

/* Input glow on focus */
.login .login-wrapper input.form-control {
    transition: all 0.3s ease;
}

/* Primary button hover */
.login .login-wrapper .btn.web-btn {
    transition: all 0.3s ease;
}

/* Keyframes */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(40px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-60px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(60px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes float {
    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

@keyframes pulse {
    0%,
    100% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.05);
        opacity: 0.85;
    }
}

.ask-a-doctor .query-card {
    border-radius: 14px;
    box-shadow: 0 10px 25px rgba(16, 24, 40, 0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: #fff;
}

/* Make the left side use card padding */
.ask-a-doctor .card-body {
    padding: 30px;
}

/* Header block on form */
.ask-a-doctor .form-left-header {
    background: linear-gradient(
        90deg,
        rgba(6, 76, 72, 0.03),
        rgba(6, 76, 72, 0)
    );
    border-left: 4px solid #0e8b86;
    padding: 12px 16px;
    margin-bottom: 18px;
    border-radius: 8px;
}

.ask-a-doctor .form-title {
    font-weight: 600;
    font-size: 1.05rem;
    color: #0f3b3a;
    margin: 0;
}

.ask-a-doctor .form-sub {
    font-size: 0.87rem;
    color: var(--graycolor);
    margin: 3px 0 0 0;
}

.note-text {
    font-size: 0.82rem;
    color: var(--graycolor);
}

/* Captcha box */
.ask-a-doctor .captcha-row .captcha-img {
    min-height: 45px;
    height: 45px;
    border-radius: 6px;
    background: linear-gradient(90deg, #f7fafb, #ffffff);
    border: 1px solid #e6e9ee;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
    border-radius: 10px;
}

/* Right image panel */
.ask-a-doctor .image-panel {
    height: 100%;
    min-height: 380px;
    background-size: cover;
    background-position: center center;
    border-radius: 0 14px 14px 0;
}

/* Responsive: stack image under form for small screens */
@media (max-width: 991.98px) {
    .ask-a-doctor .query-card {
        gap: 0;
    }

    .ask-a-doctor .image-panel {
        border-radius: 14px;
        min-height: 220px;
        margin-top: 18px;
    }
}

/* Ensure selects look like form-control on older browsers */
.ask-a-doctor select.form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* Small spacing tweak */
.ask-a-doctor .g-3 > .col-md-6 {
    display: block;
}

/* Card base */
.queries-section .query-card {
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 8px 18px rgba(16, 24, 40, 0.08);
    transition: all 0.2s ease;
    height: 100%;
}

.queries-section .query-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 28px rgba(16, 24, 40, 0.12);
}

/* Media image */
.queries-section .card-media {
    flex: 0 0 40%;
    min-height: 180px;
    background-size: cover;
    background-position: center;
}

.queries-section .card-body {
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.queries-section .card-meta {
    display: flex;
    gap: 10px;
    font-size: 0.85rem;
    margin-bottom: 8px;
}

.queries-section .badge.specialty {
    background: rgba(14, 139, 134, 0.12);
    color: #0e8b86;
    font-weight: 600;
    border-radius: 8px;
    padding: 4px 8px;
    line-height: normal;
}

.queries-section .reading {
    color: #6c757d;
}

.queries-section .card-footer {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.queries-section .read-more {
    color: var(--greencolor);
    font-weight: 600;
    text-decoration: underline;
}

.queries-section .read-more:hover {
    text-decoration: underline;
}

.queries-section .answered-by {
    font-size: 0.85rem;
    color: #6c757d;
}

.question-detail-section .custom-card {
    background: var(--whitecolor);
    border: 1px solid var(--bordercolor);
    border-radius: 20px;
    box-shadow: 0 8px 22px rgba(15, 20, 25, 0.06);
    padding: 20px;
}

.question-detail-section .question-card .q-row {
    display: flex;
    gap: 15px;
    align-items: center;
}

.question-detail-section .q-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    font-weight: 800;
    font-size: 1.1rem;
    color: var(--greencolor);
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, #defbf6, #c4f0e9);
    box-shadow: 0 0 0 4px rgba(13, 148, 136, 0.08);
    border: 1px solid #b0e4da;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
}

.question-detail-section .q-content {
    width: calc(100% - 65px);
}

.question-detail-section .q-badge.small {
    padding: 8px;
    min-width: 44px;
}

.question-detail-section .question-card .q-title {
    margin-bottom: 5px;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 600;
}

.question-detail-section .answer-body h2,
.answer-body h3,
.answer-body h4,
.answer-body h5 {
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: 600;
}

.question-detail-section .answer-body ul {
    list-style: disc;
    padding-left: 20px;
}

.question-detail-section .question-card .meta {
    margin: 0;
    color: var(--secondarycolor);
    font-size: 15px;
}

.question-detail-section .question-card .review-note {
    margin: 6px 0 0;
    font-size: 15px;
    color: var(--secondarycolor);
}

.question-detail-section .answer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    border-bottom: 1px solid var(--bordercolor);
    padding-bottom: 10px;
    padding: 0px 20px;
    margin-bottom: 15px;
    margin: 0px -20px 15px -20px;
}

.question-detail-section .doctor-info {
    display: flex;
    gap: 15px;
    align-items: center;
}

.question-detail-section .doctor-avatar {
    width: 64px;
    height: 64px;
    border-radius: 12px;
    object-fit: cover;
}

.question-detail-section .doctor-name {
    margin: 0;
    font-weight: 600;
    margin-bottom: 5px;
    font-size: 17px;
}

.question-detail-section .doctor-role {
    margin: 0;
    color: var(--secondarycolor);
    font-size: 0.92rem;
}

.question-detail-section .answer-badges {
    display: flex;
    gap: 10px;
    align-items: center;
}

.question-detail-section .badge-verified {
    display: inline-block;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--greenfilter);
    font-size: 13px;
    color: var(--greencolor);
    font-weight: 700;
    border: 1px solid rgba(13, 148, 136, 0.08);
}

.question-detail-section .share-btn {
    background: transparent;
    border: 1px solid rgba(11, 18, 20, 0.06);
    border-radius: 10px;
    cursor: pointer;
    font-size: 15px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--greencolor);
}

.question-detail-section .share-dropdown {
    position: relative;
    display: inline-block;
}

.question-detail-section .share-toggle {
    position: relative;
    z-index: 10;
}

.question-detail-section .share-menu {
    display: none;
    position: absolute;
    right: 0;
    top: 110%;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(15, 20, 25, 0.08);
    min-width: 160px;
    padding: 8px 0;
    overflow: hidden;
}

.question-detail-section .share-menu a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    color: #122029;
    text-decoration: none;
    font-size: 0.92rem;
    transition:
        background 0.2s ease,
        color 0.2s ease;
}

.question-detail-section .share-menu a:hover {
    background: #f6fafb;
    color: var(--greencolor);
}

.question-detail-section .share-menu i {
    width: 16px;
    text-align: center;
    font-size: 0.95rem;
}

.question-detail-section .share-dropdown.active .share-menu {
    display: block;
}

.question-detail-section .share-menu::before {
    content: "";
    position: absolute;
    top: -6px;
    right: 18px;
    border-width: 6px;
    border-style: solid;
    border-color: transparent transparent #ffffff transparent;
}

.question-detail-section .pro-tip {
    background: linear-gradient(90deg, #fffaf6, #fff8f2);
    border: 1px solid rgba(255, 122, 89, 0.06);
    padding: 15px;
    border-radius: 10px;
    margin-top: 10px;
}

.question-detail-section .answer-actions {
    display: flex;
    gap: 10px;
    margin-top: 14px;
}

.question-detail-section .compact-card .compact-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.question-detail-section .compact-card .compact-left {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    flex: 1;
}

.question-detail-section .compact-card .compact-title {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 5px;
}

.question-detail-section .qes-cta {
    width: calc(100% - 60px);
}

.question-detail-section .compact-card .compact-cta {
    align-self: center;
}

.question-detail-section .sidebar-title {
    margin: 0 0 18px;
    font-size: 20px;
    font-weight: 700;
    color: #000;
    letter-spacing: -0.3px;
}

.question-detail-section .related-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.question-detail-section .related-item {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    text-decoration: none;
    padding: 10px;
    border-radius: 12px;
    background: #ffffff;
    position: relative;
    transition: all 0.25s ease;
    border: 1px solid transparent;
}

.question-detail-section .related-item:hover {
    transform: translateY(-4px);
    background: #f8fdfc;
    border-color: rgba(13, 148, 136, 0.12);
    box-shadow: 0 8px 22px rgba(13, 148, 136, 0.08);
}

.question-detail-section .related-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    border-radius: 12px 0 0 12px;
    background: linear-gradient(180deg, #baf2e9, #9eeadd);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.question-detail-section .related-item:hover::before {
    opacity: 1;
}

.question-detail-section .related-thumb-wrap {
    flex-shrink: 0;
}

.question-detail-section .related-thumb {
    width: 78px;
    height: 58px;
    object-fit: cover;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(13, 148, 136, 0.08);
    transition: transform 0.3s ease;
}

.question-detail-section .related-item:hover .related-thumb {
    transform: scale(1.05);
}

.question-detail-section .related-content {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.question-detail-section .related-link {
    font-size: 16px;
    font-weight: 600;
    color: #122029;
    margin: 0 0 4px;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.question-detail-section .related-date {
    color: var(--graycolor);
    font-size: 13px;
    font-weight: 500;
}

@media (max-width: 992px) {
    .question-detail-section .sidebar-card {
        padding: 16px;
    }

    .question-detail-section .related-thumb {
        width: 68px;
        height: 52px;
    }

    .question-detail-section .related-link {
        font-size: 15px;
    }
}

.question-detail-section .link {
    color: var(--greencolor);
    text-decoration: none;
    font-weight: 600;
}

.question-detail-section .link:hover {
    text-decoration: underline;
}

.question-detail-section .meta.small {
    font-size: 0.87rem;
    color: #6b7280;
    margin-bottom: 0px;
}

.site-footer {
    background: transparent;
    border-top: 1px solid #eef5f4;
}

.site-footer small {
    color: #6b7280;
}

.corporate-features-section .features-grid {
    margin-top: 26px;
    row-gap: 24px;
}

.corporate-features-section .feature-tile {
    display: block;
    position: relative;
    border-radius: 15px;
    overflow: hidden;
    min-height: 260px;
    background: #fff;
    border: 1px solid rgba(11, 18, 20, 0.03);
    box-shadow:
        2em 4em 6em -2em rgba(0, 0, 0, 0.5),
        1em 2em 3.5em -2.5em rgba(0, 0, 0, 0.5);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
    cursor: pointer;
}

.corporate-features-section .feature-img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.corporate-features-section .feature-meta {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 28px 20px 22px;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.05) 10%,
        rgba(0, 0, 0, 0.7) 100%
    );
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 110px;
    transition: background 0.4s ease;
}

.corporate-features-section .feature-title {
    margin: 0 0 8px;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    line-height: 1.3;
    z-index: 2;
    position: relative;
    text-shadow: 0 4px 8px rgba(0, 0, 0, 0.25);
}

.corporate-features-section .feature-sub {
    margin: 0;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.92);
    line-height: 1.6;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.4s ease;
    max-height: 0;
    overflow: hidden;
}

.corporate-features-section .feature-tile:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 32px rgba(13, 148, 136, 0.15);
}

.corporate-features-section .feature-tile:hover .feature-img {
    transform: scale(1.06);
}

.corporate-features-section .feature-tile:hover .feature-meta {
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.1) 5%,
        rgba(0, 0, 0, 0.85) 100%
    );
    padding-bottom: 28px;
    /* makes room for the description */
}

.corporate-features-section .feature-tile:hover .feature-sub {
    opacity: 1;
    transform: translateY(0);
    max-height: 100px;
    /* show description smoothly */
}

/* Focus accessibility */
.corporate-features-section .feature-tile:focus-visible {
    box-shadow:
        0 0 0 3px rgba(13, 148, 136, 0.15),
        0 16px 32px rgba(13, 148, 136, 0.12);
}

.banner-div img {
    height: 200px;
    object-fit: cover;
    width: 100%;
    border-radius: 15px;
}

.corporate-centre .box {
    position: relative;
    background-size: cover;
    padding: 100px 15px 15px;
    box-shadow: 0 0 10px rgb(0 0 0 / 10%);
    border-radius: 10px;
    display: block;
    margin-bottom: 20px;
    font-weight: 700;
    overflow: hidden;
    transform: rotate3d(0.5, -0.866, 0, 15deg) rotate(1deg);
    box-shadow:
        2em 4em 6em -2em rgba(0, 0, 0, 0.5),
        1em 2em 3.5em -2.5em rgba(0, 0, 0, 0.5);
    transition: all 0.4s ease;
}

.corporate-centre .box:hover {
    transform: rotate3d(0, 0, 0, 0deg) rotate(0deg);
}

.corporate-centre .box:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0.6) 100%
    );
    transition: all 0.2s 0s linear;
}

.corporate-centre .box:hover:before {
    background: linear-gradient(
        to bottom,
        rgba(1, 138, 149, 0) 0%,
        rgba(1, 138, 149, 0.8) 100%
    );
}

.corporate-centre .box span {
    position: relative;
    font-size: 14px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.8);
    text-transform: uppercase;
    letter-spacing: 1px;
    color: white;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.corporate-centre .box i {
    transform: translateX(-60px);
    transition: all 0.2s 0s linear;
    opacity: 0;
    font-size: 16px;
}

.corporate-centre .box:hover i {
    transform: translateX(0px);
    opacity: 1;
}

@media (max-width: 767px) {
    .corporate-centre {
        padding: 20px 0px 0px;
    }

    .corporate-centre .box span {
        font-size: 13px;
    }

    .corporate-centre .box i {
        display: none;
    }
}

.financial-realtime .services-section {
    position: relative;
}

.financial-realtime .section-title {
    font-size: 32px;
    font-weight: 800;
    color: #0b2b30;
    margin-bottom: 8px;
    letter-spacing: -0.01em;
    line-height: 1.05;
    text-rendering: optimizeLegibility;
}

.financial-realtime .section-lead {
    max-width: 920px;
    margin: 0 auto 28px;
    color: #546969;
    font-size: 15px;
    line-height: 1.7;
}

.financial-realtime .service-card {
    padding: 28px 0;
    transition:
        transform 260ms ease,
        box-shadow 260ms ease;
    border-radius: 14px;
    background: transparent;
    margin-bottom: 6px;
}

.financial-realtime .service-card.alt {
    background: linear-gradient(
        180deg,
        rgba(13, 148, 136, 0.02),
        rgba(255, 255, 255, 0)
    );
    border-radius: 14px;
}

.financial-realtime .service-card + .service-card {
    border-top: 1px solid rgba(7, 24, 24, 0.04);
}

.financial-realtime .service-media {
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(11, 18, 20, 0.03);
    box-shadow: 0 22px 46px rgba(8, 22, 25, 0.06);
    background: #fff;
}

.financial-realtime .service-media img {
    width: 100%;
    height: 220px;
    display: block;
    object-fit: cover;
    transition:
        transform 600ms cubic-bezier(0.2, 0.9, 0.2, 1),
        filter 400ms ease;
}

.financial-realtime .service-card:hover .service-media img,
.financial-realtime .service-card:focus-within .service-media img {
    transform: scale(1.06);
    filter: saturate(1.02) contrast(0.98);
}

.financial-realtime .box-h {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
    letter-spacing: -0.01em;
}

.financial-realtime .box-p {
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 0;
}

.financial-realtime .box-h::before {
    content: "";
    display: inline-block;
    width: 36px;
    height: 6px;
    margin-right: 12px;
    vertical-align: middle;
    background: linear-gradient(90deg, #19838a, #343434);

    border-radius: 8px;
    transform: translateY(-2px);
    opacity: 0.95;
}

.financial-realtime .service-cta {
    margin-top: 12px;
}

.financial-realtime .service-cta .btn {
    display: inline-block;
    padding: 10px 16px;
    border-radius: 10px;
    border: 1px solid rgba(13, 148, 136, 0.12);
    background: transparent;
    color: var(--greencolor);
    font-weight: 700;
    text-decoration: none;
    transition:
        background 0.18s ease,
        transform 0.12s ease,
        box-shadow 0.12s ease;
}

.financial-realtime .service-cta .btn:hover,
.financial-realtime .service-cta .btn:focus {
    background: linear-gradient(180deg, #0d9488, #0b7d74);
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(13, 148, 136, 0.12);
}

.financial-realtime .service-card {
    transform: translateY(-6px);
    box-shadow: 0 24px 56px rgba(8, 22, 25, 0.06);
    padding: 0px 15px;
}

.financial-realtime .reveal {
    opacity: 1;
    transform: none;
    transition:
        opacity 520ms ease,
        transform 520ms cubic-bezier(0.2, 0.9, 0.2, 1);
}

@media (max-width: 991px) {
    .financial-realtime .section-title {
        font-size: 26px;
    }

    .financial-realtime .service-card {
        padding: 18px 0;
    }

    .financial-realtime .service-media {
        margin-bottom: 14px;
    }

    .financial-realtime .box-h {
        font-size: 18px;
    }

    .financial-realtime .box-p {
        font-size: 15px;
        line-height: 1.6;
    }
}

@media (max-width: 576px) {
    .financial-realtime {
        padding: 36px 0;
    }

    .financial-realtime .section-title {
        font-size: 22px;
    }

    .financial-realtime .service-media {
        border-radius: 10px;
        box-shadow: 0 12px 30px rgba(8, 22, 25, 0.04);
    }

    .financial-realtime .box-h {
        font-size: 17px;
    }

    .financial-realtime .box-p {
        font-size: 14px;
    }
}

.financial-realtime .service-card:focus-within {
    outline: 3px solid rgba(13, 148, 136, 0.08);
    outline-offset: 8px;
    border-radius: 12px;
}

.financial-realtime .service-card + .service-card {
    margin-top: 10px;
    padding-top: 28px;
}

.financial-realtime .muted {
    color: #6b7280;
    font-size: 14px;
}

.corporate-impact-section {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #f8fcfb 100%);
}

.corporate-impact-section .map-bg {
    position: absolute;
    inset: 0;
    opacity: 0.2;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 0;
}

.corporate-impact-section .map-bg img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.corporate-impact-section .impact-text {
    position: relative;
    z-index: 2;
}

.corporate-impact-section .impact-title {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.2;
    color: #000;
}

.corporate-impact-section .impact-subtitle {
    font-weight: 500;
    color: #4d6d73;
    font-size: 18px;
}

.corporate-impact-section .impact-highlight {
    color: var(--greencolor);
}

.corporate-impact-section .impact-lead {
    margin-top: 0px;
    font-size: 16px;
    margin-bottom: 0px;
    line-height: 1.7;
    max-width: 500px;
}

.corporate-impact-section .impact-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    position: relative;
    z-index: 2;
}

.corporate-impact-section .impact-card {
    background: var(--whitecolor);
    border-radius: 15px;
    box-shadow: 0 8px 32px rgba(8, 22, 25, 0.06);
    padding: 28px 20px;
    text-align: center;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
    height: 100%;
    position: relative;
}

.impact-card .teal {
    background: #f15162;
}

.impact-card .purple {
    background: #19838a;
}

.impact-card .blue {
    background: #2e5a88;
}

.impact-card .icon-orange {
    background: #ffa500;
}

.impact-card .sky {
    background: #a020f0;
}

.impact-card .icon-red {
    background: #90ee00;
}

.impact-card .icon-green {
    background: #800000;
}

.impact-card .pink {
    background: #f15162;
}

.diesease-management-sec .impact-value {
    font-size: 20px !important;
}

.corporate-impact-section .impact-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 44px rgba(8, 22, 25, 0.09);
}

.corporate-impact-section .impact-icon {
    width: 62px;
    height: 62px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 14px;
    font-size: 26px;
    margin: 0 auto 14px;
    color: #fff;
}

.corporate-impact-section .impact-icon.web {
    background: linear-gradient(135deg, #0ea5e9, #0d9488);
}

.corporate-impact-section .impact-icon.red {
    background: linear-gradient(135deg, #f43f5e, #fb7185);
}

.impact-icon.green {
    background: linear-gradient(135deg, #22c55e, #4ade80);
}

.corporate-impact-section .impact-icon.orange {
    background: linear-gradient(135deg, #fb923c, #f97316);
}

.corporate-impact-section .impact-value {
    font-size: 28px;
    font-weight: 800;
    margin-bottom: 6px;
}

.corporate-impact-section .impact-value.web {
    color: #0d9488;
}

.corporate-impact-section .impact-value.red {
    color: #f43f5e;
}

.corporate-impact-section .impact-value.green {
    color: #22c55e;
}

.corporate-impact-section .impact-value.orange {
    color: #fb923c;
}

.corporate-impact-section .impact-label {
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 0px;
}

@media (max-width: 991px) {
    .corporate-impact-section {
        padding: 60px 0;
    }

    .impact-title {
        font-size: 28px;
    }

    .impact-grid {
        gap: 22px;
    }
}

@media (max-width: 768px) {
    .corporate-impact-section .impact-title {
        font-size: 22px;
    }
}

.partners-section {
    background: var(--whitecolor);
}

.partners-section .partners-slider .item {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px 5px;
}

.partners-section .partner-card {
    width: 100%;
    height: 140px;
    border-radius: 15px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(11, 18, 20, 0.03);
    box-shadow: 0 18px 40px rgba(8, 22, 25, 0.06);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
    overflow: hidden;
}

.partners-section .partner-card img {
    max-width: 80%;
    max-height: 70%;
    object-fit: contain;
    display: block;
    filter: saturate(0.95);
    transition: transform 0.36s ease;
}

.partners-section .partner-card .partner-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 60px rgba(8, 22, 25, 0.08);
}

.partners-section .partner-card:focus-within {
    outline: 3px solid rgba(13, 148, 136, 0.08);
    outline-offset: 6px;
}

.partners-section .owl-nav {
    position: relative;
    margin-top: 18px;
}

.partners-section .owl-nav .owl-prev,
.partners-section .owl-nav .owl-next {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid rgba(11, 18, 20, 0.06);
    box-shadow: 0 8px 20px rgba(8, 22, 25, 0.06);
    color: #000;
}

.partners-section .owl-nav .owl-prev:hover,
.partners-section .owl-nav .owl-next:hover {
    transform: translateY(-2px);
}

.partners-section .partners-carousel .owl-stage {
    transition-timing-function: linear !important;
}

/* Image wrap */
.hospital-intro-section .hospital-image-wrap {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 18px 42px rgba(10, 25, 30, 0.08);
    transform: translateY(0);
    transition: transform 0.4s ease;
}

.hospital-intro-section .hospital-image-wrap:hover {
    transform: translateY(-6px);
}

.hospital-intro-section .hospital-image {
    width: 100%;
    height: 450px;
    display: block;
    object-fit: cover;
    border-radius: 15px;
}

.hospital-intro-section .hospital-badge {
    position: absolute;
    bottom: 20px;
    left: 20px;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(6px);
    border-radius: 50px;
    padding: 10px 18px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--greencolor);
    box-shadow: 0 6px 20px rgba(3, 102, 102, 0.1);
}

/* Content */
.hospital-intro-section .hospital-content {
    padding-left: 10px;
}

.hospital-intro-section .hospital-content .hospital-heading .highlight {
    color: var(--greencolor);
}

.hospital-intro-section .hospital-content .hospital-intro {
    font-size: 15.5px;
    line-height: 1.8;
    margin-bottom: 20px;
}

.hospital-intro-section .hospital-content .hospital-highlights {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 26px;
    margin-bottom: 30px;
}

.hospital-intro-section .hospital-content .highlight-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    font-size: 15px;
    color: #0f3f41;
}

.hospital-intro-section .hospital-content .highlight-item i {
    color: var(--greencolor);
    font-size: 16px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e0f7f5;
    border-radius: 50%;
    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.hospital-intro-section .hospital-content .highlight-item:hover i {
    background: var(--greencolor);
    color: #fff;
    transform: scale(1.1);
}

/* Stack into single column on mobile */
@media (max-width: 575px) {
    .hospital-intro-section .hospital-content .hospital-highlights {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}

/* Responsive */
@media (max-width: 991px) {
    .hospital-intro-section .hospital-content .hospital-image-wrap {
        margin-bottom: 30px;
    }
}

.hospital-listing {
    background: linear-gradient(180deg, #ffffff 0%, #f8fbfb 100%);
}

.hospital-listing .search-form .form-control,
.hospital-listing .form-select {
    max-width: 300px;
}

.hospital-listing .hospital-grid {
    margin-top: 80px;
    row-gap: 80px;
}

.hospital-listing .hospital-list-card-card {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: visible;
    /* to allow logo overlap */
    box-shadow:
        0 10px 30px rgba(8, 22, 25, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(11, 18, 20, 0.03);
    transition:
        transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1),
        box-shadow 0.28s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 10px 0px 20px;
}

/* Top area holds logo (overlap) */
.hospital-listing .hospital-list-card-top {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin-top: -90px;
}

.hospital-listing .hospital-list-card-top .hospital-list-card-logo {
    width: 170px;
    height: 170px;
    background: linear-gradient(180deg, #fbffff, #f0fcfb);
    border: 1px solid var(--bordercolor);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    /* box-shadow: 0 14px 30px rgba(8, 22, 25, 0.08); */
    border: 1px solid rgba(11, 18, 20, 0.04);
    transform: translateY(18px);
    transition: transform 0.36s ease;
    z-index: 5;
    overflow: hidden;
}

.hospital-listing .hospital-list-card-top .hospital-list-card-logo img {
    width: 130px;
    height: 130px;
    object-fit: contain;
    display: block;
    filter: saturate(0.98);
}

.hospital-listing .hospital-list-card-address .text-muted {
    font-size: 14px;
}

.hospital-listing .hospital-list-card-address {
    margin-bottom: 10px;
    margin-top: 5px;
}

/* Body content */
.hospital-listing .hospital-list-card-body {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    align-items: center;
    text-align: center;
}

/* name & type */
.hospital-listing .hospital-list-card-body .hospital-list-card-name {
    font-size: 18px;
    margin: 0;
    color: var(--blackcolor);
    text-transform: capitalize;
    font-weight: 700;
}

.hospital-listing .hospital-list-card-type {
    color: var(--greencolor);
    font-weight: 700;
    font-size: 13.5px;
    margin-top: 4px;
}

/* address area */

.hospital-listing .hospital-list-card-address i {
    color: var(--greencolor);
}

.hospital-listing .add {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 5px;
}

/* hover/focus micro-animations */
.hospital-listing .hospital-list-card-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 28px 70px rgba(8, 22, 25, 0.12);
}

.hospital-listing .hospital-list-card-card:hover .hospital-list-card-logo {
    transform: translateY(6px) scale(1.03);
}

/* HOSPITAL DETAIL — modern clean layout */
.hospital-detail {
    position: relative;
}

.hospital-detail .logo-wrap {
    display: inline-block;
    border-radius: 12px;
    overflow: hidden;
    width: 200px;
    height: 180px;

    border: 1px solid #ddd;
}

.hospital-detail .logo-wrap .hospital-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.hospital-detail .title-row {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 25px;
}

/* title row */
.hospital-detail .hospital-name {
    font-size: 26px;
    margin: 6px 0 6px;
    font-weight: 700;
    color: var(--blackcolor);
    line-height: 1.05;
}

.hospital-detail .meta-row {
    display: flex;
    gap: 10px;
    align-items: center;
    color: #4a6d6c;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 12px;
}

.hospital-detail .meta-dot {
    opacity: 0.35;
}

/* ABOUT card */
.hospital-detail .about-card {
    background: linear-gradient(180deg, #ffffff, #fbfffe);
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0 8px 26px rgba(8, 22, 25, 0.04);
    border: 1px solid rgba(11, 18, 20, 0.03);
}

.hospital-detail .about-wrapper .section-title-sm {
    font-size: 18px;
    margin: 0 0 10px;
    color: #083233;
    font-weight: 700;
}

/* truncate text (CSS-only) */
.hospital-detail .about-wrapper .about-text {
    color: #405457;
    line-height: 1.7;
    max-height: 6.8rem;
    /* show ~4 lines */
    overflow: hidden;
    position: relative;
}

.hospital-detail .about-wrapper .about-text::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 38px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0), #fff 70%);
}

.hospital-detail .about-wrapper .readmore {
    display: inline-block;
    margin-top: 10px;
    font-weight: 700;
    color: #0d9488;
    text-decoration: none;
}

/* TAGS */
.hospital-detail .tag-row {
    margin-top: 14px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.hospital-detail .chip {
    background: #e9fbf9;
    color: var(--greencolor);
    padding: 8px 12px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

/* related list */
.hospital-detail .related-card {
    background: #fff !important;
    position: sticky;
    top: 180px;
}

.hospital-detail .related-card .related-title {
    margin: 0 0 12px;
    font-weight: 700;
    color: var(--blackcolor);
    font-size: 22px;
}

.hospital-detail .related-card .related-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.hospital-detail .related-card .related-list li {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 10px;
}

.hospital-detail .related-card .related-list img {
    width: 50px;
    height: 50px;
    object-fit: contain;
    border-radius: 15px;
}

.hospital-detail .related-card .related-list li h5 {
    font-size: 17px;
    font-weight: 600;
    margin-bottom: 0px;
}

.hospital-detail .about-content {
    position: relative;
    overflow: hidden;
    transition: height 420ms cubic-bezier(0.2, 0.9, 0.2, 1);
}

/* visible fade overlay when collapsed */
.hospital-detail .about-content::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 72px;
    /* height of the faded area */
    pointer-events: none;
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(13, 148, 136, 0.03) 30%,
        rgba(255, 255, 255, 0.95) 100%
    );
    transition:
        opacity 0.28s ease,
        transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1);
    opacity: 1;
}

.hospital-detail .about-content::before {
    content: "…";
    /* elegant ellipsis as hint */
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 16px;
    font-size: 22px;
    font-weight: 700;
    color: rgba(3, 62, 58, 0.9);
    background: rgba(255, 255, 255, 0);
    padding: 0 6px;
    pointer-events: none;
    transition:
        opacity 0.22s ease,
        transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1);
    opacity: 1;
}

/* When expanded, hide overlay and hint cleanly */
.hospital-detail .about-content.expanded::after {
    opacity: 0;
    transform: translateY(6px);
    visibility: hidden;
}

.hospital-detail .about-content.expanded::before {
    opacity: 0;
    transform: translateY(6px);
    visibility: hidden;
}

@media (min-width: 992px) {
    .about-content::after {
        background: linear-gradient(
            180deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(13, 148, 136, 0.04) 28%,
            rgba(255, 255, 255, 0.96) 100%
        );
    }
}

.readmore {
    display: inline-block;
    margin-top: 10px;
    background: transparent;
    border: 0;
    color: #0d9488;
    font-weight: 700;
    cursor: pointer;
    padding: 6px 0;
}

.readmore:focus {
    outline: 3px solid rgba(13, 148, 136, 0.12);
    border-radius: 6px;
}

.steps-track-section .track-header {
    margin: 0 auto 18px;
    text-align: center;
}

/* wrapper inside .container (container provides left/right space) */
.steps-track-section .track-wrap {
    position: relative;
    padding-top: 44px;
}

.steps-track-section .track-bar {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 84px;
    border-radius: 44px;
    background: linear-gradient(
        90deg,
        rgba(25, 131, 138, 0.08),
        rgba(25, 131, 138, 0.06)
    );
    box-shadow: 0 14px 28px rgba(3, 34, 34, 0.03);
    z-index: 0;
}

.steps-track-section .track-numbers {
    position: absolute;
    top: 10px;
    left: 0;
    right: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    padding: 0;
    z-index: 1;
    pointer-events: none;
    box-sizing: border-box;
}

.steps-track-section .track-numbers span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(3, 34, 34, 0.16);
    font-weight: 900;
    font-size: 18px;
    user-select: none;
}

.steps-track-section .cards-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    /* must match .track-numbers gap */
    grid-auto-rows: 1fr;
    /* equal height rows */
    align-items: stretch;
    position: relative;
    z-index: 2;
    margin-top: 10px;
    /* small offset under track-bar */
}

/* step card */
.steps-track-section .step-card {
    background: linear-gradient(180deg, #ffffff, #fbffff);
    border-radius: 14px;
    padding: 22px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 22px 44px rgba(8, 22, 25, 0.06);
    border: 1px solid rgba(11, 18, 20, 0.03);
    box-sizing: border-box;
    height: 100%;
    min-height: 0;
    transform: translateY(-18px);
    position: relative;
    overflow: visible;
    transition:
        transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1),
        box-shadow 0.28s ease;
}

.steps-track-section .step-bg-number {
    position: absolute !important;
    top: 22px;
    right: 22px;
    font-size: 56px;
    font-weight: 900;
    line-height: 1;
    color: rgba(3, 34, 34, 0.08);
    pointer-events: none;
    user-select: none;
    z-index: 0;
}

.steps-track-section .step-card > * {
    position: relative;
    z-index: 1;
}

.steps-track-section .step-card:hover .step-bg-number {
    color: rgba(25, 131, 138, 0.14);
}

.steps-track-section .step-card:hover,
.steps-track-section .step-card:focus-within {
    transform: translateY(-24px) scale(1.01);
    box-shadow: 0 36px 80px rgba(8, 22, 25, 0.12);
}

/* subtle inner bottom glow */
.steps-track-section .step-card::before {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 6px;
    height: 36%;
    border-radius: 12px;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0),
        rgba(3, 34, 34, 0.02)
    );
    pointer-events: none;
}

/* icon block */
.steps-track-section .step-top {
    display: flex;
    align-items: center;
    gap: 12px;
}

.steps-track-section .step-icon {
    width: 64px;
    height: 64px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    background: linear-gradient(180deg, #19838a, #116b68);
    color: #fff;
    box-shadow: 0 12px 30px rgba(25, 131, 138, 0.14);
}

/* texts */
.steps-track-section .step-title {
    font-size: 16px;
    margin: 15px 0 10px;
    font-weight: 800;
    color: #073233;
    line-height: 1.25;
}

.steps-track-section .step-text {
    color: #486b6a;
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 12px;
    flex: 1 1 auto;
    overflow: hidden;
}

/* chevrons */
.steps-track-section .step-arrow {
    position: absolute;
    right: 14px;
    bottom: 12px;
    color: rgba(3, 34, 34, 0.28);
    font-size: 18px;
    z-index: 3;
    display: flex;
    gap: 6px;
}

.steps-track-section .step-card:hover .step-arrow {
    transform: translateY(-2px);
}

/* responsive */
@media (max-width: 992px) {
    .steps-track-section .cards-row {
        grid-template-columns: repeat(2, 1fr);
        gap: 18px;
    }

    .steps-track-section .track-numbers {
        grid-template-columns: repeat(2, 1fr);
        gap: 18px;
        top: 8px;
    }

    .steps-track-section .track-bar {
        height: 68px;
        top: 0;
    }
}

.why-choose-amb-section {
    background: var(--whitecolor);
}

.why-choose-amb-section .visual-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.why-choose-amb-section .visual-bg {
    position: absolute;
    inset: -10px 0 0 0;
    height: 100%;
    border-radius: 18px;
    background: linear-gradient(
        180deg,
        rgba(25, 131, 138, 0.04),
        rgba(25, 131, 138, 0.02)
    );
    filter: blur(6px);
    z-index: 0;
}

.why-choose-amb-section .ambulance-gif {
    width: 100%;
    border-radius: 15px;
    padding-right: 18px;
    box-sizing: border-box;
    z-index: 1;
}

.why-choose-amb-section .ambulance-gif img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
    box-shadow: 0 28px 60px rgba(8, 22, 25, 0.06);
    transform-origin: center;
    animation: float 4.5s ease-in-out infinite;
}

@keyframes float {
    0% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-8px) rotate(-0.6deg);
    }

    100% {
        transform: translateY(0) rotate(0deg);
    }
}

.why-choose-amb-section .features-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 18px;
    margin: 6px 0 18px;
    list-style: none;
    padding: 0;
}

.why-choose-amb-section .feature {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    background: transparent;
    padding: 6px 4px;
    border-radius: 10px;
    transition:
        background 0.22s ease,
        transform 0.22s ease;
}

.why-choose-amb-section .feature:hover {
    transform: translateY(-4px);
    background: rgba(25, 131, 138, 0.02);
}

.why-choose-amb-section .feature-icon {
    min-width: 55px;
    min-height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: linear-gradient(180deg, #eafbf9, #dff6f3);
    color: var(--greencolor);
    font-size: 20px;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.7);
}

.why-choose-amb-section .feature-body {
    display: flex;
    flex-direction: column;
}

.why-choose-amb-section .feature-title {
    color: var(--secondarycolor);
    font-size: 15px;
    margin-bottom: 4px;
}

.why-choose-amb-section .feature-desc {
    color: var(--graycolor);
    font-size: 14px;
    line-height: 1.45;
}

@media (max-width: 980px) {
    .why-choose-amb-section .why-amb-inner {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 0 12px;
    }

    .why-choose-amb-section .visual-wrap {
        order: 2;
    }

    .why-choose-amb-section .features-wrap {
        order: 1;
    }

    .why-choose-amb-section .features-grid {
        grid-template-columns: 1fr;
    }

    .why-choose-amb-section .ambulance-gif {
        max-width: 420px;
        margin: 0 auto;
    }
}

@media (max-width: 520px) {
    .why-choose-amb-section .feature-icon {
        min-width: 44px;
        min-height: 44px;
        font-size: 18px;
        border-radius: 10px;
    }

    .why-choose-amb-section .features-wrap h2 {
        font-size: 22px;
    }
}

/* Services — Bootstrap-col friendly (no CSS variables) */
.otherservices-section {
}

/* Tile (anchor) */
.otherservices-section .service-tile {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    border-radius: 14px;
    overflow: hidden;
    transition:
        transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1),
        box-shadow 0.28s ease,
        border-color 0.18s;
    border: 1px solid rgba(11, 18, 20, 0.03);
    box-shadow: 0 24px 48px rgba(4, 20, 20, 0.06);
    background: linear-gradient(180deg, #fff, #fbfeff);
    height: 100%;
}

/* Media: larger image area with cover */
.otherservices-section .tile-media {
    height: 220px;
    background-size: cover;
    background-position: center;
    flex-shrink: 0;
    transition:
        transform 0.5s ease,
        filter 0.35s ease;
    position: relative;
}

/* subtle dark gradient overlay bottom for improved contrast */
.otherservices-section .tile-media::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 48%;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0),
        rgba(3, 34, 34, 0.12)
    );
    pointer-events: none;
}

/* Body area */
.otherservices-section .tile-body {
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Top row: icon + title */
.otherservices-section .tile-top {
    display: flex;
    gap: 12px;
    align-items: center;
}

.otherservices-section .tile-icon {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #eafbf9, #dff7f3);
    color: #19838a;
    font-size: 18px;
    flex-shrink: 0;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.8);
}

.otherservices-section .tile-title {
    margin: 0;
    font-size: 18px;
    font-weight: 800;
    color: var(--blackcolor);
}

/* Description (flex grows so CTAs stick to bottom) */
.otherservices-section .tile-desc {
    margin: 0;
    font-size: 14px;
    line-height: 1.4;
    flex: 1 1 auto;
}

/* Footer: CTA on left, badge on right */
.otherservices-section .tile-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 6px;
}

.otherservices-section .tile-cta {
    color: var(--greencolor);
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
}

.otherservices-section .tile-badge {
    background: rgba(25, 131, 138, 0.08);
    color: var(--greencolor);
    padding: 8px 24px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

.otherservices-section .service-tile:hover,
.otherservices-section .service-tile:focus {
    transform: translateY(-10px);
    box-shadow: 0 44px 100px rgba(4, 20, 20, 0.12);
    border-color: rgba(25, 131, 138, 0.12);
}

.otherservices-section .service-tile:hover .tile-media {
    transform: scale(1.04);
    filter: saturate(1.03);
}

.otherservices-section .service-tile:focus {
    outline: 3px solid rgba(25, 131, 138, 0.1);
    outline-offset: 6px;
}

.otherservices-section .row.g-4 > [class*="col-"] {
    display: flex;
}

.otherservices-section .row.g-4 > [class*="col-"] > .service-tile {
    flex: 1 1 auto;
}

.ambulance-form .web-form-box .sethescope {
    height: 110px !important;
}

.crowdfund-section {
    background: var(--whitecolor);
    position: relative;
}

.crowdfund-section .image-frame {
    position: relative;
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
}

.crowdfund-section .cf-image {
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 26px 60px rgba(6, 28, 28, 0.06);
    position: relative;
    background: var(--whitecolor);
}

.crowdfund-section .cf-image img {
    display: block;
    width: 100%;
    height: 450px;
    object-fit: cover;
}

.crowdfund-section .cf-lead {
    margin: 0 0 20px;
}

.crowdfund-section .cf-benefits {
    list-style: none;
    padding: 0;
    margin: 8px 0 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.crowdfund-section .cf-benefits li {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #2f5c5a;
    font-size: 15px;
    line-height: 1.45;
}

.crowdfund-section .cf-benefits i {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #eafbf9, #dff7f3);
    color: #19838a;
    font-size: 16px;
    flex-shrink: 0;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.crowdfund-section .cf-cta {
    display: flex;
    gap: 12px;
    margin-top: 6px;
    align-items: center;
}

.how-works-section {
}

.how-works-crw .crwd-compact {
    position: relative;
    padding: 0px 0 6px;
    margin-top: 10px;
}

.how-works-crw .crwd-compact::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 34px;
    height: 2px;
    background: linear-gradient(
        90deg,
        rgba(3, 34, 34, 0.06),
        rgba(25, 131, 138, 0.06),
        rgba(3, 34, 34, 0.06)
    );
    z-index: 0;
    display: block;
}

.how-works-crw .crwd-item {
    position: relative;
    text-align: center;
    padding: 20px 12px 10px;
    margin-top: -35px;
    background: transparent;
    z-index: 2;
    min-height: 120px;
}

.how-works-crw .crwd-number {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #f0fbfa;
    color: var(--greencolor);
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    margin: 0 auto 14px;
    box-shadow: 0 8px 22px rgba(11, 18, 20, 0.04);
    border: 1px solid rgba(3, 34, 34, 0.04);
    transition:
        transform 0.22s ease,
        background 0.22s ease,
        color 0.22s ease,
        box-shadow 0.22s ease;
    position: relative;
    left: 0;
}

.how-works-crw .crwd-item.is-active .how-works-crw .crwd-number {
    background: linear-gradient(180deg, #19838a, #116b68);
    color: #fff;
    transform: scale(1.08);
    box-shadow: 0 18px 40px rgba(25, 131, 138, 0.12);
    border-color: rgba(25, 131, 138, 0.14);
}

.how-works-crw .crwd-head {
    margin: 0 0 6px;
    font-size: 16px;
    font-weight: 800;
    color: #072f2f;
    line-height: 1.22;
}

.how-works-crw .crwd-desc {
    margin: 0;
    color: #5b7a77;
    font-size: 14px;
    line-height: 1.6;
    opacity: 0.95;
}

@media (min-width: 992px) {
    .how-works-crw .crwd-item {
        text-align: center;
    }

    .how-works-crw .crwd-number {
        margin: 0 auto 14px;
        left: auto;
        transform: none;
    }
}

/* ensure equal visual heights: use flex on the column wrapper */
.how-works-crw .row.crwd-compact > [class*="col-"] {
    display: flex;
}

.how-works-crw .row.crwd-compact > [class*="col-"] > .crwd-item {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.how-works-crw .crwd-item:hover .crwd-number,
.how-works-crw .crwd-item:focus-within .crwd-number {
    transform: translateY(-4px);
    box-shadow: 0 20px 50px rgba(11, 18, 20, 0.06);
}

@media (max-width: 768px) {
    .how-works-crw .row.crwd-compact {
        gap: 18px;
    }
}

.funding-testimonials-modern .tm-card {
    background: #fff;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 20px 48px rgba(3, 34, 34, 0.06);
    padding: 0;
}

.funding-testimonials-modern .tm-card .tm-media {
    width: 250px;
    overflow: hidden;
}

.funding-testimonials-modern .tm-card .tm-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.funding-testimonials-modern .tm-card .tm-body {
    padding: 18px 20px;
    padding-top: 60px;
    position: relative;
    width: calc(100% - 250px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.funding-testimonials-modern .tm-card .tm-bubble {
    position: absolute;
    top: 10px;
    right: 15px;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: #19838a;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 30px rgba(25, 131, 138, 0.12);
    font-size: 18px;
}

.funding-testimonials-modern .tm-card .tm-name {
    margin: 4px 0 8px;
    color: var(--blackcolor);
}

.funding-testimonials-modern .tm-card .tm-text {
    margin: 0;
    line-height: 1.6;
    font-style: italic;
}

.funding-testimonials-modern .tm-card .tm-meta {
    margin-top: 12px;
    color: #6b8a89;
    font-weight: 600;
}

.funding-testimonials-modern .owl-theme .owl-nav button {
    background: #fff;
    color: #0b4744;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: none;
    box-shadow: 0 8px 20px rgba(3, 34, 34, 0.08);
}

.funding-testimonials-modern .owl-theme .owl-theme .owl-dots {
    text-align: center;
    margin-top: 8px;
}

.funding-testimonials-modern .owl-theme .owl-theme .owl-dots .owl-dot span {
    width: 10px;
    height: 10px;
    display: block;
    border-radius: 50%;
    background: rgba(7, 50, 50, 0.12);
}

.funding-testimonials-modern
    .owl-theme
    .owl-theme
    .owl-dots
    .owl-dot.active
    span {
    background: #19838a;
}

.funding-testimonials-modern .owl-theme .testimonials-modern .tm-card:hover {
    transform: translateY(-4px);
    transition: transform 0.24s ease;
}

.funding-pricing-section .pm-card {
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 18px 36px rgba(7, 34, 34, 0.06);
    border: 1px solid rgba(3, 34, 34, 0.04);
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: visible;
    transition:
        transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1),
        box-shadow 0.28s ease;
    border: 2px solid rgba(25, 131, 138, 0.12);
}

.funding-pricing-section .pm-card .pm-card-top {
    display: flex;
    gap: 15px;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid rgba(3, 34, 34, 0.09);
}

/* circular icon */
.funding-pricing-section .pm-card .pm-icon {
    width: 72px;
    height: 72px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #eafbf9, #dff7f3);
    color: var(--greencolor);
    font-size: 28px;
    box-shadow: 0 8px 20px rgba(25, 131, 138, 0.06);
    flex: 0 0 72px;
}

/* title block */
.funding-pricing-section .pm-card .pm-title-wrap {
    flex: 1;
    min-width: 0;
}

.funding-pricing-section .pm-card .pm-title {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    color: var(--blackcolor);
}

.funding-pricing-section .pm-card .pm-sub {
    margin-top: 6px;
    color: var(--greencolor);
    font-weight: 700;
}

/* body with features */
.funding-pricing-section .pm-card .pm-body {
    padding: 20px 20px 20px;
    flex: 1;
    display: flex;
    align-items: flex-start;
}

.funding-pricing-section .pm-card .pm-features {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.funding-pricing-section .pm-card .pm-features li {
    font-size: 15px;
    display: flex;
    gap: 10px;
    align-items: center;
}

.funding-pricing-section .pm-card .pm-features li i {
    color: var(--greencolor);
    font-size: 12px;
    min-width: 18px;
}

.funding-pricing-section .pm-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 30px 70px rgba(3, 34, 34, 0.12);
}

.testimonial-page {
    background: linear-gradient(
        180deg,
        #ffffff 0%,
        #e7f6f7 40%,
        #19838a15 100%
    );
}

.testimonial-page .testimonial-card {
    background: var(--whitecolor);
    border: 1px solid var(--bordercolor);
    border-radius: 15px;
    padding: 25px;
    height: calc(100% - 20px);
    transition: all 0.3s ease;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.05);
    margin-bottom: 20px;
}

.testimonial-page .testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 25px rgba(0, 0, 0, 0.12);
}

.testimonial-page .testimonial-card img {
    width: 55px;
    height: 55px;
    border-radius: 50px;
    border: 2px solid var(--greencolor);
}

.testimonial-page .testimonial-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.testimonial-page .testimonial-header h6 {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--blackcolor);
}

.testimonial-page .testimonial-content p {
    font-size: 14px;
    line-height: 1.6;
    color: var(--graycolor);
}

.testimonial-page .read-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    /* margin-top: 6px; */
    font-weight: 600;
    color: var(--greencolor);
    cursor: pointer;
    text-decoration: none;
}

.testimonial-page .read-link:hover {
    text-decoration: underline;
}

.elders-section .elders-left {
    padding: 8px 6px;
}

.elders-section .elders-stat-wrap {
    display: flex;
    align-items: baseline;
    gap: 18px;
    margin-bottom: 12px;
}

.elders-section .elders-stat {
    font-size: 84px;
    font-weight: 900;
    color: var(--greencolor);
    line-height: 1;
    letter-spacing: -1px;
}

.elders-section .elders-stat .plus {
    font-size: 36px;
    margin-left: 6px;
    vertical-align: top;
    display: inline-block;
    color: #0b3333;
    font-weight: 900;
}

.elders-section .elders-sub {
    color: #375c5a;
    font-weight: 600;
    font-size: 15px;
    margin-top: 6px;
}

.elders-section .tiles-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.elders-section .tile {
    display: block;
    position: relative;
    width: 100%;
    height: 180px;
    border-radius: 10px;
    overflow: hidden;
    background: #f2f6f6;
    box-shadow: 0 18px 38px rgba(3, 34, 34, 0.05);
    transition:
        transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1),
        box-shadow 0.28s ease;
    text-decoration: none;
}

.elders-section .tile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1);
    transition:
        transform 0.7s cubic-bezier(0.2, 0.9, 0.2, 1),
        filter 0.35s ease;
    will-change: transform;
}

.elders-section .tile-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    padding: 16px;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0) 30%,
        rgba(3, 10, 10, 0.45) 70%
    );
    color: #fff;
    font-weight: 800;
    font-size: 18px;
    letter-spacing: 0.2px;
    transition: background 0.28s ease;
    box-sizing: border-box;
}

.elders-section .tile-overlay span {
    padding: 6px 10px;
    background: rgba(0, 0, 0, 0.22);
    border-radius: 6px;
}

.elders-section .tile:hover,
.elders-section .tile:focus {
    transform: translateY(-6px);
    box-shadow: 0 30px 60px rgba(3, 34, 34, 0.12);
    z-index: 6;
}

.elders-section .tile:hover img {
    transform: scale(1.08);
    filter: contrast(1.03) saturate(1.05);
}

.elders-section .tile:focus {
    outline: 3px solid rgba(25, 131, 138, 0.12);
}

@media (max-width: 991.98px) {
    .elders-section .tiles-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .elders-section .tile {
        height: 170px;
    }
}

.whychoose-eldercare .whychoose-cards {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* Individual card */
.whychoose-eldercare .whychoose-card {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    background: #ffffff;
    border-radius: 14px;
    padding: 18px 20px;
    box-shadow: 0 8px 24px rgba(3, 34, 34, 0.05);
    transition: all 0.25s ease;
}

.whychoose-eldercare .whychoose-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 34px rgba(3, 34, 34, 0.1);
}

/* Icon bubble */
.whychoose-eldercare .whychoose-icon {
    flex-shrink: 0;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #fff;
    font-size: 20px;
}

.whychoose-eldercare .bg-blue {
    background: linear-gradient(135deg, #65b1ff, #19838a);
}

.whychoose-eldercare .bg-purple {
    background: linear-gradient(135deg, #9a6bff, #7466ff);
}

.whychoose-eldercare .bg-teal {
    background: linear-gradient(135deg, #00b3b3, #19838a);
}

.whychoose-eldercare .bg-red {
    background: linear-gradient(135deg, #f87272, #eb5c42);
}

.whychoose-eldercare .whychoose-content h4 {
    font-size: 17px;
    font-weight: 700;
    color: var(--blackcolor);
    margin: 0 0 4px;
}

.whychoose-eldercare .whychoose-content p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
}

.whychoose-eldercare .whychoose-image {
    position: relative;
    width: 100%;
    max-width: 520px;

    margin-right: 0;
    padding: 18px;
    box-sizing: border-box;
}

.whychoose-eldercare .whychoose-image::after {
    content: "";
    position: absolute;
    left: -8px;
    top: -8px;
    right: -8px;
    bottom: -8px;
    border-radius: 100px 0px 100px 0px;
    border: 3px solid rgba(25, 131, 138, 0.12);
    z-index: 1;
    pointer-events: none;
    filter: saturate(1.05);
}

.whychoose-eldercare .whychoose-image img {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    height: 550px;
    object-fit: cover;
    border-radius: 100px 0px 100px 0px !important;

    box-shadow: 0 14px 38px rgba(3, 34, 34, 0.08);
    transition:
        transform 0.42s cubic-bezier(0.2, 0.9, 0.2, 1),
        box-shadow 0.28s ease,
        filter 0.28s ease;
    will-change: transform;
}

@media (max-width: 575.98px) {
    .whychoose-eldercare .whychoose-image::before,
    .whychoose-eldercare .whychoose-image::after {
        display: none;
    }
}

.whychoose-eldercare .why-choose-right {
    padding-left: 30px;
}

.elder-mosaic-section .mosaic-lead {
    font-size: 15px;
    line-height: 1.6;
    max-width: 360px;
}

.elder-mosaic-section .mosaic-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}

.elder-mosaic-section .m-tile {
    display: flex;
    align-items: stretch;
    position: relative;
    min-height: 120px;
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 18px 40px rgba(3, 34, 34, 0.06);
    border: 1px solid rgba(3, 34, 34, 0.03);
    transition:
        transform 0.26s ease,
        box-shadow 0.26s ease;
}

.elder-mosaic-section .m-accent {
    width: 10px;
    background: linear-gradient(180deg, #21c5b0, #19838a);
}

.elder-mosaic-section .m-body {
    padding: 18px 20px;
}

.elder-mosaic-section .m-header {
    display: flex;
    gap: 15px;
    align-items: center;
    flex: 1;
    margin-bottom: 15px;
}

.elder-mosaic-section .m-icon {
    width: 64px;
    height: 64px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #e6faf8, #dff5f4);
    color: var(--greencolor);
    font-size: 24px;
    flex-shrink: 0;
    box-shadow: 0 8px 20px rgba(25, 131, 138, 0.08);
}

.elder-mosaic-section .m-body h4 {
    margin: 4px 0 8px;
    font-size: 18px;
    font-weight: 700;
    color: var(--blackcolor);
}

.elder-mosaic-section .m-body p {
    margin: 0;
    line-height: 1.6;
    font-size: 14px;
}

.elder-mosaic-section .m-left {
    margin-left: 0;
    transform-origin: left;
}

.elder-mosaic-section .m-right {
    margin-left: 40px;
}

.elder-mosaic-section .m-right .m-accent {
    transform: translateX(6px);
}

.elder-mosaic-section .m-tile:hover {
    transform: translateY(-6px);
    box-shadow: 0 34px 64px rgba(3, 34, 34, 0.1);
}

@media (min-width: 992px) {
    .elder-mosaic-section .mosaic-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .elder-mosaic-section .m-left,
    .elder-mosaic-section .m-right {
        margin-left: 0;
    }

    .elder-mosaic-section .m-right .m-accent {
        transform: none;
    }
}

/* Homecare About Section */

.homecare-about .about-image-wrapper .about-image {
    width: 100%;
    height: auto;
    object-fit: cover;
    border: 3px dashed var(--greencolor);
    height: 500px;
    border-radius: 15px;
}

.homecare-about .about-intro {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 20px;
}

/* Feature list */
.homecare-about .about-feature {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
    gap: 12px;
}

.homecare-about .feature-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: var(--whitecolor);
}

.homecare-about .feature-icon.red {
    background: linear-gradient(135deg, #ff6363, #ff3b3b);
}

.homecare-about .feature-icon.blue {
    background: linear-gradient(135deg, #57a5ff, #19838a);
}

.homecare-about .feature-icon.green {
    background: linear-gradient(135deg, #22b893, #15786f);
}

.homecare-about .feature-text {
    width: calc(100% - 60px);
}

.homecare-about .feature-text h5 {
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 4px;
    color: var(--blackcolor);
}

.homecare-about .feature-text p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 0;
}

/* Responsive */
@media (max-width: 991.98px) {
    .homecare-about .about-content {
        margin-top: 30px;
        text-align: center;
    }

    .homecare-about .about-feature {
        justify-content: center;
        text-align: left;
    }
}

.whychoose-homecare .wc-lead {
    font-size: 15px;
    max-width: 700px;
}

.whychoose-homecare .wc-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    box-shadow: 0 8px 25px rgba(8, 22, 25, 0.06);
    transition: all 0.3s ease;
}

.whychoose-homecare .wc-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 30px rgba(8, 22, 25, 0.1);
}

.whychoose-homecare .wc-icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 24px;
    box-shadow: 0 6px 15px rgba(25, 131, 138, 0.15);
}

/* ===== Icon Colors ===== */
.whychoose-homecare .bg-green {
    background: linear-gradient(135deg, #21c5b0, #19838a);
}

.whychoose-homecare .bg-blue {
    background: linear-gradient(135deg, #57a5ff, #19838a);
}

.whychoose-homecare .bg-purple {
    background: linear-gradient(135deg, #8a6cff, #7157ff);
}

.whychoose-homecare .bg-orange {
    background: linear-gradient(135deg, #f4a261, #e76f51);
}

.whychoose-homecare .wc-content h4 {
    font-size: 17px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 4px;
}

.wc-content p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
}

/* ===== Metrics ===== */
.whychoose-homecare .wc-metric {
    background: var(--whitecolor);
    border-radius: 15px;
    box-shadow: 0 8px 25px rgba(8, 22, 25, 0.06);
    padding: 20px;
    text-align: center;
}

.whychoose-homecare .wc-metric-value {
    color: var(--greencolor);
    font-size: 22px;
    font-weight: 800;
}

.whychoose-homecare .wc-metric-label {
    color: #4c6666;
    font-size: 13px;
}

@media (max-width: 768px) {
    .whychoose-homecare .wc-heading {
        font-size: 24px;
    }

    .whychoose-homecare .wc-btn {
        display: inline-block;
        margin-top: 10px;
    }

    .whychoose-homecare .wc-card {
        flex-direction: row;
        padding: 16px;
    }
}

.homecare-solutions .hc-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border-radius: 15px;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff, #fbfffe);
    box-shadow: 0 18px 40px rgba(3, 34, 34, 0.06);
    border: 1px solid rgba(11, 18, 20, 0.03);
    transition:
        transform 0.28s cubic-bezier(0.2, 0.9, 0.2, 1),
        box-shadow 0.28s ease;
}

.homecare-solutions .hc-media {
    height: 180px;
    background-size: cover;
    background-position: center;
    position: relative;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}

.homecare-solutions .hc-title-bar {
    background: var(--greencolor);
    color: var(--whitecolor);
    padding: 10px 14px;
    text-align: center;
    font-weight: 800;
    letter-spacing: 0.6px;
    font-size: 14px;
}

.homecare-solutions .hc-body {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1 1 auto;
}

.homecare-solutions .hc-name {
    margin: 0;
    font-weight: 700;
    color: var(--blackcolor);
    font-size: 16px;
}

.homecare-solutions .hc-desc {
    margin: 0;
    font-size: 14px;
    line-height: 1.55;
    flex: 1 1 auto;
}

/* hover state */
.homecare-solutions .hc-card:hover,
.homecare-solutions .hc-card:focus-within {
    transform: translateY(-10px);
    box-shadow: 0 36px 80px rgba(3, 34, 34, 0.12);
}

.homecare-other-solutions .hos-card {
    background: #fff;
    border-radius: 14px;
    padding: 26px 16px 22px;
    text-align: center;
    box-shadow: 0 8px 24px rgba(3, 34, 34, 0.05);
    border: 1px solid rgba(25, 131, 138, 0.08);
    transition: all 0.3s ease;
    height: 100%;
}

.homecare-other-solutions .hos-icon {
    width: 68px;
    height: 68px;
    margin: 0 auto 14px;
    border-radius: 14px;
    background-color: var(--greencolor);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    color: #fff;
    box-shadow: 0 10px 25px rgba(25, 131, 138, 0.25);
    transition: all 0.3s ease;
}

/* Text */
.homecare-other-solutions .hos-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 6px;
}

.homecare-other-solutions .hos-text {
    font-size: 13px;
    line-height: 1.45;
    margin: 0;
}

/* Hover Interaction */
.homecare-other-solutions .hos-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 48px rgba(3, 34, 34, 0.12);
}

.homecare-other-solutions .hos-card:hover .hos-icon {
    background-color: #146e72;
    transform: scale(1.08);
}

/* Responsive */
@media (max-width: 576px) {
    .homecare-other-solutions .hos-icon {
        width: 58px;
        height: 58px;
        font-size: 22px;
    }

    .homecare-other-solutions .hos-title {
        font-size: 14px;
    }

    .homecare-other-solutions .hos-text {
        font-size: 12px;
    }
}

/* Card container */
.rhc-solutions .rhc-card {
    background: #ffffff;
    border-radius: 15px;
    padding: 25px 20px;
    text-align: center;
    box-shadow: 0 8px 26px rgba(3, 34, 34, 0.06);
    border: 1px solid rgba(25, 131, 138, 0.08);
    height: calc(100% - 20px);
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

/* Image block */
.rhc-solutions .rhc-img {
    width: 72px;
    height: 72px;
    margin: 0 auto 14px;
    border-radius: 14px;
    background: linear-gradient(145deg, #e8f7f7, #ffffff);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(25, 131, 138, 0.12);
}

.rhc-solutions .rhc-img img {
    width: 60px;
    height: 60px;
    transition: transform 0.4s ease;
}

/* Text */
.rhc-solutions .rhc-name {
    font-size: 15px;
    font-weight: 700;
    color: #083535;
    margin-bottom: 6px;
}

.rhc-solutions .rhc-desc {
    font-size: 13px;
    color: #4e6b6a;
    line-height: 1.5;
    margin: 0;
}

/* Hover animation */
.rhc-solutions .rhc-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(3, 34, 34, 0.12);
}

.rhc-solutions .rhc-card:hover img {
    transform: scale(1.08);
}

/* Responsive */
@media (max-width: 768px) {
    .rhc-solutions .rhc-name {
        font-size: 14px;
    }

    .rhc-solutions .rhc-desc {
        font-size: 12px;
    }

    .rhc-solutions .rhc-img {
        width: 64px;
        height: 64px;
    }
}

.rhc-product-tabs-section .product-tabs {
    gap: 10px;
    margin-bottom: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.rhc-product-tabs-section .product-tabs .nav-link {
    border-radius: 999px;
    padding: 10px 18px;
    font-weight: 700;
    font-size: 14px;
    color: var(--blackcolor);
    background: var(--backgroundcolor);
    box-shadow: 0 6px 18px rgba(3, 34, 34, 0.03);
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease;
}

.rhc-product-tabs-section .product-tabs .nav-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgba(3, 34, 34, 0.06);
}

.rhc-product-tabs-section .product-tabs .nav-link.active {
    background: var(--greencolor);
    color: var(--whitecolor);
    box-shadow: 0 18px 48px rgba(17, 86, 84, 0.14);
}

.rhc-product-tabs-section .panel-image {
    width: 100%;
    height: 320px;
    object-fit: cover;
    border-radius: 15px;
    box-shadow: 0 16px 36px rgba(8, 22, 25, 0.06);
}

.rhc-product-tabs-section .panel-title {
    font-size: 22px;
    margin-bottom: 15px;
    color: var(--blackcolor);
    font-weight: 700;
}

.rhc-product-tabs-section .panel-text {
    margin-bottom: 15px;
    text-align: justify;
}

.rhc-product-tabs-section .panel-features li {
    margin-bottom: 10px;
}

.rhc-product-tabs-section .product-tabs .nav-link:focus {
    outline: 3px solid rgba(25, 131, 138, 0.12);
    outline-offset: 4px;
    box-shadow: 0 18px 48px rgba(17, 86, 84, 0.14);
}

.rhm-section .rhm-lead {
    font-size: 15px;
    line-height: 1.7;
}

.rhm-section .rhm-list {
    margin-top: 18px;
    padding-left: 20px;
    color: #2f6a67;
    list-style: none;
}

.rhm-section .rhm-list li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
    font-size: 15px;
}

.rhm-section .rhm-list li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    width: 14px;
    height: 14px;
    background: #19838a;
    border-radius: 4px;
    box-shadow: 0 6px 18px rgba(9, 48, 45, 0.06);
}

.rhm-section .rhm-image-wrap {
    position: relative;
    border-radius: 15px;
    background: linear-gradient(180deg, #fbffff, #ffffff);
    box-shadow: 0 20px 50px rgba(3, 34, 34, 0.06);
    transition: transform 0.35s cubic-bezier(0.2, 0.9, 0.2, 1);
    overflow: visible;
    padding: 20px;
}

.rhm-section .rhm-image-wrap:hover {
    transform: translateY(-6px);
}

.rhm-section .rhm-image {
    display: block;
    max-width: 100%;
    height: 400px;
    border-radius: 8px;
    margin: 0 auto;
}

.our-approach-section .approach-step {
    background: var(--whitecolor);
    padding: 28px 20px;
    border-radius: 15px;
    box-shadow: 0 4px 20px rgba(25, 131, 138, 0.08);
    transition: all 0.3s ease;
    position: relative;
    z-index: 2;
    height: 100%;
}

.our-approach-section .approach-step:hover {
    transform: translateY(-6px);
    box-shadow: 0 6px 24px rgba(25, 131, 138, 0.15);
}

.our-approach-section .approach-icon {
    background: var(--greencolor);
    color: var(--whitecolor);
    width: 70px;
    height: 70px;
    line-height: 70px;
    font-size: 28px;
    border-radius: 50%;
    margin: 0 auto 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 22px rgba(25, 131, 138, 0.25);
}

.our-approach-section .approach-step h5 {
    font-weight: 700;
    margin-bottom: 10px;
    color: var(--blackcolor);
}

.our-approach-section .approach-step p {
    font-size: 15px;
    line-height: 1.6;
}

.our-approach-section .approach-line {
    position: absolute;
    top: 140px;
    left: calc(50% - 45%);
    width: 90%;
    height: 5px;
    background: var(--greencolor);
    z-index: 1;
    border-radius: 4px;
}

.ph-product-listing .sm-filter-accordion-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 12px !important;
    background-color: #f5f5f5;
    box-shadow: none;
    outline: none;
    font-weight: 600;
    transition: all 0.3s 0s linear;
}

.ph-product-listing .sm-filter-accordion-btn:hover {
    background-color: #eee;
}

.ph-product-listing .sm-filter-accordion-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 12px !important;
    background-color: #eee;
    box-shadow: none;
    outline: none;
    font-weight: 600;
}

.ph-product-listing .sm-filter-accordion-btn::after {
    display: none;
}

.ph-product-listing .sm-filter {
    width: 100%;
}

.ph-product-listing .sm-filter-inner {
    background: #ffffff;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.ph-product-listing .sm-filter-header {
    padding: 14px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.ph-product-listing .sm-filter-header h4 {
    margin: 0;
    font-size: 20px;
    color: var(--blackcolor);
    font-weight: 700;
    letter-spacing: 0.2px;
}

.ph-product-listing .sm-filter-reset .reset-link {
    font-size: 13px;
    color: var(--btn2color);
    text-decoration: none;
    font-weight: 700;
    border: 1px solid #ddd;
    padding: 4px 20px;
    background-color: #f9f9f9;
    border-radius: 5px;
}

.ph-product-listing .sm-filter-body {
    padding: 12px;
    overflow: auto;
    max-height: calc(100vh - 140px);
}

.ph-product-listing .sm-filter-group {
    border: 0;
    margin: 0 0 14px;
    padding: 0;
}

.ph-product-listing .sm-filter-group legend {
    font-size: 15px;
    font-weight: 600;
    color: var(--blackcolor);
    margin: 0 0 10px;
    padding-left: 6px;
}

/* each row */
.ph-product-listing .sm-option {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px;
    border-radius: 8px;
    cursor: pointer;
    transition:
        background 0.16s ease,
        transform 0.12s ease;
    user-select: none;
    font-size: 14px;
    color: var(--blackcolor);
}

.ph-product-listing .sm-option input {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--greencolor);
}

/* hover / focus */
.ph-product-listing .sm-option:hover,
.ph-product-listing .sm-option:focus-within {
    background: rgba(25, 131, 138, 0.03);
    transform: translateY(-1px);
}

/* checked state style */
.ph-product-listing .sm-option input:checked + span {
    font-weight: 700;
    color: var(--greencolor);
}

/* small label text */
.ph-product-listing .sm-option span {
    display: inline-block;
}

/* custom scrollbar (Webkit) */
.ph-product-listing .sm-filter-body::-webkit-scrollbar {
    width: 5px;
}

.ph-product-listing .sm-filter-body::-webkit-scrollbar-track {
    background: transparent;
}

.ph-product-listing .sm-filter-body::-webkit-scrollbar-thumb {
    background: var(--greencolor);
    border-radius: 15px;
    border: 1px solid var(--greencolor);
}

.ph-product-listing .product-head-center {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.ph-product-listing .product-head-center .titl-head {
    margin: 0;
    font-size: 20px;
    color: var(--blackcolor);
    font-weight: 700;
    letter-spacing: 0.2px;
}

.ph-product-listing .product-head-center .form-group {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 0;
}

.ph-product-listing .product-head-center .form-group label {
    width: 120px;
    font-size: 15px;
    font-weight: 500;
}

.ph-product-listing .product-listing .prd-card {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: hidden;
    transition:
        transform 0.22s cubic-bezier(0.2, 0.9, 0.2, 1),
        box-shadow 0.22s ease;
    display: flex;
    flex-direction: column;
    height: calc(100% - 10px);
    margin-bottom: 10px;
    border: 1px solid #ddd;
}

.ph-product-listing .product-listing .prd-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 30px rgba(17, 28, 28, 0.06);
}

/* media (image) */
.ph-product-listing .product-listing .prd-media {
    position: relative;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #fff, #fbffff);
    min-height: 170px;
    border-bottom: 1px solid #ddd;
    width: 100%;
}

.ph-product-listing .product-listing .prd-media img {
    width: 100%;
    max-height: 140px;
    object-fit: contain;
    background: var(--whitecolor);
    display: block;
    transition: all 0.4s ease;
}

.ph-product-listing .product-listing .prd-card:hover .prd-media img {
    transform: scale(1.08);
    transition: transform 0.4s ease;
}

/* vendor badge (top-right) */
.ph-product-listing .product-listing .prd-badge {
    position: absolute;
    top: 12px;
    right: 0px;
    font-size: 11px;
    padding: 6px 15px;
    border-top-left-radius: 14px;
    border-bottom-left-radius: 14px;
    background: rgba(0, 0, 0, 0.06);
    font-weight: 700;
    z-index: 3;
}

.ph-product-listing .product-listing .prd-badge.vendor {
    background: linear-gradient(135deg, #ffffff, #e4e4e4);
    color: #0b4b47;
}

.ph-product-listing .product-listing .prd-badge.secondmedic {
    background: linear-gradient(135deg, #e6f7f6, #dff6f5);
    color: #0d6b66;
}

/* quick add button overlay (bottom-left) */
.ph-product-listing .product-listing .prd-quick {
    position: absolute;
    left: 12px;
    bottom: 12px;
    border: none;
    background: rgba(255, 255, 255, 0.95);
    color: #08746f;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 20px rgba(3, 34, 34, 0.06);
    cursor: pointer;
    transition:
        transform 0.18s ease,
        background 0.18s ease;
}

.ph-product-listing .product-listing .prd-quick:hover {
    transform: translateY(-3px);
    background: var(--whitecolor);
}

/* body */
.ph-product-listing .product-listing .prd-body {
    padding: 16px 18px 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1 1 auto;
}

.ph-product-listing .product-listing .prd-title {
    font-size: 16px;
    margin: 0;
    font-weight: 600;
    color: var(--blackcolor);
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 20px;
    /* keep consistent */
}

.ph-product-listing .product-listing .prd-brand {
    font-size: 13px;
    color: var(--graycolor);
}

/* meta row: price + rating */
.ph-product-listing .product-listing .prd-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.ph-product-listing .product-listing .prd-price {
    font-weight: 700;
    color: var(--greencolor);
    font-size: 16px;
}

.ph-product-listing .product-listing .prd-rating i {
    color: #f4b400;
    margin-right: 3px;
    font-size: 13px;
}

.ph-product-listing .product-listing .web-btn {
    margin-top: auto;
}

.product-detail-section .product-info {
    padding-left: 20px;
}

.product-detail-section .product-info .product-name-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.product-detail-section .product-info .product-title {
    font-size: 22px;
    font-weight: 700;
    color: var(--blackcolor);
}

.product-detail-section .product-info .product-meta {
    color: var(--graycolor);
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 12px;
}

.product-detail-section .product-info .stock-status {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.product-detail-section .product-info .price-box {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 10px;
}

.product-detail-section .product-info .price-box .price-now {
    font-size: 26px;
    color: var(--greencolor);
    font-weight: 800;
}

.product-detail-section .product-info .price-old {
    font-size: 14px;
    color: #7b8a89;
}

.product-detail-section .product-info .discount-badge {
    background: var(--greencolor);
    color: var(--whitecolor);
    padding: 4px 10px;
    border-radius: 10px;
    font-weight: 600;
    font-size: 13px;
}

.product-detail-section .product-info .quantity-group {
    display: inline-flex;
    align-items: stretch;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #eaeaec;
    background: #f9fafc;
}

.product-detail-section .product-info .quantity-group .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    height: 49px;
    border: 0;
    background: transparent;
    color: var(--blackcolor);
    /* theme color */
    font-weight: 800;
    font-size: 16px;
    transition:
        background 0.14s ease,
        color 0.14s ease,
        transform 0.06s ease;
    cursor: pointer;
}

.product-detail-section .product-info .quantity-group .btn:active {
    transform: scale(0.985);
}

.product-detail-section .product-info .quantity-group .btn:focus {
    outline: none;
    box-shadow: 0 0 0 4px rgba(25, 131, 138, 0.08);
    border-radius: 6px;
}

/* subtle separators */

.product-detail-section .product-info .quantity-group .minus-btn {
    border-right: 1px solid #f1f6f5;
}

.product-detail-section .product-info .quantity-group .plus-btn {
    border-left: 1px solid #f1f6f5;
}

/* input styling */
.product-detail-section .product-info .quantity-input {
    width: 86px;
    min-width: 70px;
    max-width: 120px;
    padding: 10px 6px;
    text-align: center;
    border: none;
    font-size: 16px;
    color: #0b3736;
    background: linear-gradient(180deg, #ffffff, #fbfffe);
}

/* hide native number spin controls */

.product-detail-section
    .product-info
    .quantity-input::-webkit-outer-spin-button,
.product-detail-section
    .product-info
    .quantity-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.product-detail-section .product-info .quantity-input[type="number"] {
    -moz-appearance: textfield;
}

.product-detail-section .product-info .pincode-input {
    width: 100%;
    max-width: 220px;
    transition:
        box-shadow 0.16s ease,
        border-color 0.16s ease;
}

.product-detail-section .product-info .pincode-input:focus {
    outline: none;
    border-color: var(--greencolor);
    box-shadow: 0 10px 30px rgba(25, 131, 138, 0.06);
}

/* Check button */

.product-detail-section .product-info .check-btn {
    border-radius: 10px;
    padding: 10px 18px;
    border: 1px solid #19838a;
    background: #ffffff;
    color: var(--greencolor);
    font-weight: 700;
    cursor: pointer;
    transition: all 0.18s ease;
}

.product-detail-section .product-info .check-btn:hover {
    background-color: var(--greencolor);
    color: #ffffff;
}

.product-detail-section .product-info #pincodeStatus {
    font-size: 14px;
    min-height: 18px;
    margin-top: 8px;
    color: #4b6b6a;
}

.product-detail-section .product-info #pincodeStatus.success {
    color: #0b7a6f;
    font-weight: 600;
}

.product-detail-section .product-info #pincodeStatus.fail {
    color: #c23d3d;
    font-weight: 600;
}

/* Main image area */
.product-detail-section .product-gallery .main-image-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-detail-section .product-gallery .main-image {
    width: 100%;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    cursor: zoom-in;
    box-shadow: 0 12px 28px rgba(3, 34, 34, 0.06);
    height: 380px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-detail-section .product-gallery .main-image img {
    width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: contain;
    transform-origin: center center;
    transition: transform 0.18s ease-out;
    will-change: transform;
}

.product-detail-section .product-gallery .main-image .zoom-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.05);
    opacity: 0;
    transition: opacity 0.15s ease;
    pointer-events: none;
}

.product-detail-section .product-gallery .main-image:hover .zoom-overlay,
.product-detail-section .product-gallery .main-image.zoom-active .zoom-overlay {
    opacity: 1;
}

.product-detail-section .product-gallery .zoom-overlay .plus {
    filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.25));
}

.product-detail-section .product-gallery .img-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #ffffffd9;
    border: 0;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(3, 34, 34, 0.06);
    cursor: pointer;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

.product-detail-section .product-gallery .img-nav.prev {
    left: 8px;
}

.product-detail-section .product-gallery .img-nav.next {
    right: 8px;
}

.product-detail-section .product-gallery .thumbs-wrap {
    margin-top: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-detail-section .product-gallery .thumbs {
    display: flex;
    gap: 10px;
    justify-content: center;
}

.product-detail-section .product-gallery .thumb {
    flex: 0 0 auto;
    border-radius: 10px;
    overflow: hidden;
    border: 2px solid transparent;
    transition:
        border-color 0.15s ease,
        transform 0.15s ease,
        box-shadow 0.15s ease;
    cursor: pointer;
    background: #fff;
    width: 76px;
    height: 76px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(3, 34, 34, 0.04);
}

.product-detail-section .product-gallery .thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-detail-section .product-gallery .thumb:hover {
    transform: scale(1.05);
}

.product-detail-section .product-gallery .thumb.active {
    border-color: var(--greencolor);
    transform: scale(1.07);
    box-shadow: 0 10px 24px rgba(25, 131, 138, 0.12);
}

.product-detail-section .share-dropdown .share-btn {
    border: 1px solid #ddd;
    font-weight: 500;
    background-color: #fff;
    transition: all 0.2s ease;
}

.product-detail-section .share-dropdown .share-btn:hover {
    background-color: #f8f9fa;
    color: #000;
}

/* Dropdown menu */
.product-detail-section .share-menu {
    min-width: 180px;
    padding: 8px;
    border: none;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* Dropdown items */
.product-detail-section .share-menu .dropdown-item {
    display: flex;
    align-items: center;
    border-radius: 6px;
    transition: background 0.2s ease;
    font-size: 14px;
    justify-content: center;
}

.product-detail-section .share-menu .dropdown-item:hover {
    background-color: #f2f2f2;
    color: #000;
}

/* Social icons */
.product-detail-section .share-menu .fa-facebook {
    color: #1877f2;
}

.product-detail-section .share-menu .fa-twitter {
    color: #1da1f2;
}

.product-detail-section .share-menu .fa-whatsapp {
    color: #25d366;
}

.product-detail-section .share-menu .dropdown-divider {
    margin: 8px 0;
}

.product-detail-section .copy-link-btn {
    background-color: #008b8b;
    color: #fff !important;
    font-weight: 600;
    text-align: center;
    border-radius: 6px;
}

/* Divider */
.product-detail-section .copy-link-btn:hover {
    background-color: var(--greencolor);
    color: #fff !important;
}

.product-detail-section .detail-info {
    margin-top: 50px;
}

/* Panel / tab styling (no CSS variables) */
.product-detail-section .pm-tab-btn {
    font-weight: 700;
    padding: 0.55rem 1rem;
    background: #f2f6f5;
    color: #073233;
    border: 0;
}

.product-detail-section .detail-info .pm-tab-btn:hover {
    transform: translateY(-2px);
}

.product-detail-section .nav-tabs .nav-link.active.pm-tab-btn {
    background: var(--btn2color);
    color: #fff !important;
}

.product-detail-section .pm-panel {
    background: #f5fbfa;
    border-radius: 15px;
    padding: 20px;
}

.cart-section .cart-table {
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    border-radius: 15px;
}

.cart-section .cart-table thead th {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 13px;
    border-bottom: 0;
    padding: 14px 14px;
    background: #dff6f3;
    color: #083233;
}

.cart-section .cart-table td {
    padding: 14px 14px;
    vertical-align: middle;
    border-color: rgba(0, 0, 0, 0.04);
    background: var(--whitecolor);
    font-size: 14px;
}

.cart-section .cart-table .product-box {
    max-width: 300px;
}

.cart-section .cart-table tbody tr:hover {
    background: #fbfffe;
    box-shadow: 0 6px 20px rgba(25, 131, 138, 0.04);
}

.cart-section .cart-table .product-title {
    font-size: 15px;
    color: var(--blackcolor);
    font-weight: 600;
}

.cart-section .cart-table .product-vendor {
    font-size: 13px;
    color: var(--graycolor);
    margin-top: 4px;
}

.cart-section .cart-table img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 8px;
}

.cart-section .cart-table td.text-center,
.cart-section .cart-table th.text-center {
    text-align: center;
}

.cart-section .cart-table .price,
.cart-section .cart-table .total {
    color: var(--greencolor);
    font-weight: 700;
}

.cart-section .cart-table .remove-item {
    border: 1px solid #f8dede;
    background: #fff;
    color: #c23d3d;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
}

.cart-section .cart-table .remove-item:hover {
    background: #fbecec;
    color: #a32b2b;
}

.cart-section .cart-table .quantity-wrap {
    display: inline-flex;
    align-items: center;
    border-radius: 15px;
    overflow: hidden;
    border: 1px solid #eaeaec;
    background: #f9fafc;
}

.cart-section .cart-table .quantity-wrap .qty-btn {
    width: 40px;
    height: 38px;
    border: none;
    background: transparent;
    color: var(--blackcolor);
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.cart-section .cart-table .quantity-wrap .qty-btn:active {
    transform: scale(0.98);
}

.cart-section .cart-table .quantity-wrap .qty-input {
    width: 70px;
    border: 0;
    outline: 0;
    text-align: center;
    font-weight: 600;
    font-size: 16px;
    padding: 8px 6px;
    -moz-appearance: textfield;
}

.cart-section .cart-table .quantity-wrap .qty-input::-webkit-outer-spin-button,
.cart-section .cart-table .quantity-wrap .qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.cart-section .cart-summary {
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    border-radius: 15px;
}

.cart-section .add-more {
    font-size: 15px;
    font-weight: 700;
    color: var(--greencolor);
    text-decoration: none;
    margin-bottom: 25px;
    display: inline-block;
}

.cart-section .add-more:hover {
    text-decoration: underline;
}

.cart-summary-header {
    text-transform: uppercase;
    font-size: 13px;
    border-bottom: 0;
    padding: 16px 14px;
    background: #dff6f3;
    color: #083233;
}

.cart-section .cart-summary-header h5 {
    margin: 0;
    font-size: 13px;
    font-weight: 700;
}

.cart-section .cart-summary-body {
    padding: 15px;
}

.cart-section .cart-summary-table {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 12px;
    font-size: 15px;
}

.cart-section .cart-summary-table td {
    padding: 8px 0;
    vertical-align: middle;
    font-size: 14px;

    font-weight: 500;
}

.cart-section .cart-summary-table tr.summary-divider td {
    height: 10px;
    border-bottom: 1px dashed #cfdedc;
}

.cart-section .cart-summary-table tr.total-row td {
    font-size: 17px;
    font-weight: 700;
    color: var(--blackcolor);
    padding-top: 14px;
}

/* text alignment utility */
.cart-section .cart-summary-table .text-end {
    text-align: right;
}

/* note below totals */
.cart-section .cart-note {
    background: var(--backgroundcolor);
    color: var(--secondarycolor);
    font-size: 13px;
    border-radius: 8px;
    padding: 8px 12px;
    margin: 14px 0 18px;
}

.checkout-page .card-panel {
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    border-radius: 15px;
    margin-bottom: 18px;
}

.checkout-page .card-panel .panel-head {
    padding: 14px 18px;
    background: #dff6f3;
}

.checkout-page .card-panel .panel-head h5 {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
}

.checkout-page .card-panel .panel-body {
    padding: 16px 18px;
}

.checkout-page .card-panel .addresses {
    padding: 12px 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.checkout-page .card-panel .address-item {
    border-radius: 10px;
    border: 1px solid rgba(3, 34, 34, 0.04);
    overflow: hidden;
    background: #fff;
}

.checkout-page .card-panel .address-item summary {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 15px;
    cursor: pointer;
    padding: 12px 14px;
}

.checkout-page .card-panel .address-item[open] {
    box-shadow: 0 12px 30px rgba(8, 22, 25, 0.03);
}

.checkout-page .card-panel .address-body {
    padding: 10px 14px 16px;
    background: linear-gradient(
        180deg,
        rgba(3, 34, 34, 0.01),
        rgba(3, 34, 34, 0)
    );
}

.checkout-page .card-panel .address-title {
    font-weight: 600;
    font-size: 16px;
}

.checkout-page .card-panel .address-line {
    margin: 0 0 15px;
    font-size: 14px;
}

.checkout-page .card-panel .address-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.checkout-page .card-panel .radio-like {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.checkout-page .card-panel .radio-like input {
    display: none;
}

.checkout-page .card-panel .fake-radio {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    border: 1px solid #ddd;
    display: inline-block;
    position: relative;
}

.checkout-page .card-panel .radio-like input:checked + .fake-radio {
    background: linear-gradient(180deg, #19838a, #116b68);
    border-color: transparent;
}

.checkout-page .card-panel .add-address {
    padding: 10px 0px 15px;
    text-align: center;
}

.checkout-page .card-panel .link-plus {
    color: #116b68;
    font-weight: 700;
    text-decoration: none;
}

.checkout-page .checkout-summary-card {
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    border-radius: 15px;
}

.checkout-page .btn-fun {
    font-size: 14px;
    color: var(--secondarycolor);
    border: 1px solid #d1f0ef;
    min-width: 130px;
    height: 30px;
    border-radius: 5px;
}

.checkout-page .btn-delete {
    background: #fbecec;
    color: #a32b2b;
    border: 1px solid #f8dede;
}

.checkout-page .btn-edit {
    background: #e6f7f6;
    color: var(--greencolor);
    border: 1px solid #cceaea;
}

/* Top header */
.checkout-page .summary-top {
    padding: 14px 18px;
    background: #dff6f3;
    color: #083233;
}

.checkout-page .summary-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.checkout-page .summary-title h5 {
    margin: 0;
    font-size: 16px;
    color: #073233;
    font-weight: 800;
}

.checkout-page .summary-title .item-count {
    color: var(--greencolor);
    font-size: 13px;
    font-weight: 600;
}

.checkout-page .summary-body {
    padding: 15px;
}

/* Table */
.checkout-page .summary-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.checkout-page .summary-table td {
    padding: 10px 0px;
    vertical-align: middle;
}

.checkout-page .product-row .p-name {
    font-weight: 600;
    color: var(--blackcolor);
    max-width: 200px;
}

.checkout-page .product-row .p-qty {
    width: 40px;
}

.checkout-page .product-row .p-price {
    width: 70px;
}

.checkout-page .summary-line td {
    font-size: 13px;
    font-weight: 500;
}

.checkout-page .divider td {
    height: 10px;
    border-top: 1px dashed #e6f3f1;
}

.checkout-page .order-total td {
    padding-top: 10px;
    font-size: 16px;
}

.checkout-page .total-amount {
    color: var(--blackcolor);
    font-size: 18px;
}

.checkout-page .price-note {
    background: #fff8e5;
    color: #947222;
    padding: 10px 12px;
    border-radius: 8px;
    margin: 12px 0;
    text-align: center;
    font-size: 13px;
}

.checkout-page .savings-badge {
    background: linear-gradient(
        90deg,
        rgba(25, 131, 138, 0.06),
        rgba(25, 131, 138, 0.03)
    );
    color: var(--blackcolor);
    padding: 8px 12px;
    border-radius: 8px;
    margin-bottom: 10px;
    text-align: center;
    font-weight: 700;
    font-size: 15px;
}

.checkout-page .options-block .form-check {
    margin-bottom: 6px;
}

.checkout-page .options-block .form-check .form-check-label {
    color: #4b6667;
    font-size: 14px;
}

.checkout-page .options-block .link-underline {
    color: var(--greencolor);
    text-decoration: underline;
    font-weight: 400;
}

.checkout-page .doctor-box {
    margin-top: 8px;
    background: #fff8e5;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 13px;
    color: #7a5a1a;
}

.lab-listing-section .lab-card {
    display: flex;
    flex-direction: column;
    background: var(--whitecolor);
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #ddd;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease;
    height: 100%;
}

.lab-listing-section .lab-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 30px 60px rgba(8, 22, 25, 0.1);
}

.lab-listing-section .lab-image-wrap {
    position: relative;
    height: 230px;
    overflow: hidden;
    background: linear-gradient(180deg, #f7f9f8, #ffffff 60%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.lab-listing-section .lab-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.lab-listing-section .lab-badge {
    position: absolute;
    right: 12px;
    left: auto;
    bottom: 12px;
    background: rgba(255, 255, 255, 0.92);
    color: #0f3b39;
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
    box-shadow: 0 6px 18px rgba(3, 34, 34, 0.05);
}

.lab-listing-section .lab-body {
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1 1 auto;
}

.lab-listing-section .lab-title {
    font-size: 18px;
    margin: 0;
    color: var(--blackcolor);
    font-weight: 700;
}

.lab-listing-section .lab-meta {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 14px;
}

.lab-listing-section .lab-meta a {
    color: var(--greencolor);
    text-decoration: underline;
    font-weight: 600;
    margin-left: 6px;
}

.lab-listing-section .lab-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
}

.lab-listing-section .price-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
}

.lab-listing-section .price {
    font-size: 20px;
    color: var(--greencolor);
    font-weight: 800;
}

.lab-listing-section .saving {
    font-size: 12px;
    color: var(--greencolor);
    font-weight: 700;
    background: rgba(25, 131, 138, 0.06);
    padding: 4px 8px;
    border-radius: 8px;
}

.lab-listing-section .lab-includes,
.lab-listing-section .lab-provider {
    font-size: 13.5px;
}

.lab-listing-section .lab-provider strong {
    color: #0b3433;
}

.lab-detail-section .lab-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 6px;
    color: var(--blackcolor);
}

.lab-detail-section .lab-meta-line {
    font-size: 14px;
    color: var(--darkcolor);
}

.lab-detail-section .lab-meta-line .lab-brand em {
    font-style: normal;
    color: #0b3433;
    font-weight: 600;
}

.lab-detail-section .lab-meta-line .lab-rating i {
    color: #f2b01e;
    margin-right: 2px;
}

.lab-detail-section .lab-price-large {
    font-size: 26px;
    color: var(--greencolor);
    font-weight: 800;
}

.lab-detail-section .price-value {
    font-size: 26px;
}

.lab-detail-section .test-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
    color: var(--blackcolor);
}

.lab-detail-section .review-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
    color: var(--blackcolor);
}

.lab-detail-section #testsAccordion .accordion-item {
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    border-radius: 15px;
}

.lab-detail-section #testsAccordion .accordion-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.06);
}

#testsAccordion .accordion-button {
    font-weight: 600;
    color: var(--blackcolor);
    background-color: var(--backgroundcolor);
    box-shadow: none !important;
    padding: 12px 16px;
}

.lab-detail-section #testsAccordion .accordion-button::after {
    font-family: "Font Awesome 6 Free";
    content: "\f078";
    font-weight: 900;
    font-size: 0.8rem;
    color: var(--blackcolor);
    transition: transform 0.25s ease;
    margin-left: auto;
}

.lab-detail-section #testsAccordion .accordion-button:not(.collapsed)::after {
    transform: rotate(180deg);
}

.lab-detail-section #testsAccordion .accordion-button:focus {
    box-shadow: none;
}

.lab-detail-section #testsAccordion .accordion-body {
    background: var(--whitecolor);
    border-radius: 0 0 10px 10px;
    font-size: 14px;
    padding: 10px;
}

.lab-detail-section #testsAccordion li {
    margin-bottom: 4px;
}

.lab-detail-section .lab-description {
    line-height: 1.7;
    margin-bottom: 20px;
    font-size: 15px;
}

.lab-detail-section .lab-procedure {
    font-size: 15px;
}

.lab-detail-section .badge.pill {
    display: inline-block;
    background: #e6f6f4;
    color: #0f5a57;
    padding: 8px 12px;
    border-radius: 24px;
    font-weight: 700;
    margin-right: 8px;
}

.lab-detail-section .pm-product-card {
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    border-radius: 15px;
}

/* Image area */
.lab-detail-section .pm-image-wrap {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.lab-detail-section .pm-product-img {
    width: 100%;
    border-radius: 15px;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    object-fit: cover;
}

.lab-detail-section .pm-body {
    padding: 15px;
}

.lab-detail-section .pm-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: #f3f8f8;
    color: var(--blackcolor);
    text-decoration: none;
    font-size: 14px;
}

.lab-detail-section .pm-share-btn:hover {
    background: #e9f9f8;
    transform: translateY(-2px);
}

.lab-detail-section .review-item .review-avatar img {
    width: 50px;
    height: 50px;
    border-radius: 5px;
    overflow: hidden;
    display: flex;
    align-items: center;
    object-fit: cover;
    justify-content: center;
}

.lab-detail-section .review-card .review-body {
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    border-radius: 15px;
    background-color: var(--backgroundcolor);
    padding: 20px;
}

#reviewModal .star-rating {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-bottom: 1rem;
}

#reviewModal .star-rating i {
    font-size: 26px;
    color: #ccc;
    cursor: pointer;
    transition: color 0.2s ease;
}

#reviewModal .star-rating i:hover,
#reviewModal .star-rating i.active {
    color: #ffc107;
}

.home-health-b2b .hh-lead {
    font-size: 15px;
    line-height: 1.6;
}

.home-health-b2b .hh-stats .stat {
    background: var(--backgroundcolor);
    padding: 15px;
    border-radius: 15px;
    text-align: center;
}

.home-health-b2b .stat-value {
    font-size: 20px;
    font-weight: 700;
    color: var(--blackcolor);
}

.home-health-b2b .stat-label {
    font-size: 13px;
    margin-top: 5px;
}

.home-health-b2b .hh-card {
    padding: 15px;
    background: var(--whitecolor);
    border-radius: 15px;
    box-shadow: 0 8px 25px rgba(8, 22, 25, 0.06);
    border: 1px solid var(--bordercolor);
    height: 100%;
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease;
}

.home-health-b2b .hh-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 48px rgba(3, 34, 34, 0.08);
}

.home-health-b2b .hh-card-icon {
    width: 50px;
    height: 50px;
    border-radius: 15px;
    background: linear-gradient(180deg, var(--greencolor), #116b68);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #fff;
    font-size: 20px;
}

.home-health-b2b .hh-card-title {
    margin: 15px 0 5px;
    font-size: 16px;
    font-weight: 700;
    color: var(--blackcolor);
}

.home-health-b2b .hh-card-text {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
}

.home-health-b2b .hh-illustration img {
    width: 100%;
    object-fit: cover;
    border-radius: 15px;
}

.rmhs-section .rmhs-illustration {
    max-width: 420px;
    width: 100%;
    border-radius: 15px;
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.rmhs-section .rmhs-illustration:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 46px rgba(3, 34, 34, 0.09);
}

.rmhs-section .rmhs-card {
    padding: 20px;
    background: var(--whitecolor);
    border-radius: 15px;
    box-shadow: 0 8px 25px rgba(8, 22, 25, 0.06);
    border: 1px solid var(--bordercolor);
}

.rmhs-section .rmhs-card p {
    font-size: 15px;
    margin-bottom: 10px;
}

.rhmc-secondmedic-approach .approach-card {
    padding: 15px;
    background: var(--whitecolor);
    border-radius: 15px;
    box-shadow: 0 8px 25px rgba(8, 22, 25, 0.06);
    border: 1px solid var(--bordercolor);
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease;
}

.rhmc-secondmedic-approach .approach-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 48px rgba(3, 34, 34, 0.08);
}

.rhmc-secondmedic-approach .approach-icon {
    width: 72px;
    height: 72px;
    border-radius: 15px;
    display: grid;
    place-items: center;
    background: var(--backgroundcolor);
    align-self: start;
    box-shadow: inset 0 -4px 10px rgba(3, 34, 34, 0.02);
    margin-bottom: 10px;
    border: 2px dashed var(--greencolor);
}

.rhmc-secondmedic-approach .approach-icon img {
    width: 50px;
    height: 50px;
    object-fit: contain;
}

.rhmc-secondmedic-approach .approach-card-title {
    margin: 0 0 0;
    font-size: 18px;
    font-weight: 700;
}

.rhmc-secondmedic-approach .approach-card-text {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    flex: 1 1 auto;
}

.fw-hero-section .fw-feature-box {
    display: flex;
    gap: 15px;
    padding: 15px;
    border-radius: 15px;
    border: 1px solid var(--bordercolor);
    background: #fff;
    box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.04);
    height: 100%;
    align-items: center;
}

.fw-hero-section .fw-feature-box .fw-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(25, 131, 138, 0.12);
    color: var(--greencolor);
    font-size: 20px;
}

.fw-hero-section .fw-feature-box .el-content {
    width: calc(100% - 60px);
}

.fw-hero-section .fw-feature-box .fw-feature-sub {
    font-size: 13px;
    margin: 0;
}

.fw-hero-section .fw-illustration {
    border-radius: 15px;
    box-shadow: 0 15px 35px rgba(0, 70, 70, 0.1);
}

.financial-insecurity .owl-carousel .item {
    text-align: center;
}

.financial-insecurity .stat-card {
    padding: 30px;
    border-radius: 15px;
    border: 1px solid var(--bordercolor);
    background: #fff;
    box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.04);
}

.financial-insecurity .stat-card .stat-circle-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
}

.financial-insecurity .stat-card p {
    margin-bottom: 0px;
}

.financial-insecurity .stat-card .stat-circle {
    --value: 60;
    --bar-color: var(--greencolor);
    width: 100px;
    height: 100px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background:
        radial-gradient(closest-side, #ffffff 78%, transparent 79%),
        conic-gradient(
            var(--bar-color) calc(var(--value) * 1%),
            rgba(0, 0, 0, 0.08) 0
        );
    transition: background 0.8s ease;
    box-shadow: inset 0 -6px 16px rgba(0, 0, 0, 0.07);
}

.financial-insecurity .stat-card .stat-circle .value {
    font-size: 22px;
    font-weight: 700;
    color: var(--bar-color);
}

.employee-wellness-section .ew-image-card img {
    border-radius: 15px;
    box-shadow: 0 15px 35px rgba(0, 70, 70, 0.1);
    height: 350px;
    object-fit: cover;
    width: 100%;
}

.manage-section .img-boox {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: hidden;
    text-align: center;
    padding-bottom: 15px;
    box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.04);
    transition: all 0.35s ease;
    border: 1px solid var(--bordercolor);
}

.manage-section .img-boox img {
    width: 100%;
    /* height: 350px; */
    object-fit: cover;
    border-bottom: 1px solid rgba(25, 131, 138, 0.15);
    transition: transform 0.4s ease;
}

.manage-section .img-boox h3 {
    font-size: 18px;
    font-weight: 700;
    margin-top: 15px;
    padding: 0 10px;
    color: var(--greencolor);
    transition: color 0.3s ease;
    margin-bottom: 0px;
}

.manage-section .img-boox:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 32px rgba(25, 131, 138, 0.15);
}

.manage-section .img-boox:hover img {
    transform: scale(1.05);
}

.manage-section .img-boox:hover h3 {
    color: var(--blackcolor);
}

.owl-theme .owl-nav [class*="owl-"]:hover {
    color: var(--greencolor);
}

.pkg-categories-section .pkg-card {
    /* background: var(--backgroundcolor); */
    border-radius: 15px;
    border: 1px solid var(--bordercolor);
    box-shadow: 0 12px 26px rgba(8, 22, 25, 0.04);
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease;
    display: flex;
    flex-direction: column;
    height: calc(100% - 25px);
    margin-bottom: 25px;
    overflow: hidden;
}

.pkg-categories-section .pkg-card::after {
    content: "";
    display: block;
    height: 3px;
    background: var(--greencolor);
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    margin-top: auto;
}

.pkg-categories-section .pkg-body {
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.pkg-categories-section .pkg-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--whitecolor);
    margin-bottom: 0px;
    text-align: center;
    background-color: var(--greencolor);
    padding: 14px 0px;
}

.pkg-categories-section .pkg-text {
    font-size: 14px;
    line-height: 1.6;
    text-align: center;
    margin: 0 auto;
}

.pkg-categories-section .pkg-text {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: all 0.3s ease;
}

.pkg-categories-section .pkg-text.expanded {
    -webkit-line-clamp: unset;
    overflow: visible;
}

.pkg-categories-section .read-toggle {
    cursor: pointer;
    color: var(--greencolor);
    font-weight: 600;
    font-size: 13px;
    text-align: center;
}

.pkg-categories-section .pkg-link {
    color: var(--greencolor);
    font-weight: 700;
    text-decoration: none;
    display: inline-block;
    font-size: 17px;
    text-align: center;
}

.pkg-categories-section .pkg-card:hover .pkg-link {
    color: var(--blackcolor);
}

.pkg-categories-section .pkg-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 28px 60px rgba(8, 22, 25, 0.08);
}

.pkg-categories-section .pkg-card:focus-within {
    outline: 3px solid rgba(25, 131, 138, 0.07);
}

.booking-member-section .lab-cart-card {
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    border-radius: 15px;
    margin-bottom: 18px;
}

.booking-member-section .test-header {
    padding: 14px 18px;
    background: #dff6f3;
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    color: var(--blackcolor);
}

.booking-member-section .lab-cart-body {
    padding: 20px;
}

.booking-member-section .test-item-box {
    background: var(--backgroundcolor);
    border-radius: 15px;
    padding: 15px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    position: relative;
    margin-bottom: 20px;
}

.booking-member-section .test-name {
    font-weight: 700;
    color: var(--blackcolor);
}

.booking-member-section .test-provider {
    font-size: 13px;
    color: #6c757d;
}

.booking-member-section .test-price {
    color: var(--greencolor);
    font-weight: 700;
}

.booking-member-section .btn-remove {
    position: absolute;
    top: -5px;
    right: -5px;
    background: #ff4d4f;
    color: white;
    border: none;
    width: 20px;
    height: 20px;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}

.booking-member-section .totals .line {
    display: flex;
    justify-content: space-between;
    padding: 6px 0;
}

.booking-member-section .totals .total {
    border-top: 1px dashed rgba(0, 0, 0, 0.2);
    margin-top: 6px;
    padding-top: 10px;
}

.login .resend-otp-btn {
    background: none;
    border: none;
    color: var(--greencolor);
    /* Theme color */
    font-size: 14px;
    cursor: pointer;
    padding: 0;
    margin-top: 10px;
    transition: 0.3s ease;
    font-weight: 500;
}

.login .resend-otp-btn:hover {
    color: #066a6e;
    text-decoration: underline;
}

.login .resend-otp-btn:disabled {
    color: #a9a9a9;
    cursor: not-allowed;
    text-decoration: none;
}

.sm-eap-section {
    background: #ffffff;
    position: relative;
}

.sm-eap-section .sm-eap-intro {
    font-size: 15px;
    margin-bottom: 15px;
    line-height: 1.6;
}

.sm-eap-section .sm-eap-features li {
    font-size: 15px;
    margin-bottom: 10px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.sm-eap-section .sm-eap-features i {
    color: var(--greencolor);
    min-width: 22px;
    font-size: 16px;
}

.sm-eap-section .sm-eap-media {
    position: relative;
    display: flex;
    align-items: center;
    gap: 15px;
}

.sm-eap-section .sm-eap-image {
    width: 100%;
    border-radius: 12px;
    box-shadow: 0 20px 50px rgba(8, 22, 25, 0.06);
    object-fit: cover;
    display: block;
}

.sm-eap-section .sm-eap-stats {
    position: absolute;
    bottom: -12px;
    right: 18px;
    display: flex;
    gap: 12px;
    z-index: 3;
}

.sm-eap-section .sm-eap-stats .stat {
    background: var(--whitecolor);
    padding: 10px 14px;
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(8, 22, 25, 0.06);
    text-align: center;
    min-width: 110px;
}

.sm-eap-section .sm-eap-stats .val {
    font-size: 20px;
    color: var(--blackcolor);
    font-weight: 800;
}

.sm-eap-section .sm-eap-stats .val .pct {
    font-size: 12px;
    color: var(--greencolor);
    margin-left: 4px;
    font-weight: 700;
}

.sm-eap-section .sm-eap-stats .label {
    font-size: 12px;
    margin-top: 6px;
}

.employee-process-section {
    background: #ffffff;
}

.employee-process-section .process-timeline {
    position: relative;
    margin-bottom: 30px;
    padding: 24px 12px 0;
}

.employee-process-section .process-timeline .timeline-line {
    position: absolute;
    left: 6%;
    right: 6%;
    top: 50px;
    height: 4px;
    border-radius: 4px;
    background: linear-gradient(
        90deg,
        rgba(25, 131, 138, 0.12) 0%,
        rgba(25, 131, 138, 0.28) 50%,
        rgba(25, 131, 138, 0.12) 100%
    );
    z-index: 1;
    box-shadow: 0 6px 18px rgba(3, 34, 34, 0.04);
}

.employee-process-section .process-timeline .timeline-dots {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    gap: 15px;
}

.employee-process-section .process-step {
    text-align: center;
    width: 100%;
    user-select: none;
}

.employee-process-section .process-step .dot {
    width: 62px;
    height: 62px;
    margin: 0 auto 10px;
    border-radius: 50%;
    background: var(--whitecolor);
    border: 2px solid rgba(8, 22, 25, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 28px rgba(8, 22, 25, 0.06);
    transition: all 0.22s ease;
}

.employee-process-section .process-step .dot i {
    font-size: 22px;
    color: var(--greencolor);
}

.employee-process-section .process-step .label {
    font-size: 14px;
    font-weight: 700;
}

/* active state */
.employee-process-section .process-step.active .dot {
    background: var(--greencolor);
    border-color: var(--greencolor);
}

.employee-process-section .process-step.active .dot i {
    color: var(--whitecolor);
}

.employee-process-section .process-step .sub {
    display: block;
    font-size: 12px;
    margin-top: 6px;
}

.employee-process-section .process-cards {
    margin-top: 30px;
}

.employee-process-section .process-card {
    display: flex;
    gap: 15px;
    align-items: center;
    background: var(--whitecolor);
    border-radius: 12px;
    border: 1px solid rgba(8, 22, 25, 0.06);
    padding: 14px;
    box-shadow: 0 14px 38px rgba(8, 22, 25, 0.04);
    min-height: 120px;
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease;
    height: calc(100% - 20px);
    margin-bottom: 20px;
}

.employee-process-section .process-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 60px rgba(8, 22, 25, 0.08);
}

.employee-process-section .process-card .icon-wrap {
    width: 70px;
    height: 70px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(
        180deg,
        rgba(25, 131, 138, 0.08),
        rgba(25, 131, 138, 0.02)
    );
    border: 1px solid rgba(25, 131, 138, 0.08);
    color: var(--greencolor);
    font-size: 28px;
}

.employee-process-section .process-card .elemet-wrap {
    width: calc(100% - 85px);
}

.employee-process-section .process-card h5 {
    margin: 0 0 6px;
    font-size: 18px;
    color: var(--blackcolor);
    font-weight: 700;
}

.employee-process-section .process-card p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
}

.eap-benefits .section-sub {
    max-width: 920px;
    margin: 0 auto 40px;
    text-align: center;
    font-size: 15px;
}

.eap-benefits .benefit-card {
    display: flex;
    gap: 15px;
    background: var(--whitecolor);
    border-radius: 15px;
    border: 1px solid rgba(8, 22, 25, 0.06);
    box-shadow: 0 14px 38px rgba(8, 22, 25, 0.04);
    padding: 0;
    overflow: hidden;
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease;
    min-height: 140px;
}

/* Cards grid */
.eap-benefits .benefit-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 60px rgba(8, 22, 25, 0.08);
}

/* image column */
.eap-benefits .benefit-img {
    width: 40%;
    min-width: 160px;
    min-height: 200px;
    display: block;
    object-fit: cover;
    object-position: center;
    height: 100%;
}

.eap-benefits .benefit-body {
    padding: 22px 26px;
    width: 60%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.eap-benefits .benefit-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
}

.eap-benefits .benefit-text {
    line-height: 1.6;
    margin: 0;
    font-size: 14.5px;
}

.eap-benefits .benefit-card.reverse {
    flex-direction: row-reverse;
}

.eap-benefits .benefit-card.reverse .benefit-img {
    width: 40%;
}

.gallery-category-section {
    background: linear-gradient(
        180deg,
        #ffffff 0%,
        #e7f6f7 40%,
        #19838a15 100%
    );
}

.gallery-category-section .gallery-subtitle {
    font-size: 15.5px;
    max-width: 680px;
    margin: 0 auto;
}

.gallery-category-section .gallery-card {
    text-align: center;
    background: rgba(255, 255, 255, 0.65);
    padding: 20px;
    border-radius: 15px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(25, 131, 138, 0.15);
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.06);
    transition: 0.28s ease;
}

.gallery-category-section .gallery-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.12);
    background: rgba(255, 255, 255, 0.85);
    border: 3px solid var(--greencolor);
}

.gallery-category-section .gallery-image-box {
    width: 180px;
    height: 180px;
    margin: 0 auto 15px;
    border-radius: 50%;
    overflow: hidden;
    border: 5px solid #d8efef;
    box-shadow: 0 8px 18px rgba(25, 131, 138, 0.15);
}

.gallery-category-section .gallery-image-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gallery-category-section .gallery-card-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--blackcolor);
}

.gallery-category-section .gallery-card-text {
    font-size: 14.5px;
    margin: 10px 0 15px;
}

.sm-gallery-section {
    background: linear-gradient(
        180deg,
        #ffffff 0%,
        #e7f6f7 40%,
        #19838a15 100%
    );
}

.sm-gallery-section .section-sub {
    font-size: 15.5px;
    max-width: 680px;
    margin: 0 auto;
}

.sm-gallery-section .gm-thumb {
    display: block;
    border-radius: 15px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 6px 18px rgba(8, 22, 25, 0.06);
    border: 1px solid rgba(8, 22, 25, 0.04);
    cursor: zoom-in;
    transition:
        transform 0.28s,
        box-shadow 0.28s;
}

.sm-gallery-section .gm-thumb img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.sm-gallery-section .gm-thumb:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 48px rgba(8, 22, 25, 0.12);
}

.sm-gallery-section .gm-thumb:hover img {
    transform: scale(1.06);
}

.mfp-title {
    display: inline-block;
    color: #19838a;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(15, 106, 103, 0.12);
    margin-right: 10px;
}

.mfp-counter {
    color: #fff;
    background: rgba(0, 0, 0, 0.35);
    padding: 6px 10px;
    border-radius: 15px;
    font-weight: 700;
}

.mfp-img {
    border-radius: 15px;
    box-shadow: 0 30px 80px rgba(8, 22, 25, 0.12);
}

.video-gallery-section {
    background: linear-gradient(
        180deg,
        #ffffff 0%,
        #e7f6f7 40%,
        #19838a15 100%
    );
}

.video-gallery-section .vg-item {
    background: transparent;
    border-radius: 15px;
    overflow: visible;
}

.video-gallery-section .vg-thumb {
    position: relative;
    border-radius: 15px;
    overflow: hidden;
    height: 210px;
    background: #f7f9f9;
    box-shadow: 0 8px 24px rgba(8, 22, 25, 0.06);
}

.video-gallery-section .vg-thumb video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform-origin: center;
    transition: transform 0.45s ease;
}

.video-gallery-section .vg-thumb:hover video {
    transform: scale(1.04);
}

.video-gallery-section .vg-play-circle {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: rgba(0, 0, 0, 0.45);
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 22px;
    z-index: 3;
    transition:
        background 0.2s ease,
        transform 0.18s ease;
}

.video-gallery-section .vg-thumb:hover .vg-play-circle {
    background: rgba(0, 0, 0, 0.6);
    transform: translate(-50%, -50%) scale(1.06);
}

.video-gallery-section .vg-meta {
    padding: 12px 8px 0;
    text-align: left;
}

.video-gallery-section .vg-title-sm {
    margin: 6px 0 6px;
    font-size: 1.02rem;
    font-weight: 700;
    color: #163840;
}

.video-gallery-section .vg-meta-bottom small {
    color: #7b8a89;
}

.video-gallery-section .vg-item .vg-thumb,
.video-gallery-section .vg-item .vg-meta {
    border-radius: 15px;
}

.mfp-content .mfp-figure,
.mfp-content .mfp-iframe-holder {
    max-width: 1000px;
    width: 100%;
}

.mfp-bg {
    background: rgba(6, 10, 10, 0.6);
}

.vg-thumb:focus {
    outline: 3px solid rgba(25, 131, 138, 0.12);
    outline-offset: 3px;
}

.vg-item {
    margin-bottom: 18px;
}

.sample-report .report-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 15px;
    border: 1px solid var(--bordercolor);
    transition: all 0.3s ease;
    overflow: hidden;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.sample-report .report-card:hover {
    transform: translateY(-8px);
    box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.15);
}

.sample-report .report-image {
    width: 100%;
    border-radius: 15px;
    height: 350px;
    object-fit: contain;
    transition: all 0.3s ease;
}

.sample-report .report-card:hover .report-image {
    transform: scale(1.03);
}

.sample-report .report-title {
    font-weight: 600;
    font-size: 15px;
    margin-top: 10px;
    color: var(--blackcolor);
}

.covid-hero-section {
    background: #fff;
    color: #163840;
}

.covid-hero-section .hero-benefits li {
    margin-top: 10px;
    font-size: 15px;
    display: flex;
    align-items: flex-start;
}

.covid-hero-section .hero-benefits .dot {
    width: 8px;
    height: 8px;
    background: var(--greencolor);
    border-radius: 50%;
    display: inline-block;
    margin-right: 12px;
    margin-top: 8px;
}

.covid-hero-section .hero-image {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 12px;
    display: block;
}

.covid-hero-section .hero-media {
    position: relative;
}

.covid-hero-section .floating-card {
    position: absolute;
    right: -4%;
    bottom: -10%;
    width: 220px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.95), #fff);
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(8, 22, 25, 0.08);
    padding: 12px;
    border: 1px solid rgba(8, 22, 25, 0.04);
    display: flex;
    justify-content: space-between;
    gap: 8px;
    align-items: center;
    transform: translateZ(0);
}

.covid-hero-section .floating-card .fc-left {
    font-size: 13px;
}

.covid-hero-section .floating-card .fc-left .small {
    color: #6b7b7b;
}

.covid-hero-section .floating-card .fc-phone {
    display: inline-block;
    background: #e9f7f6;
    color: var(--greencolor);
    padding: 8px 10px;
    border-radius: 8px;
    font-weight: 700;
    text-decoration: none;
    font-size: 13px;
}

.covid-booking-cta {
    background: var(--whitecolor);
}

.covid-booking-cta .cta-title {
    font-size: 26px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 6px;
}

.covid-booking-cta .cta-sub {
    font-size: 15px;
    color: #5a6b6b;
}

.covid-booking-cta .muted {
    color: #6e7f7f;
    font-weight: 500;
}

.covid-booking-cta .feature-card {
    background: #fff;
    border-radius: 12px;
    padding: 22px 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease;
    border: 1px solid rgba(8, 22, 25, 0.04);
    box-shadow: 0 6px 18px rgba(8, 22, 25, 0.04);
    min-height: 140px;
}

.covid-booking-cta .feature-card:hover,
.covid-booking-cta .feature-card:focus-within {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(8, 22, 25, 0.08);
}

.covid-booking-cta .feature-icon {
    width: 84px;
    height: 84px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(
        180deg,
        rgba(25, 131, 138, 0.1),
        rgba(25, 131, 138, 0.03)
    );
    border: 1px solid rgba(25, 131, 138, 0.12);
    color: #19838a;
    font-size: 32px;
    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.covid-booking-cta .feature-card:hover .feature-icon {
    transform: scale(1.06);
}

.covid-booking-cta.feature-title {
    font-size: 14px;
    font-weight: 700;
    color: #163840;
    margin: 0;
    text-align: center;
    line-height: 1.3;
    padding: 0 6px;
}

.covid-booking-cta .feature-icon img {
    max-width: 56px;
    max-height: 56px;
    display: block;
}

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

.symptoms-test img {
    width: 100%;
    box-shadow: 0 15px 35px rgba(0, 70, 70, 0.1);
    margin-bottom: 20px;
}

.other-locations ul li img {
    width: 100px;
    height: 80px;
    object-fit: contain;
    margin-bottom: 15px;
    transition: 0.2s linear;
}

.other-locations a:hover {
    border-color: var(--greencolor);
    box-shadow: 0 12px 32px rgba(25, 131, 138, 0.12);
}

.other-locations a:hover img {
    transform: scale(1.09);
}

.other-locations a {
    text-align: center;
    border: 1px solid var(--bordercolor);
    display: block;
    padding: 10px;
    border-radius: 15px;
    min-width: 200px;
    transition: 0.2s linear;
}

.other-locations ul li p,
.what-is-covid .doctor-con p {
    margin: 0;
    font-weight: 700;
}

.other-locations ul {
    margin: 30px 0 0;
    list-style: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.locations-section .section-sub {
    margin-bottom: 30px;
}

.locations-section .city-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-items: center;
    align-items: start;
    row-gap: 18px;
}

@media (min-width: 576px) {
    .locations-section .city-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 768px) {
    .locations-section .city-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (min-width: 992px) {
    .locations-section .city-grid {
        grid-template-columns: repeat(6, 1fr);
    }
}

.locations-section .city-chip {
    display: inline-block;
    width: 100%;
    max-width: 220px;
    text-align: center;
    padding: 10px 14px;
    border-radius: 5px;
    background: linear-gradient(
        180deg,
        rgba(25, 131, 138, 0.03),
        rgba(25, 131, 138, 0.01)
    );
    color: var(--blackcolor);
    font-weight: 600;
    text-decoration: none;
    border: 1px solid var(--bordercolor);
    box-shadow: 0 8px 18px rgba(8, 22, 25, 0.03);
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease,
        border-color 0.18s ease;
    letter-spacing: 0.2px;
}

.locations-section .city-grid .city-chip {
    justify-self: center;
}

.locations-section .city-chip:hover,
.locations-section .city-chip:focus {
    transform: translateY(-6px);
    border-color: rgba(25, 131, 138, 0.18);
    box-shadow: 0 20px 40px rgba(25, 131, 138, 0.07);
    outline: none;
    color: #0e3736;
}

.brochure-section .brochure-box {
    background: #ffffff;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(8, 22, 25, 0.06);
    box-shadow: 0 18px 40px rgba(8, 22, 25, 0.04);
    display: flex;
    flex-direction: column;
    height: 100%;
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease;
}

.brochure-section .brochure-box:hover,
.brochure-section .brochure-box:focus-within {
    transform: translateY(-8px);
    box-shadow: 0 36px 70px rgba(25, 131, 138, 0.08);
}

.brochure-section .brochure-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 200px;
    max-height: 260px;
    overflow: hidden;
}

.brochure-section .brochure-thumb img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(8, 22, 25, 0.04);
    background: #fff;
}

.brochure-section .brochure-meta {
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: auto;
}

.brochure-section .brochure-name {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 5px;
    color: var(--blackcolor);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.brochure-section .brochure-thumb-link:focus {
    box-shadow: 0 0 0 5px rgba(25, 131, 138, 0.08);
    outline: none;
}

.health-box {
    background: #ffffff;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 6px 25px rgba(0, 0, 0, 0.08);
    transition: 0.3s;
}

.health-box:hover {
    transform: translateY(-4px);
}

.health-box h3 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 20px;
    color: #2b2b2b;
    text-align: center;
}

.health-box .form-group {
    margin-bottom: 15px;
}

.health-img {
    border-radius: 18px;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

@media (max-width: 768px) {
    .health-box {
        margin-bottom: 25px;
    }
}

.healthaitools .health-plan-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 6px 18px rgba(23, 36, 46, 0.08);
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease;
    border: 1px solid rgba(27, 31, 35, 0.06);
}

.healthaitools .health-plan-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(23, 36, 46, 0.12);
}

.healthaitools .hp-image-wrap {
    position: relative;
    margin: 0;
    width: 100%;
    height: 180px;
    overflow: hidden;
    display: block;
    background: linear-gradient(180deg, #f6f7f8 0%, #fff 100%);
}

.healthaitools .hp-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

.healthaitools .health-plan-card:hover .hp-image-wrap img {
    transform: scale(1.04);
}

.healthaitools .hp-badge {
    position: absolute;
    left: 14px;
    bottom: 12px;
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    padding: 6px 10px;
    border-radius: 18px;
    font-size: 13px;
    line-height: 1;
    backdrop-filter: blur(4px);
}

.healthaitools .card-body-modern {
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1 1 auto;
}

.healthaitools .hp-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.healthaitools .hp-title {
    font-size: 18px;
    margin: 0;
    color: var(--blackcolor);
    line-height: 1.2;
    font-weight: 600;
}

.healthaitools .hp-meta {
    text-align: right;
    min-width: 84px;
}

.healthaitools .hp-price {
    font-size: 15px;
    font-weight: 500;
}

.healthaitools .hp-features ul {
    margin: 0;
    padding-left: 18px;
    color: var(--blackcolor);
    font-size: 15px;
    line-height: 1.5;
}

.healthaitools .hp-features li {
    margin-bottom: 6px;
}

.healthaitools .hp-actions {
    margin-top: auto;
    /* push to bottom so CTA aligns */
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.healthaitools .linkbtn.web-clr {
    color: #0b6b66;
    text-decoration: underline;
    font-weight: 600;
    font-size: 15px;
}

.healthaitools .btn-modern {
    border-radius: 6px;
    padding: 12px 16px;
    font-weight: 600;
    box-shadow: none;
}

.healthaitools .btn-primary-modern {
    background: #0f7b76;
    color: #fff;
    border: none;
}

.healthaitools .btn-outline-modern {
    border: 1px solid rgba(15, 123, 118, 0.14);
    background: transparent;
    color: #0f7b76;
}

.plan-model .hp-modal-dialog {
    max-width: 760px;
    margin: 1.5rem auto;
}

.plan-model .hp-modal-content {
    border-radius: 10px;
    overflow: hidden;
    border: 0;
    box-shadow: 0 16px 40px rgba(20, 40, 50, 0.12);
    font-family:
        -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
        Arial;
}

.plan-model .hp-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px;
    background: linear-gradient(180deg, #ffffff, #fbfcfd);
    border-bottom: 1px solid rgba(18, 25, 30, 0.06);
}

.plan-model .hp-modal-title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #112b3c;
    line-height: 1.2;
    letter-spacing: -0.2px;
}

.plan-model .hp-modal-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: transparent;
    border: none;
    font-size: 20px;
    line-height: 1;
    color: rgba(17, 43, 60, 0.85);
    cursor: pointer;
}

.plan-model .hp-modal-close:hover {
    background: rgba(17, 43, 60, 0.06);
}

.plan-model.hp-modal-body {
    padding: 18px 20px 12px;
    background: #fff;
}

.plan-model .hp-features-scroll {
    max-height: 52vh;
    overflow: auto;
    padding-right: 6px;
}

/* Tidy list styles */
.plan-model .hp-features-list {
    margin: 0;
    padding-left: 18px;
    color: #25383f;
    font-size: 0.98rem;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
}

.plan-model .hp-features-item {
    margin-bottom: 10px;
    position: relative;
}

.plan-model .hp-features-item::marker {
    color: #0f7b76;
}

/* Footer */
.plan-model .hp-modal-footer {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 20px 18px;
    background: linear-gradient(180deg, #ffffff, #fbfcfd);
    border-top: 1px solid rgba(18, 25, 30, 0.06);
}

.plan-model .hp-btn-close {
    background: transparent;
    border: 1px solid rgba(15, 123, 118, 0.12);
    color: #0f7b76;
    padding: 8px 14px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
}

.plan-model .hp-btn-close:hover {
    background: rgba(15, 123, 118, 0.06);
}

/* Link wrapper */
.new-career-page .career-link {
    text-decoration: none;
    color: inherit;
    display: block;
    height: 100%;
}

/* Card */
.new-career-page .career-card {
    background: var(--whitecolor);
    border: 1px solid #ddd;
    border-radius: 15px;
    box-shadow: 0 8px 24px rgba(23, 34, 56, 0.04);
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
    display: flex;
    align-items: stretch;
    height: calc(100% - 25px);
    margin-bottom: 25px;
    position: relative;
}

/* Hover */
.new-career-page .career-link:hover .career-card,
.new-career-page .career-link:focus .career-card {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(23, 34, 56, 0.1);
    border-color: rgba(25, 131, 138, 0.25);
}

/* Body */
.new-career-page .career-card-body {
    flex: 1;
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: calc(100% - 90px);
}

/* Right side */
.new-career-page .career-card-side {
    width: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px dashed #e6edf2;
    background: #fafcfd;
}

/* Header */
.new-career-page .career-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

/* Title */
.new-career-page .career-title {
    font-size: 18px;
    line-height: 1.35;
    margin: 0;
    color: #0f172a;
    font-weight: 700;
}

/* Meta */
.new-career-page .career-meta {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.new-career-page .meta-item {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--greencolor);
    font-weight: 600;
}

.new-career-page .meta-icon {
    width: 20px;
    height: 20px;
    /* opacity: 0.7; */
}

.new-career-page .career-desc {
    border-bottom: 2px dashed #ddd;
    padding: 10px 0px;
}

/* Description & Skills */
.new-career-page .career-desc,
.new-career-page .career-skills {
    display: flex;
    align-items: flex-start;
    gap: 6px;
}

.new-career-page .career-desc p,
.new-career-page .career-skills p {
    font-size: 13.5px;
    line-height: 1.55;
    color: #334155;
    margin: 0;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* CTA */
.new-career-page .apply-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 18px;
    border-radius: 999px;
    background: var(--greencolor);
    color: #fff;
    border-color: var(--greencolor);
    font-weight: 700;
    border: 2px dashed rgba(25, 131, 138, 0.4);
    font-size: 13px;
    transition: all 0.25s ease;
}

/* Ribbon */
.new-career-page .ribbon-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 5px 14px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    z-index: 10;
    border-radius: 999px;
    letter-spacing: 0.02em;
}

.new-career-page .ribbon-badge.recent {
    background: var(--blackcolor);
}

.new-career-page .ribbon-badge.past {
    background: gray;
}

.single-career-page .job-pill {
    font-weight: 700;
    font-size: 0.78rem;
    padding: 6px 12px;
    border-radius: 20px;
    display: inline-block;
    border: 1px solid transparent;
    vertical-align: middle;
}

.single-career-page .career-detail-box {
    background: var(--whitecolor);
    border: 1px solid var(--bordercolor);
    border-radius: 15px;
    box-shadow: 0 6px 18px rgba(23, 34, 56, 0.04);
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease;
    align-items: stretch;
    padding: 15px;
}

.single-career-page .job-pill.recent {
    background: rgba(25, 131, 138, 0.12);
    color: #19838a;
    border-color: rgba(25, 131, 138, 0.22);
}

.single-career-page .job-pill.past {
    background: #f3f4f6;
    color: #6b7280;
    border-color: #e5e7eb;
}

.single-career-page .basic-info-list {
    list-style: none;
    padding: 0;
    margin: 0 0 10px 0;
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}

.single-career-page .basic-info-list li {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #374151;
    font-size: 0.95rem;
}

.single-career-page .job-content h2,
.single-career-page .job-content h3,
.single-career-page .job-content h4,
.single-career-page .job-content h5,
.single-career-page .job-content h6 {
    margin-bottom: 20px;
    font-weight: 600;
    font-size: 16px;
}

.single-career-page .job-content p {
    font-size: 14px;
    margin-bottom: 20px;
}

.single-career-page .job-content ul {
    font-size: 14px;
    margin-bottom: 20px;
}

.faq-section .faq-sidebar {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 15px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.03);
    border: 1px solid var(--bordercolor);
}

.faq-section .faq-sidebar .nav-link {
    padding: 12px 18px;
    border-radius: 15px;
    margin-bottom: 10px;
    font-weight: 600;
    color: var(--blackcolor);
    background: #eee;
    border: 1px solid transparent;
    transition: all 0.3s ease;
}

.faq-section .faq-sidebar .nav-link:hover {
    background: #e8f3f8;
}

.faq-section .faq-sidebar .nav-link.active {
    background: var(--greencolor);
    color: #fff;
    border-color: var(--greencolor);
}

.surgery-intro .surgery-media {
    position: relative;
    min-height: 360px;
}

.surgery-intro .surgery-media img {
    width: 100%;
    height: 100%;
    border-radius: 15px;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

.surgery-intro .surgery-media:hover img {
    transform: scale(1.03);
}

.surgery-intro .about-intro {
    font-size: 15.5px;
    margin: 0 0 20px 0;
}

.surgery-intro .surgery-features {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.surgery-intro .surgery-feature {
    display: flex;
    gap: 10px;
    align-items: center;
    background: #f6fbfb;
    padding: 10px 14px;
    border-radius: 15px;
    font-weight: 600;
    color: var(--blackcolor);
    font-size: 14px;
}

.surgery-intro .surgery-feature h3 {
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 0px;
}

.surgery-intro .surgery-feature .fa-fw {
    font-size: 16px;
    width: 18px;
    text-align: center;
}

.surgery-intro .cta-row {
    display: flex;
    gap: 10px;
    margin-top: 8px;
    flex-wrap: wrap;
}

.surgery-intro .surgery-trust {
    display: flex;
    gap: 20px;
    margin-top: 12px;
    align-items: center;
    color: var(--blackcolor);
}

.surgery-intro .feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 10px;
    background: rgba(25, 131, 138, 0.06);
    color: var(--greencolor);
    font-size: 20px;
}

.surgical-solutions .solutions-card {
    background: linear-gradient(180deg, #ffffff 0%, #fbffff 100%);
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0 18px 40px rgba(9, 60, 69, 0.06);
}

.surgical-solutions .solutions-left {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
}

.surgical-solutions .solutions-left .emergency-line {
    font-size: 32px;
    font-weight: 800;
    color: var(--greencolor);
}

.surgical-solutions .solutions-left .small-note {
    font-weight: 600;
}

.surgical-solutions .solutions-left .ambulance {
    font-size: 32px;
    font-weight: 700;
    color: var(--greencolor);
    line-height: normal;
}

.surgical-solutions .solutions-left .subtext {
    font-size: 15px;
}

.surgical-solutions .solutions-carousel {
    flex: 1;
}

.surgical-solutions .carousel-slide .row {
    margin: 0 -10px;
}

.surgical-solutions .solution-box {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 20px 15px;
    text-align: center;
    min-height: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
    box-shadow: 0 8px 20px rgba(9, 60, 69, 0.04);
    border: 1px solid var(--bordercolor);
    text-decoration: none;
    color: inherit;
}

.surgical-solutions .solution-box:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(9, 60, 69, 0.08);
}

.surgical-solutions .solution-icon {
    width: 72px;
    height: 72px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(
        180deg,
        rgba(25, 131, 138, 0.08),
        rgba(25, 131, 138, 0.03)
    );
    color: var(--greencolor);
    margin-bottom: 5px;
}

.surgical-solutions .solution-icon img {
    width: 50px !important;
}

.surgical-solutions .solution-title {
    margin: 0;
    font-weight: 700;
    color: var(--blackcolor);
    font-size: 16px;
}

.surgical-solutions .solution-desc {
    font-size: 13px;
}

.surgery-benefits {
    background: var(--whitecolor);
}

.surgery-benefits .section-subtext {
    font-size: 16px;
    margin-bottom: 40px;
}

.surgery-benefits .benefit-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.surgery-benefits .benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.surgery-benefits .benefit-icon {
    width: 56px;
    height: 56px;
    min-width: 56px;
    border-radius: 50%;
    background: rgba(25, 131, 138, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--greencolor);
    font-size: 22px;
}

.surgery-benefits .benefit-text h5 {
    margin: 0 0 6px;
    font-size: 17px;
    font-weight: 700;
}

.surgery-benefits .benefit-text p {
    margin: 0;
    font-size: 14.5px;
    line-height: 1.6;
}

.surgery-benefits .benefit-image-wrapper {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(9, 60, 69, 0.08);
}

.surgery-benefits .benefit-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.surgery-benefits .benefit-grid {
    margin-top: 60px;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(9, 60, 69, 0.06);
}

.surgery-benefits .benefit-grid .row {
    margin: 0;
}

.surgery-benefits .grid-item {
    padding: 28px 26px;
    border-right: 1px solid rgba(9, 60, 69, 0.06);
    border-bottom: 1px solid rgba(9, 60, 69, 0.06);
}

.surgery-benefits .grid-item:last-child,
.surgery-benefits .grid-item:nth-child(3n) {
    border-right: none;
}

.surgery-benefits .grid-item h6 {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--blackcolor);
}

.surgery-benefits .grid-item p {
    font-size: 14px;
    margin: 0;
    line-height: 1.6;
}

.surgery-benefits .grid-icon {
    font-size: 20px;
    color: var(--greencolor);
    margin-bottom: 10px;
}

.get-quote-intro {
}

.get-quote-intro .get-quote-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 40px;
    box-shadow: 0 20px 50px rgba(9, 60, 69, 0.08);
    position: relative;
    overflow: hidden;
}

.get-quote-intro .get-quote-card::after {
    content: "";
    position: absolute;
    right: -120px;
    top: -120px;
    width: 320px;
    height: 320px;
    background: rgba(25, 131, 138, 0.08);
    border-radius: 50%;
    filter: blur(20px);
}

.get-quote-intro .get-quote-subtitle {
    font-size: 16px;
    max-width: 680px;
    margin-bottom: 25px;
}

.get-quote-intro .quote-highlights {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

.get-quote-intro .quote-highlight {
    display: flex;
    align-items: center;
    gap: 10px;
}

.get-quote-intro .quote-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(25, 131, 138, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--greencolor);
    font-size: 20px;
}

.get-quote-intro .quote-text {
    font-size: 15px;
    font-weight: 600;
}

.virtual-maternity .section-subtitle {
    font-size: 16px;
    max-width: 720px;
    margin: 0 auto 50px;
}

.virtual-maternity .maternity-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 36px 28px;
    height: 100%;
    box-shadow: 0 18px 45px rgba(9, 60, 69, 0.08);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
    text-align: center;
    border: 2px dashed var(--bordercolor);
}

.virtual-maternity .maternity-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 28px 60px rgba(9, 60, 69, 0.12);
    border-color: var(--greencolor);
}

.virtual-maternity .maternity-icon {
    width: 120px;
    height: 120px;
    margin: 0 auto 15px;
    border-radius: 50%;
    background: linear-gradient(
        180deg,
        rgba(25, 131, 138, 0.12),
        rgba(25, 131, 138, 0.04)
    );
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--greencolor);
}

.virtual-maternity .maternity-icon img {
    width: 80px;
}

.virtual-maternity .maternity-card h4 {
    font-size: 20px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 10px;
}

.virtual-maternity .maternity-card p {
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}

.maternity-ai-tools .box {
    background-color: var(--white);
    border: 1px solid var(--bordercolor);
    border-radius: 10px;
    overflow: hidden;
    margin-top: 20px;
    transition: all 0.3s 0s linear;
    position: relative;
}

.maternity-ai-tools .box img {
    width: 100%;
    height: 180px;
    object-fit: cover;
}

.maternity-ai-tools .box .box-body {
    padding: 15px;
}

.maternity-ai-tools .box .box-body h3 {
    font-size: 16px;
    line-height: 22px;
    font-weight: bold;
    margin-bottom: 15px;
    text-transform: capitalize;
}

.maternity-ai-tools .box img.ai-icon {
    width: 50px;
    height: 50px;
    background-color: white;
    position: absolute;
    right: 15px;
    top: 15px;
    padding: 5px;
    border-radius: 5px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
}

.maternity-flow .flow-card {
    background: var(--whitecolor);
    border: 1px solid var(--bordercolor);
    border-radius: 15px;
    padding: 36px 32px;
    height: calc(100% - 40px);
    margin-bottom: 40px;
    position: relative;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.maternity-flow .flow-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 30px 65px rgba(9, 60, 69, 0.12);
}

.maternity-flow .flow-card .flow-step {
    position: absolute;
    top: -18px;
    left: 32px;
    background: linear-gradient(180deg, #19838a, #13777a);
    color: var(--whitecolor);
    font-weight: 800;
    font-size: 14px;
    padding: 8px 16px;
    border-radius: 999px;
    color: var(--whitecolor);
}

.maternity-flow .flow-card .flow-icon {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background: rgba(25, 131, 138, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--greencolor);
    margin-bottom: 15px;
}

.maternity-flow .flow-card .flow-icon img {
    width: 60px;
}

.maternity-flow .flow-card h4 {
    font-size: 20px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 10px;
}

.maternity-flow .flow-card p {
    font-size: 15px;
    line-height: 1.65;
    margin: 0;
}

.mental-therapy .therapy-content {
    padding-right: 30px;
}

.mental-therapy .therapy-text {
    font-size: 15.5px;
    line-height: 1.7;
    margin-bottom: 15px;
}

.mental-therapy .therapy-benefits {
    margin-top: 25px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 24px;
}

.mental-therapy .therapy-benefit {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.mental-therapy .benefit-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%;
    background: rgba(25, 131, 138, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--greencolor);
    font-size: 18px;
}

.mental-therapy .benefit-text {
    font-size: 14.5px;
    line-height: 1.6;
    font-weight: 600;
    color: var(--blackcolor);
}

.mental-therapy .therapy-cta {
    margin-top: 34px;
}

.mental-therapy .therapy-image-wrapper {
    border-radius: 15px;
    overflow: hidden;
}

.mental-therapy .therapy-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.mental-packages .owl-stage {
    display: flex;
    align-items: center;
}

.mental-packages .package-card {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
    box-shadow: 0 16px 40px rgba(9, 60, 69, 0.08);
    transition: all 0.4s ease;
    border: 1px solid rgba(9, 60, 69, 0.05);
    padding-top: 42px;
    height: calc(100% - 20px);
    margin-bottom: 20px;
    position: relative;
}

.mental-packages .package-image {
    position: relative;
}

.mental-packages .package-image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
}

.mental-packages .package-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.05),
        rgba(0, 0, 0, 0.35)
    );
}

.mental-packages .package-body {
    text-align: center;
    flex: 1;
}

.mental-packages .package-title {
    font-size: 18px;
    font-weight: 700;
    padding: 10px;
    color: var(--blackcolor);
    margin-bottom: 10px;
    background-color: var(--backgroundcolor);
}

.mental-packages .package-sessions {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 42px;
    background: linear-gradient(90deg, #eaf6f6, #f5fbfb);
    color: #0b3437;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.4px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid rgba(9, 60, 69, 0.08);
    text-transform: uppercase;
}

.mental-packages .package-sessions::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 20%;
    right: 20%;
    height: 2px;
    background: linear-gradient(90deg, #19838a, #13777a);
    border-radius: 2px;
    opacity: 0.6;
}

.mental-packages .owl-item.active.center .package-sessions {
    background: linear-gradient(90deg, #19838a, #13777a);
    color: var(--whitecolor);
}

.mental-packages .owl-item.active.center .package-sessions::after {
    opacity: 0;
}

.mental-packages .package-price {
    margin-bottom: 18px;
}

.mental-packages .price-value {
    font-size: 26px;
    font-weight: 800;
    color: var(--greencolor);
    line-height: 1;
}

.mental-packages .price-per {
    font-size: 13px;
    color: #6f8d8d;
    margin-top: 5px;
}

.mental-packages .package-features {
    list-style: none;
    padding: 0;
    margin-bottom: 10px;
}

.mental-packages .package-features li {
    font-size: 14px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.mental-packages .package-features i {
    color: var(--greencolor);
    font-size: 13px;
}

.mental-packages .package-footer {
    padding: 15px;
    background: linear-gradient(90deg, #19838a, #13777a);
    text-align: center;
    display: block;
    color: var(--whitecolor);
    font-weight: 700;
    font-size: 18px;
    text-decoration: none;
    letter-spacing: 0.3px;
}

.mental-packages .owl-item .package-card {
    transform: scale(0.92);
    opacity: 0.6;
}

.mental-packages .owl-item.active .package-card {
    opacity: 0.85;
}

.mental-packages .owl-item.active.center .package-card {
    transform: scale(1);
    opacity: 1;
    box-shadow: 0 40px 90px rgba(9, 60, 69, 0.18);
    border: 2px solid #19838a;
}

.mental-packages .package-image {
    position: relative;
}

.mental-packages .package-image::before {
    content: "Recommended";
    position: absolute;
    top: 12px;
    left: 12px;
    background: linear-gradient(90deg, #19838a, #13777a);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    padding: 6px 12px;
    border-radius: 999px;
    letter-spacing: 0.3px;
    box-shadow: 0 6px 16px rgba(25, 131, 138, 0.35);
    opacity: 0;
    transform: scale(0.9);
    transition: all 0.3s ease;
    z-index: 3;
}

.mental-packages .owl-item.active.center .package-image::before {
    opacity: 1;
    transform: scale(1);
}

.why-secondmedic-maternity .why-card {
    text-align: center;
    padding: 30px 15px;
    position: relative;
}

.why-secondmedic-maternity .why-step {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background: #ffffff;
    border: 2px solid #e3f1f1;
    color: #6f8d8d;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.why-secondmedic-maternity .why-circle {
    width: 140px;
    height: 140px;
    margin: 18px auto 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.08);
}

.why-secondmedic-maternity .why-circle img {
    width: 80px;
}

.why-secondmedic-maternity .why-circle.blue {
    background: #2a9ad6;
}

.why-secondmedic-maternity .why-circle.teal {
    background: #2aa7a1;
}

.why-secondmedic-maternity .why-circle.mint {
    background: #43b3a9;
}

.why-secondmedic-maternity .why-circle.green {
    background: #63b27c;
}

.why-secondmedic-maternity h4 {
    font-size: 17px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 10px;
}

.why-secondmedic-maternity p {
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

.why-secondmedic-maternity .why-card:hover .why-circle {
    transform: translateY(-6px);
    transition: transform 0.3s ease;
}

.mental-health-benefits .box {
    text-align: center;
    box-shadow: 0 0 10px 0 rgb(66 138 214 / 29%);
    border-radius: 15px;
    background-color: white;
    position: relative;
    margin-bottom: 20px;
    background-color: var(--whitecolor);
    border: 1px solid var(--bordercolor);
}

.mental-health-benefits .box img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    object-position: center -10px;
    border-radius: 15px 15px 0 0;
}

.mental-health-benefits .box h4 {
    font-size: 20px;
    padding: 20px 0;
    font-weight: 700;
}

.secondmedic-maternity-stats .stat-item {
    background: #ffffff;
    border-radius: 16px;
    padding: 26px 18px;
    text-align: center;
    box-shadow: 0 0 10px 0 rgb(66 138 214 / 29%);
    border: 1px solid var(--bordercolor);
    height: 100%;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.secondmedic-maternity-stats .stat-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 55px rgba(9, 60, 69, 0.12);
}

.secondmedic-maternity-stats .stat-icon {
    width: 52px;
    height: 52px;
    margin: 0 auto 14px;
    border-radius: 50%;
    background: rgba(25, 131, 138, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #19838a;
    font-size: 22px;
}

.secondmedic-maternity-stats .stat-value {
    font-size: 26px;
    font-weight: 800;
    color: #0b3437;
    margin-bottom: 6px;
}

.secondmedic-maternity-stats .stat-label {
    font-size: 14px;
    color: #6a8585;
    font-weight: 600;
}

.therapy-quality-content {
    padding-left: 20px;
}

.therapy-quality .therapy-subheading {
    font-size: 17px;
    font-weight: 700;
    color: var(--greencolor);
    margin-bottom: 15px;
}

.therapy-quality .therapy-text {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 14px;
}

.therapy-quality .therapy-proof {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px 18px;
    margin: 26px 0 30px;
}

.therapy-quality .proof-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14.5px;
    font-weight: 600;
}

.therapy-quality .proof-item i {
    color: var(--greencolor);
    font-size: 15px;
}

.therapy-quality .therapy-quality-image {
    border-radius: 15px;
    overflow: hidden;
    height: 500px;
}

.therapy-quality .therapy-quality-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.mental-doctors .owl-stage {
    display: flex;
    align-items: center;
}

.mental-doctors .doctor-card {
    background: var(--whitecolor);
    border-radius: 20px;
    padding: 20px 25px;
    justify-content: start;
    text-align: center;
    transition: all 0.4s ease;
    border: 1px solid rgba(9, 60, 69, 0.05);
    height: 100%;
    margin: 5px 5px;
    box-shadow: 0 16px 40px rgba(9, 60, 69, 0.08);
}

.mental-doctors .doctor-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 40px 90px rgba(9, 60, 69, 0.18);
}

.mental-doctors .doctor-image {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid rgba(25, 131, 138, 0.15);
}

.mental-doctors .doctor-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mental-doctors .doctor-name {
    font-size: 16px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 6px;
}

.mental-doctors .doctor-qualification {
    font-size: 13px;
    color: var(--greencolor);
    font-weight: 500;
    margin-bottom: 5px;
}

.mental-doctors .doctor-exp {
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 5px;
    background: rgba(9, 60, 69, 0.06);
    padding: 4px 12px;
    border-radius: 999px;
}

.mental-doctors .owl-item.active.center .doctor-card {
    transform: scale(1.05);
    border: 2px solid #19838a;
    box-shadow: 0 45px 100px rgba(9, 60, 69, 0.18);
}

.mental-doctors .doctor-body {
    padding-left: 10px;
}

.mental-pricing .package-sessions {
    background: var(--greencolor) !important;
    color: #fff !important;
}

.genetic-tests .genetic-card {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: hidden;
    height: calc(100% - 20px);
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    border: 1px solid #ddd;
    transition: all 0.35s ease;
}

.genetic-tests .genetic-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 28px 70px rgba(9, 60, 69, 0.12);
}

.genetic-tests .genetic-image {
    position: relative;
}

.genetic-tests .genetic-image img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.genetic-tests .discount-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    background: #eaf7f2;
    color: var(--greencolor);
    font-size: 13px;
    font-weight: 800;
    padding: 6px 16px;
    border-radius: 999px;
}

.genetic-tests .genetic-body {
    padding: 15px;
    flex: 1;
}

.genetic-tests .genetic-category {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    color: var(--greencolor);
    text-transform: uppercase;
    margin-bottom: 5px;
}

.genetic-tests .genetic-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 5px;
}

.genetic-tests .genetic-price {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.genetic-tests .old-price {
    font-size: 14px;
    color: #9aa;
    text-decoration: line-through;
}

.genetic-tests .new-price {
    font-size: 22px;
    font-weight: 800;
    color: var(--greencolor);
}

.genetic-tests .genetic-footer {
    padding: 15px;
    display: flex;
    gap: 12px;
    border-top: 1px solid #ddd;
    background: #fbfefe;
}

.genetic-tests .genetic-footer a {
    flex: 1;
}

.genetic-learn .genetic-learn-content {
    padding-right: 15px;
}

.genetic-learn .genetic-learn-text {
    line-height: 1.7;
    margin-bottom: 15px;
}

.genetic-learn .genetic-feature {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: hidden;
    height: 100%;
    text-align: center;
    border: 1px solid #ddd;
    box-shadow: 0 12px 30px rgba(9, 60, 69, 0.06);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.genetic-learn .genetic-feature:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 55px rgba(9, 60, 69, 0.12);
}

.genetic-learn .genetic-feature img {
    width: 100%;
    height: 130px;
    object-fit: cover;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.genetic-learn .genetic-feature h5 {
    font-size: 14px;
    font-weight: 700;
    color: var(--blackcolor);
    padding: 10px;
    margin: 0;
    min-height: 60px;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.imaging-tests .section-subtitle {
    max-width: 720px;
    margin: 0 auto;
    font-size: 16px;
}

.imaging-tests .imaging-carousel .owl-stage {
    display: flex;
    align-items: center;
    margin: 15px 5px;
}

.imaging-tests .imaging-card {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid #ddd;
    transition: all 0.35s ease;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.imaging-tests .imaging-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 30px 70px rgba(9, 60, 69, 0.12);
}

.imaging-tests .imaging-image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.imaging-tests .imaging-body {
    padding: 20px;
    flex: 1;
}

.imaging-tests .imaging-title {
    font-size: 22px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 5px;
}

.imaging-tests .imaging-price {
    font-size: 14px;
    margin-bottom: 5px;
}

.imaging-tests .imaging-price span {
    font-weight: 800;
    color: var(--greencolor);
    font-size: 20px;
}

.imaging-tests .imaging-desc {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 0px;
}

.imaging-tests .imaging-footer {
    padding: 15px;
    border-top: 1px solid #ddd;
    background-color: #fbfefe;
}

.imaging-tests .imaging-carousel .owl-item.active.center .imaging-card {
    transform: scale(1.02);
    border: 2px solid var(--greencolor);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.corporate-cta {
    background: linear-gradient(
        90deg,
        rgba(25, 131, 138, 0.08),
        rgba(25, 131, 138, 0.06)
    );
}

.corporate-cta .cta-card {
    background: linear-gradient(180deg, #ffffff, #fbffff);
    border-radius: 15px;
    border: 1px solid #ddd;
    padding: 50px 40px;
    box-shadow: 0 25px 70px rgba(9, 60, 69, 0.12);
    position: relative;
}

.corporate-cta .cta-content {
    max-width: 520px;
}

.corporate-cta .cta-subtitle {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 20px;
}

.corporate-cta .cta-divider {
    height: 180px;
    border-left: 1px dashed #ddd;
    position: relative;
}

.corporate-cta .cta-divider span {
    position: absolute;
    top: 50%;
    left: -18px;
    transform: translateY(-50%);
    background: #ffffff;
    color: #7a9a9a;
    font-size: 13px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 999px;
}

.corporate-cta .cta-contact {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.corporate-cta .cta-call {
    text-align: center;
}

.corporate-cta .call-label {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: var(--greencolor);
    margin-bottom: 6px;
}

.corporate-cta .call-number {
    display: inline-block;
    font-size: 20px;
    font-weight: 800;
    color: var(--greencolor);
    background: rgba(25, 131, 138, 0.1);
    padding: 10px 18px;
    border-radius: 15px;
    text-decoration: none;
}

.corporate-cta .call-number:hover {
    background: rgba(25, 131, 138, 0.18);
}

.corporate-cta .cta-image img {
    max-width: 220px;
    height: auto;
    position: absolute;
    bottom: 0px;
    right: 40px;
}

/* Header */
.pet-scan-pricing .pricing-header {
}

.pet-scan-pricing .section-subtitle {
    font-size: 15px;
    line-height: 1.6;
}

.pet-scan-pricing .pricing-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 20px;
}

.pet-scan-pricing .pricing-table-wrapper {
    overflow-x: auto;
}

.pet-scan-pricing .pricing-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 15px;
}

.pet-scan-pricing .pricing-table thead th {
    background: var(--greencolor);
    color: var(--whitecolor);
    text-align: left;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 700;
}

.pet-scan-pricing .pricing-table thead th:first-child {
    border-top-left-radius: 15px;
}

.pet-scan-pricing .pricing-table thead th:last-child {
    border-top-right-radius: 15px;
}

/* Body */
.pet-scan-pricing .pricing-table tbody tr {
    background: var(--whitecolor);
    transition: background 0.2s ease;
}

.pet-scan-pricing .pricing-table tbody tr:nth-child(even) {
    background: #f4f9f9;
}

.pet-scan-pricing .pricing-table tbody tr:hover {
    background: #e9f4f4;
}

.pet-scan-pricing .pricing-table tbody td {
    padding: 14px 18px;
    color: var(--blackcolor);
    border-bottom: 1px solid #ddd;
}

/* Price emphasis */
.pet-scan-pricing .pricing-table tbody td:last-child {
    font-weight: 800;
    color: var(--greencolor);
}

.pet-scan-pricing .pricing-note {
    margin-top: 16px;
    font-size: 13px;
    text-align: right;
}

#call_back_modal .modal-dialog {
    max-width: 520px;
    margin: 1.75rem auto;
}

#call_back_modal .modal-content {
    border-radius: 18px;
    border: none;
    box-shadow: 0 35px 90px rgba(9, 60, 69, 0.25);
    overflow: hidden;
    background: #ffffff;
}

/* ---------- HEADER ---------- */
#call_back_modal .modal-header {
    padding: 22px 26px 16px;
    border-bottom: 1px solid #e8f2f2;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#call_back_modal .modal-header h4 {
    font-size: 22px;
    font-weight: 800;
    color: var(--blackcolor);
    margin: 0;
}

/* Close button */
#call_back_modal .close-btn {
    background: rgba(9, 60, 69, 0.08);
    border: none;
    border-radius: 8px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

#call_back_modal .close-btn span {
    font-size: 22px;
    line-height: 1;
    color: var(--blackcolor);
}

#call_back_modal .close-btn:hover {
    background: rgba(9, 60, 69, 0.15);
}

#call_back_modal .modal-body {
    padding: 22px 26px 26px;
    background: #ffffff;
}

#call_back_modal .modal-body .form-group {
    margin-bottom: 16px;
}

#call_back_modal .captcha_group {
    align-items: center;
    gap: 8px;
}

#call_back_modal input[type="submit"].web-btn {
    height: 48px;
    font-size: 16px;
    font-weight: 700;
    border-radius: 12px;
}

#call_back_modal .form-check-label {
    font-size: 13px;
    line-height: 1.5;
}

.modal-backdrop.show {
    background: rgba(9, 60, 69, 0.6);
}

.health-insurance-plan {
    border-radius: 60px;
}

.health-insurance-plan .health-insurance-heading p img {
    filter: var(--greenfilter);
}

.health-insurance-plan .box {
    padding: 40px;
    border: 1px solid var(--greencolor);
    background-color: #e0e8e9;
    border-radius: 20px;
    margin-bottom: 30px;
}

.health-insurance-plan .box h4 {
    color: var(--greencolor);
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 20px;
    text-align: center;
}

.health-insurance-plan .box ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

.health-insurance-plan .box ul li {
    background-color: #fff6;
    border-radius: 10px;
    border-bottom: 1px solid var(--greencolor);
    margin-top: 15px;
    box-shadow: 0px 20px 24px 0px #0000000d;
    padding: 20px;
    display: flex;
    align-items: center;
}

.health-insurance-plan .box ul li img {
    width: 40px;
    height: 40px;
    object-fit: contain;
    margin-right: 15px;
}

.health-insurance-plan .box ul li p {
    margin: 0px;
    width: calc(100% - 55px);
    color: var(--btn2color);
    font-weight: 500;
}

.health-insurance-plan .box.color2 {
    border: 1px solid #1769dc;
    background-color: #dfe4ed;
}

.health-insurance-plan .box.color2 h4 {
    color: #1769dc;
}

.health-insurance-plan .box ul li {
    border-color: #1769dc;
}

.health-insurance-counter {
    padding: 90px 0px;
}

.health-insurance-counter .box {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.health-insurance-counter .box:after {
    content: "";
    position: absolute;
    width: 2px;
    height: 50px;
    border-radius: 50%;
    background-color: #d8d8d8;
    right: -18px;
    top: 50%;
    transform: translate(0, -50%);
}

.health-insurance-counter .box.no-border:after {
    display: none;
}

.health-insurance-counter .box h2 {
    font-size: 60px;
    margin-right: 20px;
    margin-bottom: 0px;
    font-family: none;
    font-weight: bold;
}

.health-insurance-counter .box p {
    margin: 0px;
    font-size: 16px;
    word-break: break-all;
}

.health-insurance .insurance-card {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: hidden;
    height: 100%;
    box-shadow: 0 18px 50px rgba(9, 60, 69, 0.1);
    border: 2px dashed var(--bordercolor);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.health-insurance .insurance-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 35px 80px rgba(9, 60, 69, 0.16);
}

.health-insurance .insurance-card .insurance-image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.health-insurance .insurance-card .insurance-content {
    padding: 25px;
    text-align: center;
}

.health-insurance .insurance-card .insurance-content h4 {
    font-size: 18px;
    font-weight: 800;
    color: var(--blackcolor);
    margin-bottom: 10px;
}

.health-insurance .insurance-card .insurance-content p {
    font-size: 14.5px;
    line-height: 1.6;
}

/* =====================================
   Insurance Testimonials
   ===================================== */

/* Card */
.insurance-testimonials .testimonial-card {
    background: var(--whitecolor);
    border-radius: 15px;
    border: 1px solid var(--bordercolor);
    padding: 40px 32px 34px;
    position: relative;
    height: 100%;
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.insurance-testimonials .testimonial-card:hover {
    transform: translateY(-8px);
}

.insurance-testimonials .testimonial-card::before {
    content: "\f10e";
    /* fa-quote-right */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    /* required for solid icons */
    position: absolute;
    top: 18px;
    right: 26px;
    /* align to right */
    font-size: 72px;
    color: rgba(25, 131, 138, 0.15);
    line-height: 1;
}

.insurance-testimonial-slider .owl-stage {
    display: flex;
}

.insurance-testimonial-slider .owl-item {
    display: flex;
}

.insurance-testimonials .testimonial-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 18px;
    border: 3px solid rgba(25, 131, 138, 0.25);
}

.insurance-testimonials .testimonial-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    padding-top: 10px;
}

.insurance-testimonials .testimonial-quote p {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 25px;
}

.insurance-testimonials .testimonial-author h5 {
    font-size: 16px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 4px;
}

.insurance-testimonials .testimonial-author span {
    font-size: 13px;
    color: #6f8d8d;
}

.my-account-sidebar {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 15px 0;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border: 1px solid 1px solid rgba(0, 0, 0, 0.04);
    border: 1px solid #ddd;
    position: sticky;
    top: 80px;
}

.my-account-sidebar ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.my-account-sidebar li {
    position: relative;
}

.my-account-sidebar a {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 12px 22px;
    font-size: 14.5px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.25s ease;
    color: var(--blackcolor);
}

.my-account-sidebar a i {
    width: 20px;
    font-size: 16px;
}

.my-account-sidebar li:hover a {
    background: rgba(25, 131, 138, 0.08);
    color: var(--greencolor);
}

.my-account-sidebar li:hover a i {
    color: var(--greencolor);
}

.my-account-sidebar li.active a {
    background: rgba(25, 131, 138, 0.12);
    color: var(--greencolor);
    font-weight: 700;
}

.my-account-sidebar li.active::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 5px;
    height: calc(100% - 16px);
    background: var(--greencolor);
    border-radius: 0 6px 6px 0;
}

.my-account-sidebar li.danger a {
    color: #d9534f;
}

.my-account-sidebar li.danger a i {
    color: #d9534f;
}

.my-account-sidebar li.danger:hover a {
    background: rgba(217, 83, 79, 0.08);
}

.my-account .account-profile-wrapper {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.my-account .profile-topbar {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 0;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    margin-bottom: 15px;
    overflow: hidden;
}

.my-account .profile-cover {
    height: 150px;
    background: url("../images/bg-img-profile.png") center/cover no-repeat;
    position: relative;
}

.my-account .cover-btn {
    position: absolute;
    right: 20px;
    bottom: 16px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    padding: 6px 14px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 8px;
    cursor: pointer;
}

.my-account .profile-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 20px;
}

.my-account .profile-avatar-wrap {
    position: relative;
    margin-top: -80px;
}

.my-account .profile-avatar-wrap img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    border: 3px solid #ffffff;
    background-color: #eee;
    object-fit: cover;
    display: block;
    font-size: 0px;
}

.my-account .avatar-edit {
    position: absolute;
    bottom: 4px;
    right: 4px;
    width: 30px;
    height: 30px;
    background: var(--greencolor);
    color: #fff;
    border-radius: 50%;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* INFO */
.my-account .profile-info {
    flex: 1;
    width: 100%;
}

.my-account .profile-info h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
    text-align: center;
}

.my-account .profile-meta-desc {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.my-account .profile-meta {
    display: flex;
    gap: 20px;
    font-size: 14px;
}

.my-account .profile-meta span {
    font-weight: 600;
}

.my-account .profile-meta i {
    margin-right: 5px;
    color: var(--greencolor);
}

.my-account .profile-progress-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}

.my-account .progress-label {
    font-size: 14px;
    color: var(--greencolor);
}

.my-account .progress-bar-wrap {
    width: 150px;
    height: 10px;
    background: #e5e7eb;
    border-radius: 5px;
    overflow: hidden;
}

.my-account .progress-bar-fill {
    height: 100%;
    background: var(--greencolor);
    border-radius: 5px;
}

.my-account .progress-percent {
    font-size: 14px;
    font-weight: 600;
}

.my-account .profile-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.my-account .profile-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 15px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    margin-bottom: 20px;
}

.my-account .card-title {
    margin-bottom: 30px;
}

.my-account .profile-card label {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 5px;
    display: block;
}

.my-account .radio-card-group {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.my-account .radio-card {
    position: relative;
    cursor: pointer;
}

.my-account .radio-card input {
    display: none;
}

.my-account .radio-content {
    min-width: 120px;
    padding: 12px 18px;
    border-radius: 10px;
    border: 1.5px solid #eaeaec;
    background: #f9fafc;
    font-weight: 500;
    text-align: center;
    transition: all 0.25s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.my-account .radio-card input:checked + .radio-content {
    border-color: var(--greencolor);
    background: rgba(25, 131, 138, 0.12);
    color: var(--greencolor);
}

.my-account .radio-card:hover .radio-content {
    border-color: var(--greenrgb);
}

.delivery-address-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 15px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

.my-account .delivery-address-card .address-select {
    display: flex;
    gap: 15px;
    cursor: pointer;
    align-items: flex-start;
    margin-bottom: 20px;
    border-bottom: 2px dashed var(--bordercolor);
    padding-bottom: 20px;
}

.my-account .delivery-address-card .address-select input {
    display: none;
}

.my-account .delivery-address-card .custom-radio {
    width: 20px;
    height: 20px;
    border: 2px solid var(--greencolor);
    border-radius: 50%;
    margin-top: 6px;
    position: relative;
    flex-shrink: 0;
}

.my-account
    .delivery-address-card
    .address-select
    input:checked
    + .custom-radio::after {
    content: "";
    width: 10px;
    height: 10px;
    background: var(--greencolor);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.my-account .delivery-address-card .address-content {
    flex: 1;
}

/* Badge */
.my-account .delivery-address-card .address-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--greencolor);
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 20px;
    margin-bottom: 12px;
}

/* Name */
.my-account .delivery-address-card .address-name {
    font-size: 18px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 5px;
}

.my-account .delivery-address-card .address-text {
    font-size: 14px;
    margin-bottom: 4px;
}

.my-account .delivery-address-card .address-phone {
    font-size: 14px;
    color: var(--blackcolor);
    margin-bottom: 14px;
}

.my-account .delivery-address-card .address-actions {
    display: flex;
    gap: 12px;
}

.my-account .delivery-address-card .btn-edit,
.my-account .delivery-address-card .btn-delete {
    padding: 8px 14px;
    font-size: 14px;
    border-radius: 8px;
    border: 1px solid transparent;
    cursor: pointer;
    background: transparent;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.my-account .delivery-address-card .btn-edit {
    border-color: var(--greencolor);
    color: var(--greencolor);
}

.my-account .delivery-address-card .btn-edit:hover {
    background: rgba(27, 183, 167, 0.08);
}

.my-account .delivery-address-card .btn-delete {
    border-color: #ff4d4f;
    color: #ff4d4f;
}

.my-account .delivery-address-card .btn-delete:hover {
    background: rgba(255, 77, 79, 0.08);
}

.my-account .delivery-address-card .add-address-btn {
    margin-top: 0px;
    padding: 12px 20px;
    font-size: 15px;
    font-weight: 700;
    color: var(--greencolor);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background: none;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    transition: background 0.25s ease;
    text-align: center;
    width: 100%;
}

/* Diet Calculator Work Start */
.web-progress {
    background-color: #19838a10;
    border-radius: 0px;
    margin-bottom: 50px;
    height: auto;
}

.web-progress .progress-bar {
    border-radius: 50px;
    height: 10px;
    background-color: var(--greencolor) !important;
}

.diet-calculator-header {
    padding: 15px 0px;
    background-color: white;
    border-bottom: 1px solid #e9e9e9;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 100;
}

.diet-calculator-header .left-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    border: 1px solid #ddd;
}

.diet-calculator-header .logo {
    height: 45px;
    object-fit: contain;
}

.diet-calculator {
    min-height: 100vh;
    padding-top: 76px;
    padding-bottom: 107px;
}

.diet-calculator .section-heading + p {
    margin-bottom: 30px;
    font-size: 24px;
    opacity: 0.8;
}

.diet-calculator .gender-card {
    border-radius: 15px;
    transition: transform 0.3s ease;
    background-color: #eee;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    margin-top: 80px;
    display: block;
}

.diet-calculator .gender-card:hover {
    transform: translateY(-5px);
}

.diet-calculator .gender-image {
    width: 100%;
    height: 250px;
    object-fit: contain;
    margin-top: -80px;
}

.diet-calculator .gender-footer {
    background-color: var(--greencolor);
    padding: 10px 20px;
    color: white;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 600;
    font-size: 16px;
    border-radius: 0px 0px 15px 15px;
}

.diet-calculator .gender-footer .arrow {
    background-color: white;
    color: var(--greencolor);
    border-radius: 50px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.diet-calculator .term {
    font-size: 18px;
    margin: 0px;
}

.diet-calculator .term b {
    font-weight: 500;
}

.diet-calculator .term a {
    color: blue;
    font-weight: 500;
}

.diet-calculator .diet-custom-radio {
    margin-bottom: 15px;
}

.diet-calculator .diet-custom-radio input {
    display: none;
}

.diet-calculator .diet-custom-radio label {
    border: 1px solid #ddd;
    background-color: #f9f9f9;
    padding: 15px 20px;
    border-radius: 10px;
    display: flex;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    position: relative;
}

.diet-calculator .diet-custom-radio label::after {
    content: "\f00c";
    /* check icon */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 25px;
    height: 25px;
    border: 1px solid #a0a0a0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    line-height: 1;
    color: #fff;
}

.diet-calculator .diet-custom-radio input:checked ~ label {
    background-color: #19838a20;
    border-color: #19838a20;
}

.diet-calculator .diet-custom-radio input:checked ~ label:after {
    background-color: var(--greencolor);
    border-color: var(--greencolor);
    color: white;
}

.diet-calculator-footer {
    background-color: white;
    padding: 15px 0px;
    border-top: 1px solid #ddd;
    position: fixed;
    width: 100%;
    left: 0;
    bottom: 0;
    z-index: 10;
}

.diet-calculator-footer .btn {
    border-radius: 50px;
}

.diet-calculator .form-control,
.diet-calculator .form-select {
    border: 1px solid #ddd;
    background-color: #f9f9f9;
    padding: 15px 20px;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 500;
    height: auto;
}

.diet-calculator .cm-field {
    display: flex;
    align-items: center;
    gap: 10px;
}

.diet-calculator .cm-field input {
    width: calc(100% - 76px);
}

.diet-calculator .cm-field span {
    border: 1px solid #ddd;
    background-color: #f9f9f9;
    padding: 15px 20px;
    font-size: 16px;
    font-weight: 500;
    border-radius: 10px;
    min-width: 66px;
    text-align: center;
}

.diet-calculator.results .box {
    border-radius: 10px;
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    margin-top: 20px;
    padding: 20px;
    text-align: center;
}

.diet-calculator.results .box img {
    width: 70px;
    height: 50px;
    object-fit: contain;
    margin-bottom: 10px;
}

.diet-calculator.results .box .box-heading {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 8px;
}

.diet-calculator.results .box .box-heading strong {
    font-size: 30px;
    font-weight: 800;
    color: var(--greencolor);
}

.diet-calculator.results .box p {
    margin: 0px;
}

.diet-calculator.plans .diet-custom-radio {
    height: calc(100% - 15px);
}

.diet-calculator.plans .diet-custom-radio label {
    flex-direction: column;
    padding: 20px;
    height: 100%;
    padding-bottom: 87px;
}

.diet-calculator.plans .diet-custom-radio input:checked ~ label {
    border-color: var(--greencolor);
}

.diet-calculator.plans .diet-custom-radio label:after {
    top: 10px;
    right: 10px;
    transform: unset;
}

.diet-calculator.plans .diet-custom-radio label .title {
    font-size: 18px;
    font-weight: 700;
    padding-right: 30px;
    margin-bottom: 10px;
}

.diet-calculator.plans .diet-custom-radio label .price {
    font-weight: 700;
    font-size: 20px;
    color: var(--greencolor);
    margin-bottom: 10px;
}

.diet-calculator.plans .diet-custom-radio label ul {
    list-style: none;
    padding: 0px;
    margin: 0px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.diet-calculator.plans .diet-custom-radio label ul li {
    position: relative;
    padding-left: 18px;
    font-size: 14px;
    line-height: 18px;
}

.diet-calculator.plans .diet-custom-radio label ul li:before {
    content: "\f00c";
    font-family: Font Awesome\5 Pro;
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 0;
    font-size: 10px;
    color: var(--greencolor);
}

.diet-calculator.plans .diet-custom-radio label .perfect {
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
    margin: 0px;
    padding: 15px;
    border-radius: 0px 0px 10px 10px;
    border-top: 1px solid #ddd;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

/* Small Laptop & Tablet | Check 768px - 992px*/
@media (max-width: 992px) {
    .section-heading {
        font-size: 26px;
        margin-bottom: 40px;
    }

    .diet-calculator .section-heading + p {
        margin-bottom: 26px;
        font-size: 20px;
    }
}

/* Tablet & Mobile | Check Mobile - 767px*/
@media (max-width: 767px) {
    .diet-calculator .gender-image {
        height: 150px;
        margin-top: -55px;
    }

    .diet-calculator .gender-footer .arrow {
        width: 25px;
        height: 25px;

        font-size: 15px;
    }

    .diet-calculator .gender-footer {
        font-size: 15px;
    }

    .diet-calculator .section-heading + p {
        margin-bottom: 15px;
        font-size: 16px;
    }

    .diet-calculator .term {
        font-size: 14px;
    }

    .diet-calculator-header .logo {
        margin: 0px;
    }

    .diet-calculator.results .box .box-heading {
        font-size: 18px;
    }

    .diet-calculator.results .box .box-heading strong {
        font-size: 26px;
    }

    .diet-calculator.plans .diet-custom-radio label {
        padding: 10px;
        padding-bottom: 87px;
    }

    .diet-calculator.plans .diet-custom-radio label .title {
        font-size: 16px;
        padding-right: 34px;
    }

    .diet-calculator.plans .diet-custom-radio label .price {
        font-size: 16px;
    }

    .diet-calculator.plans .diet-custom-radio label ul li {
        font-size: 13px;
        line-height: 16px;
    }

    .diet-calculator.plans .diet-custom-radio label .perfect {
        font-size: 12px;
        line-height: 16px;
        padding: 10px;
    }

    .diet-calculator .diet-custom-radio label:after {
        width: 20px;
        height: 20px;
    }
}

/* Diet Calculator Work End */

/* Diabetes Work Start */
.diabetes-banner {
    background-color: white;
}

.diabetes-banner img {
    background: linear-gradient(
        90deg,
        rgba(255, 218, 186, 1) 0%,
        rgba(186, 224, 255, 1) 100%
    );
    border-radius: 0px 0px 40px 40px;
    display: block;
    width: 100%;
    object-fit: cover;
}

.diabetes-about .label {
    margin-bottom: 10px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 13px;
    display: inline-block;
    line-height: 1;
    padding: 11px 15px 12px;
    background-color: #eee;
    border-radius: 8px;
    letter-spacing: 1px;
}

.diabetes-about .section-heading {
    line-height: 40px;
    font-weight: 700;
    font-style: normal;
    color: #3b3b3b;
    font-size: 35px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.diabetes-about p {
    font-size: 16px;
    margin-bottom: 30px;
}

.diabetes-about p strong {
    font-weight: 500;
}

.diabetes-about ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    font-size: 16px;
}

.diabetes-about ul li {
    width: calc(50% - 10px);
    position: relative;
    padding-left: 30px;
}

.diabetes-about ul li:before {
    content: "\f00c";
    position: absolute;
    left: 0;
    top: 0px;
    font-family: Font Awesome\5 Pro;
    font-weight: 400;
    color: var(--greencolor);
    font-size: 18px;
}

.diabetes-about .center-img {
    height: 100%;
    position: relative;
}

.diabetes-about .center-img .big-img {
    height: 100%;
    width: 100%;
    display: block;
    object-fit: cover;
}

.diabetes-about .center-img .small-img {
    width: 140px;
    height: 140px;
    object-fit: contain;
    position: absolute;
    bottom: -30px;
    left: -15px;
    animation: imgeffect 3s infinite linear !important;
}

@keyframes imgeffect {
    0% {
        transform: translate(0px, 0px);
    }

    50% {
        transform: translate(10px, 10px);
    }

    50% {
        transform: translate(-10px, -10px);
    }

    50% {
        transform: translate(10px, 10px);
    }

    100% {
        transform: translate(0px, 0px);
    }
}

.diabetes-about .why-choose {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    height: 100%;
    gap: 30px;
}

.diabetes-about .why-choose .box {
    display: flex;
    gap: 15px;
}

.diabetes-about .why-choose .box .circle {
    width: 80px;
    height: 80px;
    background-color: #eee;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.diabetes-about .why-choose .box .circle img {
    font-size: 0px;
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.diabetes-about .why-choose .box .details {
    padding: 0px;
    margin: 0px;
    width: calc(100% - 95px);
}

.diabetes-about .why-choose .box .details .title {
    font-size: 18px;
    margin-bottom: 8px;
    text-transform: uppercase;
    font-weight: 700;
}

.diabetes-about .why-choose .box .details p {
    margin-bottom: 0px;
    font-size: 18px;
    color: var(--gray);
}

.diabetes-plans .label {
    margin-bottom: 10px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 13px;
    display: inline-block;
    line-height: 1;
    padding: 11px 15px 12px;
    background-color: #eee;
    border-radius: 8px;
    letter-spacing: 1px;
}

.diabetes-plans .section-heading {
    line-height: 40px;
    font-weight: 700;
    font-style: normal;
    color: #3b3b3b;
    font-size: 35px;
    text-transform: uppercase;
    margin-bottom: 30px;
}

.diabetes-plans .box {
    box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1);
    border: 1px solid #06875c;
    background-image: linear-gradient(to bottom, #d5f4f0, #fff, #fff);
    padding: 20px 20px 90px;
    border-radius: 20px;
    margin-top: 20px;
    height: calc(100% - 20px);
    position: relative;
}

.diabetes-plans .box .title {
    color: #06875c;
    font-weight: 700;
    font-size: 22px;
    line-height: 26px;
    margin-bottom: 15px;
}

.diabetes-plans .box .price {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
}

.diabetes-plans .box hr {
    margin-bottom: 10px;
}

.diabetes-plans .box ul {
    list-style: none;
    margin: 15px 0px 0px;
    padding: 0;
}

.diabetes-plans .box ul li {
    position: relative;
    padding-left: 30px;
    font-size: 14px;
    line-height: 18px;
    margin-bottom: 10px;
    font-weight: 500;
}

.diabetes-plans .box ul li:before {
    content: "\f00c";
    position: absolute;
    left: 0;
    top: 0px;
    font-family: Font Awesome\5 Pro;
    font-weight: 400;
    color: var(--greencolor);
    font-size: 14px;
}

.diabetes-plans .box .btn {
    border-radius: 50px;
    margin-top: 15px;
    background-image: linear-gradient(to bottom right, #308c6f, #114866);
    padding-bottom: 15px;
    position: absolute;
    left: 20px;
    bottom: 20px;
    width: calc(100% - 40px);
}

.diabetes-plans .box.blue {
    border-color: #2e7fb8;
    background-image: linear-gradient(to bottom, #d5dff4, #fff, #fff);
}

.diabetes-plans .box.blue .title {
    color: #2e7fb8;
}

.diabetes-plans .box.blue .btn {
    background-image: linear-gradient(to bottom right, #2e7fb8, #114866);
}

.diabetes-faq .label {
    margin-bottom: 10px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 13px;
    display: inline-block;
    line-height: 1;
    padding: 11px 15px 12px;
    background-color: #eee;
    border-radius: 8px;
    letter-spacing: 1px;
}

.diabetes-faq .section-heading {
    line-height: 40px;
    font-weight: 700;
    font-style: normal;
    color: #3b3b3b;
    font-size: 35px;
    text-transform: uppercase;
}

.diabetes-plan-form .label {
    margin-bottom: 10px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 13px;
    display: inline-block;
    line-height: 1;
    padding: 11px 15px 12px;
    background-color: #eee;
    border-radius: 8px;
    letter-spacing: 1px;
}

.diabetes-plan-form .section-heading {
    line-height: 40px;
    font-weight: 700;
    font-style: normal;
    color: #3b3b3b;
    font-size: 35px;
    text-transform: uppercase;
}

.diabetes-plan-form .btn {
    border-radius: 50px;
    margin-top: 15px;
    background-image: linear-gradient(to bottom right, #308c6f, #114866);
    padding-bottom: 15px;
    width: 100%;
}

@media (max-width: 1200px) {
    .diabetes-about .section-heading {
        font-size: 28px;
        line-height: 32px;
        margin-bottom: 15px;
    }

    .diabetes-about p {
        font-size: 14px;
        margin-bottom: 20px;
    }

    .diabetes-about ul {
        gap: 5px;
        font-size: 14px;
    }

    .diabetes-about ul li {
        padding-left: 25px;
        width: calc(50% - 2.5px);
    }

    .diabetes-about ul li:before {
        font-size: 14px;
    }

    .diabetes-about .center-img .small-img {
        width: 100px;
        height: 100px;
    }

    .diabetes-about .why-choose .box .circle {
        width: 60px;
        height: 60px;
    }

    .diabetes-about .why-choose .box .circle img {
        width: 30px;
        height: 30px;
    }

    .diabetes-about .why-choose .box .details {
        width: calc(100% - 75px);
    }

    .diabetes-about .why-choose .box .details .title {
        font-size: 16px;
        margin-bottom: 5px;
    }

    .diabetes-about .why-choose .box .details p {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .diabetes-banner img {
        border-radius: 0px 0px 20px 20px;
    }

    .diabetes-about .section-heading,
    .diabetes-plans .section-heading,
    .diabetes-faq .section-heading,
    .franchise-form .section-heading {
        font-size: 20px;
        line-height: 24px;
        margin-bottom: 10px;
    }

    .diabetes-about .center-img .big-img {
        height: 400px;
        margin: 30px 0px 0px;
    }

    .diabetes-about .center-img .small-img {
        left: 0px;
        bottom: -5px;
        width: 80px;
        height: 80px;
    }

    .diabetes-plans .box .title {
        font-size: 20px;
        line-height: 24px;
    }

    .diabetes-plans .box .price {
        font-size: 18px;
    }

    .diabetes-faq .faq-accordian {
        max-height: auto !important;
        padding-right: 0px !important;
        margin-top: 20px;
    }
}

/* Diabetes Work End */

/* Fitness page new changes */
.flip-container {
    margin: 0 auto;
    -webkit-perspective: 1000;
    -moz-perspective: 1000;
    margin-right: 20px;
}

.flip-container:hover .flipper {
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
}

.flip-container .flipper {
    -webkit-transition: 0.6s;
    -webkit-transform-style: preserve-3d;
    -moz-transition: 0.6s;
    -moz-transform-style: preserve-3d;
    position: relative;
}

.flip-container .front,
.flip-container .back {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.flip-container .front {
    z-index: 1;
    background: #fff;
}

.flip-container,
.flip-container .front,
.flip-container .back {
    width: 100%;
    height: 321px;
}

.flip-container .back {
    -webkit-transform: rotateY(-180deg);
    -moz-transform: rotateY(-180deg);
    background: #f6f6f6;
}

.flip-container .back .box {
    padding: 30px !important;
    height: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.flip-container .back .box h3 {
    padding: 0px !important;
    margin-bottom: 10px !important;
}

.flip-container .back .box p {
    margin: 0px;
}

@media (max-width: 768px) {
    .flip-container {
        margin-top: 15px;
    }

    .flip-container .box {
        margin-top: 0px !important;
    }
}

/* Fitness page new changes */

.fitness-new-design .health-tips .box {
    text-align: center;
    position: relative;
    border: 3px solid #ddd;
    padding: 0px;
    border-radius: 20px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    transition: all 0.3s 0s linear;
    overflow: hidden;
}

.fitness-new-design .health-tips .box:before {
    display: none;
}

.fitness-new-design .health-tips .box:hover {
    border-color: var(--greencolor);
}

.fitness-new-design .health-tips .box img {
    height: 250px;
    width: 100%;
    object-fit: cover;
}

.fitness-new-design .health-tips .box h3 {
    color: var(--blackcolor);
    text-shadow: none;
    font-size: 20px;
    font-weight: 700;
    line-height: 26px;
    margin: 0px;
    padding: 20px;
}

.health-plan-details-in-diet-nutrition .box {
    background: var(--whitecolor);
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.35s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.health-plan-details-in-diet-nutrition .box:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.12);
}

.health-plan-details-in-diet-nutrition .box-header img {
    width: 100%;
    height: 210px;
    object-fit: cover;
}

.health-plan-details-in-diet-nutrition .box-body {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.health-plan-details-in-diet-nutrition .box-body > div {
    padding: 16px 18px 10px;
    flex: 1;
}

.health-plan-details-in-diet-nutrition h4 {
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.health-plan-details-in-diet-nutrition ul {
    margin-bottom: 5px;
}

.health-plan-details-in-diet-nutrition ul li {
    font-size: 14px;
    margin-bottom: 5px;
}

.health-plan-details-in-diet-nutrition .linkbtn {
    font-size: 14px;
    font-weight: 600;
    color: var(--greencolor);
    display: inline-block;
    margin-top: 5px;
}

.health-plan-details-in-diet-nutrition .linkbtn:hover {
    text-decoration: underline;
}

.health-plan-details-in-diet-nutrition .btn.web-btn {
    background: linear-gradient(135deg, #19838a, #0f6f73);
    color: var(--whitecolor);
    border-radius: 0;
    font-weight: 700;
    padding: 14px;
    font-size: 15px;
    transition: all 0.3s ease;
}

.health-plan-details-in-diet-nutrition .btn.web-btn:hover {
    background: linear-gradient(135deg, #0f6f73, #19838a);
}

#read_more1 .close-btn {
    background: rgba(9, 60, 69, 0.08);
    border: none;
    border-radius: 8px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.health-plan-upgrade {
    background: linear-gradient(135deg, #0f8f94, #0b6e73);
    color: #ffffff;
    position: relative;
    overflow: hidden;
}

.health-plan-upgrade::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url("../images/diet-banner.jpg") center center / cover no-repeat;
    opacity: 0.3;
}

.health-plan-upgrade .health-plan-header {
    max-width: 850px;
    margin: 0 auto 40px;
    position: relative;
    z-index: 2;
}

.health-plan-upgrade .health-plan-cards {
    position: relative;
    z-index: 2;
}

.health-plan-upgrade .health-card {
    background: #ffffff;
    border-radius: 15px;
    padding: 40px 36px;
    height: 100%;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.15);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.health-plan-upgrade .health-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 40px 90px rgba(0, 0, 0, 0.22);
}

.health-plan-upgrade .health-card-icon {
    width: 70px;
    height: 70px;
    border-radius: 14px;
    background: linear-gradient(135deg, #e6fffa, #d2f4f2);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
}

.health-plan-upgrade .health-card-icon img {
    width: 38px;
    height: auto;
}

.health-video-section {
    background: none;
}

.health-video-section .vg-thumb {
    height: 340px;
}

.symptom-checker {
    min-height: 100vh;
    background: linear-gradient(135deg, #26a6a6, #1c7fa6);
    color: var(--whitecolor);
}

.symptom-content {
    padding-top: 60px;
    padding-bottom: 60px;
    padding-left: 150px;
    padding-right: 40px;
}

.symptom-checker .symptom-search {
    display: flex;
    gap: 15px;
    margin-bottom: 30px;
}

.symptom-checker .symptom-search input {
    flex: 1;
}

.symptom-checker .btn-primary {
    padding: 14px 22px;
    background: #ffffff;
    color: #0b6e73;
    border-radius: 8px;
    font-weight: 700;
    border: none;
    cursor: pointer;
}

.symptom-checker .treatment-card {
    background: #ffffff;
    color: var(--blackcolor);
    border-radius: 15px;
    padding: 20px;
    margin-bottom: 30px;
}

.symptom-checker .treatment-card h3 {
    color: var(--greencolor);
    font-weight: 700;
    margin-bottom: 15px;
    font-size: 18px;
}

.symptom-checker .treatment-list {
    padding-left: 15px;
    margin: 20px 0;
}

.symptom-checker .treatment-list li {
    margin-bottom: 10px;
    line-height: 1.6;
}

.symptom-checker .alert-box {
    background: #fff3cd;
    color: #7a5c00;
    padding: 14px 16px;
    border-radius: 10px;
    font-size: 14px;
}

.symptom-checker .consult-box {
    background: rgba(255, 255, 255, 0.15);
    padding: 20px;
    border-radius: 15px;
}

.symptom-checker .consult-input {
    display: flex;
    gap: 12px;
    margin-top: 12px;
}

.symptom-checker .consult-input input {
    flex: 1;
    padding: 12px 14px;
}

.symptom-checker .btn-whatsapp {
    background: #25d366;
    color: var(--whitecolor);
    border: none;
    border-radius: 8px;
    padding: 12px 18px;
    font-weight: 700;
    cursor: pointer;
}

.symptom-checker .symptom-bg {
    background-image: url("../images/diet-plan/symptoms-bg.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 100vh;
    position: relative;
}

.symptom-checker .symptom-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.25);
}

/* my account - doctor consultations page start */

/* ========== Doctor Consultation Enhanced Styles ========== */

.doctor-consultation-container {
    background-color: var(--whitecolor);
    border-radius: 12px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.doctor-consultation-container:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 6px;
}

.doctor-consultation-container .consultation-title {
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 0;
    padding: 28px 28px 0 28px;
    letter-spacing: -0.5px;
}

.doctor-consultation-container .consultation-tabs {
    border-bottom: 2px solid #e9ecef;
    padding: 0 28px;
    margin-top: 15px;
    gap: 0;
    background-color: transparent;
}

.doctor-consultation-container .consultation-tabs .nav-link {
    color: #6c757d;
    border: none;
    border-bottom: 3px solid transparent;
    padding: 14px 0;
    font-weight: 600;
    font-size: 15px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    margin-right: 36px;
    position: relative;
    cursor: pointer;
}

.doctor-consultation-container .consultation-tabs .nav-link::after {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 0;
    height: 3px;
    background: linear-gradient(90deg, #198754 0%, #17a2b8 100%);
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.doctor-consultation-container .consultation-tabs .nav-link:hover {
    color: #198754;
}

.doctor-consultation-container .consultation-tabs .nav-link:hover::after {
    width: 100%;
}

.doctor-consultation-container .consultation-tabs .nav-link.active {
    color: #198754;
    border-bottom-color: #198754;
    background-color: transparent;
    font-weight: 700;
}

.doctor-consultation-container .consultation-tabs .nav-link.active::after {
    width: 100%;
}

.doctor-consultation-container .consultation-content {
    padding: 28px;
    background-color: transparent;
}

.doctor-consultation-container .consultation-card {
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ddd;
}

.doctor-consultation-container .doctor-avatar-section {
    text-align: center;
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
}

.doctor-consultation-container .doctor-avatar-section .doctor-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #ffffff;
    box-shadow: 0 2px 5px rgba(25, 135, 84, 0.2);
    transition: all 0.3s ease;
    position: relative;
}

.doctor-consultation-container .doctor-avatar-section .doctor-avatar::after {
    content: "";
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    border: 2px solid #198754;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.doctor-consultation-container .consultation-card:hover .doctor-avatar {
    transform: scale(1.08);
    box-shadow: 0 6px 24px rgba(25, 135, 84, 0.3);
}

.doctor-consultation-container .doctor-name {
    font-size: 16px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 0;
    letter-spacing: -0.3px;
    margin-top: 0px;
    text-align: left;
}

.doctor-consultation-container .consultation-details {
    display: flex;
    gap: 20px;
}

.doctor-consultation-container .detail-item {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.doctor-consultation-container .detail-label {
    font-size: 11px;
    font-weight: 700;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.doctor-consultation-container .detail-value {
    font-size: 15px;
    font-weight: 600;
    color: #1f2937;
    word-break: break-word;
}

.doctor-consultation-container .consultation-status {
    display: flex;
    justify-content: end;
    gap: 15px;
}

.doctor-consultation-container .case-id {
    font-size: 16px;
    font-weight: 800;
    color: #198754;
    letter-spacing: -0.5px;
}

.doctor-consultation-container .badge-status {
    display: inline-block;
    padding: 3px 5px;
    border-radius: 24px;
    line-height: 1;
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    width: fit-content;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    border: 2px solid;
}

.doctor-consultation-container .badge-status.pending {
    background: linear-gradient(135deg, #fff3cd 0%, #fffbeb 100%);
    color: #92400e;
    border-color: #f59e0b;
    box-shadow: 0 2px 8px rgba(245, 158, 11, 0.15);
}

.doctor-consultation-container .badge-status.pending:hover {
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.25);
    transform: translateY(-1px);
}

.doctor-consultation-container .badge-status.success {
    background: linear-gradient(135deg, #cdffe0 0%, #bdffe3 100%);
    color: #0d9d57;
    border-color: #14cb72;
    box-shadow: 0 4px 12px rgb(11 245 124 / 15%);
}

.doctor-consultation-container .badge-status.success:hover {
    box-shadow: 0 4px 12px rgb(11 245 124 / 25%);
    transform: translateY(-1px);
}

.doctor-consultation-container .badge-type {
    display: inline-block;
    padding: 3px 5px;
    border-radius: 24px;
    line-height: 1;
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 2px solid;
    transition: all 0.3s ease;
}

.doctor-consultation-container .badge-type.live-consultation {
    background: linear-gradient(135deg, #d4f3e8 0%, #c6f6d5 100%);
    color: #065f46;
    border-color: #6ee7b7;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.15);
}

.doctor-consultation-container .badge-type.live-consultation:hover {
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.25);
    transform: translateY(-1px);
}

.doctor-consultation-container .badge-type.phone-consultation {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    color: #1e40af;
    border-color: #60a5fa;
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.15);
}

.doctor-consultation-container .badge-type.phone-consultation:hover {
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.25);
    transform: translateY(-1px);
}

.doctor-consultation-container .badge-type.video-consultation {
    background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 100%);
    color: #5b21b6;
    border-color: #c084fc;
    box-shadow: 0 2px 8px rgba(168, 85, 247, 0.15);
}

.doctor-consultation-container .badge-type.video-consultation:hover {
    box-shadow: 0 4px 12px rgba(168, 85, 247, 0.25);
    transform: translateY(-1px);
}

.doctor-consultation-container .btn-consultation-primary {
    background: linear-gradient(135deg, #198754 0%, #157347 100%);
    color: white;
    border: none;
    padding: 12px 32px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(25, 135, 84, 0.2);
    position: relative;
    overflow: hidden;
}

.doctor-consultation-container .btn-consultation-primary::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    transform: translate(-50%, -50%);
    transition:
        width 0.6s,
        height 0.6s;
}

.doctor-consultation-container .btn-consultation-primary:hover {
    background: linear-gradient(135deg, #157347 0%, #0f5132 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(25, 135, 84, 0.3);
    color: white;
}

.doctor-consultation-container .btn-consultation-primary:hover::before {
    width: 300px;
    height: 300px;
}

.doctor-consultation-container .btn-consultation-primary:active {
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(25, 135, 84, 0.2);
}

/* Responsive Adjustments */
@media (max-width: 992px) {
    .doctor-consultation-container .consultation-title {
        font-size: 22px;
        padding: 24px 24px 0 24px;
    }

    .doctor-consultation-container .consultation-tabs {
        padding: 0 24px;
        margin-top: 20px;
    }

    .doctor-consultation-container .consultation-tabs .nav-link {
        margin-right: 28px;
    }

    .doctor-consultation-container .consultation-content {
        padding: 24px;
    }
}

@media (max-width: 768px) {
    .doctor-consultation-container {
        border-radius: 10px;
    }

    .doctor-consultation-container .consultation-title {
        font-size: 20px;
        padding: 20px 16px 0 16px;
    }

    .doctor-consultation-container .consultation-tabs {
        padding: 0 16px;
        margin-top: 16px;
    }

    .doctor-consultation-container .consultation-tabs .nav-link {
        padding: 12px 0;
        font-size: 14px;
        margin-right: 24px;
    }

    .doctor-consultation-container .consultation-content {
        padding: 16px;
    }

    .doctor-consultation-container .consultation-card {
        margin-bottom: 16px;
    }

    .doctor-consultation-container .doctor-avatar {
        width: 75px;
        height: 75px;
        border-width: 3px;
    }

    .doctor-consultation-container .doctor-name {
        font-size: 14px;
    }

    .doctor-consultation-container .consultation-details {
        gap: 16px;
    }

    .doctor-consultation-container .detail-item {
        gap: 4px;
    }

    .doctor-consultation-container .detail-label {
        font-size: 10px;
    }

    .doctor-consultation-container .detail-value {
        font-size: 14px;
    }

    .doctor-consultation-container .consultation-status {
        gap: 16px;
    }

    .doctor-consultation-container .case-id {
        font-size: 16px;
    }

    .doctor-consultation-container .badge-type {
        padding: 6px 12px;
        font-size: 11px;
    }

    .doctor-consultation-container .badge-status {
        padding: 5px 12px;
        font-size: 11px;
    }

    .doctor-consultation-container .btn-consultation-primary {
        padding: 10px 24px;
        font-size: 13px;
    }

    .doctor-consultation-container .text-end {
        text-align: left !important;
    }
}

@media (max-width: 576px) {
    .doctor-consultation-container .consultation-title {
        font-size: 18px;
    }

    .doctor-consultation-container .consultation-tabs .nav-link {
        margin-right: 16px;
        font-size: 13px;
    }

    .doctor-consultation-container .doctor-avatar {
        width: 65px;
        height: 65px;
    }

    .doctor-consultation-container .detail-value {
        font-size: 13px;
    }

    .doctor-consultation-container .case-id {
        font-size: 15px;
    }

    .doctor-consultation-container .btn-consultation-primary {
        width: 100%;
    }
}

/* ========== Doctor Consultation Enhanced Styles END ========== */
/* ========== Doctor Prescription Enhanced Styles ========== */

.doctor-consultation-container .prescription-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.doctor-consultation-container .prescription-card {
    border: 1px solid #e8ecf1;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    background: linear-gradient(135deg, #ffffff 0%, #f9fafb 100%);
    position: relative;
}

.doctor-consultation-container .prescription-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #198754 0%, #17a2b8 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.doctor-consultation-container .prescription-card:hover {
    box-shadow: 0 8px 32px rgba(25, 135, 84, 0.15);
    transform: translateY(-4px);
    border-color: #d0e8dc;
}

.doctor-consultation-container .prescription-card:hover::before {
    opacity: 1;
}

.doctor-consultation-container .prescription-card-body {
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: space-between;
}

.doctor-consultation-container .prescription-info-item {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.doctor-consultation-container .prescription-label {
    font-size: 11px;
    font-weight: 700;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.doctor-consultation-container .prescription-value {
    font-size: 15px;
    font-weight: 600;
    color: #1f2937;
    word-break: break-word;
}

.doctor-consultation-container .prescription-id {
    font-size: 18px;
    font-weight: 800;
    color: #198754;
    letter-spacing: -0.5px;
}

.doctor-consultation-container .prescription-remark {
    font-size: 13px;
    font-weight: 500;
    color: #059669;
    background-color: #d4f3e8;
    padding: 8px 12px;
    border-radius: 6px;
    border: 1px solid #a8e6d5;
    display: inline-block;
    max-width: 100%;
}

.doctor-consultation-container .btn-prescription-view {
    background: linear-gradient(135deg, #198754 0%, #157347 100%);
    color: white;
    border: none;
    padding: 10px 16px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(25, 135, 84, 0.2);
    white-space: nowrap;
    position: relative;
    overflow: hidden;
}

.doctor-consultation-container .btn-prescription-view i {
    margin-right: 6px;
}

.doctor-consultation-container .btn-prescription-view::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    transform: translate(-50%, -50%);
    transition:
        width 0.6s,
        height 0.6s;
}

.doctor-consultation-container .btn-prescription-view:hover {
    background: linear-gradient(135deg, #157347 0%, #0f5132 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(25, 135, 84, 0.3);
    color: white;
    text-decoration: none;
}

.doctor-consultation-container .btn-prescription-view:hover::before {
    width: 300px;
    height: 300px;
}

.doctor-consultation-container .btn-prescription-view:active {
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(25, 135, 84, 0.2);
}

/* Responsive Adjustments for Prescriptions */
@media (max-width: 992px) {
    .doctor-consultation-container .prescription-card-body {
        padding: 16px;
    }

    .doctor-consultation-container .prescription-value {
        font-size: 14px;
    }

    .doctor-consultation-container .btn-prescription-view {
        padding: 8px 12px;
        font-size: 12px;
    }
}

@media (max-width: 768px) {
    .doctor-consultation-container .prescription-list {
        gap: 16px;
    }

    .doctor-consultation-container .prescription-card {
        margin-bottom: 8px;
    }

    .doctor-consultation-container .prescription-card-body {
        padding: 14px;
    }

    .doctor-consultation-container .prescription-label {
        font-size: 10px;
    }

    .doctor-consultation-container .prescription-value {
        font-size: 13px;
    }

    .doctor-consultation-container .prescription-id {
        font-size: 16px;
    }

    .doctor-consultation-container .prescription-remark {
        font-size: 12px;
        padding: 6px 10px;
    }

    .doctor-consultation-container .btn-prescription-view {
        padding: 8px 12px;
        font-size: 11px;
    }
}

@media (max-width: 576px) {
    .doctor-consultation-container .prescription-value {
        font-size: 12px;
    }

    .doctor-consultation-container .prescription-id {
        font-size: 15px;
    }

    .doctor-consultation-container .btn-prescription-view {
        width: 100%;
        text-align: center;
    }
}

/* ========== Doctor Prescription Enhanced Styles END ========== */

/* ========== My Account Second Opinion Page Styles ========== */
.my-account .second-opinion-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 15px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    margin-bottom: 20px;
}

.my-account .second-opinion-card .card-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
    border-bottom: 2px dashed #ddd;
    padding-bottom: 10px;
}

.my-account .second-opinion-card .card-row:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.my-account .second-opinion-card .card-row:last-child {
    margin-bottom: 0;
}

.my-account .second-opinion-card .label {
    font-size: 14px;
    font-weight: 700;
}

.my-account .second-opinion-card .value {
    font-size: 15px;
    font-weight: 500;
}

.my-account .second-opinion-card .status {
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
}

/* Pending */
.my-account .second-opinion-card .status.pending {
    background-color: #fffbeb;
    color: #92400e;
}

/* Accepted */
.my-account .second-opinion-card .status.accepted {
    background-color: #ecfdf5;
    color: #065f46;
}

/* Rejected */
.my-account .second-opinion-card .status.rejected {
    background-color: #fef2f2;
    color: #991b1b;
}

.my-account .ask-question-list .question-card {
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 14px;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;

    transition: all 0.25s ease;
    margin-bottom: 20px;
}

.my-account .ask-question-list .question-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(23, 34, 56, 0.08);
    border-color: rgba(25, 131, 138, 0.25);
}

.my-account .ask-question-list .question-left {
    display: flex;
    align-items: center;
    gap: 15px;
    flex: 1;
}

.my-account .ask-question-list .question-id {
    background: #f1f5f9;
    color: #0f172a;
    font-weight: 700;
    font-size: 14px;
    min-width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.my-account .ask-question-list .question-content {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.my-account .ask-question-list .question-text {
    font-size: 15px;
    font-weight: 600;
    color: var(--blackcolor);
    line-break: anywhere;
    margin: 0;
    line-height: 1.5;
}

.my-account .ask-question-list .question-date {
    font-size: 12px;
    color: #64748b;
}

.my-account .ask-question-list .question-right {
    display: flex;
    align-items: center;
    gap: 30px;
}

.my-account .ask-question-list .status-badge {
    padding: 6px 14px;
    font-size: 12px;
    font-weight: 700;
    border-radius: 5px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.my-account .ask-question-list .status-badge.approved {
    background-color: #ecfdf5;
    color: #065f46;
}

.my-account .ask-question-list .status-badge.pending {
    background-color: #fffbeb;
    color: #92400e;
}

.my-account .ask-question-list .status-badge.rejected {
    background-color: #fef2f2;
    color: #991b1b;
}

.question-detail-section .reply-card {
    background: var(--whitecolor);
    border: 1px solid var(--bordercolor);
    border-radius: 20px;
    box-shadow: 0 8px 22px rgba(15, 20, 25, 0.06);
    padding: 20px;
    max-width: 100%;
}

.question-detail-section .reply-tag {
    display: inline-block;
    background: #f2f4f7;
    color: #333;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 13px;
    margin-bottom: 10px;
}

.question-detail-section .reply-textarea {
    width: 100%;
    height: 100px;
    border-radius: 8px;
    font-size: 14px;
    resize: none;
    outline: none;
}

.question-detail-section .reply-note {
    font-size: 12px;
    color: #666;
    margin: 10px 0 15px;
}

.my-account .medical-quote-list .quote-card {
    background: var(--whitecolor);
    border-radius: 15px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border: 1px solid 1px solid rgba(0, 0, 0, 0.04);
    border: 1px solid #ddd;
    padding: 18px 20px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    transition: all 0.25s ease;
    margin-bottom: 20px;
}

.my-account .medical-quote-list .quote-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(23, 34, 56, 0.1);
    border-color: rgba(25, 131, 138, 0.25);
}

.my-account .medical-quote-list .quote-main {
    flex: 1;
}

.my-account .medical-quote-list .quote-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 14px;
}

.my-account .medical-quote-list .quote-id {
    font-size: 14px;
    font-weight: 700;
    color: var(--blackcolor);
}

.my-account .medical-quote-list .quote-status {
    font-size: 12px;
    font-weight: 700;
    padding: 5px 14px;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.my-account .medical-quote-list .quote-status.pending {
    background: #fff7e6;
    color: #d97706;
}

.my-account .medical-quote-list .quote-status.approved {
    background: #e6f7ef;
    color: #0f9d58;
}

.my-account .medical-quote-list .quote-status.rejected {
    background: #fdecec;
    color: #dc2626;
}

.my-account .medical-quote-list .quote-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px 20px;
}

.my-account .medical-quote-list .quote-item label {
    font-size: 12px;
    font-weight: 700;
    display: block;
    margin-bottom: 2px;
}

.my-account .medical-quote-list .quote-item p {
    font-size: 14px;
    font-weight: 500;
    margin: 0;
    color: var(--graycolor);
    line-break: anywhere;
}

.my-account .medical-quote-list .quote-action {
    display: flex;
    align-items: center;
}

/* ========== Health Plan Cards Styles ========== */

.health-plan-card {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    border: 1px solid;
    text-decoration: none;
    min-height: 200px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.health-plan-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.1);
    transition: left 0.3s ease;
}

.health-plan-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15);
}

.health-plan-card:hover::before {
    left: 100%;
}

.health-plan-card-body {
    text-align: center;
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.health-plan-icon {
    font-size: 48px;
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    transition: all 0.3s ease;
}

.health-plan-card:hover .health-plan-icon {
    transform: scale(1.1);
}

.health-plan-title {
    font-size: 18px;
    font-weight: 700;
    margin: 0;
    letter-spacing: -0.3px;
    transition: all 0.3s ease;
}

.health-plan-badge {
    display: inline-block;
    background-color: rgba(0, 0, 0, 0.1);
    padding: 6px 16px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.3s ease;
}

/* Blue Card - Health Plan */
.health-plan-card-blue {
    background-color: #e3f2fd;
    border-color: #2196f3;
    color: #1976d2;
}

.health-plan-card-blue .health-plan-icon {
    background-color: #bbdefb;
    color: #2196f3;
}

.health-plan-card-blue .health-plan-badge {
    background-color: rgba(33, 150, 243, 0.2);
    color: #2196f3;
}

.health-plan-card-blue:hover {
    background-color: #bbdefb;
    border-color: #1976d2;
    box-shadow: 0 12px 32px rgba(33, 150, 243, 0.3);
}

/* Pink Card - Maternity */
.health-plan-card-pink {
    background-color: #fce4ec;
    border-color: #e91e63;
    color: #c2185b;
}

.health-plan-card-pink .health-plan-icon {
    background-color: #f8bbd0;
    color: #e91e63;
}

.health-plan-card-pink .health-plan-badge {
    background-color: rgba(233, 30, 99, 0.2);
    color: #e91e63;
}

.health-plan-card-pink:hover {
    background-color: #f8bbd0;
    border-color: #c2185b;
    box-shadow: 0 12px 32px rgba(233, 30, 99, 0.3);
}

/* Purple Card - Mental Health */
.health-plan-card-purple {
    background-color: #f3e5f5;
    border-color: #9c27b0;
    color: #7b1fa2;
}

.health-plan-card-purple .health-plan-icon {
    background-color: #e1bee7;
    color: #9c27b0;
}

.health-plan-card-purple .health-plan-badge {
    background-color: rgba(156, 39, 176, 0.2);
    color: #9c27b0;
}

.health-plan-card-purple:hover {
    background-color: #e1bee7;
    border-color: #7b1fa2;
    box-shadow: 0 12px 32px rgba(156, 39, 176, 0.3);
}

/* Green Card - Health Insurance */
.health-plan-card-green {
    background-color: #e8f5e9;
    border-color: #4caf50;
    color: #388e3c;
}

.health-plan-card-green .health-plan-icon {
    background-color: #c8e6c9;
    color: #4caf50;
}

.health-plan-card-green .health-plan-badge {
    background-color: rgba(76, 175, 80, 0.2);
    color: #4caf50;
}

.health-plan-card-green:hover {
    background-color: #c8e6c9;
    border-color: #388e3c;
    box-shadow: 0 12px 32px rgba(76, 175, 80, 0.3);
}

.my-account .prescription-tabs-pro {
    display: flex;
    background: #f1f5f9;
    padding: 6px;
    border-radius: 15px;
    border-bottom: none;
    gap: 5px;
    margin: 0px auto;
    max-width: 420px;
    width: 100%;
    margin-bottom: 20px;
}

.my-account .prescription-tabs-pro .nav-item {
    margin-bottom: 0;
}

.my-account .prescription-tabs-pro .nav-link {
    border: none;
    color: var(--blackcolor);
    border-radius: 10px;
    padding: 10px 26px;
    font-size: 14px;
    font-weight: 700;
    background: transparent;
    transition: all 0.25s ease;
    min-width: 200px;
    text-align: center;
}

.my-account .prescription-tabs-pro .nav-link.active {
    background: var(--greencolor);
    color: var(--whitecolor) !important;
    box-shadow: 0 6px 18px rgba(25, 131, 138, 0.35);
}

.my-account .prescription-tabs-pro .nav-link::after {
    display: none;
}

.my-account .prescription-heading {
    font-size: 18px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 15px;
}

.my-account .prescription-card {
    background: var(--whitecolor);
    border: 1px solid #ddd;
    border-radius: 15px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    padding: 15px;
}

.my-account .prescription-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 38px rgba(23, 34, 56, 0.1);
    border-color: rgba(25, 131, 138, 0.25);
}

.my-account .prescription-card .patient-name {
    font-size: 16px;
    font-weight: 700;
    color: var(--blackcolor);
    margin-bottom: 10px;
}

.my-account .prescription-card .prescription-meta {
    font-size: 13px;
    margin-bottom: 10px;
}

.my-account .prescription-card .prescription-desc {
    font-size: 14px;
}

.my-account .empty-prescription-state {
    background: var(--whitecolor);
    border: 1px dashed #ddd;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border-radius: 15px;
    padding: 20px;
    text-align: center;
}

.my-account .empty-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 16px;
    border-radius: 50%;
    background: #e6f7f8;
    display: flex;
    align-items: center;
    justify-content: center;
}

.my-account .empty-icon i {
    font-size: 28px;
    color: #19838a;
}

.my-account .empty-prescription-state h4 {
    font-size: 18px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 8px;
}

.my-account .empty-prescription-state p {
    font-size: 14px;
    color: #64748b;
    max-width: 420px;
    margin: 0 auto 20px;
}

.my-account .quote-detail-wrapper .quote-header-card {
    background: var(--whitecolor);
    padding: 15px;
    border-radius: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    margin-bottom: 20px;
    border: 1px solid #ddd;
}

.my-account .quote-detail-wrapper .quote-header-left {
    display: flex;
    align-items: center;
    gap: 15px;
}

.my-account .quote-detail-wrapper .quote-header-left h3 {
    margin: 0;
    font-size: 17px;
    font-weight: 700;
}

.my-account .quote-detail-wrapper .quote-status {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
}

.my-account .quote-detail-wrapper .quote-status.pending {
    background: #fff4d6;
    color: #b7791f;
}

.my-account .quote-detail-wrapper .quote-status.approved {
    background: #e6f7ef;
    color: #047857;
}

.my-account .quote-detail-wrapper .quote-status.rejected {
    background: #fdecec;
    color: #b91c1c;
}

.my-account .quote-detail-wrapper .quote-info-card {
    background: var(--whitecolor);
    padding: 15px;
    border-radius: 15px;
    margin-bottom: 20px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border: 1px solid #ddd;
}

.my-account .quote-detail-wrapper .quote-info-card label {
    font-size: 12px;
    font-weight: 700;
    display: block;
    margin-bottom: 2px;
}

.my-account .quote-detail-wrapper .quote-info-card p {
    font-size: 14px;
    font-weight: 500;
    margin: 0;
    color: var(--graycolor);
    line-break: anywhere;
    margin-bottom: 20px;
}

/* Response */
.my-account .quote-detail-wrapper .quote-response-card {
    background: var(--whitecolor);
    padding: 15px;
    border-radius: 15px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border: 1px solid #ddd;
}

.my-account .quote-detail-wrapper .response {
    padding: 10px;
    border-radius: 15px;
    font-size: 14px;
}

.my-account .quote-detail-wrapper .response.pending {
    background: #f9fafb;
    border-left: 4px solid #f59e0b;
}

.my-account .quote-detail-wrapper .response.approved {
    background: #ecfdf5;
    border-left: 4px solid #10b981;
}

.my-account .quote-detail-wrapper .response.rejected {
    background: #fef2f2;
    border-left: 4px solid #ef4444;
}

.close-btn {
    background: rgba(9, 60, 69, 0.08);
    border: none;
    border-radius: 8px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.my-account .billing-card {
    background: var(--whitecolor);
    padding: 15px;
    border-radius: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    margin-bottom: 20px;
    border: 1px solid #ddd;
    transition: all 0.2s ease;
}

.my-account .billing-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
}

.my-account .billing-left h5 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
}

.my-account .billing-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    font-size: 13px;
}

.my-account .billing-meta p {
    margin-bottom: 0px;
}

.my-account .billing-meta label {
    font-size: 12px;
    font-weight: 700;
    display: block;
    margin-bottom: 5px;
}

.my-account .billing-meta p {
    font-size: 14px;
    font-weight: 500;
    margin: 0;
    color: var(--graycolor);
    line-break: anywhere;
}

.my-account .billing-right {
    text-align: right;
    min-width: 250px;
}

.my-account .billing-right .amount {
    font-size: 20px;
    font-weight: 700;
    color: var(--greencolor);
    margin-bottom: 15px;
}

.my-account .billing-card .status-badge {
    font-size: 12px;
    font-weight: 700;
    padding: 5px 14px;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.my-account .status-badge.paid {
    background: #ecfdf5;
    border-left: 4px solid #10b981;
}

.my-account .billing-actions {
    margin-top: 10px;
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.invoice-modal {
    border-radius: 15px;
    overflow: hidden;
}

.invoice-modal .invoice-info {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    margin-bottom: 20px;
}

.invoice-modal .invoice-info label {
    font-size: 12px;
    font-weight: 700;
    color: var(--blackcolor);
}

.invoice-modal .invoice-info p {
    font-weight: 600;
    margin: 0;
}

.invoice-modal .invoice-table {
    border-top: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    padding: 12px 0;
}

.invoice-modal .invoice-table .table-head,
.invoice-modal .invoice-table .table-row {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 10px;
    font-size: 14px;
}

.invoice-modal .invoice-table .table-head {
    font-weight: 700;
    color: #374151;
    margin-bottom: 8px;
}

.invoice-modal .invoice-table .table-row {
    color: #4b5563;
}

.invoice-modal .invoice-total {
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    font-weight: 700;
    margin-top: 18px;
}

.webinar-stats .box {
    text-align: center;
}

.webinar-stats .box .num {
    font-size: 60px;
    margin-bottom: 20px;
    text-transform: uppercase;
    font-family: verdana;
    font-weight: 700;
    color: #fff;
    text-shadow:
        1px 1px 1px #919191,
        1px 2px 1px #919191,
        1px 3px 1px #919191,
        1px 4px 1px #919191,
        1px 5px 1px #919191,
        1px 6px 1px #919191,
        1px 7px 1px #919191,
        1px 8px 1px #919191,
        1px 9px 1px #919191,
        1px 10px 1px #919191,
        1px 14px 6px rgba(16, 16, 16, 0.4),
        1px 14px 10px rgba(16, 16, 16, 0.2),
        1px 14px 35px rgba(16, 16, 16, 0.2),
        1px 14px 60px rgba(16, 16, 16, 0.4);
}

.webinar-stats .box .title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 5px;
}

.webinar-stats .box p {
    color: var(--gray);
}

.webinar-box {
    margin-bottom: 30px;
    display: block;
}

.webinar-box img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    object-position: top;
    background-color: #eee;
    border-radius: 20px;
    display: block;
    margin-bottom: 15px;
}

.webinar-box * {
    transition: all 0.3s 0s linear;
}

.webinar-box:hover * {
    color: var(--greencolor);
}

.webinar-box .details-wrapper {
    display: flex;
    align-items: start;
    gap: 25px;
}

.date-rotate-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    perspective: 200px;
    perspective-origin: 50%;
    width: 50px;
}

.date-rotate-wrapper .image-cube {
    height: 50px;
    position: relative;
    transform-style: preserve-3d;
    width: 50px;
}

.date-rotate-wrapper .image-cube.spin {
    animation: spin 6s linear infinite;
    animation-delay: 2s;
}

@keyframes spin {
    25% {
        transform: rotateY(-90deg);
    }

    50% {
        transform: rotateY(-90deg);
    }

    75% {
        transform: rotateY(-180deg);
    }

    to {
        transform: rotateY(-180deg);
    }
}

.date-holder {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1.3;
    text-align: center;
    font-size: 12px;
}

.date-holder span {
    display: block;
}

.date-holder span:first-child {
    font-size: 1.75rem;
    font-weight: bold;
}

.date-rotate-wrapper .image-cube div {
    align-items: center;
    backface-visibility: hidden;
    color: inherit;
    display: flex;
    height: 50px;
    justify-content: center;
    position: absolute;
    width: 50px;
    /* box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
    border-radius: 0px 10px 10px 0px; */
}

.date-rotate-wrapper .front {
    transform: translateZ(25px);
}

.date-rotate-wrapper .right {
    transform: rotateY(-270deg) translateX(25px);
    transform-origin: 100% 0;
}

.date-rotate-wrapper .back {
    transform: translateZ(-25px) rotateY(180deg);
}

.date-rotate-wrapper .left {
    transform: rotateY(270deg) translateX(-25px);
    transform-origin: 0 50%;
}

.webinar-box .details-wrapper .details {
    width: calc(100% - 75px);
}

.webinar-box .details-wrapper .details .title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 5px;
}

.webinar-box .details-wrapper .details p {
    margin: 0px;
    font-weight: 500;
}

.webinar-how-it-works .box {
    padding: 30px;
    background: linear-gradient(
        126deg,
        rgba(240, 240, 240, 1) 0%,
        rgb(213 219 255) 100%
    );
    border-radius: 20px;
    margin-top: 70px;
    height: calc(100% - 70px);
}

.webinar-how-it-works .box.color2 {
    background: linear-gradient(
        126deg,
        rgba(240, 240, 240, 1) 0%,
        rgb(255 230 208) 100%
    );
}

.webinar-how-it-works .box.color3 {
    background: linear-gradient(
        126deg,
        rgba(240, 240, 240, 1) 0%,
        rgb(206 234 255) 100%
    );
}

.webinar-how-it-works .box.color4 {
    background: linear-gradient(
        126deg,
        rgba(240, 240, 240, 1) 0%,
        rgb(241 255 198) 100%
    );
}

.webinar-how-it-works .box img {
    width: 100%;
    height: 180px;
    object-fit: contain;
    margin-bottom: 20px;
    margin-top: -120px;
}

.webinar-how-it-works .box .title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}

.webinar-how-it-works .box p {
    margin: 0px;
}

.webinar-listing .filters {
    margin-bottom: 30px;
    background-color: white;
    border: 1px solid #afafaf;
    border-radius: 20px;
    padding: 20px;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1);
}

.webinar-listing .filters .form-control {
    border-radius: 50px;
    background-color: #f1f1f1;
    border: 1.5px solid #ddd;
    color: black;
    padding: 12px 20px;
    height: auto;
    font-weight: 500;
}

.webinar-need-help .need-img {
    width: 100%;
    border-radius: 20px;
}

.webinar-testimonials {
    background: url("https://www.secondmedic.com/app/asset/consult/image/webinar-images/bg.webp");
    background-size: cover;
    margin-bottom: 40px;
}

.webinar-testimonials .box {
    background-color: white;
    padding: 25px;
    border-radius: 20px;
    box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.03);
}

.webinar-testimonials .box i {
    font-size: 30px;
    color: var(--black);
    margin-bottom: 10px;
    opacity: 0.2;
}

.webinar-testimonials .box p {
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 0px;
    text-align: justify;
}

.webinar-testimonials .box hr {
    margin: 20px 0px;
}

.webinar-testimonials .user-wrapper {
    display: flex;
    align-items: center;
    gap: 15px;
}

.webinar-testimonials .user-wrapper img {
    width: 50px !important;
    height: 50px;
    display: block;
    object-fit: contain;
}

.webinar-testimonials .user-wrapper .name {
    width: calc(100% - 65px);
}

.webinar-testimonials .box .title {
    margin-bottom: 3px;
    font-size: 14px;
    font-weight: 700;
}

.webinar-testimonials .box .pos {
    margin: 0px;
    font-size: 12px;
}

.webinar-testimonials .owl-dots {
    margin-top: 15px;
}

/* Webinar Work End */

/* Webinar Detail Page Work Start */

.webinar-details .date-time {
    margin-bottom: 15px;
    font-size: 15px;
    font-weight: 700;
}

.webinar-details .main-img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    object-position: top;
    background-color: #eee;
    border-radius: 20px;
    display: block;
    margin-bottom: 15px;
    margin: 30px 0px;
}

.webinar-details .sub-heading {
    margin-top: 40px;
    margin-bottom: 15px;
    font-weight: 700;
    font-size: 20px;
    color: var(--greencolor);
}

.webinar-details .right-side {
    position: sticky;
    top: 150px;
}

.webinar-details .right-side .sub-heading {
    margin-top: 0px;
    color: var(--black);
    margin-bottom: 20px;
}

.webinar-details .right-side .box {
    border-radius: 20px;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.03);
    border: 1px solid #ddd;
    overflow: hidden;
}

.webinar-details .right-side img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    object-position: top;
    background-color: #eee;
    display: block;
    margin: 0 auto;
    font-size: 0px;
}

.webinar-details .right-side .box .box-body {
    padding: 20px;
}

.webinar-details .right-side .title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 3px;
}

.webinar-details .right-side p {
    font-size: 16px;
    margin: 0px;
    color: gray;
    font-weight: 600;
}

/* Webinar Detail Page Work End */

/* Webinar Form Work Start */
.webinar-form .section-heading {
    margin-bottom: 15px !important;
}

.webinar-form .section-heading + p {
    font-size: 20px;
    margin-bottom: 50px;
    font-weight: 600;
}

.webinar-form .franchise-form .box {
    border-radius: 20px;
}

/* Webinar Form Work End */

/* Webinar Page Responsive Work Start */
@media (max-width: 992px) {
    .webinar-listing .filters {
        padding: 12.5px 20px;
    }

    .webinar-listing .filters .form-control {
        margin: 7.5px 0px;
    }

    .webinar-how-it-works .box {
        margin-top: 120px;
        height: calc(100% - 120px);
    }

    .webinar-how-it-works .box img {
        height: 150px;
    }

    .webinar-stats .box .num {
        font-size: 40px;
        text-shadow:
            1px 1px 1px #919191,
            1px 2px 1px #919191,
            1px 3px 1px #919191,
            1px 4px 1px #919191,
            1px 5px 1px #919191,
            1px 6px 1px #919191,
            1px 7px 1px #919191,
            1px 8px 1px #919191,
            1px 9px 1px #919191,
            1px 10px 1px #919191,
            1px 10px 6px rgba(16, 16, 16, 0.4),
            1px 10px 10px rgba(16, 16, 16, 0.2),
            1px 10px 35px rgba(16, 16, 16, 0.2),
            1px 10px 60px rgba(16, 16, 16, 0.4);
    }

    .webinar-stats .box .title {
        font-size: 16px;
    }

    .webinar-stats .box p {
        font-size: 12px;
    }
}

@media (max-width: 767px) {
    .webinar-box .details-wrapper .details .title {
        font-size: 18px;
    }

    .webinar-details .section-heading {
        margin-bottom: 10px;
    }

    .webinar-details .date-time {
        font-size: 16px;
    }

    .webinar-details .main-img {
        height: 250px;
        margin: 20px 0px;
    }

    .webinar-details .sub-heading {
        font-size: 18px;
        margin-bottom: 10px;
        margin-top: 20px;
    }

    .webinar-details .right-side {
        margin-top: 20px;
    }

    .franchise-form .section-heading {
        margin-bottom: 10px;
    }

    .webinar-form .section-heading + p {
        margin-bottom: 20px;
        font-size: 16px;
    }

    .webinar-label {
        font-size: 12px;
    }

    .webinar-how-it-works .box {
        padding: 20px;
        margin-top: 50px;
        height: calc(100% - 50px);
        border-radius: 15px;
    }

    .webinar-how-it-works .box img {
        height: 95px;
        margin-top: -60px;
        margin-bottom: 10px;
    }

    .webinar-how-it-works .box .title {
        font-size: 16px;
        margin-bottom: 5px;
    }

    .webinar-how-it-works .box p {
        line-height: 18px;
    }

    .webinar-need-help .need-img {
        border-radius: 15px;
    }
}

/* Webinar Page Responsive Work End */
/* MAIN CARD */
.chat_screen .border {
    border: none !important;
}

.chat_page_screen .col-lg-6 {
    padding: 0;
}

.chat-box {
    background-color: white;
    border-radius: 20px;
    box-shadow: 0px 3px 20px 0px
        rgba(45.000000000000014, 126.99999999999991, 218, 0.1);
    border: 1px solid #ddd;
    position: relative;
    overflow: hidden;
    font-weight: 500;
}

.chat_screen .row {
    margin: 0;
}

/* HEADER */
#header {
    background: var(--greencolor);
    padding: 15px;
    display: flex;
    align-items: center;
    border-radius: 12px 12px 0 0;
}

.chat_doctor_image {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #fff;
}

.doctor_details {
    margin-left: 12px;
}

.doctor_details h6 {
    font-weight: 700;
    margin-bottom: 2px;
}

/* CHAT BODY */
#chat {
    /* background:#19838a; */
    height: 460px;
    overflow-y: auto;
    padding: 15px;
}

/* MESSAGE */
.message_send,
.message_recived {
    max-width: 85%;
    padding: 10px 12px;
    border-radius: 12px;
    margin-bottom: 12px;
    font-size: 14px;
}

.message_send {
    background: #19838a;
    color: #fff !important;
    margin-left: auto;
}

.message_send p {
    color: #fff !important;
}

.message_recived {
    background: var(--blackcolor);
    border: 1px solid #e5e5e5;
    color: var(--blackcolor) !important;
}

.message_send span,
.message_recived label {
    font-weight: 600;
    color: #fff !important;
}

.message_send small,
.message_recived small {
    font-size: 11px;
    opacity: 0.7;
    display: block;
    text-align: left;
    margin-top: 5px;
    color: #fff !important;
}

/* FIRST MESSAGE BOX */
#doctor_first_message {
    background: var(--secondarycolor);
    border: 1px dashed #0d6efd;
    padding: 12px;
}

/* FOOTER BAR */
#send_message_bar {
    background: #111;
    padding: 10px;
}

#send_message_bar input {
    border-radius: 20px 0 0 20px;
}

#send_message_bar button {
    border-radius: 0 20px 20px 0;
}

/* SCROLL BAR */
#chat::-webkit-scrollbar {
    width: 4px;
}

#chat::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

.payemnt-invoice .online-doctor-receipt .box {
    background-color: white;
    border-radius: 20px;
    box-shadow: 0px 3px 20px 0px
        rgba(45.000000000000014, 126.99999999999991, 218, 0.1);
    border: 1px solid #ddd;
    position: relative;
    overflow: hidden;
    font-weight: 500;
    padding: 20px;
}

.payemnt-invoice .online-doctor-receipt .logo {
    max-width: 160px;
}

.online-doctor-receipt h3 {
    font-weight: 700;
    color: var(--blackcolor);
    font-size: 18px;
}

.payemnt-invoice .basic-info {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
    margin-top: 25px;
}

.payemnt-invoice .basic-info .info-item p {
    font-size: 14px;
    margin-bottom: 4px;
}

.payemnt-invoice .basic-info .info-item b {
    font-size: 15px;
    color: var(--blackcolor);
}

.payemnt-invoice .table-h {
    font-size: 20px;
    font-weight: 700;
    margin: 30px 0 15px;
    border-bottom: 2px solid #00a6a6;
    display: inline-block;
}

.payemnt-invoice .table {
    margin-top: 15px;
}

.payemnt-invoice .table th {
    background: #f3f3f3;
    font-weight: 600;
}

.payemnt-invoice .table td,
.table th {
    padding: 12px;
    vertical-align: middle;
}

.grievance .info-box {
    background: linear-gradient(160deg, #0f766e, #0d9488);
    border-radius: 15px;
    padding: 30px;
    color: var(--whitecolor);
    height: 100%;
    box-shadow: rgba(0, 0, 0, 0.09) 0px 0.5rem 1rem;
}

.grievance .info-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.grievance .info-list i {
    width: 35px;
    height: 35px;
    background-color: #fff;
    color: #0d9488;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
}

.grievance .info-list li {
    display: flex;
    gap: 14px;
    margin-bottom: 20px;
    align-items: flex-start;
}

.grievance .info-list p,
.grievance .info-list a {
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
    text-decoration: none;
    width: calc(100% - 49px);
    color: var(--whitecolor);
}

/* ===== CHAT LAYOUT ===== */
.chat-window {
    display: flex;
    height: calc(90vh - 100px);
    overflow: hidden;
}

.chat-window .chat-cont-left {
    width: 400px;
    background: #ffffff;
    border-right: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
}

.chat-window .chat-cont-left .chat-header {
    padding: 16px;
    font-size: 18px;
    font-weight: 700;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #e5e7eb;
}

.chat-window .chat-search {
    padding: 12px;
}

.chat-window .chat-search .form-control {
    background-color: var(--backgroundcolor);
    color: #393939;
}

.chat-window .search-input {
    position: relative;
}

.chat-window .chat-search .input-group-prepend {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #757575;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: none;
}

/* ===== CHAT USER LIST ===== */
.chat-window .chat-users-list {
    flex: 1;
    overflow: hidden;
}

.chat-window .chat-scroll {
    overflow-y: auto;
    height: 100%;
}

.chat-window .chat-users-list .media {
    padding: 12px 14px;
    display: flex;
    gap: 12px;
    cursor: pointer;
    border-left: 4px solid transparent;
    transition: all 0.2s ease;
}

.chat-window .chat-users-list .media:hover {
    background: #f8fafc;
}

.chat-window .chat-users-list .media.active {
    background: #e6f7f5;
    border-left-color: var(--greencolor);
}

.chat-window .user-name {
    font-weight: 600;
    font-size: 14px;
    color: var(--blackcolor);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.chat-window .user-last-chat {
    font-size: 12px;
    color: var(--blackcolor);
}

.chat-window .chat-cont-right {
    flex: 1;
    display: flex;
    flex-direction: column;
    width: calc(100% - 400px);
}

/* ===== CHAT HEADER ===== */
.chat-window .chat-cont-right .chat-header {
    padding: 14px 18px;
    background: #ffffff;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.chat-window .chat-cont-right .user-media {
    gap: 10px;
    display: flex;
    align-items: center;
}

.chat-window .chat-cont-right .user-name {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 0px;
}

/* ===== CHAT BODY ===== */
.chat-window .chat-body {
    flex: 1;
    padding: 15px;
    overflow-y: auto;
}

.chat-window .chat-date {
    text-align: center;
    font-size: 12px;
    color: var(--blackcolor);
    margin: 20px 0;
}

.chat-window .last-chat-time {
    font-size: 13px;
}

/* ===== MESSAGE BUBBLES ===== */
.chat-window .media.sent .msg-box {
    background: #fff;
    color: var(--blackcolor);
    margin-left: auto;
}

.chat-window .media.received .msg-box {
    background: #ffffff;
    color: #0f172a;
}

.chat-window .msg-box {
    padding: 12px 14px;
    border-radius: 15px;
    max-width: 65%;
    box-shadow:
        rgba(0, 0, 0, 0.02) 0px 1px 3px 0px,
        rgba(27, 31, 35, 0.15) 0px 0px 0px 1px;
    font-size: 14px;
}

.chat-window .msg-box p {
    margin-bottom: 5px;
}

.chat-window .media.sent {
    justify-content: flex-end;
}

.chat-window .media.received {
    justify-content: flex-start;
}

/* ===== MESSAGE TIME ===== */
.chat-window .chat-msg-info {
    margin-top: 5%;
    text-align: right;
    font-size: 11px;
    opacity: 0.7;
}

/* ===== CHAT FOOTER ===== */
.chat-window .chat-footer {
    padding: 15px;
    background: #ffffff;
    border-top: 1px solid #e5e7eb;
}

.chat-window .chat-footer .input-group {
    background: rgb(248 249 250);
    border-radius: 30px;
    padding: 6px 10px;
}

.chat-window .chat-footer input {
    border: none;
    background: transparent;
    padding-left: 10px;
}

.chat-window .msg-send-btn {
    background: var(--greencolor);
    color: #fff;
    border-radius: 50%;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.chat-window .msg-send-btn:hover {
    background: var(--secondarycolor);
}

/* ===== AVATARS ===== */
.chat-window .avatar-img {
    width: 42px;
    height: 42px;
    object-fit: cover;
    border-radius: 50%;
    border: 1px solid #e5e7eb;
}

.chat-window .chat-scroll::-webkit-scrollbar {
    width: 5px;
}

.chat-window .chat-scroll::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 6px;
}

.content-page p {
    font-size: 14px;
}

.content-page h1,
.content-page h2,
.content-page h3,
.content-page h4,
.content-page h5,
.content-page h6 {
    color: var(--blackcolor);
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 15px;
}

/* Main dropdown */
.search-list {
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    overflow: hidden;
    background: #fff;
}

/* UL scroll */
.search-list > ul:first-child {
    list-style: none;
    padding: 0;
    margin: 0;
    max-height: 380px;
    overflow-y: auto;
}

/* Remove default bullets */
.search-list li {
    list-style: none;
}

/* Section headers: Doctors / Medicines / Lab Package */
.search-list li > small > b {
    display: block;
    padding: 8px 14px;
    font-size: 12px;
    text-transform: uppercase;
    color: #6c757d;
    background: #f8f9fa;
    border-top: 1px solid #eee;
}

/* Result item */
.search-list li a {
    display: block;
    padding: 10px 14px;
    text-decoration: none;
    color: #212529;
    transition: background 0.2s ease;
}

/* Hover effect */
.search-list li a:hover {
    background: #f4f7ff;
}

/* Title text */
.search-list li a {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
}

/* Doctor qualification text */
.search-list li a small {
    display: block;
    font-size: 12px;
    color: #6c757d;
    margin-top: 3px;
}

/* Remove ugly yellow mark */
.search-list li a mark {
    background: transparent;
    padding: 0;
    color: #6c757d;
    font-weight: 400;
}

/* Medicine mg badge */
.search-list .badge {
    display: inline-block;
    margin-top: 5px;
    font-size: 11px;
    padding: 3px 8px;
    border-radius: 12px;
}

/* Action buttons wrapper */
.search-action-btns {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    padding: 12px;
    margin: 0;
    list-style: none;
    border-top: 1px solid #eee;
    background: #fafafa;
    margin-top: 10px;
}

/* Button spacing fix */
.search-action-btns li {
    list-style: none;
}

/* Target only search dropdown buttons */
.search-action-btns .btn {
    border-radius: 10px !important;
    padding: 10px 20px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    font-family: var(--font-family) !important;
    outline: 0;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 44px;
    line-height: normal;
    text-decoration: none;
}

/* Show All Result → web-btn style */
.search-action-btns .btn-primary {
    background-color: var(--greencolor) !important;
    color: #fff !important;
    border: 1px solid var(--greencolor) !important;
}

/* Clear Search → btn-default style */
.search-action-btns .btn-info {
    background-color: #eee !important;
    border: 1px solid #ddd !important;
    color: var(--blackcolor) !important;
}

/* Hover effects */
.search-action-btns .btn-primary:hover {
    opacity: 0.9;
}

.search-action-btns .btn-info:hover {
    background-color: #e2e2e2 !important;
}

/* Scrollbar (optional – looks premium) */
.search-list ul::-webkit-scrollbar {
    width: 6px;
}

.search-list ul::-webkit-scrollbar-thumb {
    background: #d6d9dd;
    border-radius: 10px;
}

.pathology-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Card */
.pathology-list .pathology-card {
    background: var(--whitecolor);
    border-radius: 15px;
    padding: 22px 26px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #ddd;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.pathology-list .pathology-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.1);
}

.pathology-list .pathology-info h4 {
    margin-bottom: 5px;
    font-size: 18px;
    font-weight: 700;
}

.pathology-list .pathology-info p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    max-width: 700px;
}

.pathology-list .pathology-action {
    flex-shrink: 0;
}

@media (max-width: 768px) {
    .pathology-card {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    .book-btn {
        width: 100%;
        text-align: center;
    }
}

.booking-modal {
    border-radius: 15px;
    border: none;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.25);
    overflow: hidden;
    animation: modalSlideUp 0.35s ease;
}

.booking-modal .booking-modal-header {
    color: #fff;
    padding: 18px 24px;
}

.booking-modal .booking-modal-header .modal-title {
    font-weight: 700;
    font-size: 20px;
    margin: 0;
}

/* Body */
.booking-modal .booking-modal-body {
    padding: 25px;
}

/* Footer */
.booking-modal .booking-modal-footer {
    padding: 20px 25px;
    border-top: 1px solid #ddd;
    justify-content: center;
}

@keyframes modalSlideUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* Common animation */
.floating-btn {
    position: fixed;
    right: 30px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 24px;
    text-decoration: none;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.25);
    z-index: 1000;
    animation: bounce 2s infinite;
}

/* Pulse ring */
.floating-btn::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    animation: pulse 2s infinite;
    opacity: 0.6;
}

/* WhatsApp */
.whatsapp-btn {
    bottom: 70px;

    background: #25d366;
}

.whatsapp-btn::after {
    background: rgba(37, 211, 102, 0.5);
}

/* Call */
.call-btn {
    background: #0d6efd;
    bottom: 150px;
}

.call-btn::after {
    background: rgba(13, 110, 253, 0.5);
}

/* Animations */
@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 0.6;
    }
    100% {
        transform: scale(1.6);
        opacity: 0;
    }
}

@keyframes bounce {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-6px);
    }
}
