a {
    text-decoration: none;
}

*,
ul {
    padding: 0;
    margin: 0;
}

li {
    list-style: none;
}

@font-face {
    font-family: "Bodoni72-Oldstyle";
    src: url("../fonts/BodoniSvtyTwoOSITCTT-Book.woff2") format("woff2");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Bodoni 72 Oldstyle";
    src: url("BodoniSvtyTwoOSITCTT-BookIt.woff2") format("woff2");
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Bodoni 72 Oldstyle";
    src: url("BodoniSvtyTwoOSITCTT-Bold.woff2") format("woff2");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Bodoni 72";
    src: url("BodoniSvtyTwoITCTT-Book.woff2") format("woff2");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Bodoni 72";
    src: url("BodoniSvtyTwoITCTT-BookIta.woff2") format("woff2");
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Bodoni 72";
    src: url("BodoniSvtyTwoITCTT-Bold.woff2") format("woff2");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Futura Bk BT";
    src: url("FuturaBT-Book.woff2") format("woff2");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Futura Md BT";
    src: url("FuturaBT-BoldItalic.woff2") format("woff2");
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Futura-Bold";
    src: url("../fonts/FuturaBT-Bold.woff2") format("woff2");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Futura Md BT";
    src: url("FuturaBT-MediumItalic.woff2") format("woff2");
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Futura-Medium";
    src: url("../fonts/FuturaBT-Medium.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Jost-Black";
    src:
        url("../fonts/Jost-Black.woff2") format("woff2"),
        url("../fonts/Jost-Black.woff") format("woff");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Jost-Bold";
    src:
        url("../fonts/Jost-Bold.woff2") format("woff2"),
        url("../fonts/Jost-Bold.woff") format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Jost-ExtraBold";
    src:
        url("../fonts/Jost-ExtraBold.woff2") format("woff2"),
        url("../fonts/Jost-ExtraBold.woff") format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Jost-Medium";
    src:
        url("../fonts/Jost-Medium.woff2") format("woff2"),
        url("../fonts/Jost-Medium.woff") format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Jost-Regular";
    src:
        url("../fonts/Jost-Regular.woff2") format("woff2"),
        url("../fonts/Jost-Regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Jost-SemiBold";
    src:
        url("../fonts/Jost-SemiBold.woff2") format("woff2"),
        url("../fonts/Jost-SemiBold.woff") format("woff");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

:root {
    --font-regular: "Jost-Regular";
    --font-medium: "Jost-Medium";
    --font-semibold: "Jost-SemiBold";
    --font-bold: "Jost-Bold";
    --supportive-font: "Bodoni72-Oldstyle";
    --primary: #e78007;
    --secondary: #224590;
    --black: #343230;
    --light-black: #121212;
    --bg-color: #fef9ef;
    --white: #fff;
}

* {
    box-sizing: border-box;
}

html {
    /* Fluid root size: 1rem = 9px at <=375px viewport, scaling up to 1rem = 10px at >=1440px viewport */
    font-size: clamp(56.25%, calc(54.05% + 0.59vw), 62.5%);
    scroll-behavior: smooth;
    overflow-x: hidden;
}

.py-100 {
    padding-block: clamp(6rem, 7vw, 9rem);
}

section {
    scroll-margin-top: 100px;
}

.site-header {
    position: relative;
    z-index: 1000;
    width: 100%;
    background: var(--white);
}

.site-header *,
.mobile-sidebar * {
    box-sizing: border-box;
}

.site-header .utility-bar {
    min-height: 7.5rem;
    display: flex;
    align-items: center;
    background: var(--white);
}

.site-header .utility-inner {
    min-height: 7.5rem;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 3rem;
}

.site-header .emergency-link {
    display: inline-flex;
    align-items: center;
    gap: 1.2rem;
    font-family: var(--font-bold);
    color: var(--black);
    font-size: 1.5rem;
    white-space: nowrap;
    transition: 0.3s all;
    -webkit-transition: 0.3s all;
    -moz-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
}

.site-header .emergency-link:hover {
    color: var(--primary);
}

.site-header .utility-links {
    display: flex;
    align-items: center;

    gap: 4.5rem;

    margin-left: auto;
}

.site-header .utility-item {
    display: inline-flex;
    align-items: center;
    gap: 1.1rem;
    font-family: var(--font-bold);
    color: var(--black);
    font-size: 1.5rem;
    white-space: nowrap;
    transition: 0.3s all;
    -webkit-transition: 0.3s all;
    -moz-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
}

.site-header .utility-item:hover {
    color: var(--primary);
    transform: translateY(-0.1rem);
}

.site-header .main-nav {
    min-height: 13rem;

    background: #f5f8fc;
}

.site-header .main-nav-inner {
    min-height: 13rem;

    display: flex;
    align-items: center;
}

.site-header .brand-logo {
    width: 17rem;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    line-height: 0.9;
}

.site-header .brand-logo img {
    width: 100%;
    object-fit: contain;
    max-width: 108px;
}

.site-header .brand-symbol {
    position: relative;

    width: 5.8rem;
    height: 3.5rem;

    margin-bottom: 0.4rem;
}

.site-header .brand-symbol::before {
    content: "";

    position: absolute;

    top: -0.6rem;
    left: 0.95rem;

    width: 3.9rem;
    height: 3.9rem;

    border: 0.25rem solid var(--primary);
    border-radius: 50%;
}

.site-header .brand-symbol::after {
    content: "";

    position: absolute;

    top: 1.45rem;
    left: 0;

    width: 5.8rem;
    height: 0.25rem;

    background: var(--primary);

    transform: rotate(-12deg);
}

.site-header .brand-name {
    color: var(--primary);
    font-size: 2.8rem;
    font-weight: 800;
    letter-spacing: -0.1rem;
    white-space: nowrap;
}

.site-header .brand-name span {
    color: var(--primary);
}

.site-header .brand-tagline {
    margin-top: 0.4rem;

    color: var(--primary);

    font-size: 0.8rem;
    font-style: italic;

    letter-spacing: 0.04rem;
}

.site-header .desktop-navigation {
    flex: 1;

    margin-left: 7rem;
}

.site-header .nav-list,
.site-header #primary-menu {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin: 0;
    padding: 0;

    list-style: none;
}

.site-header .nav-link-custom,
.site-header #primary-menu a {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 5rem;
    padding: 0.8rem 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    font-weight: 500;
    white-space: nowrap;
    transition: 0.3s all;
    -webkit-transition: 0.3s all;
    -moz-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
}

.site-header .nav-link-custom::after,
.site-header #primary-menu a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 10%;
    width: 0;
    height: 0.25rem;
    background: var(--primary);
    transform: translateX(-50%);
    transition: 0.3s all;
    -webkit-transition: 0.3s all;
    -moz-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
}

.site-header .nav-link-custom:hover,
.site-header #primary-menu a:hover,
.site-header .nav-link-custom.active,
.site-header #primary-menu .current-menu-item a {
    color: var(--primary);
}

.site-header .nav-link-custom.active,
.site-header #primary-menu .current-menu-item a {
    font-family: var(--font-bold);
}

.site-header .nav-link-custom:hover::after,
.site-header #primary-menu a:hover::after,
.site-header .nav-link-custom.active::after,
.site-header #primary-menu .current-menu-item a:after {
    width: 3.2rem;
}

.site-header .mobile-header {
    display: none;

    min-height: 7rem;

    background: #f5f8fc;
}

.site-header .mobile-header-inner {
    width: min(calc(100% - 3rem), 96rem);
    min-height: 7rem;

    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-inline: auto;
}

.site-header .mobile-brand {
    transform: scale(0.82);
    transform-origin: left center;
}

.site-header .menu-toggle {
    width: 4.8rem;
    height: 4.8rem;

    padding: 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 0.55rem;

    border: 0;
    border-radius: 0.8rem;

    background: transparent;

    cursor: pointer;

    transition: background var(--om-transition);
}

.site-header .menu-toggle:hover {
    background: rgba(242, 139, 0, 0.08);
}

.site-header .menu-line {
    width: 2.4rem;
    height: 0.25rem;

    display: block;

    border-radius: 2rem;

    background: var(--primary);

    transition:
        transform var(--om-transition),
        opacity var(--om-transition),
        width var(--om-transition);
}

.site-header .menu-toggle.active .menu-line:nth-child(1) {
    transform: translateY(0.8rem) rotate(45deg);
}

.site-header .menu-toggle.active .menu-line:nth-child(2) {
    width: 0;
    opacity: 0;
}

.site-header .menu-toggle.active .menu-line:nth-child(3) {
    transform: translateY(-0.8rem) rotate(-45deg);
}

.mobile-sidebar {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1100;
    width: min(88vw, 38rem);
    height: 100dvh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: var(--white);
    box-shadow: -1rem 0 4rem rgba(0, 0, 0, 0.14);
    transform: translateX(105%);
    transition: 0.3s all;
    -webkit-transition: 0.3s all;
    -moz-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
}

.mobile-sidebar.active {
    transform: translateX(0);
}

.mobile-overlay {
    position: fixed;

    inset: 0;

    z-index: 1090;

    background: rgba(8, 24, 48, 0.55);

    opacity: 0;
    visibility: hidden;

    transition:
        opacity var(--om-transition),
        visibility var(--om-transition);
}

.mobile-overlay.active {
    opacity: 1;
    visibility: visible;
}

.mobile-sidebar .sidebar-header {
    min-height: 8rem;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 1.5rem 2rem;

    background: var(--om-nav-bg);

    border-bottom: 0.1rem solid var(--om-border);
}

.mobile-sidebar .sidebar-brand {
    transform: scale(0.72);
    transform-origin: left center;
}

.mobile-sidebar .sidebar-close {
    width: 4rem;
    height: 4rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    border: 0;
    border-radius: 0.6rem;

    background: transparent;

    color: var(--primary);

    font-size: 2.4rem;

    cursor: pointer;

    transition:
        background var(--om-transition),
        color var(--om-transition);
}

.mobile-sidebar .sidebar-close:hover {
    background: rgba(242, 139, 0, 0.1);
    color: var(--primary);
}

.mobile-sidebar .sidebar-content {
    flex: 1;

    padding: 1.5rem 2rem 3rem;

    overflow-y: auto;

    overscroll-behavior: contain;
}

.mobile-sidebar .sidebar-section-title {
    margin: 1rem 0;
    font-family: var(--font-bold);
    color: #999;
    font-size: 1.15rem;
    text-transform: uppercase;
    letter-spacing: 0.1rem;
}

.mobile-sidebar .sidebar-links {
    margin: 0;
    padding: 0;

    list-style: none;
}

.mobile-sidebar .sidebar-links li {
    border-bottom: 0.1rem solid #f0f0f0;
}

.mobile-sidebar .sidebar-link {
    width: 100%;
    min-height: 5.3rem;
    display: flex;
    align-items: center;
    gap: 1.4rem;
    padding: 1.3rem 0;
    font-family: var(--font-bold);
    color: var(--black);
    font-size: 1.55rem;
    transition: 0.3s all;
    -webkit-transition: 0.3s all;
    -moz-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
}

.mobile-sidebar .sidebar-link:hover,
.mobile-sidebar .sidebar-link.active {
    padding-left: 0.6rem;
    color: var(--primary);
}

.mobile-sidebar .sidebar-link-icon {
    width: 2.6rem;

    flex: 0 0 2.6rem;

    color: var(--primary);

    font-size: 1.8rem;

    text-align: center;
}

.mobile-sidebar .sidebar-arrow {
    margin-left: auto;

    color: #aaa;

    font-size: 1.1rem;

    transition:
        transform var(--om-transition),
        color var(--om-transition);
}

.mobile-sidebar .sidebar-link:hover .sidebar-arrow {
    color: var(--primary);
    transform: translateX(0.4rem);
}

.mobile-sidebar .sidebar-cta {
    margin-top: 2rem;
    padding: 1.6rem;

    border-radius: 1rem;

    background: linear-gradient(135deg, var(--primary), var(--primary-dark));

    color: var(--white);
}

.mobile-sidebar .sidebar-cta-title {
    margin: 0 0 0.5rem;

    color: var(--white);

    font-size: 1.6rem;
    font-weight: 700;
}

.mobile-sidebar .sidebar-cta-text {
    margin: 0 0 1.3rem;

    color: rgba(255, 255, 255, 0.8);

    font-size: 1.25rem;
    line-height: 1.5;
}

.mobile-sidebar .sidebar-cta-link {
    display: inline-flex;
    align-items: center;

    gap: 0.7rem;

    color: var(--white);

    font-size: 1.35rem;
    font-weight: 700;

    transition: color var(--om-transition);
}

.mobile-sidebar .sidebar-cta-link:hover {
    color: var(--primary-light);
}

.health-hero {
    position: relative;
    min-height: 100vh;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #fff;
}

.health-hero__container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 144rem;
    margin: 0 auto;
    padding: clamp(4rem, 6vw, 8rem) clamp(2rem, 5vw, 7rem);
}

.health-hero__row {
    min-height: clamp(55rem, 80vh, 75rem);
    align-items: center;
}

.health-hero__content {
    position: relative;
    z-index: 5;
}

.health-hero__eyebrow {
    margin-bottom: clamp(2.2rem, 3vw, 3.6rem);
    font-family: var(--font-medium);
    font-size: clamp(1.5rem, 1vw, 1.7rem);
    line-height: 1.4;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: var(--black);
}

.health-hero__title {
    margin: 0;
    font-family: var(--supportive-font);
    font-size: clamp(5.4rem, 7vw, 14rem);
    line-height: normal;
    font-weight: 400;
    line-height: 0.9;
    color: var(--black);
    letter-spacing: 1px;
}

.health-hero__title .highlight {
    color: var(--primary);
    font-style: italic;
    font-weight: 500;
}

.health-hero__divider {
    width: clamp(5rem, 5vw, 7rem);
    height: 0.2rem;
    margin: clamp(2.6rem, 3vw, 3.8rem) 0;

    background: #f7bd7c;
}

.health-hero__description {
    max-width: 43rem;
    font-family: var(--font-medium);
    margin-bottom: clamp(3.2rem, 4vw, 6rem);
    font-size: clamp(1.4rem, 1.5vw, 1.8rem);
    line-height: 1.5;
    color: var(--black);
}

.health-hero__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    width: clamp(20rem, 19vw, 34rem);
    min-height: clamp(4.8rem, 4vw, 6rem);
    padding: 0 clamp(2rem, 2vw, 4.6rem);
    border: 0.1rem solid var(--primary);
    border-radius: 1rem;
    background: #fff;
    color: #224590;
    font-family: var(--font-medium);
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-decoration: none;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
    -webkit-border-radius: 1rem;
    -moz-border-radius: 1rem;
    -ms-border-radius: 1rem;
    -o-border-radius: 1rem;
}

.health-hero__button svg {
    width: 2rem;
    height: 2rem;

    stroke: var(--primary);

    transition:
        transform 0.3s ease,
        stroke 0.3s ease;
}

.health-hero__button:hover {
    color: #fff;
    background: var(--primary);
    transform: translateY(-0.2rem);
    box-shadow: 0 1rem 2.5rem rgba(244, 123, 8, 0.18);
}

.health-hero__button:hover svg {
    stroke: #fff;
    transform: translateX(0.4rem);
}

.health-hero__visual {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    min-height: clamp(45rem, 58vw, 68rem);

    isolation: isolate;
}

.health-hero__visual img {
    width: 100%;
    height: 100%;
}

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition: none !important;
        animation: none !important;
    }
}

body.menu-open {
    overflow: hidden;
}

@media (min-width: 576px) {

    .health-hero__content,
    .tech-heart__content,
    .reach-us__content {
        padding-left: calc((100vw - 540px) / 2);
    }
}

@media (min-width: 768px) {

    .health-hero__content,
    .tech-heart__content,
    .reach-us__content {
        padding-left: calc((100vw - 720px) / 2);
    }
}

@media (min-width: 992px) {

    .health-hero__content,
    .tech-heart__content,
    .reach-us__content {
        padding-left: calc((100vw - 960px) / 2);
    }
}

@media (min-width: 1200px) {

    .health-hero__content,
    .tech-heart__content,
    .reach-us__content {
        padding-left: calc((100vw - 1140px) / 2);
    }
}

@media (min-width: 1400px) {

    .health-hero__content,
    .tech-heart__content,
    .reach-us__content {
        padding-left: calc((100vw - 1320px) / 2);
    }
}

.hero-utilits-wrapper {
    border: 0.1rem solid #f2d9cd;
    background-color: #fdfbf8;

    padding: clamp(3rem, 3.5vw, 4.5rem);

    border-radius: clamp(1.2rem, 1.5vw, 2rem);

    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(22.5rem, 1fr));
    gap: 3rem;

    justify-content: center;
}

.hero-utilits-card {
    display: flex;
    align-items: center;
    gap: 1.7rem;
    position: relative;
}

.hero-utilits-card::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    background: #e7ecf4;
    height: 100%;
    width: 1px;
}

.hero-utilits-card:first-child::before {
    display: none;
}

.hero-utilits-card-icon {
    border: 0.1rem solid #e78007;
    background-color: var(--white);

    display: flex;
    align-items: center;
    justify-content: center;

    width: 6.2rem;
    min-width: 6.2rem;
    height: 6.2rem;

    border-radius: 50%;
}

.hero-utilits-card-icon img {
    width: auto;
    height: auto;
    max-width: 60%;
    max-height: 60%;
    object-fit: contain;
}

.hero-utilits-card-content h3 {
    font-family: var(--font-medium);
    font-size: 1.8rem;
    line-height: normal;
    color: var(--black);
    margin-bottom: 0px;
}

.cardiac-specialists .hero-utilits-card-content h3 {
    font-size: 2.2rem;
}

.hero-utilits .container {
    width: 100%;
    max-width: 1420px !important;
    margin: 0px auto;
    padding: 0 !important;
}

.hero-utilits {
    padding: 0px 2rem;
}

/* =========================================================
   SECTION
========================================================= */

.care-services {
    width: 100%;
    background: #ffffff;
}

.section-title {
    margin-bottom: clamp(3rem, 3.8vw, 4rem);
}

.section-title h2 {
    margin: 0;
    color: var(--secondary);
    font-family: var(--font-medium);
    font-size: clamp(2.8rem, 3vw, 3.5rem);
    line-height: 1.2;
    font-weight: 500;
}

.care-services__grid {
    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: clamp(1.6rem, 1.5vw, 2rem);
}

.care-service-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 0.1rem solid #dbdee6;
    border-radius: 1rem;
    background: var(--white);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -webkit-border-radius: 1rem;
    -moz-border-radius: 1rem;
    -ms-border-radius: 1rem;
    -o-border-radius: 1rem;
    -webkit-transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -moz-transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -ms-transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -o-transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.care-service-card:hover {
    transform: translateY(-0.5rem);

    border-color: #c9d1dc;

    box-shadow: 0 1.5rem 4rem rgba(25, 55, 95, 0.1);
}

.care-service-card__image {
    position: relative;
    width: 100%;
    aspect-ratio: 416 / 191;
    overflow: hidden;
    background: #edf2f5;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
}

.care-service-card__image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.5s ease;
}

.care-service-card:hover .care-service-card__image img {
    transform: scale(1.04);
}

.care-service-card__content {
    flex: 1;

    display: flex;
    flex-direction: column;
    align-items: center;

    text-align: center;

    padding: clamp(2rem, 2.2vw, 2.8rem) clamp(1.5rem, 1.8vw, 2.2rem) clamp(1.7rem, 2vw, 2.2rem);
}

.care-service-card__content h3 {
    margin: 0 0 clamp(1.1rem, 1.2vw, 1.5rem);
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.7rem, 1.5vw, 2rem);
    line-height: 1.25;
}

.care-service-card__content p {
    max-width: 31rem;
    margin: 0 auto;
    color: var(--black);
    font-family: var(--font-regular);
    font-size: 1.4rem;
    line-height: normal;
}

.care-service-card__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 0.7rem;

    margin-top: auto;
    padding-top: clamp(1.8rem, 2vw, 2.5rem);

    color: var(--black);
    font-family: var(--font-regular);
    font-size: 1.4rem;
    line-height: 1;
    text-decoration: none;
    transition: color 0.25s ease;
}

.care-service-card__link svg {
    width: 1.8rem;
    height: 1.8rem;

    color: var(--primary);

    transition: transform 0.25s ease;
}

.care-service-card__link:hover {
    color: var(--color-orange);
}

.care-service-card__link:hover svg {
    transform: translateX(0.4rem);
}

@media (prefers-reduced-motion: reduce) {

    .care-service-card,
    .care-service-card__image img,
    .care-service-card__link,
    .care-service-card__link svg {
        transition: none;
    }
}

/* =========================================================
   SECTION
========================================================= */

.specialized-care {
    position: relative;

    width: 100%;

    background: #f1f6fd;

    overflow: hidden;
}

/* =========================================================
   HEADING
========================================================= */

.specialized-care__heading {
    margin-bottom: clamp(2.8rem, 3vw, 3.8rem);
}

.specialized-care__heading h2 {
    margin: 0;

    color: var(--specialized-blue);

    font-size: clamp(2.5rem, 2.6vw, 3.2rem);
    line-height: 1.25;
    font-weight: 500;

    letter-spacing: 0.035em;
}

/* =========================================================
   GRID
========================================================= */

.specialized-care__grid {
    --scg-gap-x: clamp(1.8rem, 1.9vw, 2.6rem);
    --scg-gap-y: clamp(1.3rem, 1.4vw, 1.8rem);

    display: flex;
    flex-wrap: wrap;
    justify-content: center;

    margin-inline: auto;

    row-gap: var(--scg-gap-y);
    column-gap: var(--scg-gap-x);
}

/* =========================================================
   CARD
========================================================= */

.specialized-care-card {
    position: relative;

    flex: 1 1 30.5rem;
    max-width: calc(25% - (var(--scg-gap-x) * 3 / 4));
    min-width: 0;
    min-height: clamp(8.5rem, 6.5vw, 9.2rem);

    display: flex;
    align-items: stretch;

    overflow: hidden;

    border: 0.1rem solid #dbdee6;
    border-radius: clamp(0.7rem, 0.8vw, 0.9rem);

    background: var(--white);

    color: inherit;
    text-decoration: none;

    /* box-shadow:
        0 0.3rem 1rem rgba(37, 69, 110, 0.015); */

    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.specialized-care-card:hover {
    border-color: #c5d0df;

    transform: translateY(-0.3rem);

    box-shadow: 0 1rem 2.5rem rgba(37, 69, 110, 0.08);
}

/* =========================================================
   ICON BOX
========================================================= */

.specialized-care-card__icon {
    width: 100%;
    max-width: 100px;
    min-height: 114px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

    padding: clamp(1rem, 1.2vw, 1.5rem);

    border-right: 0.1rem solid #dbdee6;

    background: #f5f8fc;
    border-radius: clamp(0.7rem, 0.8vw, 0.9rem);
    border: 0.1rem solid #dbdee6;
}

.specialized-care-card__icon img {
    display: block;

    width: clamp(3.2rem, 3.3vw, 4.5rem);
    height: clamp(3.2rem, 3.3vw, 4.5rem);

    object-fit: contain;
}

/* =========================================================
   CARD CONTENT
========================================================= */

.specialized-care-card__content {
    min-width: 0;
    flex: 1;

    display: flex;
    align-items: center;

    padding: 1.2rem clamp(1.2rem, 1.3vw, 1.7rem);

    padding-right: clamp(3.5rem, 3.5vw, 4.5rem);
}

.specialized-care-card__content h3 {
    margin: 0;

    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.7rem;
    line-height: 1.35;
}

/* =========================================================
   ARROW
========================================================= */

.specialized-care-card__arrow {
    position: absolute;

    right: clamp(1.1rem, 1.2vw, 1.5rem);
    bottom: clamp(1rem, 1.1vw, 1.3rem);

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--specialized-orange);
}

.specialized-care-card__arrow svg {
    width: 2.5rem;
    height: 2.5rem;

    transition: transform 0.25s ease;
    color: var(--primary);
}

.specialized-care-card:hover .specialized-care-card__arrow svg {
    transform: translateX(0.35rem);
}

/* =========================================================
   FOOTER / VIEW ALL
========================================================= */

.specialized-care__footer {
    display: flex;
    align-items: center;
    justify-content: center;

    margin-top: clamp(4.5rem, 4.8vw, 6rem);
}

.specialized-care__view-all {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    color: var(--black);
    font-family: var(--font-regular);
    font-size: clamp(1.5rem, 1vw, 1.9rem);
    line-height: 1.3;
    text-decoration: none;
    transition: color 0.25s ease;
    -webkit-transition: color 0.25s ease;
    -moz-transition: color 0.25s ease;
    -ms-transition: color 0.25s ease;
    -o-transition: color 0.25s ease;
}

.specialized-care__view-all svg {
    width: 2rem;
    height: 2rem;

    color: var(--primary);

    transition: transform 0.25s ease;
}

.specialized-care__view-all:hover {
    color: var(--specialized-orange);
}

.specialized-care__view-all:hover svg {
    transform: translateX(0.4rem);
}

/* =========================================================
   ADVANCED CARE
   Everything is scoped to the parent class
========================================================= */

.advanced-care {
    --color-primary: #234d89;
    --color-arrow: #f7941d;

    width: 100%;
    padding-block: clamp(5rem, 6vw, 8rem);
    overflow: hidden;
    background: #fff;
}

.advanced-care__inner {
    width: min(calc(100% - clamp(3rem, 6vw, 12rem)), 128rem);
    margin-inline: auto;
}

/* =========================================================
   SWIPER
========================================================= */

.advanced-care .swiper {
    width: 100%;
    overflow: visible;
}

.advanced-care .swiper-wrapper {
    align-items: stretch;
}

.advanced-care .swiper-slide {
    aspect-ratio: 16 / 9;
    max-width: 1060px;
    max-height: 600px;
    overflow: hidden;
    border-radius: clamp(0.7rem, 0.8vw, 1rem);

    background: #eee;
}

/* =========================================================
   CARD
========================================================= */

.advanced-care__card {
    position: relative;

    width: 100%;
    height: 100%;

    overflow: hidden;
    border-radius: inherit;
}

.advanced-care__card img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.7s ease;
}

.advanced-care__card:hover img {
    transform: scale(1.035);
}

/* =========================================================
   IMAGE OVERLAY
========================================================= */

.advanced-care__overlay {
    position: absolute;
    inset: 0;

    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.65) 0%,
            rgba(0, 0, 0, 0.25) 35%,
            rgba(0, 0, 0, 0) 70%);

    pointer-events: none;
}

/* =========================================================
   CARD TEXT
========================================================= */

.advanced-care__card p {
    position: absolute;
    z-index: 2;

    left: clamp(2rem, 3vw, 4rem);
    right: clamp(2rem, 3vw, 4rem);
    bottom: clamp(2rem, 3vw, 3.2rem);

    max-width: 42rem;
    margin: 0 auto;

    color: #fff;
    font-family: var(--font-regular);
    font-size: clamp(1.8rem, 1.5vw, 2.5rem);
    line-height: 1.25;

    text-align: center;

    text-shadow: 0 0.1rem 0.4rem rgba(0, 0, 0, 0.35);
}

/* =========================================================
   BOTTOM LINK
========================================================= */

.advanced-care__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin: clamp(3.5rem, 4vw, 5rem) auto 0;
    gap: 1rem;
    color: var(--black);
    text-decoration: none;
    font-family: var(--font-regular);
    font-size: clamp(1.5rem, 1vw, 1.9rem);
    line-height: 1.2;

    transition: color 0.25s ease;
}

.advanced-care__link svg {
    width: 2rem;
    height: 2rem;
    color: var(--primary);
    transition: transform 0.25s ease;
}

.advanced-care__link span:last-child {
    color: var(--color-arrow);

    font-size: 2.1rem;
    line-height: 1;

    transition: transform 0.25s ease;
}

.advanced-care__link:hover {
    color: var(--color-primary);
}

.advanced-care__link:hover span:last-child {
    transform: translateX(0.4rem);
}

@media (prefers-reduced-motion: reduce) {

    .advanced-care__card img,
    .advanced-care__link,
    .advanced-care__link span:last-child {
        transition: none;
    }
}

@media (prefers-reduced-motion: reduce) {

    .specialized-care-card,
    .specialized-care-card__arrow svg,
    .specialized-care__view-all svg {
        transition: none;
    }
}

/* =========================================================
   CAMPUS AMENITIES
   All custom styles are scoped to the parent
========================================================= */

.campus-amenities {
    --ca-blue: #244d8d;
    --ca-orange: #f89a32;
    --ca-text: #292929;
    --ca-border: rgba(248, 154, 50, 0.45);

    padding-bottom: clamp(50px, 6vw, 90px) 0;

    background: #fff;
    padding: 0px 10px;
}

.campus-amenities__heading {
    margin-bottom: clamp(35px, 4vw, 48px);
}

.campus-amenities__heading h2 {
    margin: 0;

    color: var(--ca-blue);

    font-size: clamp(28px, 2.3vw, 36px);
    font-weight: 600;
    line-height: 1.2;

    letter-spacing: 0.04em;
}

.campus-amenities__box {
    position: relative;

    width: 100%;

    padding: clamp(35px, 3.5vw, 50px) clamp(25px, 3.2vw, 48px);

    border: 1px solid var(--ca-border);
    border-radius: clamp(16px, 1.5vw, 20px);

    background: #fff;

    box-shadow: 0 15px 40px rgba(30, 55, 90, 0.025);

    width: 100%;
    max-width: 1420px;
    margin: 0px auto;

    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
}

@media (min-width: 576px) {
    .campus-amenities__box {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 992px) {
    .campus-amenities__box {
        grid-template-columns: repeat(5, 1fr);
        gap: 1rem 0px;
    }
}

.campus-amenities__item {
    display: flex;
    align-items: center;

    width: 100%;

    min-height: 96px;

    padding: 12px 12px;

    gap: clamp(12px, 1vw, 18px);
}

.campus-amenities__icon {
    flex: 0 0 clamp(68px, 5vw, 80px);

    width: clamp(68px, 5vw, 80px);
    height: clamp(68px, 5vw, 80px);

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(248, 154, 50, 0.5);
    border-radius: 50%;

    color: var(--ca-orange);

    background: #fff;

    font-size: clamp(25px, 2vw, 30px);

    transition:
        background-color 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

.campus-amenities__icon img {
    width: auto;
    height: auto;
}

.campus-amenities__text {
    flex: 1;

    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(14px, 1.3vw, 16px);
    line-height: 1.25;
}

.care-journey {
    width: 100%;

    padding: clamp(5rem, 6vw, 8rem) 0;

    background: #fff;

    overflow: hidden;
}

.care-journey__heading {
    margin-bottom: clamp(3.5rem, 4vw, 4.8rem);
}

.care-journey__heading h2 {
    margin: 0;

    color: var(--cj-blue);

    font-size: clamp(2.6rem, 2.3vw, 3.6rem);
    font-weight: 600;
    line-height: 1.2;

    letter-spacing: 0.055em;
}

.care-journey__box {
    padding: clamp(4rem, 4vw, 5rem) clamp(3rem, 4.5vw, 6rem);

    border: 1px solid #f4d3ac;
    border-radius: clamp(1.5rem, 1.5vw, 2rem);

    background: #fff;

    box-shadow: 0 1.5rem 4rem rgba(35, 65, 100, 0.025);

    width: 100%;
    max-width: 1420px;
    margin: 0px auto;
}

.care-journey__steps {
    display: flex;
    align-items: center;
    justify-content: space-between;

    width: 100%;
}

.care-journey__step {
    display: flex;
    align-items: center;

    flex: 0 1 auto;

    min-width: 0;

    gap: clamp(1.4rem, 1.4vw, 2rem);
}

.care-journey__icon {
    width: 8.5rem;
    height: 14.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cj-orange);
    border: 1px solid #f4d3ac;
    border-radius: 100px;
    background: #fff;
    font-size: clamp(2.7rem, 2vw, 3.4rem);
    transition:
        background-color 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    -o-border-radius: 100px;
    -webkit-transition:
        background-color 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
    -moz-transition:
        background-color 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
    -ms-transition:
        background-color 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
    -o-transition:
        background-color 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

.care-journey__icon img {
    width: auto;
    height: auto;
}

.care-journey__content {
    min-width: 0;
}

.care-journey__content h3 {
    margin: 0 0 0.6rem;

    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.8rem, 1.45vw, 2.5rem);

    line-height: 1.15;
}

.care-journey__content p {
    margin: 0;

    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.4rem;
    line-height: 1.35;
}

.care-journey__arrow {
    flex: 0 0 auto;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-inline: clamp(1.5rem, 2vw, 3rem);

    color: var(--secondary);

    font-size: clamp(2.8rem, 2.5vw, 3.8rem);

    line-height: 1;

    font-weight: 400;
}

.care-journey__step:hover .care-journey__icon {
    transform: translateY(-0.3rem);
}

@media (prefers-reduced-motion: reduce) {
    .care-journey__icon {
        transition: none;
    }
}

@media (max-width: 991.98px) {
    .site-header .utility-bar {
        display: none;
    }

    .site-header .main-nav {
        display: none;
    }

    .site-header .mobile-header {
        display: block;
    }

    .health-hero {
        min-height: auto;
        padding: 7rem 0;
    }

    .health-hero__row {
        min-height: auto;
    }

    .health-hero__content {
        padding-left: 0;
        padding-right: 0;
        text-align: center;
    }

    .health-hero__divider {
        margin-left: auto;
        margin-right: auto;
    }

    .health-hero__button {
        margin-left: auto;
        margin-right: auto;
    }

    .health-hero__visual {
        min-height: auto;
        margin-top: clamp(3rem, 6vw, 5rem);
    }

    .care-services__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

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

    .specialized-care__grid {
        max-width: 70rem;
    }

    .specialized-care-card {
        max-width: calc(50% - (var(--scg-gap-x) / 2));
    }

    .care-journey__box {
        padding: clamp(3rem, 5vw, 4rem) clamp(2rem, 4vw, 3rem);
    }

    .care-journey__steps {
        flex-direction: column;
        align-items: stretch;

        gap: 2.4rem;
    }

    .care-journey__step {
        width: 100%;

        justify-content: flex-start;
    }

    .care-journey__arrow {
        margin-inline: 0;
        margin-block: 0.4rem;

        transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
    }
}

@media (max-width: 767.98px) {
    .health-hero__title {
        font-size: clamp(3.6rem, 9vw, 6rem);
    }

    .hero-utilits-card-content h3 {
        font-size: 1.6rem;
    }

    .care-journey__icon {
        width: 7rem;
        height: 11rem;
    }
}

@media (max-width: 575.98px) {
    .site-header .mobile-header-inner {
        width: min(calc(100% - 2rem), 96rem);
    }

    .site-header .mobile-header,
    .site-header .mobile-header-inner {
        min-height: 6.5rem;
    }

    .site-header .mobile-brand {
        transform: scale(0.7);
    }

    .site-header .menu-toggle {
        width: 4.5rem;
        height: 4.5rem;
    }

    .mobile-sidebar {
        width: 100%;
        max-width: 100%;
    }

    .mobile-sidebar .sidebar-header {
        padding-inline: 1.5rem;
    }

    .mobile-sidebar .sidebar-content {
        padding-inline: 1.5rem;
    }

    .health-hero__title {
        font-size: clamp(3.2rem, 11vw, 4.8rem);
    }

    .health-hero__description {
        margin-left: auto;
        margin-right: auto;
    }

    .health-hero__button {
        width: 100%;
        max-width: 32rem;
    }

    .care-services__heading {
        margin-bottom: 2.8rem;
    }

    .care-services__grid {
        grid-template-columns: 1fr;
        gap: 1.6rem;
    }

    .care-service-card {
        border-radius: 0.8rem;
    }

    .care-service-card__content {
        padding: 2rem 1.8rem 2.2rem;
    }

    .specialized-care__heading {
        margin-bottom: 2.8rem;
    }

    .specialized-care__grid {
        row-gap: 1.2rem;
        column-gap: 1.2rem;

        max-width: 100%;
    }

    .specialized-care-card {
        flex-basis: 100%;
        max-width: 100%;

        min-height: 8rem;
    }

    .specialized-care-card__icon img {
        width: 4.5rem;
        height: 4.5rem;
    }

    .specialized-care-card__content {
        padding: 1rem 1.2rem 1rem;

        padding-right: 4rem;
    }

    .specialized-care-card__arrow {
        right: 1rem;
        bottom: 1rem;
    }

    .specialized-care__footer {
        margin-top: 3.5rem;
    }

    .care-journey__box {
        padding: clamp(2.4rem, 6vw, 3rem) 1.6rem;
    }

    .care-journey__step {
        flex-direction: column;
        text-align: center;

        gap: 1rem;
    }

    .care-journey__icon {
        width: 6rem;
        height: 9rem;
    }

    .care-journey__content h3 {
        font-size: 1.8rem;
    }

    .care-journey__content p {
        font-size: 1.3rem;
    }
}

@media (prefers-reduced-motion: reduce) {

    .site-header *,
    .mobile-sidebar *,
    .mobile-overlay {
        scroll-behavior: auto !important;

        transition-duration: 0.01ms !important;

        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* ============================================================
   ASSISTANCE CTA
============================================================ */

.assistance-cta {
    width: 100%;

    padding: 0 0 clamp(5rem, 6vw, 8rem);
}

.assistance-cta__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: clamp(2rem, 2.5vw, 3rem);
}

.assistance-card {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: clamp(1.6rem, 2vw, 2.6rem);
    padding: clamp(2.4rem, 3vw, 3.6rem);
    border-radius: 2.9rem;
    -webkit-border-radius: 2.9rem;
    -moz-border-radius: 2.9rem;
    -ms-border-radius: 2.9rem;
    -o-border-radius: 2.9rem;
}

.assistance-card--emergency {
    background: #fdf7f5;
}

.assistance-card--appointment {
    background: #f5f8fd;
}

.assistance-card__icon {
    flex: 0 0 auto;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 11rem;
    height: 11rem;

    border-radius: 50%;

    font-size: clamp(2.2rem, 2vw, 3rem);

    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.assistance-card--emergency .assistance-card__icon {
    background: #fbeeec;
    color: var(--primary);
}

.assistance-card--appointment .assistance-card__icon {
    background: #e9f0fa;
    color: var(--secondary);
}

.assistance-card__content {
    min-width: 0;
}

.assistance-card__content h3 {
    margin: 0 0 0.6rem;

    color: var(--secondary);
    font-family: var(--font-medium);
    font-size: clamp(1.8rem, 1.6vw, 2.2rem);
    line-height: 1.2;
}

.assistance-card__content p {
    margin: 0 0 clamp(1.4rem, 1.6vw, 1.8rem);

    color: var(--black);
    font-family: var(--font-regular);
    font-size: 1.4rem;
    line-height: 1.5;
    max-width: 300px;
}

.assistance-card__btn {
    display: inline-flex;
    align-items: center;

    min-height: 4.4rem;
    padding: 0 2.2rem;

    border: none;
    border-radius: 0.7rem;

    color: #fff !important;
    font-family: var(--font-medium);
    font-size: 1.5rem;
    text-decoration: none;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;

    -webkit-border-radius: 0.7rem;
    -moz-border-radius: 0.7rem;
    -ms-border-radius: 0.7rem;
    -o-border-radius: 0.7rem;
    -webkit-transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
    -moz-transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
    -ms-transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
    -o-transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
}

.assistance-card--emergency .assistance-card__btn {
    background: var(--primary);
}

.assistance-card--appointment .assistance-card__btn {
    background: var(--secondary);
}

.assistance-card__btn:hover {
    transform: translateY(-0.2rem);
}

/* ============================================================
   FOOTER
============================================================ */

.site-footer {
    width: 100%;

    background: #224590;
}

.site-footer__top {
    display: grid;
    grid-template-columns: 1.5fr repeat(4, 1fr);

    gap: clamp(2.4rem, 3vw, 4rem);

    padding: clamp(4.5rem, 6vw, 7rem) 0 clamp(3.5rem, 4vw, 5rem);
}

.footer-brand__logo {
    display: inline-flex;
    align-items: center;

    gap: 1rem;

    margin-bottom: clamp(1.6rem, 2vw, 2rem);

    text-decoration: none;
}

.footer-brand__logo img {
    width: 100%;
    max-width: 190px;
    object-fit: contain;
}

.footer-brand__plus {
    color: #fff;
}

.footer-brand__desc {
    max-width: 25rem;
    margin: 0 0 clamp(2rem, 2.4vw, 2.6rem);

    color: var(--white);
    font-family: var(--font-regular);
    font-size: 1.5rem;
    line-height: 1.5;
}

.footer-brand__social-label {
    display: block;
    margin-bottom: 1rem;

    color: #fff;
    font-family: var(--font-medium);
    font-size: 1.4rem;
}

.footer-brand__social-links {
    display: flex;
    align-items: center;

    gap: 1rem;
}

.footer-brand__social-links a {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 3.6rem;
    height: 3.6rem;

    border: 0.1rem solid rgba(255, 255, 255, 0.35);
    border-radius: 50%;

    color: #fff;
    font-size: 1.4rem;

    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;

    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    -webkit-transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
    -moz-transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
    -ms-transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
    -o-transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
}

.footer-brand__social-links a:hover {
    background: var(--primary);
    border-color: var(--primary);
    transform: translateY(-0.2rem);
}

.footer-col {
    min-width: 0;
}

.footer-col h4 {
    margin: 0 0 clamp(1.6rem, 2vw, 2.2rem);
    color: #f4d3ac;
    font-family: var(--font-medium);
    font-size: 2rem;
    letter-spacing: 0.03em;
}

.footer-col ul {
    list-style: none;
    margin: 0;
    padding: 0;

    display: flex;
    flex-direction: column;

    gap: 2rem;
}

.footer-col ul a {
    color: #fdfbf8;
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1;
    text-decoration: none;

    transition: color 0.2s ease;
}

.footer-col ul a:hover {
    color: var(--primary);
}

.footer-contact-item {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
    margin-bottom: clamp(2rem, 2.4vw, 2.6rem);
    padding-bottom: clamp(2rem, 2.4vw, 2.6rem);
    color: var(--primary);
    font-size: 1.6rem;
    border-bottom: 1px solid var(--white);
}

.footer-contact-item img {
    width: 100%;
    max-width: 26px;
}

.footer-contact-item:last-child {
    margin-bottom: 0;
    border: none;
}

.footer-contact-item__label {
    display: block;
    margin-bottom: 0.4rem;
    color: var(--white);
    font-family: var(--font-medium);
    font-size: 1.8rem;
}

.footer-contact-item__value {
    display: inline-block;

    color: #fff !important;
    font-family: var(--font-bold);
    font-size: 2.2rem;
    text-decoration: none;
}

.site-footer__bottom {
    border-top: 0.1rem solid rgba(255, 255, 255, 0.15);
}

.site-footer__bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 1.8rem 0;
}

.site-footer__bottom-inner p {
    margin: 0;

    color: #fbf7f4;
    font-family: var(--font-regular);
    font-size: 1.6rem;
}

.footer-legal {
    display: flex;
    align-items: center;

    gap: 0.8rem;

    color: rgba(255, 255, 255, 0.45);
    font-size: 1.3rem;
}

.footer-legal a {
    color: #fbf7f4;
    font-family: var(--font-regular);
    font-size: 1.6rem;
    text-decoration: none;

    transition: color 0.2s ease;
}

.footer-legal a:hover {
    color: var(--primary);
}

.footer-col--contact h4 {
    margin-bottom: 4rem;
}

@media (max-width: 1199.98px) {
    .site-footer__top {
        grid-template-columns: repeat(3, 1fr);
    }

    .footer-brand {
        grid-column: 1 / -1;
    }
}

@media (max-width: 991.98px) {
    .assistance-cta__grid {
        grid-template-columns: 1fr;
    }

    .site-footer__top {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767.98px) {
    .assistance-card {
        flex-direction: column;
        text-align: center;
    }

    .site-footer__top {
        grid-template-columns: 1fr;

        gap: 3.2rem;
    }

    .footer-brand__desc {
        max-width: 100%;
    }

    .site-footer__bottom-inner {
        justify-content: center;
        text-align: center;
    }
}

@media (max-width: 575.98px) {
    .assistance-card {
        padding: 2rem;
    }

    .assistance-card__btn {
        width: 100%;
        justify-content: center;
    }

    .footer-brand__word-main,
    .footer-brand__word-sub {
        font-size: 1.7rem;
    }
}

/* ====================
ABOUTPAGE
==================== */

.about-health-hero {
    background-color: #fdfbf8;
}

.about-health-hero .health-hero__title {
    font-size: clamp(5.4rem, 6vw, 13rem);
}

.about-health-hero .health-hero__description {
    margin-bottom: 0px;
    max-width: 45rem;
}

.about-health-hero .health-hero__content {
    padding-right: 1rem;
}

/* =========================================================
           SECTION WRAPPER
        ========================================================= */

.ocean-overview-section {
    width: 100%;
    padding: clamp(3rem, 4vw, 5rem) 1.5rem;
    background: #ffffff;
    color: var(--ocean-text);
}

.ocean-overview-section .section-title {
    margin-bottom: 2rem;
}

.ocean-overview-section .ocean-overview-intro {
    max-width: 110rem;
    margin: 0 0 clamp(2rem, 2vw, 3rem);
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.5rem, 1.2vw, 1.8rem);
    line-height: 1.6;
}

.ocean-overview-section .ocean-overview-image-wrapper {
    width: 100%;
    overflow: hidden;
    border-radius: 0.8rem;
    margin-bottom: clamp(2rem, 2vw, 3.2rem);
    -webkit-border-radius: 0.8rem;
    -moz-border-radius: 0.8rem;
    -ms-border-radius: 0.8rem;
    -o-border-radius: 0.8rem;
}

.ocean-overview-section .ocean-overview-image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 21 / 9;
    /* object-fit: cover; */
    object-position: center;
    border-radius: 0.8rem;
    -webkit-border-radius: 0.8rem;
    -moz-border-radius: 0.8rem;
    -ms-border-radius: 0.8rem;
    -o-border-radius: 0.8rem;
}

.ocean-overview-section .ocean-overview-cards {
    --bs-gutter-x: clamp(1.2rem, 2vw, 1.7rem);
    --bs-gutter-y: clamp(1.5rem, 2vw, 2rem);
}

.ocean-overview-section .ocean-overview-card {
    height: 100%;
    min-height: clamp(18rem, 20vw, 21.5rem);
    padding: clamp(2rem, 3.5vw, 4.5rem);
    border: 0.1rem solid #dce2eb;
    border-radius: 0.8rem;
    background: #ffffff;
    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
    -webkit-border-radius: 0.8rem;
    -moz-border-radius: 0.8rem;
    -ms-border-radius: 0.8rem;
    -o-border-radius: 0.8rem;
}

.ocean-overview-section .ocean-overview-card:hover {
    border-color: #cbd5e5;
    box-shadow: 0 0.8rem 2.5rem rgba(25, 55, 100, 0.07);
    transform: translateY(-0.2rem);
}

.ocean-overview-section .ocean-overview-card-header {
    display: flex;
    align-items: center;
    gap: clamp(2rem, 2.2vw, 3.6rem);
    margin-bottom: clamp(2rem, 2.2vw, 5rem);
}

.ocean-overview-section .ocean-overview-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ocean-overview-section .ocean-overview-icon svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.ocean-overview-section .ocean-overview-card-title {
    margin: 0;
    color: var(--secondary);
    font-size: clamp(1.8rem, 2vw, 3.5rem);
    line-height: 1.2;
}

.ocean-overview-section .ocean-overview-card-text {
    margin: 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.5rem, 0.95vw, 1.8rem);
    line-height: 1.7;
    max-width: 40rem;
}

.ocean-overview-section .ocean-overview-list {
    margin: 0;
    padding: 0 0 0 1.5rem;
}

.ocean-overview-section .ocean-overview-list-item {
    padding-left: 0.3rem;
    margin-bottom: clamp(1rem, 1vw, 2rem);

    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.5rem, 0.95vw, 1.8rem);
    line-height: 1.35;
    max-width: 45rem;
    list-style-type: disc;
}

.ocean-overview-section .ocean-overview-list-item:last-child {
    margin-bottom: 0;
}

.ocean-overview-section .ocean-overview-list-item::marker {
    color: var(--primary);
    font-size: 0.8em;
}

@media (prefers-reduced-motion: reduce) {
    .ocean-overview-section .ocean-overview-card {
        transition: none;
    }
}

.ocean-why-section {
    width: 100%;
    background: #ffffff;

    padding: 5rem 0px;

    font-family: "Josefin Sans", sans-serif;
    padding-top: 10px;
}

.ocean-why-section__container {
    width: min(100% - 3rem, 105rem);
    margin-inline: auto;
}

/* ---------------------------------------------------------
   HEADING
--------------------------------------------------------- */

.ocean-why-section__heading {
    margin-bottom: clamp(3rem, 3.8vw, 4.5rem);
}

.ocean-why-section__heading h2 {
    margin: 0;

    color: var(--why-blue);

    font-size: clamp(2.6rem, 2.8vw, 3.2rem);
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.025em;
}

/* ---------------------------------------------------------
   ROW
--------------------------------------------------------- */

.ocean-why-section__row {
    --bs-gutter-x: clamp(1.5rem, 2.2vw, 2.8rem);
    --bs-gutter-y: clamp(1.8rem, 2.5vw, 2.8rem);
}

/* ---------------------------------------------------------
   CARD
--------------------------------------------------------- */

.ocean-why-section__card {
    width: 100%;
    height: 100%;
    min-height: clamp(23rem, 18vw, 35rem);
    padding: clamp(2.5rem, 2.7vw, 3.2rem) clamp(1.8rem, 2vw, 2.5rem);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #ffffff;
    border: 0.1rem solid #dce5f0;
    border-radius: 0.8rem;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -webkit-border-radius: 0.8rem;
    -moz-border-radius: 0.8rem;
    -ms-border-radius: 0.8rem;
    -o-border-radius: 0.8rem;
    -webkit-transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -moz-transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -ms-transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -o-transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.ocean-why-section__card:hover {
    transform: translateY(-0.4rem);

    border-color: #c9d4e5;

    box-shadow: 0 1rem 3rem rgba(27, 60, 110, 0.08);
}

/* ---------------------------------------------------------
   ICON
--------------------------------------------------------- */

.ocean-why-section__icon {
    margin-bottom: clamp(2rem, 2.2vw, 3rem);
    height: 70px;
    flex-shrink: 0;
}

.ocean-why-section__icon svg {
    display: block;

    width: 100%;
    height: 100%;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.35;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* ---------------------------------------------------------
   CARD TITLE
--------------------------------------------------------- */

.ocean-why-section__card h3 {
    margin: 0 0 clamp(1.5rem, 1.6vw, 1.8rem);

    color: var(--black);
    font-family: var(--font-medium);
    font-size: 2rem;
    line-height: 1.3;
}

/* ---------------------------------------------------------
   CARD DESCRIPTION
--------------------------------------------------------- */

.ocean-why-section__card p {
    max-width: 22rem;
    margin: 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 2;
}

@media (prefers-reduced-motion: reduce) {
    .ocean-why-section__card {
        transition: none;
    }

    .ocean-why-section__card:hover {
        transform: none;
    }
}

.ocean-inside-section {
    --inside-blue: #244b98;
    --inside-orange: #f47b00;
    --black: #303030;
    --inside-bg: #f1f6ff;
    --inside-white: #ffffff;

    width: 100%;
    overflow: hidden;
    background: #f1f6fd;

    font-family: "Josefin Sans", sans-serif;
}

/* =========================================================
   SWIPER
========================================================= */

.ocean-inside-section__slider {
    width: 100%;
    overflow: hidden;
}

.ocean-inside-section__slider .swiper-wrapper {
    align-items: stretch;
}

.ocean-inside-section__slider .swiper-slide {
    width: 100%;
    height: auto;
}

/* =========================================================
   MAIN SLIDE
========================================================= */

.ocean-inside-section__slide {
    width: 100%;
    min-height: clamp(48rem, 43.5vw, 59.5rem);

    display: grid;
    grid-template-columns: 40.7% 55.3%;
}

/* =========================================================
   LEFT CONTENT
========================================================= */

.ocean-inside-section__content {
    width: 100%;
    max-width: 52rem;

    margin-left: auto;

    padding: clamp(5rem, 7vw, 10rem) clamp(3rem, 5vw, 7rem) clamp(4rem, 5vw, 7rem) clamp(3rem, 5vw, 7rem);

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    justify-content: center;
}

/* =========================================================
   EYEBROW
========================================================= */

.ocean-inside-section__eyebrow {
    display: block;
    margin-bottom: clamp(1.5rem, 1.7vw, 2.2rem);
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.6rem, 1.25vw, 2rem);
    line-height: 1.3;
    text-transform: uppercase;
}

/* =========================================================
   FLOOR TITLE
========================================================= */

.ocean-inside-section__floor {
    position: relative;
    width: fit-content;
    margin: 0 0 clamp(2.8rem, 2.5vw, 3.8rem);
    padding-bottom: 0.5rem;
    color: var(--primary);
    font-family: var(--font-medium);
    font-size: clamp(2.8rem, 3.2vw, 5rem);
    line-height: 1;
}

.ocean-inside-section__floor::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 70%;
    height: 0.2rem;

    background: var(--primary);
}

/* =========================================================
   MAIN TITLE
========================================================= */

.ocean-inside-section__title {
    margin: 0 0 clamp(2rem, 2vw, 2.8rem);

    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(2.2rem, 2.55vw, 3.5rem);
    line-height: 1.4;
    letter-spacing: 0.025em;
}

/* =========================================================
   DESCRIPTION
========================================================= */

.ocean-inside-section__description {
    max-width: 35rem;
    margin: 0 0 clamp(2.8rem, 3vw, 4rem);
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.4rem, 1.05vw, 1.7rem);
    line-height: 1.5;
}

/* =========================================================
   SERVICES
========================================================= */

.ocean-inside-section__services {
    display: flex;
    flex-direction: column;
    gap: clamp(1rem, 1.1vw, 1.4rem);

    margin: 0;
    padding: 0;

    list-style: none;
}

.ocean-inside-section__services li {
    display: flex;
    align-items: center;
    gap: clamp(1.5rem, 1vw, 2rem);
    font-family: var(--font-medium);
    color: var(--black);
    font-size: clamp(1.4rem, 1.05vw, 1.8rem);
    line-height: 1.35;
}

/* =========================================================
   CHECK ICON
========================================================= */

.ocean-inside-section__check {
    flex: 0 0 auto;

    width: clamp(1.9rem, 2vw, 2.3rem);
    height: clamp(1.9rem, 2vw, 2.3rem);

    display: flex;
    align-items: center;
    justify-content: center;

    border: 0.1rem solid var(--inside-orange);
    border-radius: 50%;

    color: var(--inside-orange);

    font-family: Arial, sans-serif;
    font-size: clamp(1rem, 1vw, 1.2rem);
    font-weight: 400;

    line-height: 1;
}

/* =========================================================
   IMAGE
========================================================= */

.ocean-inside-section__image {
    width: 100%;
    height: 100%;
    min-height: inherit;

    overflow: hidden;
}

.ocean-inside-section__image img {
    display: block;

    width: 100%;
    height: 100%;

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

    transition: transform 0.8s ease;
}

/* =========================================================
   SUBTLE IMAGE ZOOM
========================================================= */

.ocean-inside-section__slider .swiper-slide-active .ocean-inside-section__image img {
    transform: scale(1.01);
}

/* =========================================================
   CONTROLS
========================================================= */

.ocean-inside-section__controls {
    min-height: clamp(8rem, 9vw, 11rem);

    display: flex;
    align-items: center;
    justify-content: center;

    gap: clamp(2.5rem, 3vw, 4rem);

    background: #ffffff;
}

/* =========================================================
   ARROWS
========================================================= */

.ocean-inside-section__arrow {
    width: clamp(3.2rem, 3vw, 4rem);
    height: clamp(3.2rem, 3vw, 4rem);

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    border: 0;
    outline: none;

    background: transparent;

    color: var(--inside-blue);

    cursor: pointer;

    transition:
        color 0.25s ease,
        transform 0.25s ease;
}

.ocean-inside-section__arrow svg {
    display: block;

    width: 100%;
    height: auto;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.ocean-inside-section__prev:hover {
    transform: translateX(-0.4rem);
}

.ocean-inside-section__next:hover {
    transform: translateX(0.4rem);
}

.ocean-inside-section__arrow:focus-visible {
    outline: 0.2rem solid var(--inside-blue);
    outline-offset: 0.4rem;
}

/* =========================================================
   PAGINATION
========================================================= */

.ocean-inside-section__pagination {
    position: static !important;

    width: auto !important;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: clamp(1rem, 1.2vw, 1.5rem);
}

.ocean-inside-section__pagination .swiper-pagination-bullet {
    width: 0.8rem;
    height: 0.8rem;

    margin: 0 !important;

    opacity: 1;

    border: 0.1rem solid #777;
    border-radius: 50%;

    background: #ffffff;

    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
}

.ocean-inside-section__pagination .swiper-pagination-bullet-active {
    border-color: var(--inside-blue);

    background: var(--inside-blue);

    transform: scale(1.05);
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {
    .ocean-inside-section__slide {
        min-height: 59.5rem;
    }

    .ocean-inside-section__content {
        padding-left: 8rem;
        padding-right: 8rem;
    }
}

/* =========================================================
   DESKTOP / LAPTOP
========================================================= */

@media (max-width: 1199.98px) {
    .ocean-inside-section__slide {
        min-height: 52rem;
        grid-template-columns: 42% 58%;
    }

    .ocean-inside-section__content {
        padding: 6rem clamp(3rem, 4vw, 5rem);
    }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {
    .ocean-inside-section__slide {
        min-height: auto;

        grid-template-columns: 45% 55%;
    }

    .ocean-inside-section__content {
        padding: clamp(4rem, 6vw, 6rem) clamp(2.5rem, 4vw, 4rem);
    }

    .ocean-inside-section__eyebrow {
        margin-bottom: 1.3rem;
    }

    .ocean-inside-section__floor {
        margin-bottom: 2.5rem;
    }

    .ocean-inside-section__description {
        margin-bottom: 2.5rem;
    }

    .ocean-inside-section__services {
        gap: 1rem;
    }

    .ocean-inside-section__controls {
        min-height: 8rem;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {
    .ocean-inside-section__slide {
        display: flex;
        flex-direction: column;

        min-height: auto;
    }

    /* Image first on mobile */
    .ocean-inside-section__image {
        order: 1;

        width: 100%;
        height: clamp(25rem, 65vw, 38rem);

        min-height: 0;
    }

    .ocean-inside-section__content {
        order: 2;

        width: 100%;
        max-width: none;

        margin: 0;

        padding: clamp(3rem, 6vw, 4.5rem) clamp(2rem, 6vw, 4rem);

        background: var(--inside-bg);
    }

    .ocean-inside-section__eyebrow {
        font-size: 1.3rem;
    }

    .ocean-inside-section__floor {
        margin-bottom: 2.5rem;
    }

    .ocean-inside-section__title {
        margin-bottom: 1.8rem;
    }

    .ocean-inside-section__description {
        max-width: 55rem;

        margin-bottom: 2.5rem;
    }

    .ocean-inside-section__controls {
        min-height: 8rem;

        gap: 2.5rem;
    }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 479.98px) {
    .ocean-inside-section__image {
        height: 25rem;
    }

    .ocean-inside-section__content {
        padding: 3rem 2rem 3.5rem;
    }

    .ocean-inside-section__floor {
        margin-bottom: 2.2rem;
    }

    .ocean-inside-section__title {
        line-height: 1.3;
    }

    .ocean-inside-section__description {
        line-height: 1.55;
    }

    .ocean-inside-section__services {
        gap: 1.2rem;
    }

    .ocean-inside-section__services li {
        align-items: flex-start;

        line-height: 1.45;
    }

    .ocean-inside-section__check {
        margin-top: 0.1rem;
    }

    .ocean-inside-section__controls {
        min-height: 7.5rem;

        gap: 2rem;
    }

    .ocean-inside-section__pagination {
        gap: 0.9rem;
    }

    .ocean-inside-section__pagination .swiper-pagination-bullet {
        width: 0.7rem;
        height: 0.7rem;
    }
}

/* =========================================================
   VERY SMALL DEVICES
========================================================= */

@media (max-width: 359.98px) {
    .ocean-inside-section__image {
        height: 22rem;
    }

    .ocean-inside-section__content {
        padding-inline: 1.5rem;
    }

    .ocean-inside-section__controls {
        gap: 1.5rem;
    }

    .ocean-inside-section__arrow {
        width: 3rem;
    }
}

/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .ocean-inside-section__image img,
    .ocean-inside-section__arrow,
    .ocean-inside-section__pagination .swiper-pagination-bullet {
        transition: none;
    }

    .ocean-inside-section__slider .swiper-slide-active .ocean-inside-section__image img {
        transform: none;
    }
}

@media (max-width: 991.98px) {
    .about-health-hero .health-hero__description {
        margin: 0px auto;
    }
}

/* ============================================================
   ABOUT HEALTH HERO — VISUAL GALLERY
   (1 large image + 3 supporting images, in place of the
   single hero image, used on the "Advanced Care" hero)
============================================================= */

.excellence-health-hero .health-hero__title {
    font-size: clamp(4.5rem, 6vw, 11rem);
}

.excellence-health-hero {
    min-height: auto;
}

.about-health-hero .health-hero__visual {
    display: flex;
    flex-direction: column;
    gap: clamp(1rem, 1.2vw, 1.6rem);
    min-height: unset;
}

.about-health-hero .health-hero__visual-main {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    /* border-radius: 1.2rem; */
}

.about-health-hero .health-hero__visual-main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.about-health-hero .health-hero__visual-sub {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(1rem, 1.2vw, 1.6rem);
}

.about-health-hero .health-hero__visual-sub-item {
    width: 100%;
    aspect-ratio: 312 / 341;
    overflow: hidden;
    /* border-radius: 1.2rem; */
}

.about-health-hero .health-hero__visual-sub-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.about-health-hero .health-hero__visual-main:hover img,
.about-health-hero .health-hero__visual-sub-item:hover img {
    transform: scale(1.06);
}

@media (max-width: 575.98px) {
    .about-health-hero .health-hero__visual-sub {
        grid-template-columns: 1fr 1fr;
    }

    .about-health-hero .health-hero__visual-sub-item:last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 424.98px) {
    .ocean-overview-section .ocean-overview-image {
        height: 250px;
        object-position: center;
        object-fit: cover;
    }
}

/* ============================================================
   CENTRES GRID
============================================================= */

.centres-grid {
    background: var(--white);
}

.centres-grid__heading h2 {
    margin: 0 0 clamp(2.4rem, 3vw, 3.6rem);
    font-family: var(--font-semibold);
    font-size: clamp(2.4rem, 2.2vw, 3.2rem);
    color: var(--secondary);
}

.centres-grid__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(1.6rem, 2vw, 2.4rem);
}

.centres-grid__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;

    min-height: clamp(15rem, 20vw, 25rem);
    padding: clamp(1.6rem, 2vw, 2.4rem);

    border: 0.1rem solid #f4d5b8;
    border-radius: 1rem;
    background: var(--white);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.centres-grid__item:hover {
    transform: translateY(-0.4rem);
    border-color: var(--primary);
    box-shadow: 0 1rem 2.5rem rgba(244, 123, 8, 0.12);
}

.centres-grid__icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: clamp(4.4rem, 4vw, 5.6rem);
    height: clamp(4.4rem, 4vw, 5.6rem);
    margin-bottom: clamp(1.2rem, 1.4vw, 1.8rem);
}

.centres-grid__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.centres-grid__label {
    margin: 0;
    font-family: var(--font-medium);
    font-size: clamp(1.6rem, 1.5vw, 2.2rem);
    line-height: 1.4;
    color: var(--black);
    max-width: 18rem;
    margin: 0px auto;
}

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

@media (max-width: 575.98px) {
    .centres-grid__heading h2 {
        text-align: center;
    }

    .centres-grid__list {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.2rem;
    }

    .centres-grid__item {
        min-height: 14rem;
        padding: 1.4rem;
    }
}

/* ============================================================
   CARE ECOSYSTEM
============================================================= */

.care-ecosystem {
    background: linear-gradient(to right, #f7fbff 0%, #eef6ff 50%, #f8fbff 100%);
    margin-bottom: 5rem;
}

.care-ecosystem__heading {
    max-width: 60rem;
    margin-bottom: clamp(3.6rem, 5vw, 6rem);
}

.care-ecosystem__heading h2 {
    margin: 0 0 clamp(1.2rem, 1.4vw, 1.6rem);
    font-family: var(--font-semibold);
    font-size: clamp(2.4rem, 2.4vw, 3.4rem);
    line-height: 1.25;
    color: var(--secondary);
}

.section-title p {
    margin: 0;
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1.6;
    color: var(--black);
    margin-top: 2.5rem;
    max-width: 50rem;
}

.care-ecosystem__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(2.4rem, 3vw, 3rem);
}

.care-ecosystem__card {
    background: var(--white);
    border-radius: 1.2rem;
    box-shadow: 0 0.6rem 2.5rem rgba(34, 69, 144, 0.08);
    overflow: hidden;
}

.care-ecosystem__image {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 2;
}

.care-ecosystem__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.care-ecosystem__icon {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%);

    display: flex;
    align-items: center;
    justify-content: center;

    width: clamp(5.4rem, 5vw, 7.4rem);
    height: clamp(5.4rem, 5vw, 7.4rem);

    background: var(--white);
    border-radius: 50%;
    border: 1px solid #f5c89f;
}

.care-ecosystem__icon img {
    width: 45%;
    height: 45%;
    object-fit: contain;
}

.care-ecosystem__label {
    margin: 0;
    padding: clamp(3.2rem, 4vw, 6.2rem) 2rem clamp(2.4rem, 2.6vw, 4rem);
    text-align: center;
    font-family: var(--font-medium);
    font-size: clamp(1.5rem, 1.3vw, 1.8rem);
    color: var(--black);
}

@media (max-width: 767.98px) {
    .care-ecosystem__heading {
        max-width: 100%;
        text-align: center;
    }

    .care-ecosystem__grid {
        grid-template-columns: 1fr;
        max-width: 44rem;
        margin-inline: auto;
    }
}

/* ====================
servicepage
==================== */

.service-health-hero h1 {
    font-size: clamp(4.5rem, 6vw, 10rem) !important;
}

.service-health-hero .health-hero__content {
    padding-right: 2rem;
}

@media (max-width: 575.98px) {
    .service-health-hero h1 {
        font-size: clamp(3.4rem, 11vw, 10rem) !important;
    }
}

/* ============================================================
   SERVICE HEALTH HERO — 2x2 VISUAL GRID
   (reuses the shared .health-hero__visual-main / -sub markup
   but lays all 4 images out as one even 2x2 grid, matching
   the reference layout, instead of a big image + row of 3)
============================================================= */

.service-health-hero .health-hero__visual {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
    min-height: unset;
}

.service-health-hero .health-hero__visual-main {
    min-width: 0;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.service-health-hero .health-hero__visual-main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.service-health-hero .health-hero__visual-sub {
    display: contents;
}

.service-health-hero .health-hero__visual-sub-item {
    min-width: 0;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.service-health-hero .health-hero__visual-sub-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.service-health-hero .health-hero__visual-main:hover img,
.service-health-hero .health-hero__visual-sub-item:hover img {
    transform: scale(1.06);
}

@media (max-width: 991.98px) {
    .service-health-hero .health-hero__content {
        padding-right: 0px;
    }
}

@media (max-width: 575.98px) {
    .service-health-hero .health-hero__visual {
        gap: 0.8rem;
    }

    /* .about-health-hero's mobile last-child span rule is more
       specific than the plain 2-col grid rules above, so it wins
       the cascade on this shared-markup section — reset it here. */
    .service-health-hero .health-hero__visual-sub-item:last-child {
        grid-column: auto;
    }
}

/* ============================================================
   WHY CHOOSE US
============================================================= */

.why-choose-us {
    padding: clamp(4rem, 6vw, 8rem) 0;
    background: #ffffff;
}

.why-choose-us__top {
    align-items: center;
    margin-bottom: clamp(3rem, 4vw, 5rem);
}

.why-choose-us__intro {
    min-width: 0;
}

.why-choose-us__intro h2 {
    margin: 0 0 clamp(1.4rem, 1.6vw, 1.8rem);
    color: var(--secondary);
    font-family: var(--font-medium);
    font-size: clamp(2.8rem, 3vw, 3.5rem);
    line-height: 1.2;
    font-weight: 500;
}

.why-choose-us__intro p {
    margin: 0;
    max-width: 46rem;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.5rem, 1.2vw, 1.8rem);
    line-height: 1.7;
}

.why-choose-us__banner {
    min-width: 0;
    overflow: hidden;
    border-radius: 1rem;
    -webkit-border-radius: 1rem;
    -moz-border-radius: 1rem;
    -ms-border-radius: 1rem;
    -o-border-radius: 1rem;
}

.why-choose-us__banner img {
    display: block;
    width: 100%;
    height: 100%;
    /* aspect-ratio: 16 / 6.2; */
    object-fit: cover;
}

.why-choose-us__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1.6rem, 2vw, 2.4rem);
}

.why-choose-us__card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-width: 0;
    padding: clamp(2.4rem, 2.6vw, 3.2rem) clamp(1.6rem, 2vw, 2.2rem);
    border: 0.1rem solid #dce5f0;
    border-radius: 0.8rem;
    background: #ffffff;
    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
    -webkit-border-radius: 0.8rem;
    -moz-border-radius: 0.8rem;
    -ms-border-radius: 0.8rem;
    -o-border-radius: 0.8rem;
    min-height: 350px;
}

.why-choose-us__card:hover {
    border-color: #cbd5e5;
    box-shadow: 0 0.8rem 2.5rem rgba(25, 55, 100, 0.07);
    transform: translateY(-0.2rem);
}

.why-choose-us__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: clamp(4.4rem, 4.4vw, 5.2rem);
    height: clamp(4.4rem, 4.4vw, 5.2rem);
    margin-bottom: clamp(2rem, 2.5vw, 3.3rem);
}

.why-choose-us__icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.why-choose-us__card h3 {
    margin: 0 0 clamp(0.8rem, 1vw, 1.4rem);
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.6rem, 1.3vw, 2rem);
    line-height: 1.3;
}

.why-choose-us__card p {
    margin: 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1.8;
    max-width: 200px;
    margin: 0px auto;
}

@media (max-width: 991.98px) {
    .why-choose-us__top {
        text-align: center;
    }

    .why-choose-us__intro p {
        margin-inline: auto;
    }

    .why-choose-us__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .why-choose-us__card {
        min-height: auto;
    }
}

@media (max-width: 575.98px) {
    .why-choose-us__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   TECH THAT'S AT THE HEART
============================================================= */

.tech-heart {
    background: #ffffff;
}

.tech-heart__row {
    align-items: stretch;
}

.tech-heart__content {
    height: 100%;
    padding-top: clamp(3rem, 5vw, 6rem);
    padding-bottom: clamp(3rem, 5vw, 6rem);
    background: #f5f9ff;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.tech-heart__content h2 {
    margin: 0 0 clamp(2rem, 2.4vw, 3rem);
}

.tech-heart__desc {
    max-width: 37rem !important;
    margin-top: 1rem !important;
}

.tech-heart__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.2rem clamp(2rem, 4vw, 5rem);
    margin-bottom: clamp(2rem, 2.4vw, 3rem);
    max-width: 50rem;
}

.tech-heart__item {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.4rem, 1.2vw, 1.7rem);
    margin-bottom: 1.5rem;
}

.tech-heart__item:last-child {
    margin-bottom: 0px;
}

.tech-heart__check {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 3rem;
    height: 3rem;
    border: 0.1rem solid var(--primary);
    border-radius: 50%;
    color: var(--primary);
}

.tech-heart__check svg {
    width: 1.8rem;
    height: 1.8rem;
}

.tech-heart__media {
    height: 100%;
    min-height: 30rem;
    overflow: hidden;
}

.tech-heart__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 991.98px) {
    .tech-heart__media {
        min-height: 26rem;
    }
}

@media (max-width: 575.98px) {
    .tech-heart__content {
        padding: clamp(3rem, 8vw, 4rem) 2rem;
    }

    .tech-heart__list {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   OUR CARDIAC SPECIALISTS
============================================================= */

.cardiac-specialists {
    padding: clamp(4rem, 6vw, 8rem) 0;
    background: #ffffff;
    padding-bottom: 3rem;
}

.cardiac-specialists__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1.6rem, 2vw, 2.4rem);
    margin-bottom: clamp(3rem, 4vw, 5rem);
}

.specialist-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-width: 0;
    padding: 24px 20px;
    border: 0.1rem solid #e3e7ee;
    border-radius: 1.5rem;
    background: #ffffff;
    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
    -webkit-border-radius: 1.5rem;
    -moz-border-radius: 1.5rem;
    -ms-border-radius: 1.5rem;
    -o-border-radius: 1.5rem;
}

.specialist-card:hover {
    background: #f5f9ff;
    box-shadow: 0 1.2rem 3rem rgba(34, 69, 144, 0.14);
}

.specialist-card__top {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    margin-bottom: 1.6rem;
}

.specialist-card__photo {
    flex: 0 0 auto;
    overflow: hidden;
    border-radius: 1.6rem;
    background: #f3f5f8;
    -webkit-border-radius: 1.6rem;
    -moz-border-radius: 1.6rem;
    -ms-border-radius: 1.6rem;
    -o-border-radius: 1.6rem;
}

.specialist-card__photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

.specialist-card__info {
    flex: 1 1 0;
    min-width: 0;
}

.specialist-card__info h3 {
    margin: 0 0 0.3rem;
    color: var(--secondary);
    font-family: var(--font-medium);
    font-size: clamp(1.4rem, 1.1vw + 0.7rem, 1.7rem);
    line-height: 1.25;
}

.specialist-card__role {
    margin: 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.2rem, 0.5vw + 0.9rem, 1.3rem);
    line-height: 1.35;
}

.specialist-card__divider {
    display: block;
    width: 2.6rem;
    height: 0.2rem;
    margin: 26px 0px 20px 0px;
    background: #ff6b22;
}

.specialist-card__degree {
    margin: 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.15rem, 0.4vw + 0.9rem, 1.25rem);
    line-height: 1.35;
}

.specialist-card__actions {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: auto;
}

.specialist-card__btn {
    flex: 1 1 0;
    min-width: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 14px;
    border-radius: 1rem;
    font-family: var(--font-medium);
    font-size: clamp(1.15rem, 0.5vw + 0.9rem, 1.3rem);
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
    white-space: normal;
    transition:
        background-color 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease;
    -webkit-border-radius: 1rem;
    -moz-border-radius: 1rem;
    -ms-border-radius: 1rem;
    -o-border-radius: 1rem;
}

.specialist-card__btn--outline {
    border: 0.1rem solid var(--secondary);
    color: var(--secondary);
    background: #fff;
}

.specialist-card__btn--outline:hover {
    background: var(--secondary);
    color: #fff;
}

.specialist-card__btn--solid {
    border: 0.1rem solid var(--secondary);
    background: var(--secondary);
    color: #fff !important;
}

.specialist-card__btn--solid:hover {
    background: #1a3670;
    border-color: #1a3670;
}

.cardiac-stats {
    margin-bottom: clamp(3rem, 4vw, 5rem);
}

.cardiac-stats .hero-utilits-card-content p {
    margin: 0.3rem 0 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1.4;
    max-width: 140px;
}

.care-support-cta {
    align-items: stretch;
}

.care-support-card {
    display: flex;
    align-items: flex-start;
    gap: 3rem;
    height: 100%;
    padding: clamp(2rem, 2.4vw, 2.8rem) clamp(2rem, 2.4vw, 3.5rem);
    border-radius: 1rem;
}

.care-support-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 6.9rem;
    height: 6.9rem;
}

.care-support-card__icon svg {
    width: 2.6rem;
    height: 2.6rem;
}

.care-support-card__content h3 {
    margin: 0 0 0.6rem;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.8rem, 1.3vw, 2.5rem);
    line-height: 1.3;
    max-width: 300px;
}

.care-support-card__content p {
    margin: 0 0 1.6rem;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1.5;
    max-width: 300px;
}

.care-support-card__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 4rem;
    padding: 0 2rem;
    border-radius: 0.6rem;
    font-family: var(--font-medium);
    font-size: 1.4rem;
    text-decoration: none;
    white-space: nowrap;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.care-support-card__btn:hover {
    transform: translateY(-0.15rem);
}

.care-support-card--tpa {
    background: linear-gradient(to right, #fff8f3 0%, #fffdfb 100%);
    border: 1px solid #f5e7de;
}

.care-support-card--tpa .care-support-card__icon {
    color: var(--primary);
}

.care-support-card--tpa .care-support-card__btn {
    background: #ff6b22;
    color: #fff;
}

.care-support-card--cashless {
    background: linear-gradient(to right, #f4f8ff 0%, #ffffff 100%);
    border: 1px solid #e3ecfa;
}

.care-support-card--cashless .care-support-card__icon {
    color: var(--secondary);
}

.care-support-card--cashless .care-support-card__btn {
    background: var(--secondary);
    color: #fff;
}

@media (max-width: 575.98px) {
    .care-support-card {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 1399.98px) {
    .cardiac-specialists__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1199.98px) {
    .hero-utilits-card::before {
        display: none;
    }
}

@media (max-width: 991.98px) {
    .cardiac-specialists__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .specialist-card--active {
        transform: none;
    }
}

@media (max-width: 575.98px) {
    .cardiac-specialists__grid {
        grid-template-columns: 1fr;
    }

    .specialist-card__top {
        align-items: center;
    }

    .specialist-card__photo {
        width: clamp(6.5rem, 22vw, 8rem);
    }
}

/* ============================================================
   DEPARTMENTS & SERVICES (TABS)
============================================================= */

.service-main {
    position: relative;
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.service-main::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 95%;
    height: 85%;
    background: #f5f9ff;
    z-index: -1;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
}

.service-main .assistance-cta {
    padding-top: clamp(5rem, 6vw, 8rem);
    padding-bottom: 0px;
}

.dept-services__card {
    padding: clamp(2rem, 3vw, 3.6rem);
    border-radius: clamp(1.2rem, 1.5vw, 2rem);
    background: #fafcff;
    /* box-shadow: 0 1.5rem 4rem rgba(25, 55, 100, 0.06); */
    border: 1px solid #e3eaf3;
}

.dept-services__header {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    justify-content: space-between;
    gap: 1rem 2rem;
    margin-bottom: clamp(2rem, 2.6vw, 4rem);
}

.dept-services__subtitle {
    margin: 0;
    color: #767676;
    font-family: var(--font-medium);
    font-size: 1.5rem;
    margin-top: 1.5rem !important;
}

.dept-services__hint {
    font-size: 1.6rem !important;
    color: var(--secondary) !important;
}

.dept-tabs {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: clamp(2rem, 2.6vw, 3rem);
}

.dept-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 6.5rem;
    padding: 0.8rem 1.2rem;
    border: 0.1rem solid #e3eaf3;
    border-radius: 1.6rem;
    background: #ffffff;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1.3;
    text-align: center;
    cursor: pointer;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        color 0.2s ease,
        background-color 0.2s ease;
    -webkit-border-radius: 1.6rem;
    -moz-border-radius: 1.6rem;
    -ms-border-radius: 1.6rem;
    -o-border-radius: 1.6rem;
}

/* .dept-tab:hover {
    border-color: var(--secondary);
    color: var(--secondary);
} */

.dept-tab.active {
    border: 0.2rem solid #ff6b22;
    color: var(--white);
    font-family: var(--font-medium);
    box-shadow: 0 0 0 0.3rem rgba(34, 69, 144, 0.08);
    background: var(--secondary);
}

.dept-panel {
    padding: clamp(2rem, 2.6vw, 3rem);
    border: 0.1rem solid #e3eaf3;
    border-radius: 1rem;
}

.dept-panel__heading {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    margin-bottom: clamp(2rem, 2.6vw, 3rem);
}

/* .dept-panel__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 5.6rem;
    height: 5.6rem;
    border-radius: 50%;
    background: #EEF2FA;
} */

/* .dept-panel__icon img {
    width: 5rem;
    height: 5rem;
    object-fit: contain;
} */

.dept-panel__heading h2 {
    position: relative;
    margin: 0;
    padding-bottom: 0.8rem;
    color: var(--secondary);
    font-family: var(--font-medium);
    font-size: clamp(2rem, 2vw, 3rem);
    line-height: 1.2;
}

.dept-panel__heading h2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 3.6rem;
    height: 0.2rem;
    background: var(--primary);
}

.dept-panel__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.dept-panel__col {
    padding: 0 clamp(1.6rem, 2vw, 2.4rem);
    border-left: 0.1rem solid #e7ecf4;
}

.dept-panel__col:first-child {
    padding-left: 0;
    border-left: none;
}

.dept-panel__col-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 8.7rem;
    height: 8.7rem;
    margin-bottom: 2rem;
    border-radius: 50%;
    background: #ecf2fd;
}

/* .dept-panel__col-icon img {
    width: 2.2rem;
    height: 2.2rem;
    object-fit: contain;
} */

.dept-panel__col h4 {
    margin: 0 0 1rem;
    color: var(--secondary);
    font-family: var(--font-medium);
    font-size: 1.8rem;
    line-height: 1.3;
    min-height: 46px;
}

.dept-panel__col p {
    margin: 0;
    color: #5a5b5d;
    font-family: var(--font-regular);
    font-size: 1.7rem;
    line-height: 1.6;
    max-width: 21rem;
}

.dept-panel__checklist {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.dept-panel__checklist li {
    display: flex;
    align-items: flex-start;
    gap: 0.7rem;
    color: #5a5b5d;
    font-family: var(--font-medium);
    font-size: 1.6rem;
    line-height: 1.4;
}

.dept-panel__checklist svg {
    flex: 0 0 auto;
    width: 2rem;
    height: 2rem;
    margin-top: 0.1rem;
    color: var(--primary);
}

@media (max-width: 1199.98px) {
    .dept-tabs {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .dept-tabs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .dept-panel__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 2rem;
    }

    .dept-panel__col:nth-child(3) {
        padding-left: 0;
        border-left: none;
    }

    .facility-helath-banner .health-hero__description {
        margin: 0px auto;
    }
}

@media (max-width: 767.98px) {
    .dept-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dept-services__header {
        flex-direction: column;
        align-items: start;
    }
}

@media (max-width: 575.98px) {
    .dept-services__card {
        padding: 1.6rem;
    }

    .dept-panel {
        padding: 1.6rem;
    }

    .dept-panel__grid {
        grid-template-columns: 1fr;
        row-gap: 2rem;
    }

    .dept-panel__col {
        padding-left: 0;
        border-left: none;
    }

    .dept-panel__heading {
        align-items: flex-start;
    }
}

/* ======================
FacilityPage
====================== */

.facility-helath-banner {
    background: #fdfbf8;
}

.facility-helath-banner h1 {
    font-size: clamp(5.4rem, 5vw, 10rem) !important;
}

.key-facilities {
    background: var(--white);
    padding-top: 6rem;
}

.key-facilities__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1.6rem, 1.5vw, 2rem);
}

.facility-card {
    display: flex;
    align-items: stretch;
    gap: 0;
    min-width: 0;
    /* padding: clamp(0.8rem, 0.8vw, 1rem); */
    border-radius: 1.2rem;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
    -webkit-border-radius: 1.2rem;
}

.facility-card:hover {
    transform: translateY(-0.4rem);
    box-shadow: 0 1.5rem 4rem rgba(25, 55, 95, 0.1);
}

.facility-card--light {
    background: var(--white);
    border: 0.1rem solid #f4d5b8;
}

.facility-card--dark {
    border: 0.1rem solid #f4d5b8;
}

.facility-card__icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 11.6rem;
    align-self: stretch;
    border-radius: 0.8rem;
    font-size: clamp(2.6rem, 2.6vw, 3.4rem);
    -webkit-border-radius: 0.8rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #f4d5b8;
}

.facility-card--light .facility-card__icon {
    background: #fdfbf8;
    color: var(--primary);
}

.facility-card--dark .facility-card__icon {
    background: var(--secondary);
    color: var(--white);
    border-color: var(--secondary);
}

.facility-card__content {
    min-width: 0;
    padding: 3rem 2.5rem;
}

.facility-card__content h3 {
    margin: 0 0 1.5rem;
    font-family: var(--font-medium);
    font-size: clamp(1.5rem, 1.3vw, 2rem);
    line-height: 1.5;
    color: var(--black);
}

.facility-card__content p {
    margin: 0;
    font-family: var(--font-regular);
    font-size: 1.5rem;
    line-height: 1.45;
    color: var(--black);
}

@media (max-width: 991px) {
    .key-facilities__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .key-facilities__grid {
        grid-template-columns: 1fr;
    }
}

.facility-helath-banner .health-hero__content {
    padding-right: 2rem;
}

/* ==============
VisitorPage
============== */

.visitor-health-hero h1 {
    font-size: clamp(4.5rem, 7vw, 11.9rem) !important;
}

/* =========================================================
   VISITOR HELP GRID
========================================================= */

.visitor-help {
    width: 100%;

    padding: clamp(4rem, 6vw, 8rem) 0;
}

.visitor-help__grid {
    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: clamp(1.6rem, 2vw, 2.8rem);
}

.visitor-help-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    border: 0.1rem solid #f4d3ac;
    border-radius: clamp(1rem, 1vw, 1.4rem);
    overflow: hidden;
    background: var(--white);
    text-decoration: none;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    -webkit-border-radius: clamp(1rem, 1vw, 1.4rem);
    -moz-border-radius: clamp(1rem, 1vw, 1.4rem);
    -ms-border-radius: clamp(1rem, 1vw, 1.4rem);
    -o-border-radius: clamp(1rem, 1vw, 1.4rem);
}

.visitor-help-card:hover {
    transform: translateY(-0.4rem);
    border-color: #c5d0df;

    box-shadow: 0 1rem 2.5rem rgba(37, 69, 110, 0.08);
}

.visitor-help-card__img {
    width: 100%;
    aspect-ratio: 4/3;

    overflow: hidden;
}

.visitor-help-card__img img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.4s ease;
}

.visitor-help-card:hover .visitor-help-card__img img {
    transform: scale(1.06);
}

.visitor-help-card__body {
    position: relative;

    display: flex;
    align-items: start;
    flex-direction: column;
    min-width: 0;

    gap: 0.5rem;

    padding: clamp(2rem, 1.8vw, 3.5rem);
    padding-bottom: 2rem;
    flex: 1;
}

.visitor-help-card__text {
    min-width: 0;
}

.visitor-help-card__text h3 {
    margin: 0 0 0.6rem;

    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.7rem, 1.5vw, 2.5rem);
    line-height: 1.3;
}

.visitor-help-card__text p {
    margin: 0;

    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1.5;
}

.visitor-help-card__arrow {
    display: flex;
    align-items: center;
    justify-content: center;

    width: clamp(3rem, 2.8vw, 3.4rem);
    height: clamp(3rem, 2.8vw, 3.4rem);
    flex-shrink: 0;

    border-radius: 50%;
    border: 0.1rem solid var(--secondary);

    color: var(--primary);

    transition:
        transform 0.25s ease,
        background 0.25s ease,
        color 0.25s ease;
    margin-left: auto;
}

.visitor-help-card__arrow i {
    font-size: 1.3rem;
}

.visitor-help-card:hover .visitor-help-card__arrow {
    background: var(--primary);
    color: var(--white);
    transform: translateX(0.2rem);
    border-color: var(--primary);
}

@media (max-width: 991.98px) {
    .visitor-help__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .visitor-help {
        padding: clamp(3rem, 8vw, 4rem) 0;
    }

    .visitor-help__grid {
        grid-template-columns: 1fr;
        gap: 1.6rem;
    }

    .visitor-help-card__body {
        padding-right: clamp(3.6rem, 12vw, 4.6rem);
    }
}

/* =========================================================
   CONTACT PAGE — REACH US
========================================================= */

.reach-us {
    width: 100%;
    background: var(--white);
}

.reach-us__row {
    display: flex;
    align-items: stretch;
}

.reach-us__content {
    height: 100%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    /* padding: clamp(3.2rem, 6vw, 8rem) clamp(2.4rem, 6vw, 8rem); */

    background: var(--bg-color);
}

.reach-us__title {
    margin: 0;
    color: var(--black);
    font-family: var(--supportive-font);
    font-size: clamp(3.6rem, 6vw, 11rem);
    line-height: 0.95;
    font-weight: 400;
}

.reach-us__title .highlight {
    color: var(--primary);
    font-style: italic;
    font-weight: 500;
}

.reach-us__divider {
    width: clamp(4rem, 4vw, 5rem);
    height: 0.2rem;
    margin: clamp(1.8rem, 2vw, 2.4rem) 0;

    background: var(--primary);
}

.reach-us__address {
    display: flex;
    align-items: flex-start;
    gap: clamp(1.6rem, 3vw, 4rem);
    max-width: 50rem;
    margin-top: clamp(2.4rem, 5vw, 7rem);
}

.reach-us__address-icon {
    flex: 0 0 auto;

    display: flex;
    align-items: center;
    justify-content: center;

    width: clamp(6.4rem, 8vw, 10.8rem);
    height: clamp(6.4rem, 8vw, 10.8rem);

    border-radius: 50%;

    background: #e9f0fa;
    color: var(--secondary);
}

.reach-us__address-icon img {
    width: 38%;
    height: auto;

    object-fit: contain;
}

.reach-us__address-text {
    flex: 1 1 0;
    min-width: 0;
}

.reach-us__address-text h3 {
    margin: 0 0 1.2rem;

    color: var(--secondary);
    font-family: var(--font-medium);
    font-size: clamp(1.7rem, 1.4vw, 2.5rem);
}

.reach-us__address-text p {
    margin: 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: clamp(1.6rem, 1.2vw, 2.5rem);
    line-height: 1.6;
}

.reach-us__visual {
    height: 100%;
    min-height: clamp(20rem, 40vw, 32rem);

    overflow: hidden;
}

.reach-us__visual img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;
}

/* =========================================================
   CONTACT QUICK CARDS
========================================================= */

.contact-quick {
    width: 100%;

    padding: clamp(3rem, 4vw, 5rem) 0 0;
}

.contact-quick__grid {
    display: grid;

    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: clamp(1.4rem, 1.6vw, 2rem);

    margin-bottom: clamp(2.4rem, 3vw, 3.6rem);
}

.contact-quick-card {
    display: flex;
    /* align-items: center; */
    min-width: 0;
    padding: 1.7rem 1.5rem;
    gap: 2.5rem;
    border: 0.1rem solid #e6e9ef;
    border-radius: 1.5rem;
    background: var(--white);
    text-decoration: none;
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
    -webkit-border-radius: 1.5rem;
    -moz-border-radius: 1.5rem;
    -ms-border-radius: 1.5rem;
    -o-border-radius: 1.5rem;
    -webkit-transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
    -moz-transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
    -ms-transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
    -o-transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.contact-quick-card:hover {
    background-color: #fdfbf8;
}

.contact-quick-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 7.5rem;
    height: 7.5rem;
    margin-bottom: 1.2rem;

    border-radius: 50%;

    background: #f3f6ff;
    color: var(--secondary);
    font-size: 1.7rem;
}

.contact-quick-card h3 {
    margin: 0 0 3rem;
    color: var(--secondary);
    font-family: var(--font-medium);
    font-size: clamp(1.6rem, 1.3vw, 2rem);
    padding-top: 2.5rem;
}

.contact-quick-card p,
.contact-quick-card__value {
    margin: 0;

    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1.5;
}

.contact-quick-card__value {
    color: var(--black);
    font-family: var(--font-medium);
}

.contact-quick-card__arrow {
    flex-shrink: 0;

    margin-top: 1.6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 3.2rem;
    height: 3.2rem;

    border-radius: 50%;
    border: 0.1rem solid var(--primary);

    color: var(--primary);
    font-size: 1.2rem;

    transition:
        transform 0.25s ease,
        background 0.25s ease,
        color 0.25s ease;
}

/* =========================================================
   QUICK ENQUIRY
========================================================= */

.quick-enquiry {
    display: grid;
    grid-template-columns: minmax(0, 26rem) minmax(0, 1fr);
    gap: clamp(2.4rem, 3vw, 4rem);

    padding: clamp(2.4rem, 3vw, 3.6rem);
    margin-bottom: clamp(4rem, 5vw, 6rem);

    border: 0.1rem solid #dbdee6;
    border-radius: 1.6rem;

    background: var(--white);
}

.quick-enquiry__title {
    position: relative;

    margin: 0 0 2.5rem;
    padding-bottom: 1.2rem;

    color: var(--secondary);
    font-family: var(--font-semibold);
    font-size: clamp(2.4rem, 1.8vw, 3.5rem);
}

.quick-enquiry__title::after {
    content: "";

    position: absolute;
    left: 0;
    bottom: 0;

    width: 4rem;
    height: 0.2rem;

    background: var(--primary);
}

.quick-enquiry__intro p {
    margin: 0;
    color: var(--black);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    line-height: 1.6;
}

.quick-enquiry__row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1.2rem, 1.3vw, 1.6rem);
}

.quick-enquiry__row--bottom {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    margin-top: clamp(1.2rem, 1.3vw, 1.6rem);
}

.quick-enquiry__field {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 5.7rem;
    border: 0.1rem solid #dfe4eb;
    border-radius: 0.8rem;
    background: var(--white);
    -webkit-border-radius: 0.8rem;
    -moz-border-radius: 0.8rem;
    -ms-border-radius: 0.8rem;
    -o-border-radius: 0.8rem;
}

.quick-enquiry__field i {
    flex: 0 0 auto;

    width: 4.6rem;
    text-align: center;

    color: var(--black);
    font-size: 1.4rem;
}

.quick-enquiry__field input,
.quick-enquiry__field select {
    width: 100%;
    min-width: 0;
    height: 5.2rem;

    padding-right: 1.4rem;

    border: none;
    outline: none;
    background: transparent;

    color: var(--black) !important;
    font-family: var(--font-medium);
    font-size: 1.5rem;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.quick-enquiry__field--select {
    background: #f8f9fb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23224590' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 1.6rem center;
}

.quick-enquiry__field--select select {
    padding-right: 3.6rem;

    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.quick-enquiry__field--message {
    align-items: flex-start;
    min-height: 5.2rem;
}

.quick-enquiry__field--message i {
    line-height: 5.2rem;
}

.quick-enquiry__field--message textarea {
    width: 100%;
    min-width: 0;

    padding: 1.5rem 1.4rem 1.5rem 0;

    border: none;
    outline: none;
    resize: none;
    background: transparent;

    color: var(--black);
    font-family: var(--font-regular);
    font-size: 1.4rem;

    min-height: 8.9rem;
}

.quick-enquiry__field::placeholder {
    color: var(--black) !important;
    font-family: var(--font-medium);
    font-size: 1.5rem;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: var(--black) !important;
    font-family: var(--font-medium) !important;
    font-size: 1.5rem !important;
}

.quick-enquiry__submit {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex: 0 0 auto;
    min-height: 6.9rem;
    width: 100%;
    min-width: 240px;
    padding: 0 clamp(2rem, 2vw, 2.8rem);
    border: none;
    border-radius: 0rem;
    background: #0d459a;
    color: var(--white);
    font-family: var(--font-medium);
    font-size: 1.5rem;
    white-space: nowrap;
    cursor: pointer;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
    -webkit-border-radius: 0rem;
    -moz-border-radius: 0rem;
    -ms-border-radius: 0rem;
    -o-border-radius: 0rem;
}

.quick-enquiry__submit:hover {
    transform: translateY(-0.2rem);
}

.quick-enquiry__submit i {
    font-size: 1.5rem;
    color: var(--primary);
}

.contact-quick-card-icon {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

@media (max-width: 1399.98px) {
    .quick-enquiry__row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .contact-quick__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .quick-enquiry {
        grid-template-columns: 1fr;
    }

    .reach-us__content {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
}

@media (max-width: 575.98px) {
    .reach-us__content {
        text-align: center;
    }

    .reach-us__divider {
        margin-left: auto;
        margin-right: auto;
    }

    .reach-us__address {
        flex-direction: column;
        align-items: center;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    .reach-us__address-text {
        flex: 0 0 auto;
    }

    .contact-quick {
        padding-top: 2.4rem;
    }

    .contact-quick__grid {
        grid-template-columns: 1fr;
        gap: 1.4rem;
    }

    .quick-enquiry {
        padding: 2rem;
    }

    .quick-enquiry__row,
    .quick-enquiry__row--bottom {
        grid-template-columns: 1fr;
    }

    .quick-enquiry__submit {
        width: 100%;
    }
}